@tylertech/forge 2.14.0-dev.0 → 2.14.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (466) hide show
  1. package/custom-elements.json +1891 -437
  2. package/dist/button/forge-button.css +1 -1
  3. package/dist/esm/accordion/index.js +1 -1
  4. package/dist/esm/app-bar/help-button/index.js +1 -1
  5. package/dist/esm/app-bar/index.js +1 -1
  6. package/dist/esm/app-bar/menu-button/index.js +1 -1
  7. package/dist/esm/app-bar/notification-button/index.js +1 -1
  8. package/dist/esm/app-bar/profile-button/index.js +1 -1
  9. package/dist/esm/app-bar/search/index.js +1 -1
  10. package/dist/esm/autocomplete/index.js +1 -1
  11. package/dist/esm/avatar/index.js +1 -1
  12. package/dist/esm/backdrop/index.js +1 -1
  13. package/dist/esm/badge/index.js +1 -1
  14. package/dist/esm/banner/index.js +1 -1
  15. package/dist/esm/bottom-sheet/index.js +1 -1
  16. package/dist/esm/busy-indicator/index.js +1 -1
  17. package/dist/esm/button/index.js +1 -1
  18. package/dist/esm/button-toggle/button-toggle/index.js +1 -1
  19. package/dist/esm/button-toggle/button-toggle-group/index.js +1 -1
  20. package/dist/esm/button-toggle/index.js +1 -1
  21. package/dist/esm/calendar/calendar-dropdown/index.js +1 -1
  22. package/dist/esm/calendar/calendar-menu/index.js +1 -1
  23. package/dist/esm/calendar/core/index.js +1 -1
  24. package/dist/esm/calendar/index.js +1 -1
  25. package/dist/esm/card/index.js +1 -1
  26. package/dist/esm/checkbox/index.js +1 -1
  27. package/dist/esm/chip-field/index.js +1 -1
  28. package/dist/esm/chips/chip/index.js +1 -1
  29. package/dist/esm/chips/chip-set/index.js +1 -1
  30. package/dist/esm/chips/index.js +1 -1
  31. package/dist/esm/chunks/{chunk.PRO76W5D.js → chunk.2BNDXFI5.js} +2 -2
  32. package/dist/esm/chunks/{chunk.PRO76W5D.js.map → chunk.2BNDXFI5.js.map} +2 -2
  33. package/dist/esm/chunks/{chunk.PYG4YVBA.js → chunk.2DXG2R3M.js} +2 -2
  34. package/dist/esm/chunks/chunk.2DXG2R3M.js.map +7 -0
  35. package/dist/esm/chunks/{chunk.UUX4QJ4D.js → chunk.3KQL7VAZ.js} +1 -1
  36. package/dist/esm/chunks/{chunk.UUX4QJ4D.js.map → chunk.3KQL7VAZ.js.map} +2 -2
  37. package/dist/esm/chunks/{chunk.LGECRZFO.js → chunk.44IJE5UL.js} +2 -2
  38. package/dist/esm/chunks/{chunk.LGECRZFO.js.map → chunk.44IJE5UL.js.map} +2 -2
  39. package/dist/esm/chunks/{chunk.MIYZJUXH.js → chunk.47A2CN5U.js} +2 -2
  40. package/dist/esm/chunks/{chunk.MIYZJUXH.js.map → chunk.47A2CN5U.js.map} +2 -2
  41. package/dist/esm/chunks/{chunk.O4LGKJY6.js → chunk.4BEI55KI.js} +2 -2
  42. package/dist/esm/chunks/{chunk.O4LGKJY6.js.map → chunk.4BEI55KI.js.map} +2 -2
  43. package/dist/esm/chunks/{chunk.EC6JSIQW.js → chunk.4DAIIJ37.js} +1 -1
  44. package/dist/esm/chunks/{chunk.EC6JSIQW.js.map → chunk.4DAIIJ37.js.map} +2 -2
  45. package/dist/esm/chunks/{chunk.RT4C67NK.js → chunk.4FSAAN6W.js} +2 -2
  46. package/dist/esm/chunks/{chunk.RT4C67NK.js.map → chunk.4FSAAN6W.js.map} +2 -2
  47. package/dist/esm/chunks/chunk.4NI63FGK.js +7 -0
  48. package/dist/esm/chunks/chunk.4NI63FGK.js.map +7 -0
  49. package/dist/esm/chunks/{chunk.KBMLP7UT.js → chunk.4WPFFNLH.js} +2 -2
  50. package/dist/esm/chunks/{chunk.KBMLP7UT.js.map → chunk.4WPFFNLH.js.map} +3 -3
  51. package/dist/esm/chunks/chunk.4X2OFZDL.js +7 -0
  52. package/dist/esm/chunks/chunk.4X2OFZDL.js.map +7 -0
  53. package/dist/esm/chunks/chunk.5FPFRE4H.js +7 -0
  54. package/dist/esm/chunks/chunk.5FPFRE4H.js.map +7 -0
  55. package/dist/esm/chunks/{chunk.XCUYZZV4.js → chunk.6OKJPSUE.js} +2 -2
  56. package/dist/esm/chunks/{chunk.XCUYZZV4.js.map → chunk.6OKJPSUE.js.map} +3 -3
  57. package/dist/esm/chunks/{chunk.GZEWDHFJ.js → chunk.6RSRYR55.js} +2 -2
  58. package/dist/esm/chunks/{chunk.GZEWDHFJ.js.map → chunk.6RSRYR55.js.map} +2 -2
  59. package/dist/esm/chunks/{chunk.AMFXGOSA.js → chunk.6YPD6CQM.js} +1 -1
  60. package/dist/esm/chunks/{chunk.AMFXGOSA.js.map → chunk.6YPD6CQM.js.map} +2 -2
  61. package/dist/esm/chunks/{chunk.PBL2N45I.js → chunk.72AUOVCD.js} +2 -2
  62. package/dist/esm/chunks/{chunk.PBL2N45I.js.map → chunk.72AUOVCD.js.map} +2 -2
  63. package/dist/esm/chunks/{chunk.YW47QJVY.js → chunk.73AYD2BF.js} +2 -2
  64. package/dist/esm/chunks/{chunk.YW47QJVY.js.map → chunk.73AYD2BF.js.map} +2 -2
  65. package/dist/esm/chunks/{chunk.HQJZRTOH.js → chunk.77Y3EABF.js} +2 -2
  66. package/dist/esm/chunks/{chunk.HQJZRTOH.js.map → chunk.77Y3EABF.js.map} +2 -2
  67. package/dist/esm/chunks/{chunk.EE2LK23T.js → chunk.7A6MX6CS.js} +2 -2
  68. package/dist/esm/chunks/{chunk.EE2LK23T.js.map → chunk.7A6MX6CS.js.map} +2 -2
  69. package/dist/esm/chunks/{chunk.V55E5JD5.js → chunk.7UKA4E5A.js} +2 -2
  70. package/dist/esm/chunks/{chunk.V55E5JD5.js.map → chunk.7UKA4E5A.js.map} +2 -2
  71. package/dist/esm/chunks/{chunk.GVQVA7P3.js → chunk.7XFU2W25.js} +1 -1
  72. package/dist/esm/chunks/{chunk.GVQVA7P3.js.map → chunk.7XFU2W25.js.map} +2 -2
  73. package/dist/esm/chunks/{chunk.MYNPY3AQ.js → chunk.AFLH5HUG.js} +2 -2
  74. package/dist/esm/chunks/{chunk.MYNPY3AQ.js.map → chunk.AFLH5HUG.js.map} +2 -2
  75. package/dist/esm/chunks/{chunk.24D46RLZ.js → chunk.ARJ3EVVO.js} +2 -2
  76. package/dist/esm/chunks/{chunk.24D46RLZ.js.map → chunk.ARJ3EVVO.js.map} +2 -2
  77. package/dist/esm/chunks/{chunk.OOW3UKT4.js → chunk.BE7PZANN.js} +2 -2
  78. package/dist/esm/chunks/{chunk.OOW3UKT4.js.map → chunk.BE7PZANN.js.map} +2 -2
  79. package/dist/esm/chunks/{chunk.G5JTL66M.js → chunk.BJE6O5ES.js} +2 -2
  80. package/dist/esm/chunks/{chunk.G5JTL66M.js.map → chunk.BJE6O5ES.js.map} +2 -2
  81. package/dist/esm/chunks/{chunk.2GY2VPJG.js → chunk.BJZ7RB5F.js} +1 -1
  82. package/dist/esm/chunks/{chunk.2GY2VPJG.js.map → chunk.BJZ7RB5F.js.map} +2 -2
  83. package/dist/esm/chunks/{chunk.GVZEMIA3.js → chunk.BTBHIIGI.js} +2 -2
  84. package/dist/esm/chunks/{chunk.GVZEMIA3.js.map → chunk.BTBHIIGI.js.map} +2 -2
  85. package/dist/esm/chunks/chunk.C7AN6FMW.js +7 -0
  86. package/dist/esm/chunks/chunk.C7AN6FMW.js.map +7 -0
  87. package/dist/esm/chunks/{chunk.OGZOXNGT.js → chunk.DFJUCHEO.js} +2 -2
  88. package/dist/esm/chunks/{chunk.OGZOXNGT.js.map → chunk.DFJUCHEO.js.map} +2 -2
  89. package/dist/esm/chunks/{chunk.AWCBH5KW.js → chunk.DONAMICM.js} +1 -1
  90. package/dist/esm/chunks/{chunk.AWCBH5KW.js.map → chunk.DONAMICM.js.map} +2 -2
  91. package/dist/esm/chunks/chunk.DQJPIDVW.js +7 -0
  92. package/dist/esm/chunks/chunk.DQJPIDVW.js.map +7 -0
  93. package/dist/esm/chunks/{chunk.65G33MJV.js → chunk.DT7MZR5Y.js} +2 -2
  94. package/dist/esm/chunks/{chunk.65G33MJV.js.map → chunk.DT7MZR5Y.js.map} +2 -2
  95. package/dist/esm/chunks/chunk.DYNEJBYK.js +7 -0
  96. package/dist/esm/chunks/{chunk.NG5EGZ5Y.js.map → chunk.DYNEJBYK.js.map} +2 -2
  97. package/dist/esm/chunks/chunk.DYRY2HWZ.js +12 -0
  98. package/dist/esm/chunks/chunk.DYRY2HWZ.js.map +7 -0
  99. package/dist/esm/chunks/{chunk.323FEQVK.js → chunk.E6CYXNS2.js} +2 -2
  100. package/dist/esm/chunks/{chunk.323FEQVK.js.map → chunk.E6CYXNS2.js.map} +2 -2
  101. package/dist/esm/chunks/{chunk.ZFD3OE45.js → chunk.EGRUD7S7.js} +2 -2
  102. package/dist/esm/chunks/{chunk.ZFD3OE45.js.map → chunk.EGRUD7S7.js.map} +2 -2
  103. package/dist/esm/chunks/{chunk.24X566SZ.js → chunk.ESR2NHOS.js} +2 -2
  104. package/dist/esm/chunks/chunk.ESR2NHOS.js.map +7 -0
  105. package/dist/esm/chunks/{chunk.55BOUOT6.js → chunk.F2B24WLK.js} +2 -2
  106. package/dist/esm/chunks/{chunk.55BOUOT6.js.map → chunk.F2B24WLK.js.map} +2 -2
  107. package/dist/esm/chunks/chunk.F3MP6AXF.js +29 -0
  108. package/dist/esm/chunks/chunk.F3MP6AXF.js.map +7 -0
  109. package/dist/esm/chunks/{chunk.73O3BMP2.js → chunk.FRYLJWYL.js} +2 -2
  110. package/dist/esm/chunks/{chunk.73O3BMP2.js.map → chunk.FRYLJWYL.js.map} +2 -2
  111. package/dist/esm/chunks/chunk.FVRSGKJD.js +7 -0
  112. package/dist/esm/chunks/chunk.FVRSGKJD.js.map +7 -0
  113. package/dist/esm/chunks/{chunk.TMJBIAWC.js → chunk.G3ZTZ4AN.js} +2 -2
  114. package/dist/esm/chunks/{chunk.TMJBIAWC.js.map → chunk.G3ZTZ4AN.js.map} +2 -2
  115. package/dist/esm/chunks/{chunk.MNPORZ4F.js → chunk.G45OZEIS.js} +2 -2
  116. package/dist/esm/chunks/{chunk.MNPORZ4F.js.map → chunk.G45OZEIS.js.map} +2 -2
  117. package/dist/esm/chunks/{chunk.5PXABBKU.js → chunk.G5MGGEFP.js} +2 -2
  118. package/dist/esm/chunks/{chunk.5PXABBKU.js.map → chunk.G5MGGEFP.js.map} +2 -2
  119. package/dist/esm/chunks/{chunk.Y6FFG7XO.js → chunk.GO5A4GKZ.js} +1 -1
  120. package/dist/esm/chunks/{chunk.Y6FFG7XO.js.map → chunk.GO5A4GKZ.js.map} +2 -2
  121. package/dist/esm/chunks/{chunk.L54GENPD.js → chunk.H4Z4DHPA.js} +2 -2
  122. package/dist/esm/chunks/{chunk.L54GENPD.js.map → chunk.H4Z4DHPA.js.map} +2 -2
  123. package/dist/esm/chunks/{chunk.P45HS252.js → chunk.HBMNXZES.js} +2 -2
  124. package/dist/esm/chunks/{chunk.P45HS252.js.map → chunk.HBMNXZES.js.map} +2 -2
  125. package/dist/esm/chunks/{chunk.P5GT5YBP.js → chunk.HPDBSBQJ.js} +2 -2
  126. package/dist/esm/chunks/{chunk.P5GT5YBP.js.map → chunk.HPDBSBQJ.js.map} +2 -2
  127. package/dist/esm/chunks/{chunk.6NBVXSNZ.js → chunk.HU27X3IT.js} +2 -2
  128. package/dist/esm/chunks/{chunk.6NBVXSNZ.js.map → chunk.HU27X3IT.js.map} +2 -2
  129. package/dist/esm/chunks/{chunk.ORF746AF.js → chunk.HV6SPRC4.js} +2 -2
  130. package/dist/esm/chunks/{chunk.ORF746AF.js.map → chunk.HV6SPRC4.js.map} +2 -2
  131. package/dist/esm/chunks/{chunk.C557PTJ5.js → chunk.I5BAZWUF.js} +2 -2
  132. package/dist/esm/chunks/{chunk.C557PTJ5.js.map → chunk.I5BAZWUF.js.map} +2 -2
  133. package/dist/esm/chunks/chunk.IGTXLDZS.js +7 -0
  134. package/dist/esm/chunks/{chunk.DRI2NLIB.js.map → chunk.IGTXLDZS.js.map} +2 -2
  135. package/dist/esm/chunks/{chunk.GXUYYBVO.js → chunk.ILRWZHH3.js} +2 -2
  136. package/dist/esm/chunks/chunk.ILRWZHH3.js.map +7 -0
  137. package/dist/esm/chunks/{chunk.Z6S62LZJ.js → chunk.INCKI5IX.js} +2 -2
  138. package/dist/esm/chunks/{chunk.Z6S62LZJ.js.map → chunk.INCKI5IX.js.map} +2 -2
  139. package/dist/esm/chunks/{chunk.ROF42KJ3.js → chunk.J2H5RXTX.js} +2 -2
  140. package/dist/esm/chunks/{chunk.ROF42KJ3.js.map → chunk.J2H5RXTX.js.map} +2 -2
  141. package/dist/esm/chunks/{chunk.G76HB2FK.js → chunk.J2M2MXP2.js} +1 -1
  142. package/dist/esm/chunks/{chunk.G76HB2FK.js.map → chunk.J2M2MXP2.js.map} +2 -2
  143. package/dist/esm/chunks/{chunk.5DKXUTFN.js → chunk.J6P3GKZM.js} +2 -2
  144. package/dist/esm/chunks/{chunk.5DKXUTFN.js.map → chunk.J6P3GKZM.js.map} +3 -3
  145. package/dist/esm/chunks/{chunk.SVGEVCXA.js → chunk.J6WCFQSS.js} +2 -2
  146. package/dist/esm/chunks/{chunk.SVGEVCXA.js.map → chunk.J6WCFQSS.js.map} +2 -2
  147. package/dist/esm/chunks/{chunk.HWVLZ44Q.js → chunk.JEN6YP2Q.js} +2 -2
  148. package/dist/esm/chunks/{chunk.HWVLZ44Q.js.map → chunk.JEN6YP2Q.js.map} +2 -2
  149. package/dist/esm/chunks/{chunk.ZAKLVVFO.js → chunk.JHBCYICS.js} +2 -2
  150. package/dist/esm/chunks/{chunk.ZAKLVVFO.js.map → chunk.JHBCYICS.js.map} +2 -2
  151. package/dist/esm/chunks/chunk.JHY2CKEH.js +7 -0
  152. package/dist/esm/chunks/{chunk.CN7DHS4J.js.map → chunk.JHY2CKEH.js.map} +2 -2
  153. package/dist/esm/chunks/{chunk.FL6SJHQU.js → chunk.K2C4W3CO.js} +2 -2
  154. package/dist/esm/chunks/{chunk.FL6SJHQU.js.map → chunk.K2C4W3CO.js.map} +3 -3
  155. package/dist/esm/chunks/chunk.K6AFP52A.js +7 -0
  156. package/dist/esm/chunks/chunk.K6AFP52A.js.map +7 -0
  157. package/dist/esm/chunks/{chunk.HUX56BCR.js → chunk.KE6GOYAB.js} +2 -2
  158. package/dist/esm/chunks/{chunk.HUX56BCR.js.map → chunk.KE6GOYAB.js.map} +2 -2
  159. package/dist/esm/chunks/{chunk.B3IJU6XJ.js → chunk.KTGSZEAG.js} +1 -1
  160. package/dist/esm/chunks/{chunk.B3IJU6XJ.js.map → chunk.KTGSZEAG.js.map} +2 -2
  161. package/dist/esm/chunks/{chunk.BMFJLHDR.js → chunk.KU5CXXGS.js} +2 -2
  162. package/dist/esm/chunks/{chunk.BMFJLHDR.js.map → chunk.KU5CXXGS.js.map} +2 -2
  163. package/dist/esm/chunks/{chunk.FBERE7AL.js → chunk.LDN4HLF7.js} +2 -2
  164. package/dist/esm/chunks/{chunk.FBERE7AL.js.map → chunk.LDN4HLF7.js.map} +2 -2
  165. package/dist/esm/chunks/chunk.LFLREB3C.js +7 -0
  166. package/dist/esm/chunks/chunk.LFLREB3C.js.map +7 -0
  167. package/dist/esm/chunks/{chunk.E37HEAJ5.js → chunk.LIKJD4SK.js} +1 -1
  168. package/dist/esm/chunks/{chunk.E37HEAJ5.js.map → chunk.LIKJD4SK.js.map} +2 -2
  169. package/dist/esm/chunks/{chunk.S76NW5JY.js → chunk.LYOQ2RGP.js} +2 -2
  170. package/dist/esm/chunks/{chunk.S76NW5JY.js.map → chunk.LYOQ2RGP.js.map} +2 -2
  171. package/dist/esm/chunks/{chunk.R2L3S3YD.js → chunk.MHOS3IHQ.js} +2 -2
  172. package/dist/esm/chunks/{chunk.R2L3S3YD.js.map → chunk.MHOS3IHQ.js.map} +2 -2
  173. package/dist/esm/chunks/{chunk.IARIRFXO.js → chunk.MLV25D2G.js} +2 -2
  174. package/dist/esm/chunks/{chunk.IARIRFXO.js.map → chunk.MLV25D2G.js.map} +2 -2
  175. package/dist/esm/chunks/{chunk.2D4IBAWP.js → chunk.MXTDW27J.js} +2 -2
  176. package/dist/esm/chunks/{chunk.2D4IBAWP.js.map → chunk.MXTDW27J.js.map} +2 -2
  177. package/dist/esm/chunks/{chunk.LZMYHIO2.js → chunk.MZLPUI6R.js} +1 -1
  178. package/dist/esm/chunks/{chunk.LZMYHIO2.js.map → chunk.MZLPUI6R.js.map} +2 -2
  179. package/dist/esm/chunks/{chunk.NZTGBDRK.js → chunk.N4PVZUJX.js} +2 -2
  180. package/dist/esm/chunks/{chunk.NZTGBDRK.js.map → chunk.N4PVZUJX.js.map} +2 -2
  181. package/dist/esm/chunks/{chunk.MU4FV57Q.js → chunk.NW7NV2A2.js} +2 -2
  182. package/dist/esm/chunks/{chunk.MU4FV57Q.js.map → chunk.NW7NV2A2.js.map} +2 -2
  183. package/dist/esm/chunks/{chunk.LGEYSCS2.js → chunk.O4FB4BV5.js} +2 -2
  184. package/dist/esm/chunks/{chunk.LGEYSCS2.js.map → chunk.O4FB4BV5.js.map} +2 -2
  185. package/dist/esm/chunks/{chunk.YKXCORJE.js → chunk.O73S5LF3.js} +2 -2
  186. package/dist/esm/chunks/{chunk.YKXCORJE.js.map → chunk.O73S5LF3.js.map} +2 -2
  187. package/dist/esm/chunks/{chunk.FQEETXUQ.js → chunk.OZ5BPXNV.js} +2 -2
  188. package/dist/esm/chunks/{chunk.FQEETXUQ.js.map → chunk.OZ5BPXNV.js.map} +2 -2
  189. package/dist/esm/chunks/{chunk.VHKQHMK3.js → chunk.P3IA2WTO.js} +2 -2
  190. package/dist/esm/chunks/{chunk.VHKQHMK3.js.map → chunk.P3IA2WTO.js.map} +3 -3
  191. package/dist/esm/chunks/{chunk.PHJPLWFH.js → chunk.PALRSBSY.js} +2 -2
  192. package/dist/esm/chunks/{chunk.PHJPLWFH.js.map → chunk.PALRSBSY.js.map} +2 -2
  193. package/dist/esm/chunks/{chunk.R4NDFXVA.js → chunk.PN26D52V.js} +2 -2
  194. package/dist/esm/chunks/{chunk.R4NDFXVA.js.map → chunk.PN26D52V.js.map} +2 -2
  195. package/dist/esm/chunks/chunk.PYIFIHDK.js +7 -0
  196. package/dist/esm/chunks/chunk.PYIFIHDK.js.map +7 -0
  197. package/dist/esm/chunks/{chunk.7LBAA7TC.js → chunk.RB5BTA5N.js} +2 -2
  198. package/dist/esm/chunks/{chunk.7LBAA7TC.js.map → chunk.RB5BTA5N.js.map} +2 -2
  199. package/dist/esm/chunks/{chunk.NYMNX3S7.js → chunk.RBAVT3XQ.js} +2 -2
  200. package/dist/esm/chunks/{chunk.NYMNX3S7.js.map → chunk.RBAVT3XQ.js.map} +2 -2
  201. package/dist/esm/chunks/chunk.RE5X26QT.js +29 -0
  202. package/dist/esm/chunks/chunk.RE5X26QT.js.map +7 -0
  203. package/dist/esm/chunks/{chunk.XY4N4TSH.js → chunk.RG6CDWEX.js} +2 -2
  204. package/dist/esm/chunks/{chunk.XY4N4TSH.js.map → chunk.RG6CDWEX.js.map} +2 -2
  205. package/dist/esm/chunks/{chunk.EXKBJEFL.js → chunk.RHFNK6EE.js} +2 -2
  206. package/dist/esm/chunks/{chunk.EXKBJEFL.js.map → chunk.RHFNK6EE.js.map} +2 -2
  207. package/dist/esm/chunks/{chunk.ZMXKZJRM.js → chunk.ROR6JMAE.js} +2 -2
  208. package/dist/esm/chunks/{chunk.ZMXKZJRM.js.map → chunk.ROR6JMAE.js.map} +2 -2
  209. package/dist/esm/chunks/{chunk.3UB364WW.js → chunk.RYMPSU4J.js} +2 -2
  210. package/dist/esm/chunks/{chunk.3UB364WW.js.map → chunk.RYMPSU4J.js.map} +2 -2
  211. package/dist/esm/chunks/{chunk.LYAS4FAN.js → chunk.SAQVWOVK.js} +2 -2
  212. package/dist/esm/chunks/{chunk.LYAS4FAN.js.map → chunk.SAQVWOVK.js.map} +2 -2
  213. package/dist/esm/chunks/{chunk.TCAOLSLI.js → chunk.SXTTEIIH.js} +2 -2
  214. package/dist/esm/chunks/{chunk.TCAOLSLI.js.map → chunk.SXTTEIIH.js.map} +2 -2
  215. package/dist/esm/chunks/{chunk.MWD47ZZU.js → chunk.T76JYRPR.js} +2 -2
  216. package/dist/esm/chunks/{chunk.MWD47ZZU.js.map → chunk.T76JYRPR.js.map} +3 -3
  217. package/dist/esm/chunks/chunk.TR5YMNJJ.js +7 -0
  218. package/dist/esm/chunks/chunk.TR5YMNJJ.js.map +7 -0
  219. package/dist/esm/chunks/{chunk.DRXMITOO.js → chunk.TWZXQQQO.js} +2 -2
  220. package/dist/esm/chunks/{chunk.DRXMITOO.js.map → chunk.TWZXQQQO.js.map} +3 -3
  221. package/dist/esm/chunks/chunk.U6WGJELL.js +7 -0
  222. package/dist/esm/chunks/chunk.U6WGJELL.js.map +7 -0
  223. package/dist/esm/chunks/chunk.U724KSZU.js +7 -0
  224. package/dist/esm/chunks/chunk.U724KSZU.js.map +7 -0
  225. package/dist/esm/chunks/{chunk.LZHDRATV.js → chunk.UBD2DPQN.js} +2 -2
  226. package/dist/esm/chunks/{chunk.LZHDRATV.js.map → chunk.UBD2DPQN.js.map} +2 -2
  227. package/dist/esm/chunks/{chunk.YPMN5U7C.js → chunk.UF43SSFY.js} +2 -2
  228. package/dist/esm/chunks/{chunk.YPMN5U7C.js.map → chunk.UF43SSFY.js.map} +2 -2
  229. package/dist/esm/chunks/{chunk.CUT7V2KN.js → chunk.ULIFS3UR.js} +2 -2
  230. package/dist/esm/chunks/{chunk.CUT7V2KN.js.map → chunk.ULIFS3UR.js.map} +2 -2
  231. package/dist/esm/chunks/{chunk.2LHBE2QZ.js → chunk.UT7QUGAO.js} +2 -2
  232. package/dist/esm/chunks/{chunk.2LHBE2QZ.js.map → chunk.UT7QUGAO.js.map} +2 -2
  233. package/dist/esm/chunks/{chunk.STS5TIUV.js → chunk.V4TCOZLK.js} +1 -1
  234. package/dist/esm/chunks/chunk.V4TCOZLK.js.map +7 -0
  235. package/dist/esm/chunks/{chunk.PV5MABYN.js → chunk.V7WKXEZC.js} +2 -2
  236. package/dist/esm/chunks/{chunk.PV5MABYN.js.map → chunk.V7WKXEZC.js.map} +2 -2
  237. package/dist/esm/chunks/{chunk.UPFJ3PVE.js → chunk.VAKNDCLP.js} +2 -2
  238. package/dist/esm/chunks/{chunk.UPFJ3PVE.js.map → chunk.VAKNDCLP.js.map} +3 -3
  239. package/dist/esm/chunks/{chunk.OKIRZEUG.js → chunk.VC2BG2RS.js} +2 -2
  240. package/dist/esm/chunks/{chunk.OKIRZEUG.js.map → chunk.VC2BG2RS.js.map} +2 -2
  241. package/dist/esm/chunks/{chunk.3L7T5WYL.js → chunk.WP4QOOIS.js} +2 -2
  242. package/dist/esm/chunks/{chunk.3L7T5WYL.js.map → chunk.WP4QOOIS.js.map} +2 -2
  243. package/dist/esm/chunks/chunk.WY7DECJD.js +7 -0
  244. package/dist/esm/chunks/chunk.WY7DECJD.js.map +7 -0
  245. package/dist/esm/chunks/{chunk.XMI5RBZQ.js → chunk.X5LGVZGO.js} +2 -2
  246. package/dist/esm/chunks/{chunk.XMI5RBZQ.js.map → chunk.X5LGVZGO.js.map} +2 -2
  247. package/dist/esm/chunks/{chunk.54RF4ZT6.js → chunk.XHV3GQ7L.js} +2 -2
  248. package/dist/esm/chunks/{chunk.54RF4ZT6.js.map → chunk.XHV3GQ7L.js.map} +2 -2
  249. package/dist/esm/chunks/{chunk.5W5IPKAU.js → chunk.XUW3GG46.js} +2 -2
  250. package/dist/esm/chunks/{chunk.5W5IPKAU.js.map → chunk.XUW3GG46.js.map} +2 -2
  251. package/dist/esm/chunks/{chunk.K5WLIDQK.js → chunk.XZ4WI7VK.js} +2 -2
  252. package/dist/esm/chunks/{chunk.K5WLIDQK.js.map → chunk.XZ4WI7VK.js.map} +2 -2
  253. package/dist/esm/chunks/{chunk.MMVZJLXE.js → chunk.Y4GKBJGI.js} +2 -2
  254. package/dist/esm/chunks/{chunk.MMVZJLXE.js.map → chunk.Y4GKBJGI.js.map} +2 -2
  255. package/dist/esm/chunks/{chunk.NXS7A7PO.js → chunk.Y66GSZJB.js} +1 -1
  256. package/dist/esm/chunks/{chunk.NXS7A7PO.js.map → chunk.Y66GSZJB.js.map} +2 -2
  257. package/dist/esm/chunks/chunk.Y72NANFX.js +7 -0
  258. package/dist/esm/chunks/chunk.Y72NANFX.js.map +7 -0
  259. package/dist/esm/chunks/{chunk.P6IF3USM.js → chunk.YBEBD4CN.js} +2 -2
  260. package/dist/esm/chunks/{chunk.P6IF3USM.js.map → chunk.YBEBD4CN.js.map} +2 -2
  261. package/dist/esm/chunks/{chunk.D4SNVKDA.js → chunk.YI4JTY4T.js} +1 -1
  262. package/dist/esm/chunks/{chunk.D4SNVKDA.js.map → chunk.YI4JTY4T.js.map} +2 -2
  263. package/dist/esm/chunks/{chunk.E43TT4RI.js → chunk.YPZNIYQL.js} +1 -1
  264. package/dist/esm/chunks/{chunk.E43TT4RI.js.map → chunk.YPZNIYQL.js.map} +2 -2
  265. package/dist/esm/chunks/{chunk.F5I55MXD.js → chunk.ZUNZKRRK.js} +2 -2
  266. package/dist/esm/chunks/{chunk.F5I55MXD.js.map → chunk.ZUNZKRRK.js.map} +2 -2
  267. package/dist/esm/circular-progress/index.js +1 -1
  268. package/dist/esm/color-picker/index.js +1 -1
  269. package/dist/esm/core/base/index.js +1 -1
  270. package/dist/esm/core/delegates/index.js +1 -1
  271. package/dist/esm/core/index.js +1 -1
  272. package/dist/esm/core/mask/index.js +1 -1
  273. package/dist/esm/core/utils/index.js +1 -1
  274. package/dist/esm/date-picker/index.js +1 -1
  275. package/dist/esm/date-range-picker/index.js +1 -1
  276. package/dist/esm/dialog/index.js +1 -1
  277. package/dist/esm/divider/index.js +1 -1
  278. package/dist/esm/drawer/base/index.js +1 -1
  279. package/dist/esm/drawer/drawer/index.js +1 -1
  280. package/dist/esm/drawer/index.js +1 -1
  281. package/dist/esm/drawer/mini-drawer/index.js +1 -1
  282. package/dist/esm/drawer/modal-drawer/index.js +1 -1
  283. package/dist/esm/expansion-panel/index.js +1 -1
  284. package/dist/esm/file-picker/index.js +1 -1
  285. package/dist/esm/floating-action-button/index.js +1 -1
  286. package/dist/esm/floating-label/index.js +1 -1
  287. package/dist/esm/icon/index.js +1 -1
  288. package/dist/esm/icon-button/index.js +1 -1
  289. package/dist/esm/index.js +1 -1
  290. package/dist/esm/inline-message/index.js +1 -1
  291. package/dist/esm/keyboard-shortcut/index.js +1 -1
  292. package/dist/esm/label-value/index.js +1 -1
  293. package/dist/esm/linear-progress/index.js +1 -1
  294. package/dist/esm/list/index.js +1 -1
  295. package/dist/esm/list/list/index.js +1 -1
  296. package/dist/esm/list/list-item/index.js +1 -1
  297. package/dist/esm/list-dropdown/index.js +1 -1
  298. package/dist/esm/menu/index.js +1 -1
  299. package/dist/esm/open-icon/index.js +1 -1
  300. package/dist/esm/page-state/index.js +1 -1
  301. package/dist/esm/paginator/index.js +1 -1
  302. package/dist/esm/popup/index.js +1 -1
  303. package/dist/esm/product-icon/index.js +1 -1
  304. package/dist/esm/profile-card/index.js +1 -1
  305. package/dist/esm/quantity-field/index.js +1 -1
  306. package/dist/esm/radio/index.js +1 -1
  307. package/dist/esm/ripple/index.js +1 -1
  308. package/dist/esm/scaffold/index.js +1 -1
  309. package/dist/esm/select/core/index.js +1 -1
  310. package/dist/esm/select/index.js +1 -1
  311. package/dist/esm/select/option/index.js +1 -1
  312. package/dist/esm/select/option-group/index.js +1 -1
  313. package/dist/esm/select/select/index.js +1 -1
  314. package/dist/esm/select/select-dropdown/index.js +1 -1
  315. package/dist/esm/skeleton/index.js +1 -1
  316. package/dist/esm/slider/index.js +1 -1
  317. package/dist/esm/split-view/index.js +1 -1
  318. package/dist/esm/split-view/split-view/index.js +1 -1
  319. package/dist/esm/split-view/split-view-panel/index.js +1 -1
  320. package/dist/esm/stack/index.js +7 -0
  321. package/dist/esm/stack/index.js.map +7 -0
  322. package/dist/esm/stepper/index.js +1 -1
  323. package/dist/esm/stepper/step/index.js +1 -1
  324. package/dist/esm/stepper/stepper/index.js +1 -1
  325. package/dist/esm/switch/index.js +1 -1
  326. package/dist/esm/table/index.js +1 -1
  327. package/dist/esm/tabs/index.js +1 -1
  328. package/dist/esm/tabs/tab/index.js +1 -1
  329. package/dist/esm/tabs/tab-bar/index.js +1 -1
  330. package/dist/esm/text-field/index.js +1 -1
  331. package/dist/esm/theme/index.js +1 -1
  332. package/dist/esm/time-picker/index.js +1 -1
  333. package/dist/esm/toast/index.js +1 -1
  334. package/dist/esm/toolbar/index.js +1 -1
  335. package/dist/esm/tooltip/index.js +1 -1
  336. package/dist/esm/utils/index.js +1 -1
  337. package/dist/esm/view-switcher/index.js +1 -1
  338. package/dist/esm/view-switcher/view/index.js +1 -1
  339. package/dist/floating-action-button/forge-floating-action-button.css +1 -1
  340. package/dist/floating-label/forge-floating-label.css +1 -1
  341. package/dist/forge.css +1 -1
  342. package/dist/utils/forge-utils.css +1 -1
  343. package/esm/app-bar/app-bar.js +1 -1
  344. package/esm/autocomplete/autocomplete-adapter.d.ts +2 -0
  345. package/esm/autocomplete/autocomplete-adapter.js +3 -0
  346. package/esm/autocomplete/autocomplete-constants.d.ts +1 -0
  347. package/esm/autocomplete/autocomplete-constants.js +1 -0
  348. package/esm/autocomplete/autocomplete-foundation.d.ts +8 -0
  349. package/esm/autocomplete/autocomplete-foundation.js +21 -2
  350. package/esm/autocomplete/autocomplete.d.ts +7 -0
  351. package/esm/autocomplete/autocomplete.js +8 -1
  352. package/esm/badge/badge.js +1 -1
  353. package/esm/busy-indicator/busy-indicator.js +2 -2
  354. package/esm/calendar/calendar.js +1 -1
  355. package/esm/card/card.js +1 -1
  356. package/esm/chips/chip/chip-adapter.d.ts +17 -2
  357. package/esm/chips/chip/chip-adapter.js +90 -15
  358. package/esm/chips/chip/chip-constants.d.ts +4 -0
  359. package/esm/chips/chip/chip-constants.js +6 -2
  360. package/esm/chips/chip/chip-foundation.d.ts +2 -0
  361. package/esm/chips/chip/chip-foundation.js +38 -13
  362. package/esm/chips/chip/chip.d.ts +2 -0
  363. package/esm/chips/chip/chip.js +5 -2
  364. package/esm/chips/chip-set/chip-set-adapter.d.ts +4 -0
  365. package/esm/chips/chip-set/chip-set-adapter.js +24 -0
  366. package/esm/chips/chip-set/chip-set-foundation.d.ts +3 -0
  367. package/esm/chips/chip-set/chip-set-foundation.js +8 -0
  368. package/esm/chips/chip-set/chip-set.d.ts +1 -0
  369. package/esm/chips/chip-set/chip-set.js +3 -0
  370. package/esm/circular-progress/circular-progress.js +1 -1
  371. package/esm/core/mask/intermediate-time-parser.d.ts +49 -0
  372. package/esm/core/mask/intermediate-time-parser.js +106 -0
  373. package/esm/core/mask/time-input-mask.d.ts +0 -1
  374. package/esm/core/mask/time-input-mask.js +79 -58
  375. package/esm/core/mask/time-segment-parser.d.ts +22 -0
  376. package/esm/core/mask/time-segment-parser.js +46 -0
  377. package/esm/core/utils/time-utils.d.ts +1 -0
  378. package/esm/core/utils/time-utils.js +20 -3
  379. package/esm/dialog/dialog-foundation.js +2 -2
  380. package/esm/drawer/modal-drawer/modal-drawer.js +1 -1
  381. package/esm/index.d.ts +1 -0
  382. package/esm/index.js +3 -0
  383. package/esm/linear-progress/linear-progress.js +1 -1
  384. package/esm/list-dropdown/list-dropdown-adapter.d.ts +2 -0
  385. package/esm/list-dropdown/list-dropdown-adapter.js +6 -0
  386. package/esm/list-dropdown/list-dropdown-constants.d.ts +1 -0
  387. package/esm/list-dropdown/list-dropdown-foundation.js +3 -0
  388. package/esm/list-dropdown/list-dropdown-utils.js +1 -1
  389. package/esm/profile-card/profile-card.js +1 -1
  390. package/esm/ripple/forge-ripple.d.ts +3 -0
  391. package/esm/ripple/forge-ripple.js +5 -0
  392. package/esm/ripple/ripple-constants.d.ts +0 -1
  393. package/esm/ripple/ripple-constants.js +1 -2
  394. package/esm/ripple/ripple-foundation.d.ts +0 -4
  395. package/esm/ripple/ripple-foundation.js +0 -10
  396. package/esm/ripple/ripple.d.ts +0 -2
  397. package/esm/ripple/ripple.js +1 -8
  398. package/esm/slider/slider.js +1 -1
  399. package/esm/split-view/split-view-panel/split-view-panel.js +1 -1
  400. package/esm/stack/index.d.ts +10 -0
  401. package/esm/stack/index.js +14 -0
  402. package/esm/stack/stack-adapter.d.ts +15 -0
  403. package/esm/stack/stack-adapter.js +18 -0
  404. package/esm/stack/stack-constants.d.ts +29 -0
  405. package/esm/stack/stack-constants.js +36 -0
  406. package/esm/stack/stack-foundation.d.ts +39 -0
  407. package/esm/stack/stack-foundation.js +70 -0
  408. package/esm/stack/stack.d.ts +41 -0
  409. package/esm/stack/stack.js +74 -0
  410. package/esm/switch/switch.js +1 -1
  411. package/esm/time-picker/time-picker-adapter.d.ts +4 -0
  412. package/esm/time-picker/time-picker-adapter.js +8 -0
  413. package/esm/time-picker/time-picker-component-delegate.js +1 -6
  414. package/esm/time-picker/time-picker-foundation.d.ts +3 -0
  415. package/esm/time-picker/time-picker-foundation.js +45 -14
  416. package/esm/toast/toast.js +1 -1
  417. package/esm/tooltip/tooltip-foundation.d.ts +1 -0
  418. package/esm/tooltip/tooltip-foundation.js +3 -0
  419. package/esm/tooltip/tooltip.js +1 -1
  420. package/esm/view-switcher/view-switcher.js +1 -1
  421. package/package.json +4 -4
  422. package/styles/busy-indicator/_mixins.scss +1 -0
  423. package/styles/chips/chip/_mixins.scss +19 -6
  424. package/styles/stack/_mixins.scss +49 -0
  425. package/styles/stack/_variables.scss +6 -0
  426. package/styles/stack/stack.scss +46 -0
  427. package/styles/view-switcher/_mixins.scss +2 -0
  428. package/dist/esm/chunks/chunk.24X566SZ.js.map +0 -7
  429. package/dist/esm/chunks/chunk.2CEW64ZM.js +0 -7
  430. package/dist/esm/chunks/chunk.2CEW64ZM.js.map +0 -7
  431. package/dist/esm/chunks/chunk.3G237L6C.js +0 -7
  432. package/dist/esm/chunks/chunk.3G237L6C.js.map +0 -7
  433. package/dist/esm/chunks/chunk.4YH3GB4D.js +0 -12
  434. package/dist/esm/chunks/chunk.4YH3GB4D.js.map +0 -7
  435. package/dist/esm/chunks/chunk.5EQPGUZH.js +0 -7
  436. package/dist/esm/chunks/chunk.5EQPGUZH.js.map +0 -7
  437. package/dist/esm/chunks/chunk.AGEBZY4S.js +0 -7
  438. package/dist/esm/chunks/chunk.AGEBZY4S.js.map +0 -7
  439. package/dist/esm/chunks/chunk.B5HGV5EZ.js +0 -7
  440. package/dist/esm/chunks/chunk.B5HGV5EZ.js.map +0 -7
  441. package/dist/esm/chunks/chunk.CN7DHS4J.js +0 -7
  442. package/dist/esm/chunks/chunk.CZIQTYFJ.js +0 -7
  443. package/dist/esm/chunks/chunk.CZIQTYFJ.js.map +0 -7
  444. package/dist/esm/chunks/chunk.DRI2NLIB.js +0 -7
  445. package/dist/esm/chunks/chunk.GXUYYBVO.js.map +0 -7
  446. package/dist/esm/chunks/chunk.HYMB3XDK.js +0 -9
  447. package/dist/esm/chunks/chunk.HYMB3XDK.js.map +0 -7
  448. package/dist/esm/chunks/chunk.N6QJ2RRG.js +0 -7
  449. package/dist/esm/chunks/chunk.N6QJ2RRG.js.map +0 -7
  450. package/dist/esm/chunks/chunk.NG5EGZ5Y.js +0 -7
  451. package/dist/esm/chunks/chunk.OTI6WL66.js +0 -7
  452. package/dist/esm/chunks/chunk.OTI6WL66.js.map +0 -7
  453. package/dist/esm/chunks/chunk.PYG4YVBA.js.map +0 -7
  454. package/dist/esm/chunks/chunk.QZHEP4X2.js +0 -29
  455. package/dist/esm/chunks/chunk.QZHEP4X2.js.map +0 -7
  456. package/dist/esm/chunks/chunk.R4NZYUID.js +0 -7
  457. package/dist/esm/chunks/chunk.R4NZYUID.js.map +0 -7
  458. package/dist/esm/chunks/chunk.RH2NL523.js +0 -7
  459. package/dist/esm/chunks/chunk.RH2NL523.js.map +0 -7
  460. package/dist/esm/chunks/chunk.STS5TIUV.js.map +0 -7
  461. package/dist/esm/chunks/chunk.T2M2KVP7.js +0 -29
  462. package/dist/esm/chunks/chunk.T2M2KVP7.js.map +0 -7
  463. package/dist/esm/chunks/chunk.XC76IHG4.js +0 -7
  464. package/dist/esm/chunks/chunk.XC76IHG4.js.map +0 -7
  465. package/dist/esm/chunks/chunk.ZQCHS2PS.js +0 -7
  466. package/dist/esm/chunks/chunk.ZQCHS2PS.js.map +0 -7
@@ -3,5 +3,5 @@
3
3
  * Copyright 2023 Tyler Technologies, Inc.
4
4
  * License: Apache-2.0
5
5
  */
6
- import{b as H}from"./chunk.ZFD3OE45.js";import{a as x}from"./chunk.5PXABBKU.js";import{a as v}from"./chunk.B3IJU6XJ.js";import{a as S,b as C}from"./chunk.OOW3UKT4.js";import{a as I,e as V,g as w,l as A}from"./chunk.MMVZJLXE.js";import{g as y}from"./chunk.R4NDFXVA.js";import{b as E,l as g}from"./chunk.G76HB2FK.js";import{f as c}from"./chunk.MCIQXNKY.js";var D=`${C}view-switcher`,_={ROOT:"forge-view-switcher",VIEW_HIDDEN:"forge-view-switcher__view--hidden",VIEW_SWITCHER_SLIDE:"forge-view-switcher--slide",VIEW_SWITCHER_FADE:"forge-view-switcher--fade"},O={ROOT:`.${_.ROOT}`,DEFAULT_SLOT:"slot:not([name])",VIEW_HIDDEN:`.${_.VIEW_HIDDEN}`},W={INDEX:"index",ANIMATION_TYPE:"animation-type"},F={DEFAULT_TRANSITION_DURATION:500},s={elementName:D,attributes:W,classes:_,selectors:O,numbers:F},u=(e=>(e.Left="left",e.Right="right",e))(u||{}),b=(t=>(t.None="none",t.Slide="slide",t.Fade="fade",t))(b||{});var m=class extends x{constructor(e){super(e);this._rootElement=w(e,s.selectors.ROOT),this._slotElement=w(e,s.selectors.DEFAULT_SLOT)}getViewCount(){return this._getViews().length}startViewObserver(e){this._viewObserver=new MutationObserver(e),this._viewObserver.observe(this._component,{childList:!0})}stopViewObserver(){this._viewObserver&&this._viewObserver.disconnect()}initializeSlideViews(e){let t=this._getViews();t.forEach((i,o)=>{if(i.style.removeProperty("opacity"),i.style.removeProperty("display"),o===e){t[e].classList.remove(s.classes.VIEW_HIDDEN),i.style.removeProperty("visibility");return}i.style.transition="none",i.classList.add(s.classes.VIEW_HIDDEN),i.style.visibility="hidden",o>e?i.style.transform="translate3d(100%, 0, 0)":i.style.transform="translate3d(-100%, 0, 0)"}),window.requestAnimationFrame(()=>{t=this._getViews(),t.forEach((i,o)=>{o!==e&&i.style.removeProperty("transition")})})}initializeFadeViews(e){let t=this._getViews();t.forEach((i,o)=>{if(i.style.removeProperty("transform"),i.style.removeProperty("display"),o===e){i.classList.remove(s.classes.VIEW_HIDDEN),i.style.removeProperty("visibility");return}i.classList.add(s.classes.VIEW_HIDDEN),i.style.visibility="hidden"}),t[e]&&(t[e].style.opacity="1")}setActiveView(e){let t=this._getViews();t.forEach((i,o)=>{o!==e&&(i.classList.add(s.classes.VIEW_HIDDEN),i.style.display="none")}),t[e]&&(t[e].classList.remove(s.classes.VIEW_HIDDEN),t[e].style.removeProperty("display"))}hideInactiveViews(e){this._getViews().forEach((i,o)=>{if(i.style.removeProperty("opacity"),i.style.removeProperty("transform"),i.style.removeProperty("visibility"),o===e){i.classList.remove(s.classes.VIEW_HIDDEN);return}i.classList.add(s.classes.VIEW_HIDDEN),i.style.display="none"})}async transitionToView(e,t,i,o){let l=this._getViews(),r=l[e],d=l[t];return new Promise(N=>{d.style.removeProperty("visibility"),window.requestAnimationFrame(()=>{let p;switch(i){case"slide":this._slideToView(r,d,o),p="transform";break;case"fade":this._fadeToView(r,d),p="opacity";break;default:return}this._animateHeight(r,d),r?r.addEventListener("transitionend",T):d.classList.remove(s.classes.VIEW_HIDDEN);function T(L){L.propertyName===p&&(r.removeEventListener("transitionend",T),d.classList.remove(s.classes.VIEW_HIDDEN),N())}})})}_slideToView(e,t,i){i==="left"?(e&&(e.style.transform="translate3d(-100%, 0, 0)"),t.style.transform="translate3d(0, 0, 0)"):(e&&(e.style.transform="translate3d(100%, 0, 0)"),t.style.transform="translate3d(0, 0, 0)")}_fadeToView(e,t){e&&(e.style.opacity="0"),t.style.opacity="1"}_animateHeight(e,t){let i=e?this._getViewHeight(e):0,o=this._getViewHeight(t);i!==o&&(this._rootElement.addEventListener("transitionend",this._onRootTransitionEnd.bind(this)),this._setHeight(i),window.requestAnimationFrame(()=>{window.requestAnimationFrame(()=>{this._setHeight(o)})}))}_onRootTransitionEnd(e){e.propertyName==="height"&&(this._rootElement.removeEventListener("transitionend",this._onRootTransitionEnd),this._rootElement.style.removeProperty("height"))}setAnimationType(e){switch(y([s.classes.VIEW_SWITCHER_SLIDE,s.classes.VIEW_SWITCHER_FADE],this._component),e){case"slide":this._component.classList.add(s.classes.VIEW_SWITCHER_SLIDE);break;case"fade":this._component.classList.add(s.classes.VIEW_SWITCHER_FADE);break}}_getViews(){return this._slotElement.assignedNodes().filter(e=>e.nodeType===1)}_setHeight(e){this._rootElement.style.height=`${e}px`}_getViewHeight(e){let t=0,i=e.children.length?Array.from(e.children):[e];for(let o of i){let l=window.getComputedStyle(o),r=parseFloat(l.marginTop)+parseFloat(l.marginBottom);t+=Math.ceil(o.offsetHeight+r)}return t}};var h=class{constructor(n){this._adapter=n;this._viewCount=0;this._viewIndex=0;this._animationType="none";this._viewsChangedListener=()=>this._onViewsChanged()}initialize(){this._viewCount=this._adapter.getViewCount(),this._adapter.startViewObserver(this._viewsChangedListener),this._adapter.setAnimationType(this._animationType),this._viewCount&&this._initializeAnimationType()}disconnect(){this._adapter.stopViewObserver()}_initializeAnimationType(){switch(this._animationType){case"slide":this._adapter.initializeSlideViews(this._viewIndex);break;case"fade":this._adapter.initializeFadeViews(this._viewIndex);break;case"none":default:this._adapter.hideInactiveViews(this._viewIndex);break}}_onViewsChanged(){if(this._viewCount=this._adapter.getViewCount(),this._viewCount===0&&(this._viewIndex=0),this._viewCount&&this._initializeAnimationType(),this._viewCount>0&&this._viewIndex>=this._viewCount){let n=this._viewIndex;this._viewIndex=this._viewCount>0?this._viewCount-1:0,this._goToView(n,this._viewCount)}}async _goToView(n,e){if(this._viewCount=E(e)?e:this._adapter.getViewCount(),!(!(this._viewIndex>=0&&this._viewIndex<=this._viewCount-1)||n===this._clampedViewIndex(this._viewIndex,this._viewCount)))switch(this._animationType){case"slide":let i=this._viewIndex>n?"left":"right";await this._adapter.transitionToView(n,this._viewIndex,"slide",i),this._adapter.initializeSlideViews(this._viewIndex);break;case"fade":await this._adapter.transitionToView(n,this._viewIndex,"fade"),this._adapter.initializeFadeViews(this._viewIndex);break;case"none":default:this._adapter.setActiveView(this._viewIndex);break}}_clampedViewIndex(n,e){return n<0?n=0:n>e-1&&(n=e>0?e-1:0),n}next(){this.index++}previous(){this.index--}goToStart(){this.index=0}goToEnd(){this.index=this._viewCount-1}get index(){return this._viewIndex}set index(n){if(this._viewIndex!==n){let e=this._viewIndex;this._viewIndex=n,this._goToView(e),this._adapter.setHostAttribute(s.attributes.INDEX,this._viewIndex.toString())}}get animationType(){return this._animationType}set animationType(n){this._animationType!==n&&(this._animationType=n,this._initializeAnimationType(),this._adapter.setAnimationType(this._animationType),this._adapter.setHostAttribute(s.attributes.ANIMATION_TYPE,this._animationType))}};var M='<template><div class="forge-view-switcher" part="root"><slot></slot></div></template>',P=".forge-view-switcher{height:auto;height:var(--forge-view-switcher-height,auto);position:relative;overflow:hidden;-webkit-transition:height var(--forge-view-switcher-animation-duration, 500ms) cubic-bezier(.35, 0, .25, 1);transition:height var(--forge-view-switcher-animation-duration, 500ms) cubic-bezier(.35, 0, .25, 1)}.forge-view-switcher ::slotted(.forge-view-switcher__view--hidden){position:absolute;top:0;right:0;bottom:0;left:0}:host{height:auto;height:var(--forge-view-switcher-height,auto);display:block}:host([hidden]){display:none}:host(.forge-view-switcher--slide) ::slotted(forge-view){-webkit-transition:-webkit-transform var(--forge-view-switcher-animation-duration, 500ms) cubic-bezier(.35, 0, .25, 1);transition:-webkit-transform var(--forge-view-switcher-animation-duration, 500ms) cubic-bezier(.35, 0, .25, 1);transition:transform var(--forge-view-switcher-animation-duration, 500ms) cubic-bezier(.35, 0, .25, 1);transition:transform var(--forge-view-switcher-animation-duration, 500ms) cubic-bezier(.35, 0, .25, 1),-webkit-transform var(--forge-view-switcher-animation-duration, 500ms) cubic-bezier(.35, 0, .25, 1);will-change:transform}:host(.forge-view-switcher--fade) ::slotted(forge-view){-webkit-transition:opacity var(--forge-view-switcher-animation-duration, 500ms) cubic-bezier(.35, 0, .25, 1);transition:opacity var(--forge-view-switcher-animation-duration, 500ms) cubic-bezier(.35, 0, .25, 1);will-change:opacity}:host(.forge-view-switcher--fade) ::slotted(.forge-view-switcher__view--hidden){opacity:0}",a=class extends A{constructor(){super();V(this,M,P),this._foundation=new h(new m(this))}static get observedAttributes(){return[s.attributes.INDEX,s.attributes.ANIMATION_TYPE]}connectedCallback(){this._foundation.initialize()}disconnectedCallback(){this._foundation.disconnect()}attributeChangedCallback(e,t,i){switch(e){case s.attributes.INDEX:this.index=g(i);break;case s.attributes.ANIMATION_TYPE:this.animationType=i;break}}next(){this._foundation.next()}previous(){this._foundation.previous()}goToStart(){this._foundation.goToStart()}goToEnd(){this._foundation.goToEnd()}};c([v()],a.prototype,"index",2),c([v()],a.prototype,"animationType",2),a=c([S({name:s.elementName,dependencies:[H]})],a);function le(){I(a)}export{s as a,u as b,b as c,m as d,h as e,a as f,le as g};
7
- //# sourceMappingURL=chunk.VHKQHMK3.js.map
6
+ import{b as H}from"./chunk.EGRUD7S7.js";import{a as x}from"./chunk.G5MGGEFP.js";import{a as v}from"./chunk.KTGSZEAG.js";import{a as S,b as C}from"./chunk.BE7PZANN.js";import{a as I,e as V,g as w,l as A}from"./chunk.Y4GKBJGI.js";import{g as y}from"./chunk.PN26D52V.js";import{b as E,l as g}from"./chunk.J2M2MXP2.js";import{f as h}from"./chunk.MCIQXNKY.js";var D=`${C}view-switcher`,u={ROOT:"forge-view-switcher",VIEW_HIDDEN:"forge-view-switcher__view--hidden",VIEW_SWITCHER_SLIDE:"forge-view-switcher--slide",VIEW_SWITCHER_FADE:"forge-view-switcher--fade"},O={ROOT:`.${u.ROOT}`,DEFAULT_SLOT:"slot:not([name])",VIEW_HIDDEN:`.${u.VIEW_HIDDEN}`},W={INDEX:"index",ANIMATION_TYPE:"animation-type"},F={DEFAULT_TRANSITION_DURATION:500},s={elementName:D,attributes:W,classes:u,selectors:O,numbers:F},_=(e=>(e.Left="left",e.Right="right",e))(_||{}),b=(t=>(t.None="none",t.Slide="slide",t.Fade="fade",t))(b||{});var c=class extends x{constructor(e){super(e);this._rootElement=w(e,s.selectors.ROOT),this._slotElement=w(e,s.selectors.DEFAULT_SLOT)}getViewCount(){return this._getViews().length}startViewObserver(e){this._viewObserver=new MutationObserver(e),this._viewObserver.observe(this._component,{childList:!0})}stopViewObserver(){this._viewObserver&&this._viewObserver.disconnect()}initializeSlideViews(e){let t=this._getViews();t.forEach((i,o)=>{if(i.style.removeProperty("opacity"),i.style.removeProperty("display"),o===e){t[e].classList.remove(s.classes.VIEW_HIDDEN),i.style.removeProperty("visibility");return}i.style.transition="none",i.classList.add(s.classes.VIEW_HIDDEN),i.style.visibility="hidden",o>e?i.style.transform="translate3d(100%, 0, 0)":i.style.transform="translate3d(-100%, 0, 0)"}),window.requestAnimationFrame(()=>{t=this._getViews(),t.forEach((i,o)=>{o!==e&&i.style.removeProperty("transition")})})}initializeFadeViews(e){let t=this._getViews();t.forEach((i,o)=>{if(i.style.removeProperty("transform"),i.style.removeProperty("display"),o===e){i.classList.remove(s.classes.VIEW_HIDDEN),i.style.removeProperty("visibility");return}i.classList.add(s.classes.VIEW_HIDDEN),i.style.visibility="hidden"}),t[e]&&(t[e].style.opacity="1")}setActiveView(e){let t=this._getViews();t.forEach((i,o)=>{o!==e&&(i.classList.add(s.classes.VIEW_HIDDEN),i.style.display="none")}),t[e]&&(t[e].classList.remove(s.classes.VIEW_HIDDEN),t[e].style.removeProperty("display"))}hideInactiveViews(e){this._getViews().forEach((i,o)=>{if(i.style.removeProperty("opacity"),i.style.removeProperty("transform"),i.style.removeProperty("visibility"),o===e){i.classList.remove(s.classes.VIEW_HIDDEN);return}i.classList.add(s.classes.VIEW_HIDDEN),i.style.display="none"})}async transitionToView(e,t,i,o){let l=this._getViews(),r=l[e],d=l[t];return new Promise(N=>{d.style.removeProperty("visibility"),window.requestAnimationFrame(()=>{let p;switch(i){case"slide":this._slideToView(r,d,o),p="transform";break;case"fade":this._fadeToView(r,d),p="opacity";break;default:return}this._animateHeight(r,d),r?r.addEventListener("transitionend",T):d.classList.remove(s.classes.VIEW_HIDDEN);function T(L){L.propertyName===p&&(r.removeEventListener("transitionend",T),d.classList.remove(s.classes.VIEW_HIDDEN),N())}})})}_slideToView(e,t,i){i==="left"?(e&&(e.style.transform="translate3d(-100%, 0, 0)"),t.style.transform="translate3d(0, 0, 0)"):(e&&(e.style.transform="translate3d(100%, 0, 0)"),t.style.transform="translate3d(0, 0, 0)")}_fadeToView(e,t){e&&(e.style.opacity="0"),t.style.opacity="1"}_animateHeight(e,t){let i=e?this._getViewHeight(e):0,o=this._getViewHeight(t);i!==o&&(this._rootElement.addEventListener("transitionend",this._onRootTransitionEnd.bind(this)),this._setHeight(i),window.requestAnimationFrame(()=>{window.requestAnimationFrame(()=>{this._setHeight(o)})}))}_onRootTransitionEnd(e){e.propertyName==="height"&&(this._rootElement.removeEventListener("transitionend",this._onRootTransitionEnd),this._rootElement.style.removeProperty("height"))}setAnimationType(e){switch(y([s.classes.VIEW_SWITCHER_SLIDE,s.classes.VIEW_SWITCHER_FADE],this._component),e){case"slide":this._component.classList.add(s.classes.VIEW_SWITCHER_SLIDE);break;case"fade":this._component.classList.add(s.classes.VIEW_SWITCHER_FADE);break}}_getViews(){return this._slotElement.assignedNodes().filter(e=>e.nodeType===1)}_setHeight(e){this._rootElement.style.height=`${e}px`}_getViewHeight(e){let t=0,i=e.children.length?Array.from(e.children):[e];for(let o of i){let l=window.getComputedStyle(o),r=parseFloat(l.marginTop)+parseFloat(l.marginBottom);t+=Math.ceil(o.offsetHeight+r)}return t}};var m=class{constructor(n){this._adapter=n;this._viewCount=0;this._viewIndex=0;this._animationType="none";this._viewsChangedListener=()=>this._onViewsChanged()}initialize(){this._viewCount=this._adapter.getViewCount(),this._adapter.startViewObserver(this._viewsChangedListener),this._adapter.setAnimationType(this._animationType),this._viewCount&&this._initializeAnimationType()}disconnect(){this._adapter.stopViewObserver()}_initializeAnimationType(){switch(this._animationType){case"slide":this._adapter.initializeSlideViews(this._viewIndex);break;case"fade":this._adapter.initializeFadeViews(this._viewIndex);break;case"none":default:this._adapter.hideInactiveViews(this._viewIndex);break}}_onViewsChanged(){if(this._viewCount=this._adapter.getViewCount(),this._viewCount===0&&(this._viewIndex=0),this._viewCount&&this._initializeAnimationType(),this._viewCount>0&&this._viewIndex>=this._viewCount){let n=this._viewIndex;this._viewIndex=this._viewCount>0?this._viewCount-1:0,this._goToView(n,this._viewCount)}}async _goToView(n,e){if(this._viewCount=E(e)?e:this._adapter.getViewCount(),!(!(this._viewIndex>=0&&this._viewIndex<=this._viewCount-1)||n===this._clampedViewIndex(this._viewIndex,this._viewCount)))switch(this._animationType){case"slide":let i=this._viewIndex>n?"left":"right";await this._adapter.transitionToView(n,this._viewIndex,"slide",i),this._adapter.initializeSlideViews(this._viewIndex);break;case"fade":await this._adapter.transitionToView(n,this._viewIndex,"fade"),this._adapter.initializeFadeViews(this._viewIndex);break;case"none":default:this._adapter.setActiveView(this._viewIndex);break}}_clampedViewIndex(n,e){return n<0?n=0:n>e-1&&(n=e>0?e-1:0),n}next(){this.index++}previous(){this.index--}goToStart(){this.index=0}goToEnd(){this.index=this._viewCount-1}get index(){return this._viewIndex}set index(n){if(this._viewIndex!==n){let e=this._viewIndex;this._viewIndex=n,this._goToView(e),this._adapter.setHostAttribute(s.attributes.INDEX,this._viewIndex.toString())}}get animationType(){return this._animationType}set animationType(n){this._animationType!==n&&(this._animationType=n,this._initializeAnimationType(),this._adapter.setAnimationType(this._animationType),this._adapter.setHostAttribute(s.attributes.ANIMATION_TYPE,this._animationType))}};var M='<template><div class="forge-view-switcher" part="root"><slot></slot></div></template>',P=".forge-view-switcher{height:auto;height:var(--forge-view-switcher-height,auto);width:auto;width:var(--forge-view-switcher-width,auto);position:relative;overflow:hidden;-webkit-transition:height var(--forge-view-switcher-animation-duration, 500ms) cubic-bezier(.35, 0, .25, 1);transition:height var(--forge-view-switcher-animation-duration, 500ms) cubic-bezier(.35, 0, .25, 1)}.forge-view-switcher ::slotted(.forge-view-switcher__view--hidden){position:absolute;top:0;right:0;bottom:0;left:0}:host{height:auto;height:var(--forge-view-switcher-height,auto);width:auto;width:var(--forge-view-switcher-width,auto);display:block}:host([hidden]){display:none}:host(.forge-view-switcher--slide) ::slotted(forge-view){-webkit-transition:-webkit-transform var(--forge-view-switcher-animation-duration, 500ms) cubic-bezier(.35, 0, .25, 1);transition:-webkit-transform var(--forge-view-switcher-animation-duration, 500ms) cubic-bezier(.35, 0, .25, 1);transition:transform var(--forge-view-switcher-animation-duration, 500ms) cubic-bezier(.35, 0, .25, 1);transition:transform var(--forge-view-switcher-animation-duration, 500ms) cubic-bezier(.35, 0, .25, 1),-webkit-transform var(--forge-view-switcher-animation-duration, 500ms) cubic-bezier(.35, 0, .25, 1);will-change:transform}:host(.forge-view-switcher--fade) ::slotted(forge-view){-webkit-transition:opacity var(--forge-view-switcher-animation-duration, 500ms) cubic-bezier(.35, 0, .25, 1);transition:opacity var(--forge-view-switcher-animation-duration, 500ms) cubic-bezier(.35, 0, .25, 1);will-change:opacity}:host(.forge-view-switcher--fade) ::slotted(.forge-view-switcher__view--hidden){opacity:0}",a=class extends A{constructor(){super();V(this,M,P),this._foundation=new m(new c(this))}static get observedAttributes(){return[s.attributes.INDEX,s.attributes.ANIMATION_TYPE]}connectedCallback(){this._foundation.initialize()}disconnectedCallback(){this._foundation.disconnect()}attributeChangedCallback(e,t,i){switch(e){case s.attributes.INDEX:this.index=g(i);break;case s.attributes.ANIMATION_TYPE:this.animationType=i;break}}next(){this._foundation.next()}previous(){this._foundation.previous()}goToStart(){this._foundation.goToStart()}goToEnd(){this._foundation.goToEnd()}};h([v()],a.prototype,"index",2),h([v()],a.prototype,"animationType",2),a=h([S({name:s.elementName,dependencies:[H]})],a);function le(){I(a)}export{s as a,_ as b,b as c,c as d,m as e,a as f,le as g};
7
+ //# sourceMappingURL=chunk.P3IA2WTO.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/view-switcher/view-switcher-constants.ts", "../../src/view-switcher/view-switcher-adapter.ts", "../../src/view-switcher/view-switcher-foundation.ts", "../../src/view-switcher/view-switcher.ts", "../../src/view-switcher/index.ts"],
4
- "sourcesContent": ["import { COMPONENT_NAME_PREFIX } from '../constants';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}view-switcher`;\n\nconst classes = {\n ROOT: 'forge-view-switcher',\n VIEW_HIDDEN: 'forge-view-switcher__view--hidden',\n VIEW_SWITCHER_SLIDE: 'forge-view-switcher--slide',\n VIEW_SWITCHER_FADE: 'forge-view-switcher--fade'\n};\n\nconst selectors = {\n ROOT: `.${classes.ROOT}`,\n DEFAULT_SLOT: 'slot:not([name])',\n VIEW_HIDDEN: `.${classes.VIEW_HIDDEN}`\n};\n\nconst attributes = {\n INDEX: 'index',\n ANIMATION_TYPE: 'animation-type'\n};\n\nconst numbers = {\n DEFAULT_TRANSITION_DURATION: 500\n};\n\nexport const VIEW_SWITCHER_CONSTANTS = {\n elementName,\n attributes,\n classes,\n selectors,\n numbers\n};\n\nexport interface IViewSwitcherView {\n element: HTMLElement;\n}\n\nexport enum ViewAnimationDirection {\n Left = 'left',\n Right = 'right'\n}\n\nexport enum ViewSwitcherAnimationType {\n None = 'none',\n Slide = 'slide',\n Fade = 'fade'\n}\n", "import { getShadowElement, removeClass } from '@tylertech/forge-core';\nimport { BaseAdapter, IBaseAdapter } from '../core/base/base-adapter';\nimport { IViewSwitcherComponent } from './view-switcher';\nimport { ViewAnimationDirection, ViewSwitcherAnimationType, VIEW_SWITCHER_CONSTANTS } from './view-switcher-constants';\n\nexport interface IViewSwitcherAdapter extends IBaseAdapter {\n getViewCount(): number;\n startViewObserver(callback: MutationCallback): void;\n stopViewObserver(): void;\n initializeSlideViews(index: number): void;\n initializeFadeViews(index: number): void;\n setActiveView(index: number): void;\n hideInactiveViews(index: number): void;\n transitionToView(fromIndex: number, toIndex: number, animationType: ViewSwitcherAnimationType, direction?: ViewAnimationDirection): Promise<void>;\n setAnimationType(type: ViewSwitcherAnimationType): void;\n}\n\nexport class ViewSwitcherAdapter extends BaseAdapter<IViewSwitcherComponent> implements IViewSwitcherAdapter {\n private _rootElement: HTMLElement;\n private _slotElement: HTMLSlotElement;\n private _viewObserver: MutationObserver;\n\n constructor(component: IViewSwitcherComponent) {\n super(component);\n this._rootElement = getShadowElement(component, VIEW_SWITCHER_CONSTANTS.selectors.ROOT);\n this._slotElement = getShadowElement(component, VIEW_SWITCHER_CONSTANTS.selectors.DEFAULT_SLOT) as HTMLSlotElement;\n }\n\n public getViewCount(): number {\n return this._getViews().length;\n }\n\n public startViewObserver(callback: MutationCallback): void {\n this._viewObserver = new MutationObserver(callback);\n this._viewObserver.observe(this._component, { childList: true });\n }\n\n public stopViewObserver(): void {\n if (this._viewObserver) {\n this._viewObserver.disconnect();\n }\n }\n\n /**\n * Initializes the views with styles for a slide transition.\n * @param index The active view index.\n */\n public initializeSlideViews(index: number): void {\n let views = this._getViews();\n views.forEach((view, i) => {\n // Make sure that we remove properties if they were set from another animation type\n view.style.removeProperty('opacity');\n view.style.removeProperty('display');\n\n // Ensure that the currently active view is visible\n if (i === index) {\n views[index].classList.remove(VIEW_SWITCHER_CONSTANTS.classes.VIEW_HIDDEN);\n view.style.removeProperty('visibility');\n return;\n }\n\n // We disable the transition when resetting the hidden views so that the animation doesn't occur\n view.style.transition = 'none';\n\n // Ensure the view is hidden\n view.classList.add(VIEW_SWITCHER_CONSTANTS.classes.VIEW_HIDDEN);\n view.style.visibility = 'hidden';\n\n // Reset the position of the view to the left or right of the switcher\n if (i > index) {\n view.style.transform = 'translate3d(100%, 0, 0)';\n } else {\n view.style.transform = 'translate3d(-100%, 0, 0)';\n }\n });\n\n // Wait a frame for the views to reposition, then re-enable the transition for all hidden views\n window.requestAnimationFrame(() => {\n views = this._getViews();\n views.forEach((v, i) => {\n if (i === index) {\n return;\n }\n v.style.removeProperty('transition');\n });\n });\n }\n\n /**\n * Initializes the view styles when using a fade transition.\n * @param index The active view index.\n */\n public initializeFadeViews(index: number): void {\n const views = this._getViews();\n views.forEach((view, i) => {\n // Make sure that we remove properties if they were set from another animation type\n view.style.removeProperty('transform');\n view.style.removeProperty('display');\n\n // Ensure that the visible view doesn't have the hidden class\n if (i === index) {\n view.classList.remove(VIEW_SWITCHER_CONSTANTS.classes.VIEW_HIDDEN);\n view.style.removeProperty('visibility');\n return;\n }\n\n // Ensure the hidden views have the proper class\n view.classList.add(VIEW_SWITCHER_CONSTANTS.classes.VIEW_HIDDEN);\n view.style.visibility = 'hidden';\n });\n\n // Ensure that the visible view has the proper opacity\n if (views[index]) {\n views[index].style.opacity = '1';\n }\n }\n\n /**\n * This is used when no animation type is set to allow for snapping the view into place.\n * @param index The currently active view index.\n */\n public setActiveView(index: number): void {\n const views = this._getViews();\n\n views.forEach((view, i) => {\n if (i === index) {\n return;\n }\n // Hide all non-visible views\n view.classList.add(VIEW_SWITCHER_CONSTANTS.classes.VIEW_HIDDEN);\n view.style.display = 'none';\n });\n\n // Ensure that the active view is visible\n if (views[index]) {\n views[index].classList.remove(VIEW_SWITCHER_CONSTANTS.classes.VIEW_HIDDEN);\n views[index].style.removeProperty('display');\n }\n }\n\n /**\n * This is used when no animation type is specific to hide all non-visible views.\n * @param index The currently active view index.\n */\n public hideInactiveViews(index: number): void {\n const views = this._getViews();\n views.forEach((view, i) => {\n // Make sure that we remove properties if they were set from another animation type\n view.style.removeProperty('opacity');\n view.style.removeProperty('transform');\n view.style.removeProperty('visibility');\n\n // Ensure the active view is visible\n if (i === index) {\n view.classList.remove(VIEW_SWITCHER_CONSTANTS.classes.VIEW_HIDDEN);\n return;\n }\n\n // Ensure all non-active views are hidden\n view.classList.add(VIEW_SWITCHER_CONSTANTS.classes.VIEW_HIDDEN);\n view.style.display = 'none';\n });\n }\n\n /**\n * Initiates a slide transition from one view to another.\n * @param fromIndex The view index to transition from.\n * @param toIndex The view index to transition to.\n * @param direction The transition animation direction.\n */\n public async transitionToView(fromIndex: number, toIndex: number, animationType: ViewSwitcherAnimationType, direction?: ViewAnimationDirection): Promise<void> {\n const views = this._getViews();\n const fromView = views[fromIndex];\n const toView = views[toIndex];\n\n return new Promise<void>(resolve => {\n // Show the view so we can calculate the height and start the transition in the next frame\n toView.style.removeProperty('visibility');\n\n window.requestAnimationFrame(() => {\n let transitionProp: string;\n switch (animationType) {\n case ViewSwitcherAnimationType.Slide:\n this._slideToView(fromView, toView, direction as ViewAnimationDirection);\n transitionProp = 'transform';\n break;\n case ViewSwitcherAnimationType.Fade:\n this._fadeToView(fromView, toView);\n transitionProp = 'opacity';\n break;\n default:\n return;\n }\n\n // Start the height transition (this will not animate if the height doesn't change)\n this._animateHeight(fromView, toView);\n\n if (fromView) {\n // Wait for the transform transition to complete before resolving and completing transition\n fromView.addEventListener('transitionend', transitionEndHandler);\n } else {\n toView.classList.remove(VIEW_SWITCHER_CONSTANTS.classes.VIEW_HIDDEN);\n }\n\n function transitionEndHandler(evt: TransitionEvent): void {\n if (evt.propertyName === transitionProp) {\n fromView.removeEventListener('transitionend', transitionEndHandler);\n toView.classList.remove(VIEW_SWITCHER_CONSTANTS.classes.VIEW_HIDDEN);\n resolve();\n }\n }\n });\n });\n }\n\n /**\n * Initiates a slide transition from one view to another.\n * @param fromIndex The view index to transition from.\n * @param toIndex The view index to transition to.\n * @param direction The transition animation direction.\n */\n private _slideToView(fromView: HTMLElement | null, toView: HTMLElement, direction: ViewAnimationDirection): void {\n // Use a CSS transform on the view to slide it in the requested direction\n if (direction === ViewAnimationDirection.Left) {\n if (fromView) {\n fromView.style.transform = 'translate3d(-100%, 0, 0)';\n }\n toView.style.transform = 'translate3d(0, 0, 0)';\n } else {\n if (fromView) {\n fromView.style.transform = 'translate3d(100%, 0, 0)';\n }\n toView.style.transform = 'translate3d(0, 0, 0)';\n }\n }\n\n private _fadeToView(fromView: HTMLElement | null, toView: HTMLElement): void {\n if (fromView) {\n fromView.style.opacity = '0';\n }\n toView.style.opacity = '1';\n }\n\n /**\n * Attempts to animate the height of our container element to match that of the next view.\n * @param fromIndex The view index we are transitioning from.\n * @param toIndex The view index we are transitioning to.\n */\n private _animateHeight(fromView: HTMLElement | null, toView: HTMLElement): void {\n const fromViewHeight = fromView ? this._getViewHeight(fromView) : 0;\n const toViewHeight = this._getViewHeight(toView);\n\n // We only animate the height if it is different...\n if (fromViewHeight !== toViewHeight) {\n this._rootElement.addEventListener('transitionend', this._onRootTransitionEnd.bind(this));\n\n // Set to the height of the current view so we can animate the height from something static\n this._setHeight(fromViewHeight);\n\n // We need to wait two frames before animating to the new height due to event loop\n window.requestAnimationFrame(() => {\n window.requestAnimationFrame(() => {\n // Start the transition to the new view height\n this._setHeight(toViewHeight);\n });\n });\n }\n }\n\n /**\n * Handles the root container transitionend event.\n * @param evt The transition event.\n */\n private _onRootTransitionEnd(evt: TransitionEvent): void {\n if (evt.propertyName === 'height') {\n this._rootElement.removeEventListener('transitionend', this._onRootTransitionEnd);\n // Removes the static height from the root element so that it can grow with content\n this._rootElement.style.removeProperty('height');\n }\n }\n\n /**\n * Resets the animation type on the root element.\n * @param type The animation type.\n */\n public setAnimationType(type: ViewSwitcherAnimationType): void {\n removeClass([VIEW_SWITCHER_CONSTANTS.classes.VIEW_SWITCHER_SLIDE, VIEW_SWITCHER_CONSTANTS.classes.VIEW_SWITCHER_FADE], this._component);\n\n switch (type) {\n case ViewSwitcherAnimationType.Slide:\n this._component.classList.add(VIEW_SWITCHER_CONSTANTS.classes.VIEW_SWITCHER_SLIDE);\n break;\n case ViewSwitcherAnimationType.Fade:\n this._component.classList.add(VIEW_SWITCHER_CONSTANTS.classes.VIEW_SWITCHER_FADE);\n break;\n }\n }\n\n /**\n * Get all view elements.\n */\n private _getViews(): HTMLElement[] {\n return this._slotElement.assignedNodes().filter(n => n.nodeType === 1) as HTMLElement[];\n }\n\n /**\n * Sets the height on the root container element.\n * @param viewHeight The new height.\n */\n private _setHeight(viewHeight: number): void {\n this._rootElement.style.height = `${viewHeight}px`;\n }\n\n /**\n * Calculate the absolute height of a view.\n * @param view The view to calculate height from.\n */\n private _getViewHeight(view: HTMLElement): number {\n let height = 0;\n const elements = view.children.length ? (Array.from(view.children) as HTMLElement[]) : [view];\n\n for (const element of elements) {\n const styles = window.getComputedStyle(element);\n const margin = parseFloat(styles.marginTop as string) + parseFloat(styles.marginBottom as string);\n height += Math.ceil(element.offsetHeight + margin);\n }\n\n return height;\n }\n}\n", "import { ICustomElementFoundation, Platform, isDefined } from '@tylertech/forge-core';\n\nimport { IViewSwitcherAdapter } from './view-switcher-adapter';\nimport { VIEW_SWITCHER_CONSTANTS, ViewAnimationDirection, ViewSwitcherAnimationType } from './view-switcher-constants';\n\nexport interface IViewSwitcherFoundation extends ICustomElementFoundation {\n index: number;\n animationType: ViewSwitcherAnimationType;\n next(): void;\n previous(): void;\n goToStart(): void;\n goToEnd(): void;\n}\n\nexport class ViewSwitcherFoundation implements IViewSwitcherFoundation {\n private _viewCount = 0;\n private _viewIndex = 0;\n private _animationType = ViewSwitcherAnimationType.None;\n private _viewsChangedListener: () => void;\n\n constructor(private _adapter: IViewSwitcherAdapter) {\n this._viewsChangedListener = () => this._onViewsChanged();\n }\n\n public initialize(): void {\n this._viewCount = this._adapter.getViewCount();\n this._adapter.startViewObserver(this._viewsChangedListener);\n this._adapter.setAnimationType(this._animationType);\n\n if (this._viewCount) {\n this._initializeAnimationType();\n }\n }\n\n public disconnect(): void {\n this._adapter.stopViewObserver();\n }\n\n private _initializeAnimationType(): void {\n switch (this._animationType) {\n case ViewSwitcherAnimationType.Slide:\n this._adapter.initializeSlideViews(this._viewIndex);\n break;\n case ViewSwitcherAnimationType.Fade:\n this._adapter.initializeFadeViews(this._viewIndex);\n break;\n case ViewSwitcherAnimationType.None:\n default:\n this._adapter.hideInactiveViews(this._viewIndex);\n break;\n }\n }\n\n private _onViewsChanged(): void {\n this._viewCount = this._adapter.getViewCount();\n\n if (this._viewCount === 0) {\n this._viewIndex = 0;\n }\n\n if (this._viewCount) {\n this._initializeAnimationType();\n }\n\n // If the view index is higher than the number of views then we need to reset it\n if (this._viewCount > 0 && this._viewIndex >= this._viewCount) {\n const currIndex = this._viewIndex;\n this._viewIndex = this._viewCount > 0 ? this._viewCount - 1 : 0;\n this._goToView(currIndex, this._viewCount);\n }\n }\n\n private async _goToView(fromIndex: number, viewCount?: number): Promise<void> {\n this._viewCount = !isDefined(viewCount) ? this._adapter.getViewCount() : viewCount as number;\n \n // If the index that we're trying to transition to is out of range, or is the same index, then we ignore the transition\n const isValidIndex = this._viewIndex >= 0 && this._viewIndex <= this._viewCount - 1;\n if (!isValidIndex || fromIndex === this._clampedViewIndex(this._viewIndex, this._viewCount)) {\n return;\n }\n\n switch (this._animationType) {\n case ViewSwitcherAnimationType.Slide:\n const animationDirection = this._viewIndex > fromIndex ? ViewAnimationDirection.Left : ViewAnimationDirection.Right;\n await this._adapter.transitionToView(fromIndex, this._viewIndex, ViewSwitcherAnimationType.Slide, animationDirection);\n this._adapter.initializeSlideViews(this._viewIndex);\n break;\n case ViewSwitcherAnimationType.Fade:\n await this._adapter.transitionToView(fromIndex, this._viewIndex, ViewSwitcherAnimationType.Fade);\n this._adapter.initializeFadeViews(this._viewIndex);\n break;\n case ViewSwitcherAnimationType.None:\n default:\n this._adapter.setActiveView(this._viewIndex);\n break;\n }\n }\n\n private _clampedViewIndex(viewIndex: number, viewCount: number): number {\n if (viewIndex < 0) {\n viewIndex = 0;\n } else if (viewIndex > viewCount - 1) {\n viewIndex = viewCount > 0 ? viewCount - 1 : 0;\n }\n return viewIndex;\n }\n\n public next(): void {\n this.index++;\n }\n\n public previous(): void {\n this.index--;\n }\n\n public goToStart(): void {\n this.index = 0;\n }\n\n public goToEnd(): void {\n this.index = this._viewCount - 1;\n }\n\n public get index(): number {\n return this._viewIndex;\n }\n public set index(value: number) {\n if (this._viewIndex !== value) {\n const currIndex = this._viewIndex;\n this._viewIndex = value;\n this._goToView(currIndex);\n this._adapter.setHostAttribute(VIEW_SWITCHER_CONSTANTS.attributes.INDEX, this._viewIndex.toString());\n }\n }\n\n public get animationType(): ViewSwitcherAnimationType {\n return this._animationType;\n }\n public set animationType(value: ViewSwitcherAnimationType) {\n if (this._animationType !== value) {\n this._animationType = value;\n this._initializeAnimationType();\n this._adapter.setAnimationType(this._animationType);\n this._adapter.setHostAttribute(VIEW_SWITCHER_CONSTANTS.attributes.ANIMATION_TYPE, this._animationType);\n }\n }\n}\n", "import { CustomElement, attachShadowTemplate, coerceNumber, FoundationProperty, upgradeProperty } from '@tylertech/forge-core';\nimport { ViewSwitcherAdapter } from './view-switcher-adapter';\nimport { ViewSwitcherFoundation } from './view-switcher-foundation';\nimport { VIEW_SWITCHER_CONSTANTS, ViewSwitcherAnimationType } from './view-switcher-constants';\nimport { ViewComponent } from './view/view';\nimport { BaseComponent, IBaseComponent } from '../core/base/base-component';\n\nconst template = '<template><div class=\\\"forge-view-switcher\\\" part=\\\"root\\\"><slot></slot></div></template>';\nconst styles = '.forge-view-switcher{height:auto;height:var(--forge-view-switcher-height,auto);position:relative;overflow:hidden;-webkit-transition:height var(--forge-view-switcher-animation-duration, 500ms) cubic-bezier(.35, 0, .25, 1);transition:height var(--forge-view-switcher-animation-duration, 500ms) cubic-bezier(.35, 0, .25, 1)}.forge-view-switcher ::slotted(.forge-view-switcher__view--hidden){position:absolute;top:0;right:0;bottom:0;left:0}:host{height:auto;height:var(--forge-view-switcher-height,auto);display:block}:host([hidden]){display:none}:host(.forge-view-switcher--slide) ::slotted(forge-view){-webkit-transition:-webkit-transform var(--forge-view-switcher-animation-duration, 500ms) cubic-bezier(.35, 0, .25, 1);transition:-webkit-transform var(--forge-view-switcher-animation-duration, 500ms) cubic-bezier(.35, 0, .25, 1);transition:transform var(--forge-view-switcher-animation-duration, 500ms) cubic-bezier(.35, 0, .25, 1);transition:transform var(--forge-view-switcher-animation-duration, 500ms) cubic-bezier(.35, 0, .25, 1),-webkit-transform var(--forge-view-switcher-animation-duration, 500ms) cubic-bezier(.35, 0, .25, 1);will-change:transform}:host(.forge-view-switcher--fade) ::slotted(forge-view){-webkit-transition:opacity var(--forge-view-switcher-animation-duration, 500ms) cubic-bezier(.35, 0, .25, 1);transition:opacity var(--forge-view-switcher-animation-duration, 500ms) cubic-bezier(.35, 0, .25, 1);will-change:opacity}:host(.forge-view-switcher--fade) ::slotted(.forge-view-switcher__view--hidden){opacity:0}';\n\nexport interface IViewSwitcherComponent extends IBaseComponent {\n index: number;\n animationType: `${ViewSwitcherAnimationType}`;\n next(): void;\n previous(): void;\n goToStart(): void;\n goToEnd(): void;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'forge-view-switcher': IViewSwitcherComponent;\n }\n}\n\n/**\n * The web component class behind the `<forge-view-switcher>` custom element.\n * \n * @tag forge-view-switcher\n */\n@CustomElement({\n name: VIEW_SWITCHER_CONSTANTS.elementName,\n dependencies: [ViewComponent]\n})\nexport class ViewSwitcherComponent extends BaseComponent implements IViewSwitcherComponent {\n public static get observedAttributes(): string[] {\n return [\n VIEW_SWITCHER_CONSTANTS.attributes.INDEX,\n VIEW_SWITCHER_CONSTANTS.attributes.ANIMATION_TYPE\n ];\n }\n\n private _foundation: ViewSwitcherFoundation;\n\n constructor() {\n super();\n attachShadowTemplate(this, template, styles);\n this._foundation = new ViewSwitcherFoundation(new ViewSwitcherAdapter(this));\n }\n\n public connectedCallback(): void {\n // upgradeProperty(this, 'index');\n this._foundation.initialize();\n }\n\n public disconnectedCallback(): void {\n this._foundation.disconnect();\n }\n\n public attributeChangedCallback(name: string, oldValue: string, newValue: string): void {\n switch (name) {\n case VIEW_SWITCHER_CONSTANTS.attributes.INDEX:\n this.index = coerceNumber(newValue);\n break;\n case VIEW_SWITCHER_CONSTANTS.attributes.ANIMATION_TYPE:\n this.animationType = newValue as ViewSwitcherAnimationType;\n break;\n }\n }\n\n /** Gets/sets the currently visible view index. */\n @FoundationProperty()\n public declare index: number;\n \n /** Gets/sets the animation type. */\n @FoundationProperty()\n public declare animationType: `${ViewSwitcherAnimationType}`;\n\n /** Transitions to the next view. */\n public next(): void {\n this._foundation.next();\n }\n\n /** Transitions to the previous view. */\n public previous(): void {\n this._foundation.previous();\n }\n\n /** Transitions to the first view. */\n public goToStart(): void {\n this._foundation.goToStart();\n }\n\n /** Transitions to the last view. */\n public goToEnd(): void {\n this._foundation.goToEnd();\n }\n}\n", "import { defineCustomElement } from '@tylertech/forge-core';\n\nimport { ViewSwitcherComponent } from './view-switcher';\n\nexport * from './view-switcher-adapter';\nexport * from './view-switcher-constants';\nexport * from './view-switcher-foundation';\nexport * from './view-switcher';\nexport * from './view';\n\nexport function defineViewSwitcherComponent(): void {\n defineCustomElement(ViewSwitcherComponent);\n}\n"],
5
- "mappings": "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",
6
- "names": []
4
+ "sourcesContent": ["import { COMPONENT_NAME_PREFIX } from '../constants';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}view-switcher`;\n\nconst classes = {\n ROOT: 'forge-view-switcher',\n VIEW_HIDDEN: 'forge-view-switcher__view--hidden',\n VIEW_SWITCHER_SLIDE: 'forge-view-switcher--slide',\n VIEW_SWITCHER_FADE: 'forge-view-switcher--fade'\n};\n\nconst selectors = {\n ROOT: `.${classes.ROOT}`,\n DEFAULT_SLOT: 'slot:not([name])',\n VIEW_HIDDEN: `.${classes.VIEW_HIDDEN}`\n};\n\nconst attributes = {\n INDEX: 'index',\n ANIMATION_TYPE: 'animation-type'\n};\n\nconst numbers = {\n DEFAULT_TRANSITION_DURATION: 500\n};\n\nexport const VIEW_SWITCHER_CONSTANTS = {\n elementName,\n attributes,\n classes,\n selectors,\n numbers\n};\n\nexport interface IViewSwitcherView {\n element: HTMLElement;\n}\n\nexport enum ViewAnimationDirection {\n Left = 'left',\n Right = 'right'\n}\n\nexport enum ViewSwitcherAnimationType {\n None = 'none',\n Slide = 'slide',\n Fade = 'fade'\n}\n", "import { getShadowElement, removeClass } from '@tylertech/forge-core';\nimport { BaseAdapter, IBaseAdapter } from '../core/base/base-adapter';\nimport { IViewSwitcherComponent } from './view-switcher';\nimport { ViewAnimationDirection, ViewSwitcherAnimationType, VIEW_SWITCHER_CONSTANTS } from './view-switcher-constants';\n\nexport interface IViewSwitcherAdapter extends IBaseAdapter {\n getViewCount(): number;\n startViewObserver(callback: MutationCallback): void;\n stopViewObserver(): void;\n initializeSlideViews(index: number): void;\n initializeFadeViews(index: number): void;\n setActiveView(index: number): void;\n hideInactiveViews(index: number): void;\n transitionToView(fromIndex: number, toIndex: number, animationType: ViewSwitcherAnimationType, direction?: ViewAnimationDirection): Promise<void>;\n setAnimationType(type: ViewSwitcherAnimationType): void;\n}\n\nexport class ViewSwitcherAdapter extends BaseAdapter<IViewSwitcherComponent> implements IViewSwitcherAdapter {\n private _rootElement: HTMLElement;\n private _slotElement: HTMLSlotElement;\n private _viewObserver: MutationObserver;\n\n constructor(component: IViewSwitcherComponent) {\n super(component);\n this._rootElement = getShadowElement(component, VIEW_SWITCHER_CONSTANTS.selectors.ROOT);\n this._slotElement = getShadowElement(component, VIEW_SWITCHER_CONSTANTS.selectors.DEFAULT_SLOT) as HTMLSlotElement;\n }\n\n public getViewCount(): number {\n return this._getViews().length;\n }\n\n public startViewObserver(callback: MutationCallback): void {\n this._viewObserver = new MutationObserver(callback);\n this._viewObserver.observe(this._component, { childList: true });\n }\n\n public stopViewObserver(): void {\n if (this._viewObserver) {\n this._viewObserver.disconnect();\n }\n }\n\n /**\n * Initializes the views with styles for a slide transition.\n * @param index The active view index.\n */\n public initializeSlideViews(index: number): void {\n let views = this._getViews();\n views.forEach((view, i) => {\n // Make sure that we remove properties if they were set from another animation type\n view.style.removeProperty('opacity');\n view.style.removeProperty('display');\n\n // Ensure that the currently active view is visible\n if (i === index) {\n views[index].classList.remove(VIEW_SWITCHER_CONSTANTS.classes.VIEW_HIDDEN);\n view.style.removeProperty('visibility');\n return;\n }\n\n // We disable the transition when resetting the hidden views so that the animation doesn't occur\n view.style.transition = 'none';\n\n // Ensure the view is hidden\n view.classList.add(VIEW_SWITCHER_CONSTANTS.classes.VIEW_HIDDEN);\n view.style.visibility = 'hidden';\n\n // Reset the position of the view to the left or right of the switcher\n if (i > index) {\n view.style.transform = 'translate3d(100%, 0, 0)';\n } else {\n view.style.transform = 'translate3d(-100%, 0, 0)';\n }\n });\n\n // Wait a frame for the views to reposition, then re-enable the transition for all hidden views\n window.requestAnimationFrame(() => {\n views = this._getViews();\n views.forEach((v, i) => {\n if (i === index) {\n return;\n }\n v.style.removeProperty('transition');\n });\n });\n }\n\n /**\n * Initializes the view styles when using a fade transition.\n * @param index The active view index.\n */\n public initializeFadeViews(index: number): void {\n const views = this._getViews();\n views.forEach((view, i) => {\n // Make sure that we remove properties if they were set from another animation type\n view.style.removeProperty('transform');\n view.style.removeProperty('display');\n\n // Ensure that the visible view doesn't have the hidden class\n if (i === index) {\n view.classList.remove(VIEW_SWITCHER_CONSTANTS.classes.VIEW_HIDDEN);\n view.style.removeProperty('visibility');\n return;\n }\n\n // Ensure the hidden views have the proper class\n view.classList.add(VIEW_SWITCHER_CONSTANTS.classes.VIEW_HIDDEN);\n view.style.visibility = 'hidden';\n });\n\n // Ensure that the visible view has the proper opacity\n if (views[index]) {\n views[index].style.opacity = '1';\n }\n }\n\n /**\n * This is used when no animation type is set to allow for snapping the view into place.\n * @param index The currently active view index.\n */\n public setActiveView(index: number): void {\n const views = this._getViews();\n\n views.forEach((view, i) => {\n if (i === index) {\n return;\n }\n // Hide all non-visible views\n view.classList.add(VIEW_SWITCHER_CONSTANTS.classes.VIEW_HIDDEN);\n view.style.display = 'none';\n });\n\n // Ensure that the active view is visible\n if (views[index]) {\n views[index].classList.remove(VIEW_SWITCHER_CONSTANTS.classes.VIEW_HIDDEN);\n views[index].style.removeProperty('display');\n }\n }\n\n /**\n * This is used when no animation type is specific to hide all non-visible views.\n * @param index The currently active view index.\n */\n public hideInactiveViews(index: number): void {\n const views = this._getViews();\n views.forEach((view, i) => {\n // Make sure that we remove properties if they were set from another animation type\n view.style.removeProperty('opacity');\n view.style.removeProperty('transform');\n view.style.removeProperty('visibility');\n\n // Ensure the active view is visible\n if (i === index) {\n view.classList.remove(VIEW_SWITCHER_CONSTANTS.classes.VIEW_HIDDEN);\n return;\n }\n\n // Ensure all non-active views are hidden\n view.classList.add(VIEW_SWITCHER_CONSTANTS.classes.VIEW_HIDDEN);\n view.style.display = 'none';\n });\n }\n\n /**\n * Initiates a slide transition from one view to another.\n * @param fromIndex The view index to transition from.\n * @param toIndex The view index to transition to.\n * @param direction The transition animation direction.\n */\n public async transitionToView(fromIndex: number, toIndex: number, animationType: ViewSwitcherAnimationType, direction?: ViewAnimationDirection): Promise<void> {\n const views = this._getViews();\n const fromView = views[fromIndex];\n const toView = views[toIndex];\n\n return new Promise<void>(resolve => {\n // Show the view so we can calculate the height and start the transition in the next frame\n toView.style.removeProperty('visibility');\n\n window.requestAnimationFrame(() => {\n let transitionProp: string;\n switch (animationType) {\n case ViewSwitcherAnimationType.Slide:\n this._slideToView(fromView, toView, direction as ViewAnimationDirection);\n transitionProp = 'transform';\n break;\n case ViewSwitcherAnimationType.Fade:\n this._fadeToView(fromView, toView);\n transitionProp = 'opacity';\n break;\n default:\n return;\n }\n\n // Start the height transition (this will not animate if the height doesn't change)\n this._animateHeight(fromView, toView);\n\n if (fromView) {\n // Wait for the transform transition to complete before resolving and completing transition\n fromView.addEventListener('transitionend', transitionEndHandler);\n } else {\n toView.classList.remove(VIEW_SWITCHER_CONSTANTS.classes.VIEW_HIDDEN);\n }\n\n function transitionEndHandler(evt: TransitionEvent): void {\n if (evt.propertyName === transitionProp) {\n fromView.removeEventListener('transitionend', transitionEndHandler);\n toView.classList.remove(VIEW_SWITCHER_CONSTANTS.classes.VIEW_HIDDEN);\n resolve();\n }\n }\n });\n });\n }\n\n /**\n * Initiates a slide transition from one view to another.\n * @param fromIndex The view index to transition from.\n * @param toIndex The view index to transition to.\n * @param direction The transition animation direction.\n */\n private _slideToView(fromView: HTMLElement | null, toView: HTMLElement, direction: ViewAnimationDirection): void {\n // Use a CSS transform on the view to slide it in the requested direction\n if (direction === ViewAnimationDirection.Left) {\n if (fromView) {\n fromView.style.transform = 'translate3d(-100%, 0, 0)';\n }\n toView.style.transform = 'translate3d(0, 0, 0)';\n } else {\n if (fromView) {\n fromView.style.transform = 'translate3d(100%, 0, 0)';\n }\n toView.style.transform = 'translate3d(0, 0, 0)';\n }\n }\n\n private _fadeToView(fromView: HTMLElement | null, toView: HTMLElement): void {\n if (fromView) {\n fromView.style.opacity = '0';\n }\n toView.style.opacity = '1';\n }\n\n /**\n * Attempts to animate the height of our container element to match that of the next view.\n * @param fromIndex The view index we are transitioning from.\n * @param toIndex The view index we are transitioning to.\n */\n private _animateHeight(fromView: HTMLElement | null, toView: HTMLElement): void {\n const fromViewHeight = fromView ? this._getViewHeight(fromView) : 0;\n const toViewHeight = this._getViewHeight(toView);\n\n // We only animate the height if it is different...\n if (fromViewHeight !== toViewHeight) {\n this._rootElement.addEventListener('transitionend', this._onRootTransitionEnd.bind(this));\n\n // Set to the height of the current view so we can animate the height from something static\n this._setHeight(fromViewHeight);\n\n // We need to wait two frames before animating to the new height due to event loop\n window.requestAnimationFrame(() => {\n window.requestAnimationFrame(() => {\n // Start the transition to the new view height\n this._setHeight(toViewHeight);\n });\n });\n }\n }\n\n /**\n * Handles the root container transitionend event.\n * @param evt The transition event.\n */\n private _onRootTransitionEnd(evt: TransitionEvent): void {\n if (evt.propertyName === 'height') {\n this._rootElement.removeEventListener('transitionend', this._onRootTransitionEnd);\n // Removes the static height from the root element so that it can grow with content\n this._rootElement.style.removeProperty('height');\n }\n }\n\n /**\n * Resets the animation type on the root element.\n * @param type The animation type.\n */\n public setAnimationType(type: ViewSwitcherAnimationType): void {\n removeClass([VIEW_SWITCHER_CONSTANTS.classes.VIEW_SWITCHER_SLIDE, VIEW_SWITCHER_CONSTANTS.classes.VIEW_SWITCHER_FADE], this._component);\n\n switch (type) {\n case ViewSwitcherAnimationType.Slide:\n this._component.classList.add(VIEW_SWITCHER_CONSTANTS.classes.VIEW_SWITCHER_SLIDE);\n break;\n case ViewSwitcherAnimationType.Fade:\n this._component.classList.add(VIEW_SWITCHER_CONSTANTS.classes.VIEW_SWITCHER_FADE);\n break;\n }\n }\n\n /**\n * Get all view elements.\n */\n private _getViews(): HTMLElement[] {\n return this._slotElement.assignedNodes().filter(n => n.nodeType === 1) as HTMLElement[];\n }\n\n /**\n * Sets the height on the root container element.\n * @param viewHeight The new height.\n */\n private _setHeight(viewHeight: number): void {\n this._rootElement.style.height = `${viewHeight}px`;\n }\n\n /**\n * Calculate the absolute height of a view.\n * @param view The view to calculate height from.\n */\n private _getViewHeight(view: HTMLElement): number {\n let height = 0;\n const elements = view.children.length ? (Array.from(view.children) as HTMLElement[]) : [view];\n\n for (const element of elements) {\n const styles = window.getComputedStyle(element);\n const margin = parseFloat(styles.marginTop as string) + parseFloat(styles.marginBottom as string);\n height += Math.ceil(element.offsetHeight + margin);\n }\n\n return height;\n }\n}\n", "import { ICustomElementFoundation, Platform, isDefined } from '@tylertech/forge-core';\n\nimport { IViewSwitcherAdapter } from './view-switcher-adapter';\nimport { VIEW_SWITCHER_CONSTANTS, ViewAnimationDirection, ViewSwitcherAnimationType } from './view-switcher-constants';\n\nexport interface IViewSwitcherFoundation extends ICustomElementFoundation {\n index: number;\n animationType: ViewSwitcherAnimationType;\n next(): void;\n previous(): void;\n goToStart(): void;\n goToEnd(): void;\n}\n\nexport class ViewSwitcherFoundation implements IViewSwitcherFoundation {\n private _viewCount = 0;\n private _viewIndex = 0;\n private _animationType = ViewSwitcherAnimationType.None;\n private _viewsChangedListener: () => void;\n\n constructor(private _adapter: IViewSwitcherAdapter) {\n this._viewsChangedListener = () => this._onViewsChanged();\n }\n\n public initialize(): void {\n this._viewCount = this._adapter.getViewCount();\n this._adapter.startViewObserver(this._viewsChangedListener);\n this._adapter.setAnimationType(this._animationType);\n\n if (this._viewCount) {\n this._initializeAnimationType();\n }\n }\n\n public disconnect(): void {\n this._adapter.stopViewObserver();\n }\n\n private _initializeAnimationType(): void {\n switch (this._animationType) {\n case ViewSwitcherAnimationType.Slide:\n this._adapter.initializeSlideViews(this._viewIndex);\n break;\n case ViewSwitcherAnimationType.Fade:\n this._adapter.initializeFadeViews(this._viewIndex);\n break;\n case ViewSwitcherAnimationType.None:\n default:\n this._adapter.hideInactiveViews(this._viewIndex);\n break;\n }\n }\n\n private _onViewsChanged(): void {\n this._viewCount = this._adapter.getViewCount();\n\n if (this._viewCount === 0) {\n this._viewIndex = 0;\n }\n\n if (this._viewCount) {\n this._initializeAnimationType();\n }\n\n // If the view index is higher than the number of views then we need to reset it\n if (this._viewCount > 0 && this._viewIndex >= this._viewCount) {\n const currIndex = this._viewIndex;\n this._viewIndex = this._viewCount > 0 ? this._viewCount - 1 : 0;\n this._goToView(currIndex, this._viewCount);\n }\n }\n\n private async _goToView(fromIndex: number, viewCount?: number): Promise<void> {\n this._viewCount = !isDefined(viewCount) ? this._adapter.getViewCount() : viewCount as number;\n \n // If the index that we're trying to transition to is out of range, or is the same index, then we ignore the transition\n const isValidIndex = this._viewIndex >= 0 && this._viewIndex <= this._viewCount - 1;\n if (!isValidIndex || fromIndex === this._clampedViewIndex(this._viewIndex, this._viewCount)) {\n return;\n }\n\n switch (this._animationType) {\n case ViewSwitcherAnimationType.Slide:\n const animationDirection = this._viewIndex > fromIndex ? ViewAnimationDirection.Left : ViewAnimationDirection.Right;\n await this._adapter.transitionToView(fromIndex, this._viewIndex, ViewSwitcherAnimationType.Slide, animationDirection);\n this._adapter.initializeSlideViews(this._viewIndex);\n break;\n case ViewSwitcherAnimationType.Fade:\n await this._adapter.transitionToView(fromIndex, this._viewIndex, ViewSwitcherAnimationType.Fade);\n this._adapter.initializeFadeViews(this._viewIndex);\n break;\n case ViewSwitcherAnimationType.None:\n default:\n this._adapter.setActiveView(this._viewIndex);\n break;\n }\n }\n\n private _clampedViewIndex(viewIndex: number, viewCount: number): number {\n if (viewIndex < 0) {\n viewIndex = 0;\n } else if (viewIndex > viewCount - 1) {\n viewIndex = viewCount > 0 ? viewCount - 1 : 0;\n }\n return viewIndex;\n }\n\n public next(): void {\n this.index++;\n }\n\n public previous(): void {\n this.index--;\n }\n\n public goToStart(): void {\n this.index = 0;\n }\n\n public goToEnd(): void {\n this.index = this._viewCount - 1;\n }\n\n public get index(): number {\n return this._viewIndex;\n }\n public set index(value: number) {\n if (this._viewIndex !== value) {\n const currIndex = this._viewIndex;\n this._viewIndex = value;\n this._goToView(currIndex);\n this._adapter.setHostAttribute(VIEW_SWITCHER_CONSTANTS.attributes.INDEX, this._viewIndex.toString());\n }\n }\n\n public get animationType(): ViewSwitcherAnimationType {\n return this._animationType;\n }\n public set animationType(value: ViewSwitcherAnimationType) {\n if (this._animationType !== value) {\n this._animationType = value;\n this._initializeAnimationType();\n this._adapter.setAnimationType(this._animationType);\n this._adapter.setHostAttribute(VIEW_SWITCHER_CONSTANTS.attributes.ANIMATION_TYPE, this._animationType);\n }\n }\n}\n", "import { CustomElement, attachShadowTemplate, coerceNumber, FoundationProperty, upgradeProperty } from '@tylertech/forge-core';\nimport { ViewSwitcherAdapter } from './view-switcher-adapter';\nimport { ViewSwitcherFoundation } from './view-switcher-foundation';\nimport { VIEW_SWITCHER_CONSTANTS, ViewSwitcherAnimationType } from './view-switcher-constants';\nimport { ViewComponent } from './view/view';\nimport { BaseComponent, IBaseComponent } from '../core/base/base-component';\n\nconst template = '<template><div class=\\\"forge-view-switcher\\\" part=\\\"root\\\"><slot></slot></div></template>';\nconst styles = '.forge-view-switcher{height:auto;height:var(--forge-view-switcher-height,auto);width:auto;width:var(--forge-view-switcher-width,auto);position:relative;overflow:hidden;-webkit-transition:height var(--forge-view-switcher-animation-duration, 500ms) cubic-bezier(.35, 0, .25, 1);transition:height var(--forge-view-switcher-animation-duration, 500ms) cubic-bezier(.35, 0, .25, 1)}.forge-view-switcher ::slotted(.forge-view-switcher__view--hidden){position:absolute;top:0;right:0;bottom:0;left:0}:host{height:auto;height:var(--forge-view-switcher-height,auto);width:auto;width:var(--forge-view-switcher-width,auto);display:block}:host([hidden]){display:none}:host(.forge-view-switcher--slide) ::slotted(forge-view){-webkit-transition:-webkit-transform var(--forge-view-switcher-animation-duration, 500ms) cubic-bezier(.35, 0, .25, 1);transition:-webkit-transform var(--forge-view-switcher-animation-duration, 500ms) cubic-bezier(.35, 0, .25, 1);transition:transform var(--forge-view-switcher-animation-duration, 500ms) cubic-bezier(.35, 0, .25, 1);transition:transform var(--forge-view-switcher-animation-duration, 500ms) cubic-bezier(.35, 0, .25, 1),-webkit-transform var(--forge-view-switcher-animation-duration, 500ms) cubic-bezier(.35, 0, .25, 1);will-change:transform}:host(.forge-view-switcher--fade) ::slotted(forge-view){-webkit-transition:opacity var(--forge-view-switcher-animation-duration, 500ms) cubic-bezier(.35, 0, .25, 1);transition:opacity var(--forge-view-switcher-animation-duration, 500ms) cubic-bezier(.35, 0, .25, 1);will-change:opacity}:host(.forge-view-switcher--fade) ::slotted(.forge-view-switcher__view--hidden){opacity:0}';\n\nexport interface IViewSwitcherComponent extends IBaseComponent {\n index: number;\n animationType: `${ViewSwitcherAnimationType}`;\n next(): void;\n previous(): void;\n goToStart(): void;\n goToEnd(): void;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'forge-view-switcher': IViewSwitcherComponent;\n }\n}\n\n/**\n * The web component class behind the `<forge-view-switcher>` custom element.\n * \n * @tag forge-view-switcher\n */\n@CustomElement({\n name: VIEW_SWITCHER_CONSTANTS.elementName,\n dependencies: [ViewComponent]\n})\nexport class ViewSwitcherComponent extends BaseComponent implements IViewSwitcherComponent {\n public static get observedAttributes(): string[] {\n return [\n VIEW_SWITCHER_CONSTANTS.attributes.INDEX,\n VIEW_SWITCHER_CONSTANTS.attributes.ANIMATION_TYPE\n ];\n }\n\n private _foundation: ViewSwitcherFoundation;\n\n constructor() {\n super();\n attachShadowTemplate(this, template, styles);\n this._foundation = new ViewSwitcherFoundation(new ViewSwitcherAdapter(this));\n }\n\n public connectedCallback(): void {\n // upgradeProperty(this, 'index');\n this._foundation.initialize();\n }\n\n public disconnectedCallback(): void {\n this._foundation.disconnect();\n }\n\n public attributeChangedCallback(name: string, oldValue: string, newValue: string): void {\n switch (name) {\n case VIEW_SWITCHER_CONSTANTS.attributes.INDEX:\n this.index = coerceNumber(newValue);\n break;\n case VIEW_SWITCHER_CONSTANTS.attributes.ANIMATION_TYPE:\n this.animationType = newValue as ViewSwitcherAnimationType;\n break;\n }\n }\n\n /** Gets/sets the currently visible view index. */\n @FoundationProperty()\n public declare index: number;\n \n /** Gets/sets the animation type. */\n @FoundationProperty()\n public declare animationType: `${ViewSwitcherAnimationType}`;\n\n /** Transitions to the next view. */\n public next(): void {\n this._foundation.next();\n }\n\n /** Transitions to the previous view. */\n public previous(): void {\n this._foundation.previous();\n }\n\n /** Transitions to the first view. */\n public goToStart(): void {\n this._foundation.goToStart();\n }\n\n /** Transitions to the last view. */\n public goToEnd(): void {\n this._foundation.goToEnd();\n }\n}\n", "import { defineCustomElement } from '@tylertech/forge-core';\n\nimport { ViewSwitcherComponent } from './view-switcher';\n\nexport * from './view-switcher-adapter';\nexport * from './view-switcher-constants';\nexport * from './view-switcher-foundation';\nexport * from './view-switcher';\nexport * from './view';\n\nexport function defineViewSwitcherComponent(): void {\n defineCustomElement(ViewSwitcherComponent);\n}\n"],
5
+ "mappings": "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",
6
+ "names": ["elementName", "COMPONENT_NAME_PREFIX", "classes", "selectors", "attributes", "numbers", "VIEW_SWITCHER_CONSTANTS", "ViewAnimationDirection", "ViewSwitcherAnimationType", "ViewSwitcherAdapter", "BaseAdapter", "component", "getShadowElement", "VIEW_SWITCHER_CONSTANTS", "callback", "index", "views", "view", "i", "v", "fromIndex", "toIndex", "animationType", "direction", "fromView", "toView", "resolve", "transitionProp", "transitionEndHandler", "evt", "fromViewHeight", "toViewHeight", "type", "removeClass", "n", "viewHeight", "height", "elements", "element", "styles", "margin", "ViewSwitcherFoundation", "_adapter", "currIndex", "fromIndex", "viewCount", "isDefined", "animationDirection", "viewIndex", "value", "VIEW_SWITCHER_CONSTANTS", "template", "styles", "ViewSwitcherComponent", "BaseComponent", "attachShadowTemplate", "ViewSwitcherFoundation", "ViewSwitcherAdapter", "VIEW_SWITCHER_CONSTANTS", "name", "oldValue", "newValue", "coerceNumber", "__decorateClass", "FoundationProperty", "CustomElement", "ViewComponent", "defineViewSwitcherComponent", "defineCustomElement", "ViewSwitcherComponent"]
7
7
  }
@@ -3,5 +3,5 @@
3
3
  * Copyright 2023 Tyler Technologies, Inc.
4
4
  * License: Apache-2.0
5
5
  */
6
- import{a,d as A}from"./chunk.G5JTL66M.js";import{a as E}from"./chunk.5PXABBKU.js";import{a as n}from"./chunk.B3IJU6XJ.js";import{a as f,b as I,d}from"./chunk.OOW3UKT4.js";import{a as m,e as _,g as v,l as T}from"./chunk.MMVZJLXE.js";import{d as h}from"./chunk.R4NDFXVA.js";import{k as g}from"./chunk.G76HB2FK.js";import{a as c,f as l}from"./chunk.MCIQXNKY.js";var L=`${I}button-toggle-group`,S={VALUE:"value",MULTIPLE:"multiple",MANDATORY:"mandatory",VERTICAL:"vertical",STRETCH:"stretch",DISABLED:"disabled",DENSE:"dense"},y={VERTICAL:"forge-button-toggle-group--vertical",STRETCH:"forge-button-toggle-group--stretch"},B={ROOT:".forge-button-toggle-group"},O={CHANGE:`${L}-change`},i={elementName:L,attributes:S,classes:y,selectors:B,events:O};var u=class extends E{constructor(t){super(t);this._rootElement=v(t,i.selectors.ROOT),this._slotElement=this._rootElement.querySelector("slot")}addListener(t,s){this._rootElement.addEventListener(t,s)}removeListener(t,s){this._rootElement.removeEventListener(t,s)}addSlotChangeListener(t){this._slotElement.addEventListener("slotchange",t)}removeSlotChangeListener(t){this._slotElement.addEventListener("slotchange",t)}deselect(t){this._getButtonToggleElements().filter(e=>e!==t).forEach(e=>e.selected=!1)}applyAdjacentSelections(t){let s=this._getButtonToggleElements();for(let e=s.length-1;e>0;e--)if(s[e].removeAttribute(a.attributes.SELECTED_ADJACENT),s[e].removeAttribute(a.attributes.SELECTED_ADJACENT_VERTICAL),s[e].selected&&s[e-1].selected){let C=t?a.attributes.SELECTED_ADJACENT_VERTICAL:a.attributes.SELECTED_ADJACENT;s[e].setAttribute(C,"")}}setVertical(t){t?this._rootElement.classList.add(i.classes.VERTICAL):this._rootElement.classList.remove(i.classes.VERTICAL)}setStretch(t){t?this._rootElement.classList.add(i.classes.STRETCH):this._rootElement.classList.remove(i.classes.STRETCH),this._getButtonToggleElements().forEach(e=>{t?e.setAttribute("stretch",""):e.removeAttribute("stretch")})}setDense(t){this._getButtonToggleElements().forEach(e=>e.dense=t)}setDisabled(t){this._getButtonToggleElements().forEach(e=>e.disabled=t)}getSelectedValues(){return this._getButtonToggleElements().filter(s=>s.selected).map(s=>s.value)}applyValues(t){this._getButtonToggleElements().forEach(e=>e.selected=t.indexOf(e.value)>=0)}createOptions(t){h(this._component),t.forEach(s=>{this._component.appendChild(this._createButtonToggle(s))})}_createButtonToggle(t){let s=document.createElement(a.elementName);if(s.value=t.value,t.label)s.textContent=t.label;else if(t.icon){let e=document.createElement("i");e.textContent=t.icon,e.classList.add(d),e.setAttribute("aria-hidden","true"),s.appendChild(e)}if(t.leadingIcon){let e;t.leadingIconType==="component"?(e=document.createElement("forge-icon"),e.name=t.leadingIcon):(e=document.createElement("i"),e.textContent=t.leadingIcon,e.classList.add(d),e.setAttribute("aria-hidden","true")),e.slot="leading",s.appendChild(e)}if(t.trailingIcon){let e;t.trailingIconType==="component"?(e=document.createElement("forge-icon"),e.name=t.trailingIcon):(e=document.createElement("i"),e.textContent=t.trailingIcon,e.classList.add(d),e.setAttribute("aria-hidden","true")),e.slot="trailing",s.appendChild(e)}return s}_getButtonToggleElements(){return Array.from(this._component.querySelectorAll(a.elementName))}};var p=class{constructor(o){this._adapter=o;this._isInitialized=!1;this._multiple=!1;this._mandatory=!1;this._vertical=!1;this._stretch=!1;this._dense=!1;this._disabled=!1;this._options=[];this._values=[];this._selectListener=t=>this._onSelect(t),this._slotListener=()=>this._synchronize()}initialize(){this._options&&this._options.length&&this._applyOptions(!1),this._adapter.addListener(a.events.SELECT,this._selectListener),this._adapter.addSlotChangeListener(this._slotListener),this._adapter.setVertical(this._vertical),this._adapter.setStretch(this._stretch),this._adapter.setDense(this._dense),this._adapter.setDisabled(this._disabled),this._adapter.applyAdjacentSelections(this._vertical),this._isInitialized=!0}disconnect(){this._isInitialized=!1,this._adapter.removeListener(a.events.SELECT,this._selectListener),this._adapter.removeSlotChangeListener(this._slotListener)}_synchronize(){if(this._multiple){let o=new Set(this._adapter.getSelectedValues().concat(this._values));this._applyValue(Array.from(o))}else{let o=this._adapter.getSelectedValues().concat(this._values);this.value=o.length?o[o.length-1]:null}}_onSelect(o){let t=o.target;if(this._mandatory&&!this._adapter.getSelectedValues().length){t.selected=!0;return}this._multiple||this._adapter.deselect(t),this._adapter.applyAdjacentSelections(this._vertical),this._adapter.emitHostEvent(i.events.CHANGE,this._getValue())}_getValue(){var t;let o=this._adapter.getSelectedValues();return this._multiple?Array.from(new Set(o)):(t=o.slice(0,1)[0])!=null?t:null}_applyValue(o){let t=o instanceof Array?o:[o];!this._multiple&&t.length>1&&(t=t[0]),this._values=t,this._adapter.applyValues(t),this._multiple&&this._adapter.applyAdjacentSelections(this._vertical)}_applyOptions(o=!0){this._options&&(this._adapter.createOptions(this._options),o&&(this._adapter.setStretch(this._stretch),this._adapter.setDense(this._dense),this._adapter.setDisabled(this._disabled),this._adapter.applyAdjacentSelections(this._vertical)))}get value(){return this._isInitialized?this._getValue():this._originalValue}set value(o){this._originalValue=o,this._applyValue(o)}get multiple(){return this._multiple}set multiple(o){this._multiple!==o&&(this._multiple=o,this._adapter.setHostAttribute(i.attributes.MULTIPLE,this._multiple))}get mandatory(){return this._mandatory}set mandatory(o){this._mandatory!==o&&(this._mandatory=o,this._mandatory?this._adapter.setHostAttribute(i.attributes.MANDATORY):this._adapter.removeHostAttribute(i.attributes.MANDATORY))}get vertical(){return this._vertical}set vertical(o){this._vertical!==o&&(this._vertical=o,this._adapter.setVertical(this._vertical),this._adapter.applyAdjacentSelections(this._vertical),this._vertical?this._adapter.setHostAttribute(i.attributes.VERTICAL):this._adapter.removeHostAttribute(i.attributes.VERTICAL))}get stretch(){return this._stretch}set stretch(o){this._stretch!==o&&(this._stretch=o,this._adapter.setStretch(this._stretch),this._stretch?this._adapter.setHostAttribute(i.attributes.STRETCH):this._adapter.removeHostAttribute(i.attributes.STRETCH))}get dense(){return this._dense}set dense(o){this._dense!==o&&(this._dense=o,this._adapter.setDense(this._dense),this._dense?this._adapter.setHostAttribute(i.attributes.DENSE):this._adapter.removeHostAttribute(i.attributes.DENSE))}get disabled(){return this._disabled}set disabled(o){this._disabled!==o&&(this._disabled=o,this._adapter.setDisabled(this._disabled),this._disabled?this._adapter.setHostAttribute(i.attributes.DISABLED):this._adapter.removeHostAttribute(i.attributes.DISABLED))}get options(){return this._options.map(o=>c({},o))}set options(o){this._options=o.map(t=>c({},t)),this._isInitialized&&this._applyOptions()}};var N='<template><div class="forge-button-toggle-group" role="group" aria-label="Button group" part="root"><slot></slot></div></template>',D=".forge-button-toggle-group{display:-webkit-box;display:flex}.forge-button-toggle-group ::slotted(:not(:last-child)){--forge-button-toggle-border-right-width:0;--forge-button-toggle-border-top-left-radius:0;--forge-button-toggle-border-bottom-left-radius:0;--forge-button-toggle-border-top-right-radius:0;--forge-button-toggle-border-bottom-right-radius:0}.forge-button-toggle-group ::slotted(:first-child){--forge-button-toggle-border-top-left-radius:4px;--forge-button-toggle-border-bottom-left-radius:4px}.forge-button-toggle-group ::slotted(:last-child){--forge-button-toggle-border-top-left-radius:0;--forge-button-toggle-border-bottom-left-radius:0;--forge-button-toggle-border-top-right-radius:4px;--forge-button-toggle-border-bottom-right-radius:4px}.forge-button-toggle-group--vertical{-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column}.forge-button-toggle-group--vertical ::slotted(:not(:last-child)){--forge-button-toggle-border-right-width:1px;--forge-button-toggle-border-bottom-width:0;--forge-button-toggle-border-top-left-radius:0;--forge-button-toggle-border-bottom-left-radius:0;--forge-button-toggle-border-top-right-radius:0;--forge-button-toggle-border-bottom-right-radius:0}.forge-button-toggle-group--vertical ::slotted(:first-child){--forge-button-toggle-border-top-left-radius:4px;--forge-button-toggle-border-top-right-radius:4px}.forge-button-toggle-group--vertical ::slotted(:last-child){--forge-button-toggle-border-top-left-radius:0;--forge-button-toggle-border-top-right-radius:0;--forge-button-toggle-border-bottom-left-radius:4px;--forge-button-toggle-border-bottom-right-radius:4px}.forge-button-toggle-group ::slotted(:only-child){--forge-button-toggle-border-top-left-radius:4px;--forge-button-toggle-border-bottom-left-radius:4px;--forge-button-toggle-border-top-right-radius:4px;--forge-button-toggle-border-bottom-right-radius:4px}.forge-button-toggle-group--stretch{width:100%}:host{display:block}:host([hidden]){display:none}",r=class extends T{constructor(){super();_(this,N,D),this._foundation=new p(new u(this))}static get observedAttributes(){return[i.attributes.VALUE,i.attributes.MULTIPLE,i.attributes.MANDATORY,i.attributes.VERTICAL,i.attributes.STRETCH,i.attributes.DISABLED,i.attributes.DENSE]}initializedCallback(){this._foundation.initialize()}disconnectedCallback(){this._foundation.disconnect()}attributeChangedCallback(t,s,e){switch(t){case i.attributes.VALUE:this.value=e;break;case i.attributes.MULTIPLE:this.multiple=g(e);break;case i.attributes.MANDATORY:this.mandatory=g(e);break;case i.attributes.VERTICAL:this.vertical=g(e);break;case i.attributes.STRETCH:this.stretch=g(e);break;case i.attributes.DENSE:this.dense=g(e);break;case i.attributes.DISABLED:this.disabled=g(e);break}}};l([n()],r.prototype,"value",2),l([n()],r.prototype,"multiple",2),l([n()],r.prototype,"mandatory",2),l([n()],r.prototype,"vertical",2),l([n()],r.prototype,"stretch",2),l([n()],r.prototype,"dense",2),l([n()],r.prototype,"disabled",2),l([n()],r.prototype,"options",2),r=l([f({name:i.elementName,dependencies:[A]})],r);function rt(){m(r)}export{i as a,u as b,p as c,r as d,rt as e};
7
- //# sourceMappingURL=chunk.PHJPLWFH.js.map
6
+ import{a,d as A}from"./chunk.BJE6O5ES.js";import{a as E}from"./chunk.G5MGGEFP.js";import{a as n}from"./chunk.KTGSZEAG.js";import{a as f,b as I,d}from"./chunk.BE7PZANN.js";import{a as m,e as _,g as v,l as T}from"./chunk.Y4GKBJGI.js";import{d as h}from"./chunk.PN26D52V.js";import{k as g}from"./chunk.J2M2MXP2.js";import{a as c,f as l}from"./chunk.MCIQXNKY.js";var L=`${I}button-toggle-group`,S={VALUE:"value",MULTIPLE:"multiple",MANDATORY:"mandatory",VERTICAL:"vertical",STRETCH:"stretch",DISABLED:"disabled",DENSE:"dense"},y={VERTICAL:"forge-button-toggle-group--vertical",STRETCH:"forge-button-toggle-group--stretch"},B={ROOT:".forge-button-toggle-group"},O={CHANGE:`${L}-change`},i={elementName:L,attributes:S,classes:y,selectors:B,events:O};var u=class extends E{constructor(t){super(t);this._rootElement=v(t,i.selectors.ROOT),this._slotElement=this._rootElement.querySelector("slot")}addListener(t,s){this._rootElement.addEventListener(t,s)}removeListener(t,s){this._rootElement.removeEventListener(t,s)}addSlotChangeListener(t){this._slotElement.addEventListener("slotchange",t)}removeSlotChangeListener(t){this._slotElement.addEventListener("slotchange",t)}deselect(t){this._getButtonToggleElements().filter(e=>e!==t).forEach(e=>e.selected=!1)}applyAdjacentSelections(t){let s=this._getButtonToggleElements();for(let e=s.length-1;e>0;e--)if(s[e].removeAttribute(a.attributes.SELECTED_ADJACENT),s[e].removeAttribute(a.attributes.SELECTED_ADJACENT_VERTICAL),s[e].selected&&s[e-1].selected){let C=t?a.attributes.SELECTED_ADJACENT_VERTICAL:a.attributes.SELECTED_ADJACENT;s[e].setAttribute(C,"")}}setVertical(t){t?this._rootElement.classList.add(i.classes.VERTICAL):this._rootElement.classList.remove(i.classes.VERTICAL)}setStretch(t){t?this._rootElement.classList.add(i.classes.STRETCH):this._rootElement.classList.remove(i.classes.STRETCH),this._getButtonToggleElements().forEach(e=>{t?e.setAttribute("stretch",""):e.removeAttribute("stretch")})}setDense(t){this._getButtonToggleElements().forEach(e=>e.dense=t)}setDisabled(t){this._getButtonToggleElements().forEach(e=>e.disabled=t)}getSelectedValues(){return this._getButtonToggleElements().filter(s=>s.selected).map(s=>s.value)}applyValues(t){this._getButtonToggleElements().forEach(e=>e.selected=t.indexOf(e.value)>=0)}createOptions(t){h(this._component),t.forEach(s=>{this._component.appendChild(this._createButtonToggle(s))})}_createButtonToggle(t){let s=document.createElement(a.elementName);if(s.value=t.value,t.label)s.textContent=t.label;else if(t.icon){let e=document.createElement("i");e.textContent=t.icon,e.classList.add(d),e.setAttribute("aria-hidden","true"),s.appendChild(e)}if(t.leadingIcon){let e;t.leadingIconType==="component"?(e=document.createElement("forge-icon"),e.name=t.leadingIcon):(e=document.createElement("i"),e.textContent=t.leadingIcon,e.classList.add(d),e.setAttribute("aria-hidden","true")),e.slot="leading",s.appendChild(e)}if(t.trailingIcon){let e;t.trailingIconType==="component"?(e=document.createElement("forge-icon"),e.name=t.trailingIcon):(e=document.createElement("i"),e.textContent=t.trailingIcon,e.classList.add(d),e.setAttribute("aria-hidden","true")),e.slot="trailing",s.appendChild(e)}return s}_getButtonToggleElements(){return Array.from(this._component.querySelectorAll(a.elementName))}};var p=class{constructor(o){this._adapter=o;this._isInitialized=!1;this._multiple=!1;this._mandatory=!1;this._vertical=!1;this._stretch=!1;this._dense=!1;this._disabled=!1;this._options=[];this._values=[];this._selectListener=t=>this._onSelect(t),this._slotListener=()=>this._synchronize()}initialize(){this._options&&this._options.length&&this._applyOptions(!1),this._adapter.addListener(a.events.SELECT,this._selectListener),this._adapter.addSlotChangeListener(this._slotListener),this._adapter.setVertical(this._vertical),this._adapter.setStretch(this._stretch),this._adapter.setDense(this._dense),this._adapter.setDisabled(this._disabled),this._adapter.applyAdjacentSelections(this._vertical),this._isInitialized=!0}disconnect(){this._isInitialized=!1,this._adapter.removeListener(a.events.SELECT,this._selectListener),this._adapter.removeSlotChangeListener(this._slotListener)}_synchronize(){if(this._multiple){let o=new Set(this._adapter.getSelectedValues().concat(this._values));this._applyValue(Array.from(o))}else{let o=this._adapter.getSelectedValues().concat(this._values);this.value=o.length?o[o.length-1]:null}}_onSelect(o){let t=o.target;if(this._mandatory&&!this._adapter.getSelectedValues().length){t.selected=!0;return}this._multiple||this._adapter.deselect(t),this._adapter.applyAdjacentSelections(this._vertical),this._adapter.emitHostEvent(i.events.CHANGE,this._getValue())}_getValue(){var t;let o=this._adapter.getSelectedValues();return this._multiple?Array.from(new Set(o)):(t=o.slice(0,1)[0])!=null?t:null}_applyValue(o){let t=o instanceof Array?o:[o];!this._multiple&&t.length>1&&(t=t[0]),this._values=t,this._adapter.applyValues(t),this._multiple&&this._adapter.applyAdjacentSelections(this._vertical)}_applyOptions(o=!0){this._options&&(this._adapter.createOptions(this._options),o&&(this._adapter.setStretch(this._stretch),this._adapter.setDense(this._dense),this._adapter.setDisabled(this._disabled),this._adapter.applyAdjacentSelections(this._vertical)))}get value(){return this._isInitialized?this._getValue():this._originalValue}set value(o){this._originalValue=o,this._applyValue(o)}get multiple(){return this._multiple}set multiple(o){this._multiple!==o&&(this._multiple=o,this._adapter.setHostAttribute(i.attributes.MULTIPLE,this._multiple))}get mandatory(){return this._mandatory}set mandatory(o){this._mandatory!==o&&(this._mandatory=o,this._mandatory?this._adapter.setHostAttribute(i.attributes.MANDATORY):this._adapter.removeHostAttribute(i.attributes.MANDATORY))}get vertical(){return this._vertical}set vertical(o){this._vertical!==o&&(this._vertical=o,this._adapter.setVertical(this._vertical),this._adapter.applyAdjacentSelections(this._vertical),this._vertical?this._adapter.setHostAttribute(i.attributes.VERTICAL):this._adapter.removeHostAttribute(i.attributes.VERTICAL))}get stretch(){return this._stretch}set stretch(o){this._stretch!==o&&(this._stretch=o,this._adapter.setStretch(this._stretch),this._stretch?this._adapter.setHostAttribute(i.attributes.STRETCH):this._adapter.removeHostAttribute(i.attributes.STRETCH))}get dense(){return this._dense}set dense(o){this._dense!==o&&(this._dense=o,this._adapter.setDense(this._dense),this._dense?this._adapter.setHostAttribute(i.attributes.DENSE):this._adapter.removeHostAttribute(i.attributes.DENSE))}get disabled(){return this._disabled}set disabled(o){this._disabled!==o&&(this._disabled=o,this._adapter.setDisabled(this._disabled),this._disabled?this._adapter.setHostAttribute(i.attributes.DISABLED):this._adapter.removeHostAttribute(i.attributes.DISABLED))}get options(){return this._options.map(o=>c({},o))}set options(o){this._options=o.map(t=>c({},t)),this._isInitialized&&this._applyOptions()}};var N='<template><div class="forge-button-toggle-group" role="group" aria-label="Button group" part="root"><slot></slot></div></template>',D=".forge-button-toggle-group{display:-webkit-box;display:flex}.forge-button-toggle-group ::slotted(:not(:last-child)){--forge-button-toggle-border-right-width:0;--forge-button-toggle-border-top-left-radius:0;--forge-button-toggle-border-bottom-left-radius:0;--forge-button-toggle-border-top-right-radius:0;--forge-button-toggle-border-bottom-right-radius:0}.forge-button-toggle-group ::slotted(:first-child){--forge-button-toggle-border-top-left-radius:4px;--forge-button-toggle-border-bottom-left-radius:4px}.forge-button-toggle-group ::slotted(:last-child){--forge-button-toggle-border-top-left-radius:0;--forge-button-toggle-border-bottom-left-radius:0;--forge-button-toggle-border-top-right-radius:4px;--forge-button-toggle-border-bottom-right-radius:4px}.forge-button-toggle-group--vertical{-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column}.forge-button-toggle-group--vertical ::slotted(:not(:last-child)){--forge-button-toggle-border-right-width:1px;--forge-button-toggle-border-bottom-width:0;--forge-button-toggle-border-top-left-radius:0;--forge-button-toggle-border-bottom-left-radius:0;--forge-button-toggle-border-top-right-radius:0;--forge-button-toggle-border-bottom-right-radius:0}.forge-button-toggle-group--vertical ::slotted(:first-child){--forge-button-toggle-border-top-left-radius:4px;--forge-button-toggle-border-top-right-radius:4px}.forge-button-toggle-group--vertical ::slotted(:last-child){--forge-button-toggle-border-top-left-radius:0;--forge-button-toggle-border-top-right-radius:0;--forge-button-toggle-border-bottom-left-radius:4px;--forge-button-toggle-border-bottom-right-radius:4px}.forge-button-toggle-group ::slotted(:only-child){--forge-button-toggle-border-top-left-radius:4px;--forge-button-toggle-border-bottom-left-radius:4px;--forge-button-toggle-border-top-right-radius:4px;--forge-button-toggle-border-bottom-right-radius:4px}.forge-button-toggle-group--stretch{width:100%}:host{display:block}:host([hidden]){display:none}",r=class extends T{constructor(){super();_(this,N,D),this._foundation=new p(new u(this))}static get observedAttributes(){return[i.attributes.VALUE,i.attributes.MULTIPLE,i.attributes.MANDATORY,i.attributes.VERTICAL,i.attributes.STRETCH,i.attributes.DISABLED,i.attributes.DENSE]}initializedCallback(){this._foundation.initialize()}disconnectedCallback(){this._foundation.disconnect()}attributeChangedCallback(t,s,e){switch(t){case i.attributes.VALUE:this.value=e;break;case i.attributes.MULTIPLE:this.multiple=g(e);break;case i.attributes.MANDATORY:this.mandatory=g(e);break;case i.attributes.VERTICAL:this.vertical=g(e);break;case i.attributes.STRETCH:this.stretch=g(e);break;case i.attributes.DENSE:this.dense=g(e);break;case i.attributes.DISABLED:this.disabled=g(e);break}}};l([n()],r.prototype,"value",2),l([n()],r.prototype,"multiple",2),l([n()],r.prototype,"mandatory",2),l([n()],r.prototype,"vertical",2),l([n()],r.prototype,"stretch",2),l([n()],r.prototype,"dense",2),l([n()],r.prototype,"disabled",2),l([n()],r.prototype,"options",2),r=l([f({name:i.elementName,dependencies:[A]})],r);function rt(){m(r)}export{i as a,u as b,p as c,r as d,rt as e};
7
+ //# sourceMappingURL=chunk.PALRSBSY.js.map
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../src/button-toggle/button-toggle-group/button-toggle-group-constants.ts", "../../src/button-toggle/button-toggle-group/button-toggle-group-adapter.ts", "../../src/button-toggle/button-toggle-group/button-toggle-group-foundation.ts", "../../src/button-toggle/button-toggle-group/button-toggle-group.ts", "../../src/button-toggle/button-toggle-group/index.ts"],
4
4
  "sourcesContent": ["import { COMPONENT_NAME_PREFIX } from '../../constants';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}button-toggle-group`;\n\nconst attributes = {\n VALUE: 'value',\n MULTIPLE: 'multiple',\n MANDATORY: 'mandatory',\n VERTICAL: 'vertical',\n STRETCH: 'stretch',\n DISABLED: 'disabled',\n DENSE: 'dense'\n};\n\nconst classes = {\n VERTICAL: 'forge-button-toggle-group--vertical',\n STRETCH: 'forge-button-toggle-group--stretch'\n};\n\nconst selectors = {\n ROOT: '.forge-button-toggle-group'\n};\n\nconst events = {\n CHANGE: `${elementName}-change`\n};\n\nexport const BUTTON_TOGGLE_GROUP_CONSTANTS = {\n elementName,\n attributes,\n classes,\n selectors,\n events\n};\n\nexport type IButtonToggleGroupChangeEventData<T = any> = T;\nexport type ButtonToggleIconType = 'font' | 'component';\n\nexport interface IButtonToggleOption {\n label?: string;\n icon?: string;\n value: any;\n leadingIcon?: string;\n leadingIconType?: ButtonToggleIconType;\n trailingIcon?: string;\n trailingIconType?: ButtonToggleIconType;\n}\n", "import { getShadowElement, removeAllChildren } from '@tylertech/forge-core';\nimport { ICON_CLASS_NAME } from '../../constants';\nimport { BaseAdapter, IBaseAdapter } from '../../core/base/base-adapter';\nimport { IButtonToggleComponent } from '../button-toggle/button-toggle';\nimport { BUTTON_TOGGLE_CONSTANTS } from '../button-toggle/button-toggle-constants';\nimport { IButtonToggleGroupComponent } from './button-toggle-group';\nimport { BUTTON_TOGGLE_GROUP_CONSTANTS, IButtonToggleOption } from './button-toggle-group-constants';\n\nexport interface IButtonToggleGroupAdapter extends IBaseAdapter {\n addListener(type: string, listener: (evt: Event) => void): void;\n removeListener(type: string, listener: (evt: Event) => void): void;\n addSlotChangeListener(listener: (evt: Event) => void): void;\n removeSlotChangeListener(listener: (evt: Event) => void): void;\n deselect(selectedToggle: IButtonToggleComponent): void;\n applyAdjacentSelections(isVertical: boolean): void;\n setVertical(isVertical: boolean): void;\n setStretch(value: boolean): void;\n setDense(value: boolean): void;\n setDisabled(value: boolean): void;\n getSelectedValues(): any[];\n applyValues(values: any[]): void;\n createOptions(options: IButtonToggleOption[]): void;\n}\n\nexport class ButtonToggleGroupAdapter extends BaseAdapter<IButtonToggleGroupComponent> implements IButtonToggleGroupAdapter {\n private _rootElement: HTMLElement;\n private _slotElement: HTMLSlotElement;\n\n constructor(component: IButtonToggleGroupComponent) {\n super(component);\n this._rootElement = getShadowElement(component, BUTTON_TOGGLE_GROUP_CONSTANTS.selectors.ROOT);\n this._slotElement = this._rootElement.querySelector('slot') as HTMLSlotElement;\n }\n\n public addListener(type: string, listener: (evt: Event) => void): void {\n this._rootElement.addEventListener(type, listener);\n }\n\n public removeListener(type: string, listener: (evt: Event) => void): void {\n this._rootElement.removeEventListener(type, listener);\n }\n\n public addSlotChangeListener(listener: EventListener): void {\n this._slotElement.addEventListener('slotchange', listener);\n }\n public removeSlotChangeListener(listener: EventListener): void {\n this._slotElement.addEventListener('slotchange', listener);\n }\n\n public deselect(selectedToggle: IButtonToggleComponent): void {\n const toggles = this._getButtonToggleElements();\n toggles.filter(t => t !== selectedToggle).forEach(t => t.selected = false);\n }\n\n public applyAdjacentSelections(isVertical: boolean): void {\n const toggles = this._getButtonToggleElements();\n for (let i = toggles.length - 1; i > 0; i--) {\n toggles[i].removeAttribute(BUTTON_TOGGLE_CONSTANTS.attributes.SELECTED_ADJACENT);\n toggles[i].removeAttribute(BUTTON_TOGGLE_CONSTANTS.attributes.SELECTED_ADJACENT_VERTICAL);\n if (toggles[i].selected && toggles[i - 1].selected) {\n const attr = isVertical ? BUTTON_TOGGLE_CONSTANTS.attributes.SELECTED_ADJACENT_VERTICAL : BUTTON_TOGGLE_CONSTANTS.attributes.SELECTED_ADJACENT;\n toggles[i].setAttribute(attr, '');\n }\n }\n }\n\n public setVertical(isVertical: boolean): void {\n if (isVertical) {\n this._rootElement.classList.add(BUTTON_TOGGLE_GROUP_CONSTANTS.classes.VERTICAL);\n } else {\n this._rootElement.classList.remove(BUTTON_TOGGLE_GROUP_CONSTANTS.classes.VERTICAL);\n }\n }\n\n public setStretch(value: boolean): void {\n if (value) {\n this._rootElement.classList.add(BUTTON_TOGGLE_GROUP_CONSTANTS.classes.STRETCH);\n } else {\n this._rootElement.classList.remove(BUTTON_TOGGLE_GROUP_CONSTANTS.classes.STRETCH);\n }\n\n const toggles = this._getButtonToggleElements();\n toggles.forEach(toggle => {\n if (value) {\n toggle.setAttribute('stretch', '');\n } else {\n toggle.removeAttribute('stretch');\n }\n });\n }\n\n public setDense(value: boolean): void {\n const toggles = this._getButtonToggleElements();\n toggles.forEach(t => t.dense = value);\n }\n\n public setDisabled(value: boolean): void {\n const toggles = this._getButtonToggleElements();\n toggles.forEach(t => t.disabled = value);\n }\n\n public getSelectedValues(): any[] {\n const toggles = this._getButtonToggleElements();\n return toggles.filter(t => t.selected).map(t => t.value);\n }\n\n public applyValues(values: any[]): void {\n const toggles = this._getButtonToggleElements();\n toggles.forEach(t => t.selected = values.indexOf(t.value) >= 0);\n }\n\n public createOptions(options: IButtonToggleOption[]): void {\n removeAllChildren(this._component);\n options.forEach(o => {\n this._component.appendChild(this._createButtonToggle(o));\n });\n }\n\n private _createButtonToggle(option: IButtonToggleOption): IButtonToggleComponent {\n const buttonToggle = document.createElement(BUTTON_TOGGLE_CONSTANTS.elementName) as IButtonToggleComponent;\n buttonToggle.value = option.value;\n\n if (option.label) {\n buttonToggle.textContent = option.label;\n } else if (option.icon) {\n const icon = document.createElement('i');\n icon.textContent = option.icon;\n icon.classList.add(ICON_CLASS_NAME);\n icon.setAttribute('aria-hidden', 'true');\n buttonToggle.appendChild(icon);\n }\n\n if (option.leadingIcon) {\n let leadingIcon;\n if (option.leadingIconType === 'component') {\n leadingIcon = document.createElement('forge-icon');\n leadingIcon.name = option.leadingIcon;\n } else {\n leadingIcon = document.createElement('i');\n leadingIcon.textContent = option.leadingIcon;\n leadingIcon.classList.add(ICON_CLASS_NAME);\n leadingIcon.setAttribute('aria-hidden', 'true');\n }\n leadingIcon.slot = 'leading';\n buttonToggle.appendChild(leadingIcon);\n }\n\n if (option.trailingIcon) {\n let trailingIcon;\n if (option.trailingIconType === 'component') {\n trailingIcon = document.createElement('forge-icon');\n trailingIcon.name = option.trailingIcon;\n } else {\n trailingIcon = document.createElement('i');\n trailingIcon.textContent = option.trailingIcon;\n trailingIcon.classList.add(ICON_CLASS_NAME);\n trailingIcon.setAttribute('aria-hidden', 'true');\n }\n trailingIcon.slot = 'trailing';\n buttonToggle.appendChild(trailingIcon);\n }\n\n return buttonToggle;\n }\n\n private _getButtonToggleElements(): IButtonToggleComponent[] {\n return Array.from(this._component.querySelectorAll(BUTTON_TOGGLE_CONSTANTS.elementName));\n }\n}\n", "import { ICustomElementFoundation } from '@tylertech/forge-core';\nimport { IButtonToggleComponent } from '../button-toggle/button-toggle';\nimport { BUTTON_TOGGLE_CONSTANTS, IButtonToggleSelectEventData } from '../button-toggle/button-toggle-constants';\nimport { IButtonToggleGroupAdapter } from './button-toggle-group-adapter';\nimport { BUTTON_TOGGLE_GROUP_CONSTANTS, IButtonToggleOption } from './button-toggle-group-constants';\n\nexport interface IButtonToggleGroupFoundation extends ICustomElementFoundation {\n value: any;\n multiple: boolean;\n stretch: boolean;\n mandatory: boolean;\n vertical: boolean;\n dense: boolean;\n disabled: boolean;\n options: IButtonToggleOption[];\n}\n\nexport class ButtonToggleGroupFoundation implements IButtonToggleGroupFoundation {\n private _isInitialized = false;\n private _multiple = false;\n private _mandatory = false;\n private _vertical = false;\n private _stretch = false;\n private _dense = false;\n private _disabled = false;\n private _options: IButtonToggleOption[] = [];\n private _values: any[] = [];\n private _originalValue: any;\n private _selectListener: (evt: CustomEvent<IButtonToggleSelectEventData>) => void;\n private _slotListener: () => void;\n\n constructor(private _adapter: IButtonToggleGroupAdapter) {\n this._selectListener = evt => this._onSelect(evt);\n this._slotListener = () => this._synchronize();\n }\n\n public initialize(): void {\n if (this._options && this._options.length) {\n this._applyOptions(false);\n }\n\n this._adapter.addListener(BUTTON_TOGGLE_CONSTANTS.events.SELECT, this._selectListener);\n this._adapter.addSlotChangeListener(this._slotListener);\n this._adapter.setVertical(this._vertical);\n this._adapter.setStretch(this._stretch);\n this._adapter.setDense(this._dense);\n this._adapter.setDisabled(this._disabled);\n this._adapter.applyAdjacentSelections(this._vertical);\n this._isInitialized = true;\n }\n\n public disconnect(): void {\n this._isInitialized = false;\n this._adapter.removeListener(BUTTON_TOGGLE_CONSTANTS.events.SELECT, this._selectListener);\n this._adapter.removeSlotChangeListener(this._slotListener);\n }\n\n private _synchronize(): void {\n if (!this._multiple) {\n const selectedValues = this._adapter.getSelectedValues().concat(this._values);\n this.value = selectedValues.length ? selectedValues[selectedValues.length - 1] : null;\n } else {\n const selectedValues = new Set(this._adapter.getSelectedValues().concat(this._values));\n this._applyValue(Array.from(selectedValues));\n }\n }\n\n private _onSelect(evt: CustomEvent<IButtonToggleSelectEventData>): void {\n const target = evt.target as IButtonToggleComponent;\n\n // When in mandatory mode we need to ensure at least one element is selected. If there are no selections\n // then we need to reselect the target toggle because it was deselected\n if (this._mandatory) {\n const values = this._adapter.getSelectedValues();\n if (!values.length) {\n target.selected = true;\n return;\n }\n }\n\n // When not in multiple mode, we deselect all toggles, except for the one that was just changed\n if (!this._multiple) {\n this._adapter.deselect(target);\n }\n\n this._adapter.applyAdjacentSelections(this._vertical);\n this._adapter.emitHostEvent(BUTTON_TOGGLE_GROUP_CONSTANTS.events.CHANGE, this._getValue());\n }\n\n private _getValue(): any {\n const selections = this._adapter.getSelectedValues();\n return this._multiple ? Array.from(new Set(selections)) : selections.slice(0, 1)[0] ?? null;\n }\n\n private _applyValue(value: any): void {\n let values = value instanceof Array ? value : [value];\n if (!this._multiple && values.length > 1) {\n values = values[0];\n }\n this._values = values;\n this._adapter.applyValues(values);\n if (this._multiple) {\n this._adapter.applyAdjacentSelections(this._vertical);\n }\n }\n\n private _applyOptions(init = true): void {\n if (this._options) {\n this._adapter.createOptions(this._options);\n\n if (init) {\n this._adapter.setStretch(this._stretch);\n this._adapter.setDense(this._dense);\n this._adapter.setDisabled(this._disabled);\n this._adapter.applyAdjacentSelections(this._vertical);\n }\n }\n }\n\n public get value(): any {\n if (!this._isInitialized) {\n return this._originalValue;\n }\n return this._getValue();\n }\n public set value(value: any) {\n this._originalValue = value;\n this._applyValue(value);\n }\n\n public get multiple(): boolean {\n return this._multiple;\n }\n public set multiple(value: boolean) {\n if (this._multiple !== value) {\n this._multiple = value;\n this._adapter.setHostAttribute(BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.MULTIPLE, this._multiple as any);\n }\n }\n\n public get mandatory(): boolean {\n return this._mandatory;\n }\n public set mandatory(value: boolean) {\n if (this._mandatory !== value) {\n this._mandatory = value;\n if (this._mandatory) {\n this._adapter.setHostAttribute(BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.MANDATORY);\n } else {\n this._adapter.removeHostAttribute(BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.MANDATORY);\n }\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.setVertical(this._vertical);\n this._adapter.applyAdjacentSelections(this._vertical);\n if (this._vertical) {\n this._adapter.setHostAttribute(BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.VERTICAL);\n } else {\n this._adapter.removeHostAttribute(BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.VERTICAL);\n }\n }\n }\n\n public get stretch(): boolean {\n return this._stretch;\n }\n public set stretch(value: boolean) {\n if (this._stretch !== value) {\n this._stretch = value;\n this._adapter.setStretch(this._stretch);\n if (this._stretch) {\n this._adapter.setHostAttribute(BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.STRETCH);\n } else {\n this._adapter.removeHostAttribute(BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.STRETCH);\n }\n }\n }\n\n public get dense(): boolean {\n return this._dense;\n }\n public set dense(value: boolean) {\n if (this._dense !== value) {\n this._dense = value;\n this._adapter.setDense(this._dense);\n if (this._dense) {\n this._adapter.setHostAttribute(BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.DENSE);\n } else {\n this._adapter.removeHostAttribute(BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.DENSE);\n }\n }\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 if (this._disabled) {\n this._adapter.setHostAttribute(BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.DISABLED);\n } else {\n this._adapter.removeHostAttribute(BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.DISABLED);\n }\n }\n }\n\n public get options(): IButtonToggleOption[] {\n return this._options.map(o => ({ ...o }));\n }\n public set options(value: IButtonToggleOption[]) {\n this._options = value.map(o => ({ ...o }));\n if (this._isInitialized) {\n this._applyOptions();\n }\n }\n}\n", "import { attachShadowTemplate, coerceBoolean, CustomElement, FoundationProperty } from '@tylertech/forge-core';\nimport { BaseComponent, IBaseComponent } from '../../core/base/base-component';\nimport { ButtonToggleComponent } from '../button-toggle/button-toggle';\nimport { ButtonToggleGroupAdapter } from './button-toggle-group-adapter';\nimport { BUTTON_TOGGLE_GROUP_CONSTANTS, IButtonToggleGroupChangeEventData, IButtonToggleOption } from './button-toggle-group-constants';\nimport { ButtonToggleGroupFoundation } from './button-toggle-group-foundation';\n\nconst template = '<template><div class=\\\"forge-button-toggle-group\\\" role=\\\"group\\\" aria-label=\\\"Button group\\\" part=\\\"root\\\"><slot></slot></div></template>';\nconst styles = '.forge-button-toggle-group{display:-webkit-box;display:flex}.forge-button-toggle-group ::slotted(:not(:last-child)){--forge-button-toggle-border-right-width:0;--forge-button-toggle-border-top-left-radius:0;--forge-button-toggle-border-bottom-left-radius:0;--forge-button-toggle-border-top-right-radius:0;--forge-button-toggle-border-bottom-right-radius:0}.forge-button-toggle-group ::slotted(:first-child){--forge-button-toggle-border-top-left-radius:4px;--forge-button-toggle-border-bottom-left-radius:4px}.forge-button-toggle-group ::slotted(:last-child){--forge-button-toggle-border-top-left-radius:0;--forge-button-toggle-border-bottom-left-radius:0;--forge-button-toggle-border-top-right-radius:4px;--forge-button-toggle-border-bottom-right-radius:4px}.forge-button-toggle-group--vertical{-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column}.forge-button-toggle-group--vertical ::slotted(:not(:last-child)){--forge-button-toggle-border-right-width:1px;--forge-button-toggle-border-bottom-width:0;--forge-button-toggle-border-top-left-radius:0;--forge-button-toggle-border-bottom-left-radius:0;--forge-button-toggle-border-top-right-radius:0;--forge-button-toggle-border-bottom-right-radius:0}.forge-button-toggle-group--vertical ::slotted(:first-child){--forge-button-toggle-border-top-left-radius:4px;--forge-button-toggle-border-top-right-radius:4px}.forge-button-toggle-group--vertical ::slotted(:last-child){--forge-button-toggle-border-top-left-radius:0;--forge-button-toggle-border-top-right-radius:0;--forge-button-toggle-border-bottom-left-radius:4px;--forge-button-toggle-border-bottom-right-radius:4px}.forge-button-toggle-group ::slotted(:only-child){--forge-button-toggle-border-top-left-radius:4px;--forge-button-toggle-border-bottom-left-radius:4px;--forge-button-toggle-border-top-right-radius:4px;--forge-button-toggle-border-bottom-right-radius:4px}.forge-button-toggle-group--stretch{width:100%}:host{display:block}:host([hidden]){display:none}';\n\nexport interface IButtonToggleGroupComponent extends IBaseComponent {\n value: any;\n multiple: boolean;\n stretch: boolean;\n mandatory: boolean;\n vertical: boolean;\n disabled: boolean;\n dense: boolean;\n options: IButtonToggleOption[];\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'forge-button-toggle-group': IButtonToggleGroupComponent;\n }\n\n interface HTMLElementEventMap {\n 'forge-button-toggle-group-change': CustomEvent<IButtonToggleGroupChangeEventData>;\n }\n}\n\n/**\n * The web component class behind the `<forge-button-toggle-group>` custom element.\n * \n * @tag forge-button-toggle-group\n */\n@CustomElement({\n name: BUTTON_TOGGLE_GROUP_CONSTANTS.elementName,\n dependencies: [ButtonToggleComponent]\n})\nexport class ButtonToggleGroupComponent extends BaseComponent implements IButtonToggleGroupComponent {\n public static get observedAttributes(): string[] {\n return [\n BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.VALUE,\n BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.MULTIPLE,\n BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.MANDATORY,\n BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.VERTICAL,\n BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.STRETCH,\n BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.DISABLED,\n BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.DENSE\n ];\n }\n\n private _foundation: ButtonToggleGroupFoundation;\n\n constructor() {\n super();\n attachShadowTemplate(this, template, styles);\n this._foundation = new ButtonToggleGroupFoundation(new ButtonToggleGroupAdapter(this));\n }\n\n public initializedCallback(): void {\n this._foundation.initialize();\n }\n\n public disconnectedCallback(): void {\n this._foundation.disconnect();\n }\n\n public attributeChangedCallback(name: string, oldValue: string, newValue: string): void {\n switch (name) {\n case BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.VALUE:\n this.value = newValue;\n break;\n case BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.MULTIPLE:\n this.multiple = coerceBoolean(newValue);\n break;\n case BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.MANDATORY:\n this.mandatory = coerceBoolean(newValue);\n break;\n case BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.VERTICAL:\n this.vertical = coerceBoolean(newValue);\n break;\n case BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.STRETCH:\n this.stretch = coerceBoolean(newValue);\n break;\n case BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.DENSE:\n this.dense = coerceBoolean(newValue);\n break;\n case BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.DISABLED:\n this.disabled = coerceBoolean(newValue);\n break;\n }\n }\n\n @FoundationProperty()\n public declare value: any;\n\n @FoundationProperty()\n public declare multiple: boolean;\n\n @FoundationProperty()\n public declare mandatory: boolean;\n\n @FoundationProperty()\n public declare vertical: boolean;\n\n @FoundationProperty()\n public declare stretch: boolean;\n\n @FoundationProperty()\n public declare dense: boolean;\n\n @FoundationProperty()\n public declare disabled: boolean;\n\n @FoundationProperty()\n public declare options: IButtonToggleOption[];\n}\n", "import { defineCustomElement } from '@tylertech/forge-core';\n\nimport { ButtonToggleGroupComponent } from './button-toggle-group';\n\nexport * from './button-toggle-group-adapter';\nexport * from './button-toggle-group-constants';\nexport * from './button-toggle-group-foundation';\nexport * from './button-toggle-group';\n\nexport function defineButtonToggleGroupComponent(): void {\n defineCustomElement(ButtonToggleGroupComponent);\n}\n"],
5
- "mappings": "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",
6
- "names": []
5
+ "mappings": "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",
6
+ "names": ["elementName", "COMPONENT_NAME_PREFIX", "attributes", "classes", "selectors", "events", "BUTTON_TOGGLE_GROUP_CONSTANTS", "ButtonToggleGroupAdapter", "BaseAdapter", "component", "getShadowElement", "BUTTON_TOGGLE_GROUP_CONSTANTS", "type", "listener", "selectedToggle", "t", "isVertical", "toggles", "i", "BUTTON_TOGGLE_CONSTANTS", "attr", "value", "toggle", "values", "options", "removeAllChildren", "o", "option", "buttonToggle", "icon", "ICON_CLASS_NAME", "leadingIcon", "trailingIcon", "ButtonToggleGroupFoundation", "_adapter", "evt", "BUTTON_TOGGLE_CONSTANTS", "selectedValues", "target", "BUTTON_TOGGLE_GROUP_CONSTANTS", "_a", "selections", "value", "values", "init", "__spreadValues", "o", "template", "styles", "ButtonToggleGroupComponent", "BaseComponent", "attachShadowTemplate", "ButtonToggleGroupFoundation", "ButtonToggleGroupAdapter", "BUTTON_TOGGLE_GROUP_CONSTANTS", "name", "oldValue", "newValue", "coerceBoolean", "__decorateClass", "FoundationProperty", "CustomElement", "ButtonToggleComponent", "defineButtonToggleGroupComponent", "defineCustomElement", "ButtonToggleGroupComponent"]
7
7
  }
@@ -3,5 +3,5 @@
3
3
  * Copyright 2023 Tyler Technologies, Inc.
4
4
  * License: Apache-2.0
5
5
  */
6
- import{i as a}from"./chunk.G76HB2FK.js";function u(t){return t.ownerDocument||document}function p(t){return t&&t.nodeType===1}function L(t,e){if(!p(t))throw new Error("DOMUtils - elementParents: invalid element argument");let o=[];for(;t.parentElement&&(o.push(t.parentElement),!(t.parentElement===e||t.parentElement===u(t).body));)t.parentElement&&t.parentElement.parentNode&&t.parentElement.parentNode.nodeType===11?t=t.parentElement.parentNode.host:t=t.parentElement;return o}function g(t,e){if(!p(t))throw new Error("DOMUtils - offset: invalid element argument");let o=t.getBoundingClientRect(),n=u(t).defaultView,r=e||n.document.documentElement,i={width:o.width,height:o.width,top:0,left:0,bottom:0,right:0};if(!e||r===n.document.documentElement||r===n.document.body)i.top=n.scrollY+o.top,i.bottom=r.clientHeight-n.scrollY-o.bottom,i.left=n.scrollX+o.left,i.right=r.clientWidth-n.scrollX-o.right;else{if(!p(e))throw new Error("DOMUtils - offset: invalid parentElement argument");let s=e.getBoundingClientRect();i.top=o.top-s.top,i.bottom=s.bottom-o.bottom,i.left=o.left-s.left,i.right=s.right-o.right}return{width:Math.round(o.width),height:Math.round(o.height),top:Math.round(i.top),bottom:Math.round(i.bottom),left:Math.round(i.left),right:Math.round(i.right)}}function M(t,e,o){let n=i=>{let s=()=>{i.stopPropagation(),i.cancelable&&i.preventDefault();let l=i.type==="touchstart"?i.target:u(t).activeElement;t.contains(l)||e(l)};o?window.requestAnimationFrame(()=>s()):s()},r=u(t);return r.addEventListener("blur",n,!0),r.addEventListener("touchstart",n,!0),()=>{r.removeEventListener("blur",n,!0),r.removeEventListener("touchstart",n,!0)}}function N(t){for(;t.lastChild;)t.removeChild(t.lastChild)}function P(t,e){return e.parentNode.replaceChild(t,e)}function b(t,e){a(t)?t.forEach(o=>e.classList.add(o)):e.classList.add(t)}function v(t,e){a(t)?t.forEach(o=>e.classList.remove(o)):e.classList.remove(t)}function x(){let t=document.createElement("fakeelement"),e={animation:"animationend",OAnimation:"oAnimationEnd",MozAnimation:"animationend",WebkitAnimation:"webkitAnimationEnd"};for(let o in e)if(t.style[o]!==void 0)return e[o]}async function W(t,e,o=!0){return t.classList.add(e),new Promise(n=>{let r=x(),i=()=>{o&&t.classList.remove(e),t.removeEventListener(r,i),n()};t.addEventListener(r,i)})}function E(t){t.removeNode?t.removeNode(!0):t.remove?t.remove():t.parentNode.removeChild(t)}function O(t){if(typeof t=="string"){if(t[t.length-1]==="%")return t;if(t.slice(-2)==="px")return t;if(Number(t)>=0)return`${t}px`}else if(typeof t=="number"&&t>=0)return`${t}px`}function R(t){let e=document.createElement("div");e.style.position="absolute",e.style.top="-99999px",e.style.left="-99999px",e.style.visibility="hidden",e.appendChild(t.cloneNode(!0)),document.body.appendChild(e);let o={width:e.scrollWidth,height:e.scrollHeight};return E(e),e=void 0,o}function H(t){return t.children.length?Promise.resolve():new Promise(e=>{let o=new MutationObserver(n=>{t.children.length&&(o.disconnect(),e())});o.observe(t,{childList:!0})})}function T(t,e){let o=f(t,e);return o.length?Promise.resolve(o[0]):new Promise(n=>{let r=new MutationObserver(i=>{if(i.reduce((l,c)=>l+c.addedNodes.length,0)>0){let l=f(t,e);l.length&&(r.disconnect(),n(l[0]))}});r.observe(t,{childList:!0,subtree:!0})})}function D(t,e){let o=t&&t.parentNode;for(;o;){if(e(o))return o;o=o.parentNode}return null}function U(t,e){let n=document.createElement("canvas").getContext("2d"),r=e?e.fontSize:16,i=e?e.fontFamily:"Roboto";return n.font=`${r}px ${i}`,n.measureText(t).width}function V(t,e){let o=[];for(let n=1;n<=t;n++)o.push(`${n}px ${n}px ${e}`);return o.join(", ")}function y(t,e){if(t.nodeType!==Node.ELEMENT_NODE)return!1;typeof e=="string"&&(e=e.replace(/\s+/,"").split(","));let o=Element.prototype.matches;return e.some(n=>o.call(t,n))}function f(t,e,o=!1){let n=[];if(!t)return n;if(typeof e=="string"&&(e=e.replace(/\s+/,"").split(",")),o&&y(t,e)&&n.indexOf(t)===-1&&n.push(t),t.tagName==="SLOT")t.assignedNodes().forEach(i=>n=n.concat(f(i,e,!0)));else{let r=t.shadowRoot?t.shadowRoot.firstElementChild:t.firstElementChild;for(;r;)n=n.concat(f(r,e,!0)),r=r.nextElementSibling}return n}function $(){let t=document.activeElement;return!t||t===document.body?t:m(t)}function m(t){return t.shadowRoot&&t.shadowRoot.activeElement&&(t=m(t.shadowRoot.activeElement)),t}function B(t,e,o){e?b(o,t):v(o,t)}function F(t,e,o,n=""){e?t.setAttribute(o,n):t.removeAttribute(o)}function I(t,e,o,n){let r=t.getAttribute(e);(n===void 0||n===!0)&&(!r||!r.includes(o))?A(t,e,o):n||C(t,e,o)}function A(t,e,o){let n=t.getAttribute(e);!n||!n.length?t.setAttribute(e,o):t.setAttribute(e,`${n} ${o}`)}function C(t,e,o){if(!t.hasAttribute(e))return;let n=t.getAttribute(e);if(n){let r=n==null?void 0:n.replace(o,"");r=r.replace(/\s+/g," ").trim(),r.length?t.setAttribute(e,r):t.removeAttribute(e)}}function X(t,e,o="auto",n="nearest"){if(!t)return;if(t.scrollHeight>t.clientHeight||t.scrollWidth>t.clientWidth){let i=g(e,t),s=i.top<=e.clientHeight,l=i.bottom<=e.clientHeight;if(s||l){let d=h(n,s,e.offsetTop,e.clientHeight,t.offsetTop,t.offsetHeight);t.scrollTo({top:d,behavior:o});return}let c=i.left<=e.clientWidth,w=i.right<=e.clientWidth;if(c||w){let d=h(n,c,e.offsetLeft,e.clientWidth,t.offsetLeft,t.offsetWidth);t.scrollTo({left:d,behavior:o})}}}function h(t,e,o,n,r,i){return t==="nearest"?e?o-r-n:o-i+n*2:o-r-i/2+n/2}function k(t){let e=document.createElement("template");return t=t.trim(),e.innerHTML=t,e.content.firstElementChild}function Y(t,e,o){let n=new MutationObserver(r=>{for(let i of r)i.attributeName&&e(i.attributeName,t.getAttribute(i.attributeName))});return n.observe(t,{attributes:!0,attributeFilter:o}),n}export{p as a,L as b,M as c,N as d,P as e,b as f,v as g,W as h,E as i,O as j,R as k,H as l,T as m,D as n,U as o,V as p,y as q,f as r,$ as s,B as t,F as u,I as v,A as w,X as x,k as y,Y as z};
7
- //# sourceMappingURL=chunk.R4NDFXVA.js.map
6
+ import{i as a}from"./chunk.J2M2MXP2.js";function u(t){return t.ownerDocument||document}function p(t){return t&&t.nodeType===1}function L(t,e){if(!p(t))throw new Error("DOMUtils - elementParents: invalid element argument");let o=[];for(;t.parentElement&&(o.push(t.parentElement),!(t.parentElement===e||t.parentElement===u(t).body));)t.parentElement&&t.parentElement.parentNode&&t.parentElement.parentNode.nodeType===11?t=t.parentElement.parentNode.host:t=t.parentElement;return o}function g(t,e){if(!p(t))throw new Error("DOMUtils - offset: invalid element argument");let o=t.getBoundingClientRect(),n=u(t).defaultView,r=e||n.document.documentElement,i={width:o.width,height:o.width,top:0,left:0,bottom:0,right:0};if(!e||r===n.document.documentElement||r===n.document.body)i.top=n.scrollY+o.top,i.bottom=r.clientHeight-n.scrollY-o.bottom,i.left=n.scrollX+o.left,i.right=r.clientWidth-n.scrollX-o.right;else{if(!p(e))throw new Error("DOMUtils - offset: invalid parentElement argument");let s=e.getBoundingClientRect();i.top=o.top-s.top,i.bottom=s.bottom-o.bottom,i.left=o.left-s.left,i.right=s.right-o.right}return{width:Math.round(o.width),height:Math.round(o.height),top:Math.round(i.top),bottom:Math.round(i.bottom),left:Math.round(i.left),right:Math.round(i.right)}}function M(t,e,o){let n=i=>{let s=()=>{i.stopPropagation(),i.cancelable&&i.preventDefault();let l=i.type==="touchstart"?i.target:u(t).activeElement;t.contains(l)||e(l)};o?window.requestAnimationFrame(()=>s()):s()},r=u(t);return r.addEventListener("blur",n,!0),r.addEventListener("touchstart",n,!0),()=>{r.removeEventListener("blur",n,!0),r.removeEventListener("touchstart",n,!0)}}function N(t){for(;t.lastChild;)t.removeChild(t.lastChild)}function P(t,e){return e.parentNode.replaceChild(t,e)}function b(t,e){a(t)?t.forEach(o=>e.classList.add(o)):e.classList.add(t)}function v(t,e){a(t)?t.forEach(o=>e.classList.remove(o)):e.classList.remove(t)}function x(){let t=document.createElement("fakeelement"),e={animation:"animationend",OAnimation:"oAnimationEnd",MozAnimation:"animationend",WebkitAnimation:"webkitAnimationEnd"};for(let o in e)if(t.style[o]!==void 0)return e[o]}async function W(t,e,o=!0){return t.classList.add(e),new Promise(n=>{let r=x(),i=()=>{o&&t.classList.remove(e),t.removeEventListener(r,i),n()};t.addEventListener(r,i)})}function E(t){t.removeNode?t.removeNode(!0):t.remove?t.remove():t.parentNode.removeChild(t)}function O(t){if(typeof t=="string"){if(t[t.length-1]==="%")return t;if(t.slice(-2)==="px")return t;if(Number(t)>=0)return`${t}px`}else if(typeof t=="number"&&t>=0)return`${t}px`}function R(t){let e=document.createElement("div");e.style.position="absolute",e.style.top="-99999px",e.style.left="-99999px",e.style.visibility="hidden",e.appendChild(t.cloneNode(!0)),document.body.appendChild(e);let o={width:e.scrollWidth,height:e.scrollHeight};return E(e),e=void 0,o}function H(t){return t.children.length?Promise.resolve():new Promise(e=>{let o=new MutationObserver(n=>{t.children.length&&(o.disconnect(),e())});o.observe(t,{childList:!0})})}function T(t,e){let o=f(t,e);return o.length?Promise.resolve(o[0]):new Promise(n=>{let r=new MutationObserver(i=>{if(i.reduce((l,c)=>l+c.addedNodes.length,0)>0){let l=f(t,e);l.length&&(r.disconnect(),n(l[0]))}});r.observe(t,{childList:!0,subtree:!0})})}function D(t,e){let o=t&&t.parentNode;for(;o;){if(e(o))return o;o=o.parentNode}return null}function U(t,e){let n=document.createElement("canvas").getContext("2d"),r=e?e.fontSize:16,i=e?e.fontFamily:"Roboto";return n.font=`${r}px ${i}`,n.measureText(t).width}function V(t,e){let o=[];for(let n=1;n<=t;n++)o.push(`${n}px ${n}px ${e}`);return o.join(", ")}function y(t,e){if(t.nodeType!==Node.ELEMENT_NODE)return!1;typeof e=="string"&&(e=e.replace(/\s+/,"").split(","));let o=Element.prototype.matches;return e.some(n=>o.call(t,n))}function f(t,e,o=!1){let n=[];if(!t)return n;if(typeof e=="string"&&(e=e.replace(/\s+/,"").split(",")),o&&y(t,e)&&n.indexOf(t)===-1&&n.push(t),t.tagName==="SLOT")t.assignedNodes().forEach(i=>n=n.concat(f(i,e,!0)));else{let r=t.shadowRoot?t.shadowRoot.firstElementChild:t.firstElementChild;for(;r;)n=n.concat(f(r,e,!0)),r=r.nextElementSibling}return n}function $(){let t=document.activeElement;return!t||t===document.body?t:m(t)}function m(t){return t.shadowRoot&&t.shadowRoot.activeElement&&(t=m(t.shadowRoot.activeElement)),t}function B(t,e,o){e?b(o,t):v(o,t)}function F(t,e,o,n=""){e?t.setAttribute(o,n):t.removeAttribute(o)}function I(t,e,o,n){let r=t.getAttribute(e);(n===void 0||n===!0)&&(!r||!r.includes(o))?A(t,e,o):n||C(t,e,o)}function A(t,e,o){let n=t.getAttribute(e);!n||!n.length?t.setAttribute(e,o):t.setAttribute(e,`${n} ${o}`)}function C(t,e,o){if(!t.hasAttribute(e))return;let n=t.getAttribute(e);if(n){let r=n==null?void 0:n.replace(o,"");r=r.replace(/\s+/g," ").trim(),r.length?t.setAttribute(e,r):t.removeAttribute(e)}}function X(t,e,o="auto",n="nearest"){if(!t)return;if(t.scrollHeight>t.clientHeight||t.scrollWidth>t.clientWidth){let i=g(e,t),s=i.top<=e.clientHeight,l=i.bottom<=e.clientHeight;if(s||l){let d=h(n,s,e.offsetTop,e.clientHeight,t.offsetTop,t.offsetHeight);t.scrollTo({top:d,behavior:o});return}let c=i.left<=e.clientWidth,w=i.right<=e.clientWidth;if(c||w){let d=h(n,c,e.offsetLeft,e.clientWidth,t.offsetLeft,t.offsetWidth);t.scrollTo({left:d,behavior:o})}}}function h(t,e,o,n,r,i){return t==="nearest"?e?o-r-n:o-i+n*2:o-r-i/2+n/2}function k(t){let e=document.createElement("template");return t=t.trim(),e.innerHTML=t,e.content.firstElementChild}function Y(t,e,o){let n=new MutationObserver(r=>{for(let i of r)i.attributeName&&e(i.attributeName,t.getAttribute(i.attributeName))});return n.observe(t,{attributes:!0,attributeFilter:o}),n}export{p as a,L as b,M as c,N as d,P as e,b as f,v as g,W as h,E as i,O as j,R as k,H as l,T as m,D as n,U as o,V as p,y as q,f as r,$ as s,B as t,F as u,I as v,A as w,X as x,k as y,Y as z};
7
+ //# sourceMappingURL=chunk.PN26D52V.js.map