@tylertech/forge 2.14.0-dev.0 → 2.14.0-dev.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (466) hide show
  1. package/custom-elements.json +1936 -482
  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.AMFXGOSA.js → chunk.6YPD6CQM.js} +1 -1
  58. package/dist/esm/chunks/{chunk.AMFXGOSA.js.map → chunk.6YPD6CQM.js.map} +2 -2
  59. package/dist/esm/chunks/{chunk.PBL2N45I.js → chunk.72AUOVCD.js} +2 -2
  60. package/dist/esm/chunks/{chunk.PBL2N45I.js.map → chunk.72AUOVCD.js.map} +2 -2
  61. package/dist/esm/chunks/{chunk.YW47QJVY.js → chunk.73AYD2BF.js} +2 -2
  62. package/dist/esm/chunks/{chunk.YW47QJVY.js.map → chunk.73AYD2BF.js.map} +2 -2
  63. package/dist/esm/chunks/{chunk.HQJZRTOH.js → chunk.77Y3EABF.js} +2 -2
  64. package/dist/esm/chunks/{chunk.HQJZRTOH.js.map → chunk.77Y3EABF.js.map} +2 -2
  65. package/dist/esm/chunks/{chunk.EE2LK23T.js → chunk.7A6MX6CS.js} +2 -2
  66. package/dist/esm/chunks/{chunk.EE2LK23T.js.map → chunk.7A6MX6CS.js.map} +2 -2
  67. package/dist/esm/chunks/{chunk.V55E5JD5.js → chunk.7UKA4E5A.js} +2 -2
  68. package/dist/esm/chunks/{chunk.V55E5JD5.js.map → chunk.7UKA4E5A.js.map} +2 -2
  69. package/dist/esm/chunks/{chunk.GVQVA7P3.js → chunk.7XFU2W25.js} +1 -1
  70. package/dist/esm/chunks/{chunk.GVQVA7P3.js.map → chunk.7XFU2W25.js.map} +2 -2
  71. package/dist/esm/chunks/{chunk.MYNPY3AQ.js → chunk.AFLH5HUG.js} +2 -2
  72. package/dist/esm/chunks/{chunk.MYNPY3AQ.js.map → chunk.AFLH5HUG.js.map} +2 -2
  73. package/dist/esm/chunks/{chunk.24D46RLZ.js → chunk.ARJ3EVVO.js} +2 -2
  74. package/dist/esm/chunks/{chunk.24D46RLZ.js.map → chunk.ARJ3EVVO.js.map} +2 -2
  75. package/dist/esm/chunks/{chunk.OOW3UKT4.js → chunk.BE7PZANN.js} +2 -2
  76. package/dist/esm/chunks/{chunk.OOW3UKT4.js.map → chunk.BE7PZANN.js.map} +2 -2
  77. package/dist/esm/chunks/{chunk.G5JTL66M.js → chunk.BJE6O5ES.js} +2 -2
  78. package/dist/esm/chunks/{chunk.G5JTL66M.js.map → chunk.BJE6O5ES.js.map} +2 -2
  79. package/dist/esm/chunks/{chunk.2GY2VPJG.js → chunk.BJZ7RB5F.js} +1 -1
  80. package/dist/esm/chunks/{chunk.2GY2VPJG.js.map → chunk.BJZ7RB5F.js.map} +2 -2
  81. package/dist/esm/chunks/{chunk.GVZEMIA3.js → chunk.BTBHIIGI.js} +2 -2
  82. package/dist/esm/chunks/{chunk.GVZEMIA3.js.map → chunk.BTBHIIGI.js.map} +2 -2
  83. package/dist/esm/chunks/chunk.C7AN6FMW.js +7 -0
  84. package/dist/esm/chunks/chunk.C7AN6FMW.js.map +7 -0
  85. package/dist/esm/chunks/{chunk.OGZOXNGT.js → chunk.DFJUCHEO.js} +2 -2
  86. package/dist/esm/chunks/{chunk.OGZOXNGT.js.map → chunk.DFJUCHEO.js.map} +2 -2
  87. package/dist/esm/chunks/{chunk.AWCBH5KW.js → chunk.DONAMICM.js} +1 -1
  88. package/dist/esm/chunks/{chunk.AWCBH5KW.js.map → chunk.DONAMICM.js.map} +2 -2
  89. package/dist/esm/chunks/chunk.DQJPIDVW.js +7 -0
  90. package/dist/esm/chunks/chunk.DQJPIDVW.js.map +7 -0
  91. package/dist/esm/chunks/{chunk.65G33MJV.js → chunk.DT7MZR5Y.js} +2 -2
  92. package/dist/esm/chunks/{chunk.65G33MJV.js.map → chunk.DT7MZR5Y.js.map} +2 -2
  93. package/dist/esm/chunks/chunk.DYNEJBYK.js +7 -0
  94. package/dist/esm/chunks/{chunk.NG5EGZ5Y.js.map → chunk.DYNEJBYK.js.map} +2 -2
  95. package/dist/esm/chunks/{chunk.323FEQVK.js → chunk.E6CYXNS2.js} +2 -2
  96. package/dist/esm/chunks/{chunk.323FEQVK.js.map → chunk.E6CYXNS2.js.map} +2 -2
  97. package/dist/esm/chunks/{chunk.ZFD3OE45.js → chunk.EGRUD7S7.js} +2 -2
  98. package/dist/esm/chunks/{chunk.ZFD3OE45.js.map → chunk.EGRUD7S7.js.map} +2 -2
  99. package/dist/esm/chunks/{chunk.24X566SZ.js → chunk.ESR2NHOS.js} +2 -2
  100. package/dist/esm/chunks/chunk.ESR2NHOS.js.map +7 -0
  101. package/dist/esm/chunks/{chunk.55BOUOT6.js → chunk.F2B24WLK.js} +2 -2
  102. package/dist/esm/chunks/{chunk.55BOUOT6.js.map → chunk.F2B24WLK.js.map} +2 -2
  103. package/dist/esm/chunks/chunk.F3MP6AXF.js +29 -0
  104. package/dist/esm/chunks/chunk.F3MP6AXF.js.map +7 -0
  105. package/dist/esm/chunks/{chunk.73O3BMP2.js → chunk.FRYLJWYL.js} +2 -2
  106. package/dist/esm/chunks/{chunk.73O3BMP2.js.map → chunk.FRYLJWYL.js.map} +2 -2
  107. package/dist/esm/chunks/chunk.FVRSGKJD.js +7 -0
  108. package/dist/esm/chunks/chunk.FVRSGKJD.js.map +7 -0
  109. package/dist/esm/chunks/{chunk.TMJBIAWC.js → chunk.G3ZTZ4AN.js} +2 -2
  110. package/dist/esm/chunks/{chunk.TMJBIAWC.js.map → chunk.G3ZTZ4AN.js.map} +2 -2
  111. package/dist/esm/chunks/{chunk.MNPORZ4F.js → chunk.G45OZEIS.js} +2 -2
  112. package/dist/esm/chunks/{chunk.MNPORZ4F.js.map → chunk.G45OZEIS.js.map} +2 -2
  113. package/dist/esm/chunks/{chunk.5PXABBKU.js → chunk.G5MGGEFP.js} +2 -2
  114. package/dist/esm/chunks/{chunk.5PXABBKU.js.map → chunk.G5MGGEFP.js.map} +2 -2
  115. package/dist/esm/chunks/{chunk.Y6FFG7XO.js → chunk.GO5A4GKZ.js} +1 -1
  116. package/dist/esm/chunks/{chunk.Y6FFG7XO.js.map → chunk.GO5A4GKZ.js.map} +2 -2
  117. package/dist/esm/chunks/{chunk.L54GENPD.js → chunk.H4Z4DHPA.js} +2 -2
  118. package/dist/esm/chunks/{chunk.L54GENPD.js.map → chunk.H4Z4DHPA.js.map} +2 -2
  119. package/dist/esm/chunks/{chunk.P45HS252.js → chunk.HBMNXZES.js} +2 -2
  120. package/dist/esm/chunks/{chunk.P45HS252.js.map → chunk.HBMNXZES.js.map} +2 -2
  121. package/dist/esm/chunks/{chunk.P5GT5YBP.js → chunk.HPDBSBQJ.js} +2 -2
  122. package/dist/esm/chunks/{chunk.P5GT5YBP.js.map → chunk.HPDBSBQJ.js.map} +2 -2
  123. package/dist/esm/chunks/{chunk.6NBVXSNZ.js → chunk.HU27X3IT.js} +2 -2
  124. package/dist/esm/chunks/{chunk.6NBVXSNZ.js.map → chunk.HU27X3IT.js.map} +2 -2
  125. package/dist/esm/chunks/{chunk.ORF746AF.js → chunk.HV6SPRC4.js} +2 -2
  126. package/dist/esm/chunks/{chunk.ORF746AF.js.map → chunk.HV6SPRC4.js.map} +2 -2
  127. package/dist/esm/chunks/{chunk.C557PTJ5.js → chunk.I5BAZWUF.js} +2 -2
  128. package/dist/esm/chunks/{chunk.C557PTJ5.js.map → chunk.I5BAZWUF.js.map} +2 -2
  129. package/dist/esm/chunks/chunk.IGTXLDZS.js +7 -0
  130. package/dist/esm/chunks/{chunk.DRI2NLIB.js.map → chunk.IGTXLDZS.js.map} +2 -2
  131. package/dist/esm/chunks/{chunk.GXUYYBVO.js → chunk.ILRWZHH3.js} +2 -2
  132. package/dist/esm/chunks/chunk.ILRWZHH3.js.map +7 -0
  133. package/dist/esm/chunks/{chunk.Z6S62LZJ.js → chunk.INCKI5IX.js} +2 -2
  134. package/dist/esm/chunks/{chunk.Z6S62LZJ.js.map → chunk.INCKI5IX.js.map} +2 -2
  135. package/dist/esm/chunks/{chunk.ROF42KJ3.js → chunk.J2H5RXTX.js} +2 -2
  136. package/dist/esm/chunks/{chunk.ROF42KJ3.js.map → chunk.J2H5RXTX.js.map} +2 -2
  137. package/dist/esm/chunks/{chunk.G76HB2FK.js → chunk.J2M2MXP2.js} +1 -1
  138. package/dist/esm/chunks/{chunk.G76HB2FK.js.map → chunk.J2M2MXP2.js.map} +2 -2
  139. package/dist/esm/chunks/{chunk.SVGEVCXA.js → chunk.J6WCFQSS.js} +2 -2
  140. package/dist/esm/chunks/{chunk.SVGEVCXA.js.map → chunk.J6WCFQSS.js.map} +2 -2
  141. package/dist/esm/chunks/{chunk.HWVLZ44Q.js → chunk.JEN6YP2Q.js} +2 -2
  142. package/dist/esm/chunks/{chunk.HWVLZ44Q.js.map → chunk.JEN6YP2Q.js.map} +2 -2
  143. package/dist/esm/chunks/{chunk.ZAKLVVFO.js → chunk.JHBCYICS.js} +2 -2
  144. package/dist/esm/chunks/{chunk.ZAKLVVFO.js.map → chunk.JHBCYICS.js.map} +2 -2
  145. package/dist/esm/chunks/chunk.JHY2CKEH.js +7 -0
  146. package/dist/esm/chunks/{chunk.CN7DHS4J.js.map → chunk.JHY2CKEH.js.map} +2 -2
  147. package/dist/esm/chunks/{chunk.FL6SJHQU.js → chunk.K2C4W3CO.js} +2 -2
  148. package/dist/esm/chunks/{chunk.FL6SJHQU.js.map → chunk.K2C4W3CO.js.map} +3 -3
  149. package/dist/esm/chunks/chunk.K6AFP52A.js +7 -0
  150. package/dist/esm/chunks/chunk.K6AFP52A.js.map +7 -0
  151. package/dist/esm/chunks/{chunk.HUX56BCR.js → chunk.KE6GOYAB.js} +2 -2
  152. package/dist/esm/chunks/{chunk.HUX56BCR.js.map → chunk.KE6GOYAB.js.map} +2 -2
  153. package/dist/esm/chunks/{chunk.B3IJU6XJ.js → chunk.KTGSZEAG.js} +1 -1
  154. package/dist/esm/chunks/{chunk.B3IJU6XJ.js.map → chunk.KTGSZEAG.js.map} +2 -2
  155. package/dist/esm/chunks/{chunk.BMFJLHDR.js → chunk.KU5CXXGS.js} +2 -2
  156. package/dist/esm/chunks/{chunk.BMFJLHDR.js.map → chunk.KU5CXXGS.js.map} +2 -2
  157. package/dist/esm/chunks/{chunk.5DKXUTFN.js → chunk.KZO4DT2S.js} +2 -2
  158. package/dist/esm/chunks/{chunk.5DKXUTFN.js.map → chunk.KZO4DT2S.js.map} +3 -3
  159. package/dist/esm/chunks/{chunk.FBERE7AL.js → chunk.LDN4HLF7.js} +2 -2
  160. package/dist/esm/chunks/{chunk.FBERE7AL.js.map → chunk.LDN4HLF7.js.map} +2 -2
  161. package/dist/esm/chunks/chunk.LFLREB3C.js +7 -0
  162. package/dist/esm/chunks/chunk.LFLREB3C.js.map +7 -0
  163. package/dist/esm/chunks/{chunk.E37HEAJ5.js → chunk.LIKJD4SK.js} +1 -1
  164. package/dist/esm/chunks/{chunk.E37HEAJ5.js.map → chunk.LIKJD4SK.js.map} +2 -2
  165. package/dist/esm/chunks/{chunk.S76NW5JY.js → chunk.LYOQ2RGP.js} +2 -2
  166. package/dist/esm/chunks/{chunk.S76NW5JY.js.map → chunk.LYOQ2RGP.js.map} +2 -2
  167. package/dist/esm/chunks/{chunk.R2L3S3YD.js → chunk.MHOS3IHQ.js} +2 -2
  168. package/dist/esm/chunks/{chunk.R2L3S3YD.js.map → chunk.MHOS3IHQ.js.map} +2 -2
  169. package/dist/esm/chunks/{chunk.IARIRFXO.js → chunk.MLV25D2G.js} +2 -2
  170. package/dist/esm/chunks/{chunk.IARIRFXO.js.map → chunk.MLV25D2G.js.map} +2 -2
  171. package/dist/esm/chunks/{chunk.2D4IBAWP.js → chunk.MXTDW27J.js} +2 -2
  172. package/dist/esm/chunks/{chunk.2D4IBAWP.js.map → chunk.MXTDW27J.js.map} +2 -2
  173. package/dist/esm/chunks/{chunk.LZMYHIO2.js → chunk.MZLPUI6R.js} +1 -1
  174. package/dist/esm/chunks/{chunk.LZMYHIO2.js.map → chunk.MZLPUI6R.js.map} +2 -2
  175. package/dist/esm/chunks/{chunk.NZTGBDRK.js → chunk.N4PVZUJX.js} +2 -2
  176. package/dist/esm/chunks/{chunk.NZTGBDRK.js.map → chunk.N4PVZUJX.js.map} +2 -2
  177. package/dist/esm/chunks/{chunk.MU4FV57Q.js → chunk.NW7NV2A2.js} +2 -2
  178. package/dist/esm/chunks/{chunk.MU4FV57Q.js.map → chunk.NW7NV2A2.js.map} +2 -2
  179. package/dist/esm/chunks/{chunk.LGEYSCS2.js → chunk.O4FB4BV5.js} +2 -2
  180. package/dist/esm/chunks/{chunk.LGEYSCS2.js.map → chunk.O4FB4BV5.js.map} +2 -2
  181. package/dist/esm/chunks/{chunk.YKXCORJE.js → chunk.O73S5LF3.js} +2 -2
  182. package/dist/esm/chunks/{chunk.YKXCORJE.js.map → chunk.O73S5LF3.js.map} +2 -2
  183. package/dist/esm/chunks/{chunk.GZEWDHFJ.js → chunk.OV4QNVJH.js} +2 -2
  184. package/dist/esm/chunks/{chunk.GZEWDHFJ.js.map → chunk.OV4QNVJH.js.map} +2 -2
  185. package/dist/esm/chunks/{chunk.FQEETXUQ.js → chunk.OZ5BPXNV.js} +2 -2
  186. package/dist/esm/chunks/{chunk.FQEETXUQ.js.map → chunk.OZ5BPXNV.js.map} +2 -2
  187. package/dist/esm/chunks/{chunk.VHKQHMK3.js → chunk.P3IA2WTO.js} +2 -2
  188. package/dist/esm/chunks/{chunk.VHKQHMK3.js.map → chunk.P3IA2WTO.js.map} +3 -3
  189. package/dist/esm/chunks/{chunk.PHJPLWFH.js → chunk.PALRSBSY.js} +2 -2
  190. package/dist/esm/chunks/{chunk.PHJPLWFH.js.map → chunk.PALRSBSY.js.map} +2 -2
  191. package/dist/esm/chunks/{chunk.R4NDFXVA.js → chunk.PN26D52V.js} +2 -2
  192. package/dist/esm/chunks/{chunk.R4NDFXVA.js.map → chunk.PN26D52V.js.map} +2 -2
  193. package/dist/esm/chunks/chunk.PYIFIHDK.js +7 -0
  194. package/dist/esm/chunks/chunk.PYIFIHDK.js.map +7 -0
  195. package/dist/esm/chunks/{chunk.7LBAA7TC.js → chunk.RB5BTA5N.js} +2 -2
  196. package/dist/esm/chunks/{chunk.7LBAA7TC.js.map → chunk.RB5BTA5N.js.map} +2 -2
  197. package/dist/esm/chunks/{chunk.NYMNX3S7.js → chunk.RBAVT3XQ.js} +2 -2
  198. package/dist/esm/chunks/{chunk.NYMNX3S7.js.map → chunk.RBAVT3XQ.js.map} +2 -2
  199. package/dist/esm/chunks/chunk.RE5X26QT.js +29 -0
  200. package/dist/esm/chunks/chunk.RE5X26QT.js.map +7 -0
  201. package/dist/esm/chunks/{chunk.XY4N4TSH.js → chunk.RG6CDWEX.js} +2 -2
  202. package/dist/esm/chunks/{chunk.XY4N4TSH.js.map → chunk.RG6CDWEX.js.map} +2 -2
  203. package/dist/esm/chunks/{chunk.EXKBJEFL.js → chunk.RHFNK6EE.js} +2 -2
  204. package/dist/esm/chunks/{chunk.EXKBJEFL.js.map → chunk.RHFNK6EE.js.map} +2 -2
  205. package/dist/esm/chunks/{chunk.ZMXKZJRM.js → chunk.ROR6JMAE.js} +2 -2
  206. package/dist/esm/chunks/{chunk.ZMXKZJRM.js.map → chunk.ROR6JMAE.js.map} +2 -2
  207. package/dist/esm/chunks/{chunk.3UB364WW.js → chunk.RYMPSU4J.js} +2 -2
  208. package/dist/esm/chunks/{chunk.3UB364WW.js.map → chunk.RYMPSU4J.js.map} +2 -2
  209. package/dist/esm/chunks/{chunk.LYAS4FAN.js → chunk.SAQVWOVK.js} +2 -2
  210. package/dist/esm/chunks/{chunk.LYAS4FAN.js.map → chunk.SAQVWOVK.js.map} +2 -2
  211. package/dist/esm/chunks/chunk.SD4LLO5A.js +12 -0
  212. package/dist/esm/chunks/chunk.SD4LLO5A.js.map +7 -0
  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 +2 -2
  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
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../src/app-bar/menu-button/app-bar-menu-button-constants.ts", "../../src/app-bar/menu-button/app-bar-menu-button.ts", "../../src/app-bar/menu-button/index.ts"],
4
4
  "sourcesContent": ["import { COMPONENT_NAME_PREFIX } from '../../constants';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}app-bar-menu-button`;\n\nexport const APP_BAR_MENU_BUTTON_CONSTANTS = {\n elementName\n};\n", "import { CustomElement, attachLightTemplate } from '@tylertech/forge-core';\n\nimport { APP_BAR_MENU_BUTTON_CONSTANTS } from './app-bar-menu-button-constants';\nimport { IconButtonComponent } from '../../icon-button';\nimport { TooltipComponent } from '../../tooltip';\nimport { IconComponent, IconRegistry } from '../../icon';\nimport { tylIconMenu } from '@tylertech/tyler-icons/standard';\nimport { BaseComponent, IBaseComponent } from '../../core/base/base-component';\n\nconst template = '<template><forge-icon-button style=\\\"width: 48px; height: 48px; display: flex; justify-content: center; align-items: center;\\\"><button type=\\\"button\\\" aria-label=\\\"Toggle navigation menu\\\"><forge-icon name=\\\"menu\\\"></forge-icon></button><forge-tooltip delay=\\\"500\\\" position=\\\"bottom\\\">Menu</forge-tooltip></forge-icon-button></template>';\n\nexport interface IAppBarMenuButtonComponent extends IBaseComponent {}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'forge-app-bar-menu-button': IAppBarMenuButtonComponent;\n }\n}\n\n/**\n * The web component class behind the `<forge-app-bar-menu-button>` custom element.\n * \n * @tag forge-app-bar-menu-button\n */\n@CustomElement({\n name: APP_BAR_MENU_BUTTON_CONSTANTS.elementName,\n dependencies: [\n IconButtonComponent,\n TooltipComponent,\n IconComponent\n ]\n})\nexport class AppBarMenuButtonComponent extends BaseComponent implements IAppBarMenuButtonComponent {\n\n constructor() {\n super();\n IconRegistry.define(tylIconMenu);\n }\n\n public initializedCallback(): void {\n attachLightTemplate(this, template);\n }\n}\n", "import { defineCustomElement } from '@tylertech/forge-core';\nimport { AppBarMenuButtonComponent } from './app-bar-menu-button';\n\nexport * from './app-bar-menu-button-constants';\nexport * from './app-bar-menu-button';\n\nexport function defineAppBarMenuButtonComponent(): void {\n defineCustomElement(AppBarMenuButtonComponent);\n}\n"],
5
- "mappings": "+SAEA,GAAM,GAA2C,GAAG,uBAEvC,EAAgC,CAC3C,aACF,ECGA,GAAM,GAAW,wUAuBJ,EAAN,aAAwC,EAAoD,CAEjG,aAAc,CACZ,MAAM,EACN,EAAa,OAAO,CAAW,CACjC,CAEA,AAAO,qBAA4B,CACjC,EAAoB,KAAM,CAAQ,CACpC,CACF,EAVa,EAAN,GARP,AAAC,EAAc,CACb,KAAM,EAA8B,YACpC,aAAc,CACZ,EACA,EACA,CACF,CACF,CAAC,GACY,GC1BN,YAAiD,CACtD,EAAoB,CAAyB,CAC/C",
6
- "names": []
5
+ "mappings": "+SAEA,IAAMA,EAA2C,GAAGC,uBAEvCC,EAAgC,CAC3C,YAAAF,CACF,ECGA,IAAMG,EAAW,wUAuBJC,EAAN,cAAwCC,CAAoD,CAEjG,aAAc,CACZ,MAAM,EACNC,EAAa,OAAOC,CAAW,CACjC,CAEO,qBAA4B,CACjCC,EAAoB,KAAML,CAAQ,CACpC,CACF,EAVaC,EAANK,EAAA,CARNC,EAAc,CACb,KAAMC,EAA8B,YACpC,aAAc,CACZC,EACAC,EACAC,CACF,CACF,CAAC,GACYV,GC1BN,SAASW,GAAwC,CACtDC,EAAoBC,CAAyB,CAC/C",
6
+ "names": ["elementName", "COMPONENT_NAME_PREFIX", "APP_BAR_MENU_BUTTON_CONSTANTS", "template", "AppBarMenuButtonComponent", "BaseComponent", "IconRegistry", "tylIconMenu", "attachLightTemplate", "__decorateClass", "CustomElement", "APP_BAR_MENU_BUTTON_CONSTANTS", "IconButtonComponent", "TooltipComponent", "IconComponent", "defineAppBarMenuButtonComponent", "defineCustomElement", "AppBarMenuButtonComponent"]
7
7
  }
@@ -3,5 +3,5 @@
3
3
  * Copyright 2023 Tyler Technologies, Inc.
4
4
  * License: Apache-2.0
5
5
  */
6
- import{a as m,d as E}from"./chunk.2CEW64ZM.js";import{b as O}from"./chunk.EE2LK23T.js";import{y as T}from"./chunk.LZMYHIO2.js";import{d as v}from"./chunk.KBMLP7UT.js";import{a as N,d as C,l as A}from"./chunk.ZAKLVVFO.js";import{a as B}from"./chunk.5PXABBKU.js";import{a}from"./chunk.B3IJU6XJ.js";import{a as g,b as I}from"./chunk.OOW3UKT4.js";import{a as h,d as _,h as c,l as f}from"./chunk.MMVZJLXE.js";import{u as l}from"./chunk.R4NDFXVA.js";import{k as d,l as b}from"./chunk.G76HB2FK.js";import{f as n}from"./chunk.MCIQXNKY.js";var r=class extends B{constructor(i){super(i)}setIcon(i){this._iconElement.name=i}initialize(){this._badgeElement=c(this._component,m.elementName),this._iconElement=c(this._component,N.elementName)}setCount(i){this._badgeElement.textContent=i}setBadgeType(i){this._badgeElement.dot=i}setBadgeTheme(i){l(this._badgeElement,!!i,m.attributes.THEME,i)}setBadgeVisible(i){this._badgeElement.open=i}};var x=`${I}app-bar-notification-button`,H={COUNT:"count",DOT:"dot",THEME:"theme",SHOW_BADGE:"show-badge",ICON:"icon"},t={elementName:x,attributes:H};var p=class{constructor(e){this._adapter=e;this._count=0;this._dot=!1;this._showBadge=!1;this._isInitialized=!1;this._icon="notifications"}initialize(){this._adapter.initialize(),this._adapter.setCount(this._count),this._adapter.setBadgeType(this._dot),this._adapter.setBadgeTheme(this._theme),this._adapter.setBadgeVisible(this._showBadge),this._adapter.setIcon(this._icon),this._isInitialized=!0}disconnect(){this._isInitialized=!1}get icon(){return this._icon}set icon(e){this._icon!==e&&(this._icon=e,this._isInitialized&&(this._adapter.setIcon(this._icon),this._adapter.setHostAttribute(t.attributes.ICON,this._icon)))}get count(){return this._count}set count(e){this._count!==e&&(this._count=e,this._isInitialized&&(this._adapter.setCount(this._count),this._adapter.setHostAttribute(t.attributes.COUNT,this._count)))}get dot(){return this._dot}set dot(e){this._dot!==e&&(this._dot=e,this._isInitialized&&(this._adapter.setBadgeType(this._dot),this._dot?this._adapter.setHostAttribute(t.attributes.DOT):this._adapter.removeHostAttribute(t.attributes.DOT)))}get theme(){return this._theme}set theme(e){this._theme!==e&&(this._theme=e,this._isInitialized&&(this._adapter.setBadgeTheme(this._theme),this._adapter.setHostAttribute(t.attributes.THEME,this._theme)))}get showBadge(){return this._showBadge}set showBadge(e){this._showBadge!==e&&(this._showBadge=e,this._isInitialized&&(this._adapter.setBadgeVisible(this._showBadge),this._adapter.setHostAttribute(t.attributes.SHOW_BADGE,this._showBadge)))}};var w='<template><forge-icon-button class="forge-icon-button--with-badge"><button type="button" aria-label="Show notifications"><forge-icon></forge-icon></button><forge-tooltip delay="500" position="bottom">Notifications</forge-tooltip><forge-badge positioned app-bar-context></forge-badge></forge-icon-button></template>',o=class extends f{constructor(){super();C.define(T),this._foundation=new p(new r(this))}static get observedAttributes(){return[t.attributes.COUNT,t.attributes.DOT,t.attributes.THEME,t.attributes.SHOW_BADGE,t.attributes.ICON]}initializedCallback(){_(this,w)}connectedCallback(){this._foundation.initialize()}attributeChangedCallback(i,S,s){switch(i){case t.attributes.COUNT:this.count=b(s);break;case t.attributes.DOT:this.dot=d(s);break;case t.attributes.THEME:this.theme=s;break;case t.attributes.ICON:this.icon=s;break;case t.attributes.SHOW_BADGE:this.showBadge=d(s);break}}};n([a()],o.prototype,"count",2),n([a()],o.prototype,"dot",2),n([a()],o.prototype,"theme",2),n([a()],o.prototype,"icon",2),n([a()],o.prototype,"showBadge",2),o=n([g({name:t.elementName,dependencies:[O,v,E,A]})],o);function nt(){h(o)}export{r as a,t as b,p as c,o as d,nt as e};
7
- //# sourceMappingURL=chunk.K5WLIDQK.js.map
6
+ import{a as m,d as E}from"./chunk.TR5YMNJJ.js";import{b as O}from"./chunk.7A6MX6CS.js";import{y as T}from"./chunk.MZLPUI6R.js";import{d as v}from"./chunk.4WPFFNLH.js";import{a as N,d as C,l as A}from"./chunk.JHBCYICS.js";import{a as B}from"./chunk.G5MGGEFP.js";import{a}from"./chunk.KTGSZEAG.js";import{a as g,b as I}from"./chunk.BE7PZANN.js";import{a as h,d as _,h as c,l as f}from"./chunk.Y4GKBJGI.js";import{u as l}from"./chunk.PN26D52V.js";import{k as d,l as b}from"./chunk.J2M2MXP2.js";import{f as n}from"./chunk.MCIQXNKY.js";var r=class extends B{constructor(i){super(i)}setIcon(i){this._iconElement.name=i}initialize(){this._badgeElement=c(this._component,m.elementName),this._iconElement=c(this._component,N.elementName)}setCount(i){this._badgeElement.textContent=i}setBadgeType(i){this._badgeElement.dot=i}setBadgeTheme(i){l(this._badgeElement,!!i,m.attributes.THEME,i)}setBadgeVisible(i){this._badgeElement.open=i}};var x=`${I}app-bar-notification-button`,H={COUNT:"count",DOT:"dot",THEME:"theme",SHOW_BADGE:"show-badge",ICON:"icon"},t={elementName:x,attributes:H};var p=class{constructor(e){this._adapter=e;this._count=0;this._dot=!1;this._showBadge=!1;this._isInitialized=!1;this._icon="notifications"}initialize(){this._adapter.initialize(),this._adapter.setCount(this._count),this._adapter.setBadgeType(this._dot),this._adapter.setBadgeTheme(this._theme),this._adapter.setBadgeVisible(this._showBadge),this._adapter.setIcon(this._icon),this._isInitialized=!0}disconnect(){this._isInitialized=!1}get icon(){return this._icon}set icon(e){this._icon!==e&&(this._icon=e,this._isInitialized&&(this._adapter.setIcon(this._icon),this._adapter.setHostAttribute(t.attributes.ICON,this._icon)))}get count(){return this._count}set count(e){this._count!==e&&(this._count=e,this._isInitialized&&(this._adapter.setCount(this._count),this._adapter.setHostAttribute(t.attributes.COUNT,this._count)))}get dot(){return this._dot}set dot(e){this._dot!==e&&(this._dot=e,this._isInitialized&&(this._adapter.setBadgeType(this._dot),this._dot?this._adapter.setHostAttribute(t.attributes.DOT):this._adapter.removeHostAttribute(t.attributes.DOT)))}get theme(){return this._theme}set theme(e){this._theme!==e&&(this._theme=e,this._isInitialized&&(this._adapter.setBadgeTheme(this._theme),this._adapter.setHostAttribute(t.attributes.THEME,this._theme)))}get showBadge(){return this._showBadge}set showBadge(e){this._showBadge!==e&&(this._showBadge=e,this._isInitialized&&(this._adapter.setBadgeVisible(this._showBadge),this._adapter.setHostAttribute(t.attributes.SHOW_BADGE,this._showBadge)))}};var w='<template><forge-icon-button class="forge-icon-button--with-badge"><button type="button" aria-label="Show notifications"><forge-icon></forge-icon></button><forge-tooltip delay="500" position="bottom">Notifications</forge-tooltip><forge-badge positioned app-bar-context></forge-badge></forge-icon-button></template>',o=class extends f{constructor(){super();C.define(T),this._foundation=new p(new r(this))}static get observedAttributes(){return[t.attributes.COUNT,t.attributes.DOT,t.attributes.THEME,t.attributes.SHOW_BADGE,t.attributes.ICON]}initializedCallback(){_(this,w)}connectedCallback(){this._foundation.initialize()}attributeChangedCallback(i,S,s){switch(i){case t.attributes.COUNT:this.count=b(s);break;case t.attributes.DOT:this.dot=d(s);break;case t.attributes.THEME:this.theme=s;break;case t.attributes.ICON:this.icon=s;break;case t.attributes.SHOW_BADGE:this.showBadge=d(s);break}}};n([a()],o.prototype,"count",2),n([a()],o.prototype,"dot",2),n([a()],o.prototype,"theme",2),n([a()],o.prototype,"icon",2),n([a()],o.prototype,"showBadge",2),o=n([g({name:t.elementName,dependencies:[O,v,E,A]})],o);function nt(){h(o)}export{r as a,t as b,p as c,o as d,nt as e};
7
+ //# sourceMappingURL=chunk.XZ4WI7VK.js.map
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../src/app-bar/notification-button/app-bar-notification-button-adapter.ts", "../../src/app-bar/notification-button/app-bar-notification-button-constants.ts", "../../src/app-bar/notification-button/app-bar-notification-button-foundation.ts", "../../src/app-bar/notification-button/app-bar-notification-button.ts", "../../src/app-bar/notification-button/index.ts"],
4
4
  "sourcesContent": ["import { getLightElement, toggleAttribute } from '@tylertech/forge-core';\nimport { BADGE_CONSTANTS, IBadgeComponent } from '../../badge';\nimport { BaseAdapter, IBaseAdapter } from '../../core/base/base-adapter';\nimport { IAppBarNotificationButtonComponent } from './app-bar-notification-button';\nimport { ICON_CONSTANTS, IIconComponent } from '../../icon';\n\nexport interface IAppBarNotificationButtonAdapter extends IBaseAdapter {\n initialize(): void;\n setIcon(icon: string): void;\n setCount(value: number): void;\n setBadgeType(dot: boolean): void;\n setBadgeTheme(theme: string): void;\n setBadgeVisible(isVisible: boolean): void;\n}\n\nexport class AppBarNotificationButtonAdapter extends BaseAdapter<IAppBarNotificationButtonComponent> implements IAppBarNotificationButtonAdapter {\n private _badgeElement: IBadgeComponent;\n private _iconElement: IIconComponent;\n\n constructor(component: IAppBarNotificationButtonComponent) {\n super(component);\n }\n\n public setIcon(icon: string): void {\n this._iconElement.name = icon;\n }\n\n public initialize(): void {\n this._badgeElement = getLightElement(this._component, BADGE_CONSTANTS.elementName) as IBadgeComponent;\n this._iconElement = getLightElement(this._component, ICON_CONSTANTS.elementName) as IIconComponent;\n }\n\n public setCount(value: number): void {\n this._badgeElement.textContent = value as any;\n }\n\n public setBadgeType(dot: boolean): void {\n this._badgeElement.dot = dot;\n }\n\n public setBadgeTheme(theme: string): void {\n toggleAttribute(this._badgeElement, !!theme, BADGE_CONSTANTS.attributes.THEME, theme);\n }\n\n public setBadgeVisible(isVisible: boolean): void {\n this._badgeElement.open = isVisible;\n }\n}\n", "import { COMPONENT_NAME_PREFIX } from '../../constants';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}app-bar-notification-button`;\n\nconst attributes = {\n COUNT: 'count',\n DOT: 'dot',\n THEME: 'theme',\n SHOW_BADGE: 'show-badge',\n ICON: 'icon'\n};\n\nexport const APP_BAR_NOTIFICATION_BUTTON_CONSTANTS = {\n elementName,\n attributes\n};\n", "import { ICustomElementFoundation } from '@tylertech/forge-core';\nimport { IAppBarNotificationButtonAdapter } from './app-bar-notification-button-adapter';\nimport { APP_BAR_NOTIFICATION_BUTTON_CONSTANTS } from './app-bar-notification-button-constants';\n\nexport interface IAppBarNotificationButtonFoundation extends ICustomElementFoundation {\n count: number;\n dot: boolean;\n theme: string;\n showBadge: boolean;\n icon: string;\n}\n\nexport class AppBarNotificationButtonFoundation implements IAppBarNotificationButtonFoundation {\n private _count = 0;\n private _dot = false;\n private _theme: string;\n private _showBadge = false;\n private _isInitialized = false;\n private _icon = 'notifications';\n\n constructor(private _adapter: IAppBarNotificationButtonAdapter) {}\n\n public initialize(): void {\n this._adapter.initialize();\n this._adapter.setCount(this._count);\n this._adapter.setBadgeType(this._dot);\n this._adapter.setBadgeTheme(this._theme);\n this._adapter.setBadgeVisible(this._showBadge);\n this._adapter.setIcon(this._icon);\n this._isInitialized = true;\n }\n\n public disconnect(): void {\n this._isInitialized = false;\n }\n\n public get icon(): string {\n return this._icon;\n }\n public set icon(value: string) {\n if (this._icon !== value) {\n this._icon = value;\n if (this._isInitialized) {\n this._adapter.setIcon(this._icon);\n this._adapter.setHostAttribute(APP_BAR_NOTIFICATION_BUTTON_CONSTANTS.attributes.ICON, this._icon);\n }\n }\n }\n\n public get count(): number {\n return this._count;\n }\n public set count(value: number) {\n if (this._count !== value) {\n this._count = value;\n if (this._isInitialized) {\n this._adapter.setCount(this._count);\n this._adapter.setHostAttribute(APP_BAR_NOTIFICATION_BUTTON_CONSTANTS.attributes.COUNT, this._count as any);\n }\n }\n }\n\n public get dot(): boolean {\n return this._dot;\n }\n public set dot(value: boolean) {\n if (this._dot !== value) {\n this._dot = value;\n if (this._isInitialized) {\n this._adapter.setBadgeType(this._dot);\n if (this._dot) {\n this._adapter.setHostAttribute(APP_BAR_NOTIFICATION_BUTTON_CONSTANTS.attributes.DOT);\n } else {\n this._adapter.removeHostAttribute(APP_BAR_NOTIFICATION_BUTTON_CONSTANTS.attributes.DOT);\n }\n }\n }\n }\n\n public get theme(): string {\n return this._theme;\n }\n public set theme(value: string) {\n if (this._theme !== value) {\n this._theme = value;\n if (this._isInitialized) {\n this._adapter.setBadgeTheme(this._theme);\n this._adapter.setHostAttribute(APP_BAR_NOTIFICATION_BUTTON_CONSTANTS.attributes.THEME, this._theme);\n }\n }\n }\n\n public get showBadge(): boolean {\n return this._showBadge;\n }\n public set showBadge(value: boolean) {\n if (this._showBadge !== value) {\n this._showBadge = value;\n if (this._isInitialized) {\n this._adapter.setBadgeVisible(this._showBadge);\n this._adapter.setHostAttribute(APP_BAR_NOTIFICATION_BUTTON_CONSTANTS.attributes.SHOW_BADGE, this._showBadge as any);\n }\n }\n }\n}\n", "import { attachLightTemplate, coerceBoolean, coerceNumber, CustomElement, FoundationProperty } from '@tylertech/forge-core';\nimport { tylIconNotifications } from '@tylertech/tyler-icons/standard';\nimport { BadgeComponent } from '../../badge';\nimport { BaseComponent, IBaseComponent } from '../../core/base/base-component';\nimport { IconComponent, IconRegistry } from '../../icon';\nimport { IconButtonComponent } from '../../icon-button';\nimport { TooltipComponent } from '../../tooltip';\nimport { AppBarNotificationButtonAdapter } from './app-bar-notification-button-adapter';\nimport { APP_BAR_NOTIFICATION_BUTTON_CONSTANTS } from './app-bar-notification-button-constants';\nimport { AppBarNotificationButtonFoundation } from './app-bar-notification-button-foundation';\n\nconst template = '<template><forge-icon-button class=\\\"forge-icon-button--with-badge\\\"><button type=\\\"button\\\" aria-label=\\\"Show notifications\\\"><forge-icon></forge-icon></button><forge-tooltip delay=\\\"500\\\" position=\\\"bottom\\\">Notifications</forge-tooltip><forge-badge positioned app-bar-context></forge-badge></forge-icon-button></template>';\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'forge-app-bar-notification-button': IAppBarNotificationButtonComponent;\n }\n}\n\nexport interface IAppBarNotificationButtonComponent extends IBaseComponent {\n count: number;\n dot: boolean;\n showBadge: boolean;\n theme: string;\n icon: string;\n}\n/**\n * The web component class behind the `<forge-app-bar-notification-button>` custom element.\n * \n * @tag forge-app-bar-notification-button\n */\n@CustomElement({\n name: APP_BAR_NOTIFICATION_BUTTON_CONSTANTS.elementName,\n dependencies: [\n IconButtonComponent,\n TooltipComponent,\n BadgeComponent,\n IconComponent\n ]\n})\nexport class AppBarNotificationButtonComponent extends BaseComponent implements IAppBarNotificationButtonComponent {\n public static get observedAttributes(): string[] {\n return [\n APP_BAR_NOTIFICATION_BUTTON_CONSTANTS.attributes.COUNT,\n APP_BAR_NOTIFICATION_BUTTON_CONSTANTS.attributes.DOT,\n APP_BAR_NOTIFICATION_BUTTON_CONSTANTS.attributes.THEME,\n APP_BAR_NOTIFICATION_BUTTON_CONSTANTS.attributes.SHOW_BADGE,\n APP_BAR_NOTIFICATION_BUTTON_CONSTANTS.attributes.ICON\n ];\n }\n\n private _foundation: AppBarNotificationButtonFoundation;\n\n constructor() {\n super();\n IconRegistry.define(tylIconNotifications);\n this._foundation = new AppBarNotificationButtonFoundation(new AppBarNotificationButtonAdapter(this));\n }\n\n public initializedCallback(): void {\n attachLightTemplate(this, template);\n }\n\n public connectedCallback(): void {\n this._foundation.initialize();\n }\n\n public attributeChangedCallback(name: string, oldValue: string, newValue: string): void {\n switch (name) {\n case APP_BAR_NOTIFICATION_BUTTON_CONSTANTS.attributes.COUNT:\n this.count = coerceNumber(newValue);\n break;\n case APP_BAR_NOTIFICATION_BUTTON_CONSTANTS.attributes.DOT:\n this.dot = coerceBoolean(newValue);\n break;\n case APP_BAR_NOTIFICATION_BUTTON_CONSTANTS.attributes.THEME:\n this.theme = newValue;\n break;\n case APP_BAR_NOTIFICATION_BUTTON_CONSTANTS.attributes.ICON:\n this.icon = newValue;\n break;\n case APP_BAR_NOTIFICATION_BUTTON_CONSTANTS.attributes.SHOW_BADGE:\n this.showBadge = coerceBoolean(newValue);\n break;\n }\n }\n\n @FoundationProperty()\n public declare count: number;\n\n @FoundationProperty()\n public declare dot: boolean;\n\n @FoundationProperty()\n public declare theme: string;\n\n @FoundationProperty()\n public declare icon: string;\n\n @FoundationProperty()\n public declare showBadge: boolean;\n}\n", "import { defineCustomElement } from '@tylertech/forge-core';\n\nimport { AppBarNotificationButtonComponent } from './app-bar-notification-button';\n\nexport * from './app-bar-notification-button-adapter';\nexport * from './app-bar-notification-button-constants';\nexport * from './app-bar-notification-button-foundation';\nexport * from './app-bar-notification-button';\n\nexport function defineAppBarNotificationButtonComponent(): void {\n defineCustomElement(AppBarNotificationButtonComponent);\n}\n"],
5
- "mappings": "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",
6
- "names": []
5
+ "mappings": "mhBAeO,IAAMA,EAAN,cAA8CC,CAA4F,CAI/I,YAAYC,EAA+C,CACzD,MAAMA,CAAS,CACjB,CAEO,QAAQC,EAAoB,CACjC,KAAK,aAAa,KAAOA,CAC3B,CAEO,YAAmB,CACxB,KAAK,cAAgBC,EAAgB,KAAK,WAAYC,EAAgB,WAAW,EACjF,KAAK,aAAeD,EAAgB,KAAK,WAAYE,EAAe,WAAW,CACjF,CAEO,SAASC,EAAqB,CACnC,KAAK,cAAc,YAAcA,CACnC,CAEO,aAAaC,EAAoB,CACtC,KAAK,cAAc,IAAMA,CAC3B,CAEO,cAAcC,EAAqB,CACxCC,EAAgB,KAAK,cAAe,CAAC,CAACD,EAAOJ,EAAgB,WAAW,MAAOI,CAAK,CACtF,CAEO,gBAAgBE,EAA0B,CAC/C,KAAK,cAAc,KAAOA,CAC5B,CACF,EC7CA,IAAMC,EAA2C,GAAGC,+BAE9CC,EAAa,CACjB,MAAO,QACP,IAAK,MACL,MAAO,QACP,WAAY,aACZ,KAAM,MACR,EAEaC,EAAwC,CACnD,YAAAH,EACA,WAAAE,CACF,ECHO,IAAME,EAAN,KAAwF,CAQ7F,YAAoBC,EAA4C,CAA5C,cAAAA,EAPpB,KAAQ,OAAS,EACjB,KAAQ,KAAO,GAEf,KAAQ,WAAa,GACrB,KAAQ,eAAiB,GACzB,KAAQ,MAAQ,eAEiD,CAE1D,YAAmB,CACxB,KAAK,SAAS,WAAW,EACzB,KAAK,SAAS,SAAS,KAAK,MAAM,EAClC,KAAK,SAAS,aAAa,KAAK,IAAI,EACpC,KAAK,SAAS,cAAc,KAAK,MAAM,EACvC,KAAK,SAAS,gBAAgB,KAAK,UAAU,EAC7C,KAAK,SAAS,QAAQ,KAAK,KAAK,EAChC,KAAK,eAAiB,EACxB,CAEO,YAAmB,CACxB,KAAK,eAAiB,EACxB,CAEA,IAAW,MAAe,CACxB,OAAO,KAAK,KACd,CACA,IAAW,KAAKC,EAAe,CACzB,KAAK,QAAUA,IACjB,KAAK,MAAQA,EACT,KAAK,iBACP,KAAK,SAAS,QAAQ,KAAK,KAAK,EAChC,KAAK,SAAS,iBAAiBC,EAAsC,WAAW,KAAM,KAAK,KAAK,GAGtG,CAEA,IAAW,OAAgB,CACzB,OAAO,KAAK,MACd,CACA,IAAW,MAAMD,EAAe,CAC1B,KAAK,SAAWA,IAClB,KAAK,OAASA,EACV,KAAK,iBACP,KAAK,SAAS,SAAS,KAAK,MAAM,EAClC,KAAK,SAAS,iBAAiBC,EAAsC,WAAW,MAAO,KAAK,MAAa,GAG/G,CAEA,IAAW,KAAe,CACxB,OAAO,KAAK,IACd,CACA,IAAW,IAAID,EAAgB,CACzB,KAAK,OAASA,IAChB,KAAK,KAAOA,EACR,KAAK,iBACP,KAAK,SAAS,aAAa,KAAK,IAAI,EAChC,KAAK,KACP,KAAK,SAAS,iBAAiBC,EAAsC,WAAW,GAAG,EAEnF,KAAK,SAAS,oBAAoBA,EAAsC,WAAW,GAAG,GAI9F,CAEA,IAAW,OAAgB,CACzB,OAAO,KAAK,MACd,CACA,IAAW,MAAMD,EAAe,CAC1B,KAAK,SAAWA,IAClB,KAAK,OAASA,EACV,KAAK,iBACP,KAAK,SAAS,cAAc,KAAK,MAAM,EACvC,KAAK,SAAS,iBAAiBC,EAAsC,WAAW,MAAO,KAAK,MAAM,GAGxG,CAEA,IAAW,WAAqB,CAC9B,OAAO,KAAK,UACd,CACA,IAAW,UAAUD,EAAgB,CAC/B,KAAK,aAAeA,IACtB,KAAK,WAAaA,EACd,KAAK,iBACP,KAAK,SAAS,gBAAgB,KAAK,UAAU,EAC7C,KAAK,SAAS,iBAAiBC,EAAsC,WAAW,WAAY,KAAK,UAAiB,GAGxH,CACF,EC7FA,IAAMC,EAAW,6TA6BJC,EAAN,cAAgDC,CAA4D,CAajH,aAAc,CACZ,MAAM,EACNC,EAAa,OAAOC,CAAoB,EACxC,KAAK,YAAc,IAAIC,EAAmC,IAAIC,EAAgC,IAAI,CAAC,CACrG,CAhBA,WAAkB,oBAA+B,CAC/C,MAAO,CACLC,EAAsC,WAAW,MACjDA,EAAsC,WAAW,IACjDA,EAAsC,WAAW,MACjDA,EAAsC,WAAW,WACjDA,EAAsC,WAAW,IACnD,CACF,CAUO,qBAA4B,CACjCC,EAAoB,KAAMR,CAAQ,CACpC,CAEO,mBAA0B,CAC/B,KAAK,YAAY,WAAW,CAC9B,CAEO,yBAAyBS,EAAcC,EAAkBC,EAAwB,CACtF,OAAQF,QACDF,EAAsC,WAAW,MACpD,KAAK,MAAQK,EAAaD,CAAQ,EAClC,WACGJ,EAAsC,WAAW,IACpD,KAAK,IAAMM,EAAcF,CAAQ,EACjC,WACGJ,EAAsC,WAAW,MACpD,KAAK,MAAQI,EACb,WACGJ,EAAsC,WAAW,KACpD,KAAK,KAAOI,EACZ,WACGJ,EAAsC,WAAW,WACpD,KAAK,UAAYM,EAAcF,CAAQ,EACvC,MAEN,CAgBF,EAbiBG,EAAA,CADdC,EAAmB,GA/CTd,EAgDI,qBAGAa,EAAA,CADdC,EAAmB,GAlDTd,EAmDI,mBAGAa,EAAA,CADdC,EAAmB,GArDTd,EAsDI,qBAGAa,EAAA,CADdC,EAAmB,GAxDTd,EAyDI,oBAGAa,EAAA,CADdC,EAAmB,GA3DTd,EA4DI,yBA5DJA,EAANa,EAAA,CATNE,EAAc,CACb,KAAMT,EAAsC,YAC5C,aAAc,CACZU,EACAC,EACAC,EACAC,CACF,CACF,CAAC,GACYnB,GC/BN,SAASoB,IAAgD,CAC9DC,EAAoBC,CAAiC,CACvD",
6
+ "names": ["AppBarNotificationButtonAdapter", "BaseAdapter", "component", "icon", "getLightElement", "BADGE_CONSTANTS", "ICON_CONSTANTS", "value", "dot", "theme", "toggleAttribute", "isVisible", "elementName", "COMPONENT_NAME_PREFIX", "attributes", "APP_BAR_NOTIFICATION_BUTTON_CONSTANTS", "AppBarNotificationButtonFoundation", "_adapter", "value", "APP_BAR_NOTIFICATION_BUTTON_CONSTANTS", "template", "AppBarNotificationButtonComponent", "BaseComponent", "IconRegistry", "tylIconNotifications", "AppBarNotificationButtonFoundation", "AppBarNotificationButtonAdapter", "APP_BAR_NOTIFICATION_BUTTON_CONSTANTS", "attachLightTemplate", "name", "oldValue", "newValue", "coerceNumber", "coerceBoolean", "__decorateClass", "FoundationProperty", "CustomElement", "IconButtonComponent", "TooltipComponent", "BadgeComponent", "IconComponent", "defineAppBarNotificationButtonComponent", "defineCustomElement", "AppBarNotificationButtonComponent"]
7
7
  }
@@ -3,5 +3,5 @@
3
3
  * Copyright 2023 Tyler Technologies, Inc.
4
4
  * License: Apache-2.0
5
5
  */
6
- import{d as l,e as s}from"./chunk.R4NDFXVA.js";import{i as a}from"./chunk.G76HB2FK.js";function p(e){h(e._customElementName,e),a(e._customElementDependencies)&&w(e._customElementDependencies)}function w(e){e.forEach(p)}function h(e,t,n){var o;!((o=window==null?void 0:window.customElements)===null||o===void 0)&&o.get(e)||window.customElements.define(e,t,n)}function C(e,t){let n=e;for(;n.parentNode&&(n=n.parentNode,!!n.tagName);)if(!n.tagName||n.tagName.toLowerCase()===t.toLowerCase())return n;return null}function c(e){return new DOMParser().parseFromString(e,"text/html").querySelector("template")}function R(e,t){e.appendChild(c(t).content.cloneNode(!0))}function v(e,t,n,o=!1){let i=m(t,n);e.attachShadow({mode:"open",delegatesFocus:o}),f(e,i)}function S(e,t,n){if(!e.shadowRoot)throw new Error("This element does not contain a shadow root. Did you mean to call `attachShadowTemplate`?");let o=m(t,n);e.shadowRoot.children.length&&l(e.shadowRoot),f(e,o)}function m(e,t){let n=c(e);if(t){t=t instanceof Array?t:[t];let o=document.createElement("style");o.type="text/css",o.textContent=t.join(" "),n.content.appendChild(o)}return n}function f(e,t){e.shadowRoot.appendChild(t.content.cloneNode(!0))}function E(e,t){return e.shadowRoot.querySelector(t)}function T(e,t){return e.querySelector(t)}function N(e,t,n,o=!0,i=!1){let r;return typeof CustomEvent=="function"?r=new CustomEvent(t,{detail:n,bubbles:o,cancelable:i}):(r=document.createEvent("CustomEvent"),r.initCustomEvent(t,o,i,n)),e.dispatchEvent(r)}function D(e,t,n,o,i,r){let u=!!E(e,o);return r||(r=document.createComment(`(${n}) ${o}`)),t&&!u?s(i,r):!t&&u&&s(r,i),r}function P(e,t){function n(o){return!o||o===document||o===window?null:(o.assignedSlot&&(o=o.assignedSlot),o.closest(e)||n(o.getRootNode().host))}return n(t)}var d=class extends HTMLElement{};export{p as a,w as b,C as c,R as d,v as e,S as f,E as g,T as h,N as i,D as j,P as k,d as l};
7
- //# sourceMappingURL=chunk.MMVZJLXE.js.map
6
+ import{d as l,e as s}from"./chunk.PN26D52V.js";import{i as a}from"./chunk.J2M2MXP2.js";function p(e){h(e._customElementName,e),a(e._customElementDependencies)&&w(e._customElementDependencies)}function w(e){e.forEach(p)}function h(e,t,n){var o;!((o=window==null?void 0:window.customElements)===null||o===void 0)&&o.get(e)||window.customElements.define(e,t,n)}function C(e,t){let n=e;for(;n.parentNode&&(n=n.parentNode,!!n.tagName);)if(!n.tagName||n.tagName.toLowerCase()===t.toLowerCase())return n;return null}function c(e){return new DOMParser().parseFromString(e,"text/html").querySelector("template")}function R(e,t){e.appendChild(c(t).content.cloneNode(!0))}function v(e,t,n,o=!1){let i=m(t,n);e.attachShadow({mode:"open",delegatesFocus:o}),f(e,i)}function S(e,t,n){if(!e.shadowRoot)throw new Error("This element does not contain a shadow root. Did you mean to call `attachShadowTemplate`?");let o=m(t,n);e.shadowRoot.children.length&&l(e.shadowRoot),f(e,o)}function m(e,t){let n=c(e);if(t){t=t instanceof Array?t:[t];let o=document.createElement("style");o.type="text/css",o.textContent=t.join(" "),n.content.appendChild(o)}return n}function f(e,t){e.shadowRoot.appendChild(t.content.cloneNode(!0))}function E(e,t){return e.shadowRoot.querySelector(t)}function T(e,t){return e.querySelector(t)}function N(e,t,n,o=!0,i=!1){let r;return typeof CustomEvent=="function"?r=new CustomEvent(t,{detail:n,bubbles:o,cancelable:i}):(r=document.createEvent("CustomEvent"),r.initCustomEvent(t,o,i,n)),e.dispatchEvent(r)}function D(e,t,n,o,i,r){let u=!!E(e,o);return r||(r=document.createComment(`(${n}) ${o}`)),t&&!u?s(i,r):!t&&u&&s(r,i),r}function P(e,t){function n(o){return!o||o===document||o===window?null:(o.assignedSlot&&(o=o.assignedSlot),o.closest(e)||n(o.getRootNode().host))}return n(t)}var d=class extends HTMLElement{};export{p as a,w as b,C as c,R as d,v as e,S as f,E as g,T as h,N as i,D as j,P as k,d as l};
7
+ //# sourceMappingURL=chunk.Y4GKBJGI.js.map
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../node_modules/@tylertech/forge-core/esm/custom-elements/component-utils.js", "../../src/core/base/base-component.ts"],
4
4
  "sourcesContent": ["import { replaceElement, isArray, removeAllChildren, walkUpUntil } from '../utils';\n/**\n * Recursively defines a component as a custom elements and all of its dependencies.\n * @param component The component to import.\n */\nexport function defineCustomElement(component) {\n tryDefine(component._customElementName, component);\n if (isArray(component._customElementDependencies)) {\n defineCustomElements(component._customElementDependencies);\n }\n}\n/**\n * Defines the specified custom element components.\n * @param {any[]} components The components to register.\n */\nexport function defineCustomElements(components) {\n components.forEach(defineCustomElement);\n}\n/**\n * Attempts to define the provided custom element name/constructor if not already defined.\n * @param name The name of the custom element to define.\n * @param ctor The custom element constructor.\n */\nexport function tryDefine(name, ctor, options) {\n var _a;\n if ((_a = window === null || window === void 0 ? void 0 : window.customElements) === null || _a === void 0 ? void 0 : _a.get(name)) {\n return;\n }\n window.customElements.define(name, ctor, options);\n}\n/**\n * Useful when capturing the value of a unupgraded component during the `connectedCallback` upon upgrade.\n *\n * More information here:\n * https://developers.google.com/web/fundamentals/architecture/building-components/best-practices#lazy-properties\n *\n * @param property\n */\nexport function upgradeProperty(instance, property) {\n if (instance.hasOwnProperty(property)) {\n const value = instance[property];\n delete instance[property];\n instance[property] = value;\n }\n}\n/**\n * Traverses up the DOM tree starting from the provided component element to find the specified parent.\n * @param {HTMLElement} component The starting HTMLElement.\n * @param {string} parentTagName The parent tag name we are searching for.\n */\nexport function requireParent(component, parentTagName) {\n let el = component;\n while (el.parentNode) {\n el = el.parentNode;\n if (!el.tagName) {\n break;\n }\n if (!el.tagName || el.tagName.toLowerCase() === parentTagName.toLowerCase()) {\n return el;\n }\n }\n return null;\n}\n/**\n * Creates a template element from a string.\n * @param template The template HTML string.\n */\nexport function parseTemplateString(template) {\n const templateDocument = new DOMParser().parseFromString(template, 'text/html');\n return templateDocument.querySelector('template');\n}\n/**\n * Attaches a template to the given web component instance light DOM.\n * @param {T} componentInstance A component instance.\n * @param {string} template The template HTML string.\n */\nexport function attachLightTemplate(componentInstance, template) {\n componentInstance.appendChild(parseTemplateString(template).content.cloneNode(true));\n}\n/**\n * Attaches a shadow root to the given web component instance.\n * @param {T} componentInstance A component instance.\n * @param {string} elementName The name of the element the shadow root is to be attached to.\n * @param {string} template The shadow root template HTML string.\n * @param {string | string[]} styles The shadow root styles string to be encapsulated by this shadow root.\n * @param {boolean} [delegatesFocus=false] Should the component delagate focus.\n */\nexport function attachShadowTemplate(componentInstance, template, styles, delegatesFocus = false) {\n const templateElement = prepareShadowTemplate(template, styles);\n componentInstance.attachShadow({ mode: 'open', delegatesFocus });\n setShadowTemplate(componentInstance, templateElement);\n}\n/**\n * Replaces the template of an existing shadow root with the provided template.\n * @param {T} componentInstance A component instance.\n * @param {string} elementName The name of the element the shadow root is to be attached to.\n * @param {string} template The shadow root template HTML string.\n * @param {string | string[]} styles The shadow root styles string to be encapsulated by this shadow root.\n */\nexport function replaceShadowTemplate(componentInstance, template, styles) {\n if (!componentInstance.shadowRoot) {\n throw new Error('This element does not contain a shadow root. Did you mean to call `attachShadowTemplate`?');\n }\n const templateElement = prepareShadowTemplate(template, styles);\n if (componentInstance.shadowRoot.children.length) {\n removeAllChildren(componentInstance.shadowRoot);\n }\n setShadowTemplate(componentInstance, templateElement);\n}\n/**\n * Creates and prepares an HTML template element for rendering within a shadow root.\n * @param {string} elementName The name of the element the shadow root is to be attached to.\n * @param {string} template The shadow root template HTML string.\n * @param {string | string[]} styles The shadow root styles string to be encapsulated by this shadow root.\n */\nexport function prepareShadowTemplate(template, styles) {\n const templateElement = parseTemplateString(template);\n if (styles) {\n styles = styles instanceof Array ? styles : [styles];\n const styleElement = document.createElement('style');\n styleElement.type = 'text/css';\n styleElement.textContent = styles.join(' ');\n templateElement.content.appendChild(styleElement);\n }\n return templateElement;\n}\n/**\n * Appends a template to the provided components shadow root.\n * @param {T} componentInstance A component instance.\n * @param {HTMLTemplateElement} templateElement A template element to be cloned.\n */\nexport function setShadowTemplate(componentInstance, templateElement) {\n componentInstance.shadowRoot.appendChild(templateElement.content.cloneNode(true));\n}\n/**\n * Copies style rules from the provided document stylesheets collection to the provided shadow root stylesheet.\n * @param {Document} fromDocument The document to find the style sheets in.\n * @param {ShadowRoot} shadowRoot The shadow root that contains the stylesheet to copy the rules to.\n * @param {IStyleSheetDescriptor[]} styleSheetDescriptors A collection of style sheet predicates.\n * @param {CSSStyleSheet} shadowStyleSheet The shadow root stylesheet to copy the style rules to.\n */\nexport function provideDocumentStyles(fromDocument, shadowRoot, documentStyleSheets, shadowStyleSheet) {\n if (!shadowStyleSheet) {\n return;\n }\n const documentSheets = [];\n documentStyleSheets.forEach(sheet => {\n const sheetName = typeof sheet === 'string' ? sheet : sheet.name;\n const sheetFilter = sheet.selectorFilter;\n const matchingStyleSheet = _findMatchingStyleSheet(fromDocument.styleSheets, sheetName);\n if (!matchingStyleSheet) {\n throw new Error(`Could not find stylesheet: ${sheetName}`);\n }\n let startIndex = shadowStyleSheet.cssRules.length;\n for (const rule in matchingStyleSheet.cssRules) {\n if (matchingStyleSheet.cssRules.hasOwnProperty(rule) && matchingStyleSheet.cssRules[rule].cssText && (!sheetFilter || new RegExp(sheetFilter).test(matchingStyleSheet.cssRules[rule].selectorText))) {\n shadowStyleSheet.insertRule(matchingStyleSheet.cssRules[rule].cssText, startIndex++);\n }\n }\n });\n}\n/**\n * Finds a stylesheet by name in the provided stylesheet list.\n * @param styleSheetList The stylesheet list to search.\n * @param sheetName The stylesheet name to find.\n * @returns {CSSStyleSheet | undefined}\n */\nfunction _findMatchingStyleSheet(styleSheetList, sheetName) {\n for (const prop in styleSheetList) {\n if (styleSheetList.hasOwnProperty(prop) && styleSheetList[prop].href) {\n if (new RegExp(sheetName).test(styleSheetList[prop].href)) {\n return styleSheetList[prop];\n }\n }\n }\n return undefined;\n}\n/**\n * Gets an HTML element using a query selector from the provided components` shadow root.\n * @param {HTMLElement} componentInstance The component instance that contains a shadow root.\n * @param {string} selector The selector to be passed to `querySelector`.\n */\nexport function getShadowElement(componentInstance, selector) {\n return componentInstance.shadowRoot.querySelector(selector);\n}\n/**\n * Gets an HTML element using a query selector from the provided components` light DOM.\n * @param {HTMLElement} componentInstance The component instance.\n * @param {string} selector The selector to be passed to `querySelector`.\n */\nexport function getLightElement(componentInstance, selector) {\n return componentInstance.querySelector(selector);\n}\n/**\n * Creates and dispatches a cross-browser `CustomEvent` with the provided type and data.\n * @param {string} type\n * @param {any} data\n * @param {boolean=} bubble\n */\nexport function emitEvent(component, type, data, bubble = true, cancelable = false) {\n let evt;\n if (typeof CustomEvent === 'function') {\n evt = new CustomEvent(type, {\n detail: data,\n bubbles: bubble,\n cancelable\n });\n }\n else {\n evt = document.createEvent('CustomEvent');\n evt.initCustomEvent(type, bubble, cancelable, data);\n }\n return component.dispatchEvent(evt);\n}\n/**\n * Replaces the provided element with a placeholder comment and vice versa.\n * Useful for hiding and showing elements while retaining their location in the DOM.\n * @param {boolean} isVisible Whether the element is visible or not.\n * @param {string} elementName The element tag name.\n * @param {string} selector The selector used to find the element\n * @param {Node} element The element\n * @param {Comment} placeholder The existing placeholder\n */\nexport function toggleElementPlaceholder(component, isVisible, elementName, selector, element, placeholder) {\n const exists = !!getShadowElement(component, selector);\n if (!placeholder) {\n placeholder = document.createComment(`(${elementName}) ${selector}`);\n }\n if (isVisible && !exists) {\n replaceElement(element, placeholder);\n }\n else if (!isVisible && exists) {\n replaceElement(placeholder, element);\n }\n return placeholder;\n}\n/**\n * Walks up the tree starting a specific node and stops when it finds a shadow root.\n * @param {Node} node The node to start searching from.\n * @returns {ShadowRoot | null} The closest shadow root ancestor, or null if not inside a shadow root.\n */\nexport function getClosestShadowRoot(node) {\n return walkUpUntil(node, current => current.toString() === '[object ShadowRoot]');\n}\n/**\n * Finds the closest element up the tree from a starting element across shadow boundaries.\n * @param selector The CSS selector for the element to find.\n * @param startElement The element to start finding from.\n */\nexport function closestElement(selector, startElement) {\n function __closestFrom(el) {\n if (!el || el === document || el === window) {\n return null;\n }\n if (el.assignedSlot) {\n el = el.assignedSlot;\n }\n const found = el.closest(selector);\n return found || __closestFrom(el.getRootNode().host);\n }\n return __closestFrom(startElement);\n}\n", "import { ICustomElement } from '@tylertech/forge-core';\n\nexport interface IBaseComponent extends ICustomElement {}\n\n/** Any Custom HTML element. Some elements directly implement this interface, while others implement it via an interface that inherits it. */\nexport abstract class BaseComponent extends HTMLElement implements IBaseComponent {}\n"],
5
- "mappings": "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",
6
- "names": []
5
+ "mappings": "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",
6
+ "names": ["defineCustomElement", "component", "tryDefine", "isArray", "defineCustomElements", "components", "name", "ctor", "options", "_a", "requireParent", "component", "parentTagName", "el", "parseTemplateString", "template", "attachLightTemplate", "componentInstance", "attachShadowTemplate", "styles", "delegatesFocus", "templateElement", "prepareShadowTemplate", "setShadowTemplate", "replaceShadowTemplate", "removeAllChildren", "styleElement", "getShadowElement", "componentInstance", "selector", "getLightElement", "emitEvent", "component", "type", "data", "bubble", "cancelable", "evt", "toggleElementPlaceholder", "isVisible", "elementName", "element", "placeholder", "exists", "replaceElement", "closestElement", "selector", "startElement", "__closestFrom", "el", "BaseComponent"]
7
7
  }
@@ -4,4 +4,4 @@
4
4
  * License: Apache-2.0
5
5
  */
6
6
  function d(n,e){let r=n.toLowerCase().indexOf(e.toLowerCase());if(r!==-1){let o=r+e.length,t=document.createElement("span"),u=document.createElement("span");return u.style.fontWeight="bold",u.textContent=n.substring(r,o),t.appendChild(document.createTextNode(n.substring(0,r))),t.appendChild(u),t.appendChild(document.createTextNode(n.substring(o))),t}}function c(n,{capture:e=!0,pointerenter:i=!0,focusin:r=!0}={}){return new Promise(o=>{let t={once:!0,capture:e},u=()=>{r&&n.removeEventListener("focusin",s,t),o("pointerenter")},s=()=>{i&&n.removeEventListener("pointerenter",u,t),o("focusin")};i&&n.addEventListener("pointerenter",u,t),r&&n.addEventListener("focusin",s,t)})}function p(n,e){return e===0?0:n/100*e}function m(n,e){return e===0?0:n*100/e}function f(n,e,i,r=0,o=100){let t=i-e,u=n-e;return!t||!u?r:u*o/t+r}function a(...n){return Math.min(...n.map(e=>e!=null?e:Number.POSITIVE_INFINITY))}function x(...n){return Math.max(...n.map(e=>e!=null?e:Number.NEGATIVE_INFINITY))}export{d as a,c as b,p as c,m as d,f as e,a as f,x as g};
7
- //# sourceMappingURL=chunk.NXS7A7PO.js.map
7
+ //# sourceMappingURL=chunk.Y66GSZJB.js.map
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../src/core/utils/utils.ts"],
4
4
  "sourcesContent": ["/**\n * Highlights text in the given label by converting it to HTML and using a `<span>` tag to show the highlighted text within the original label.\n * @param label The full text.\n * @param highlightText The text to highlight.\n */\nexport function highlightTextHTML(label: string, highlightText: string): HTMLElement | undefined {\n const text = label.toLowerCase();\n const startIndex = text.indexOf(highlightText.toLowerCase());\n\n if (startIndex !== -1) {\n const endIndex = startIndex + highlightText.length;\n const wrapperSpan = document.createElement('span');\n const highlightSpan = document.createElement('span');\n\n highlightSpan.style.fontWeight = 'bold';\n highlightSpan.textContent = label.substring(startIndex, endIndex);\n \n wrapperSpan.appendChild(document.createTextNode(label.substring(0, startIndex)));\n wrapperSpan.appendChild(highlightSpan);\n wrapperSpan.appendChild(document.createTextNode(label.substring(endIndex)));\n \n return wrapperSpan;\n }\n\n return undefined;\n}\n\n\n/**\n * Awaits user interaction on an element in the form of `pointerenter` or `focusin` to let a listener know\n * when the user has attempted to interact with the provided element.\n * \n * The listeners are only called once, and the other is removed after one of the listeners is called.\n * @param element The element to listen to.\n * @param capture Whether to use capturing listeners or not.\n * @returns A `Promise` that will be resolved when either of the listeners has executed.\n */\nexport function userInteractionListener(element: HTMLElement, { capture = true, pointerenter = true, focusin = true } = {}): Promise<'pointerenter' | 'focusin'> {\n return new Promise<'pointerenter' | 'focusin'>(resolve => {\n const listenerOpts: EventListenerOptions & { once: boolean } = { once: true, capture };\n \n const handlePointerenter = (): void => {\n if (focusin) {\n element.removeEventListener('focusin', handleFocusin, listenerOpts);\n }\n resolve('pointerenter');\n };\n \n const handleFocusin = (): void => {\n if (pointerenter) {\n element.removeEventListener('pointerenter', handlePointerenter, listenerOpts);\n }\n resolve('focusin');\n };\n\n if (pointerenter) {\n element.addEventListener('pointerenter', handlePointerenter, listenerOpts);\n }\n if (focusin) {\n element.addEventListener('focusin', handleFocusin, listenerOpts);\n }\n });\n}\n\n/**\n * Converts a percent value to pixels.\n * @param amount A percent value.\n * @param containerSize The size of the parent element along the relevant axis.\n * @returns A pixel value.\n */\nexport function percentToPixels(amount: number, containerSize: number): number {\n if (containerSize === 0) {\n return 0;\n }\n return amount / 100 * containerSize;\n}\n\n/**\n * Converts a pixel value to a percentage.\n * @param amount A pixel value.\n * @param containerSize The size of the parent element along the relevant axis.\n * @returns A percent value.\n */\nexport function pixelsToPercent(amount: number, containerSize: number): number {\n if (containerSize === 0) {\n return 0;\n }\n return amount * 100 / containerSize;\n}\n\n/**\n * Scales a value from one range to another.\n * @param value The original number value.\n * @param fromMin The lower bound of the input range.\n * @param fromMax The upper bound of the input range.\n * @param toMin The lower bound of the output range (defaults to 0).\n * @param toMax The lower bound of the output range (defaults to 100).\n * @returns A value mapped to the output range.\n */\nexport function scaleValue(value: number, fromMin: number, fromMax: number, toMin = 0, toMax = 100): number {\n const range = fromMax - fromMin;\n const adjustedValue = value - fromMin;\n if (!range || !adjustedValue) {\n return toMin;\n }\n return adjustedValue * toMax / range + toMin;\n}\n\n/**\n * Returns the min of a set of numbers where some values may be undefined.\n * @param args `number` or `undefined` values to compare.\n * @returns The min value or `Number.POSITIVE_INFINITY` if all values are `undefined`.\n */\nexport function safeMin(...args: (number | undefined)[]): number {\n return Math.min(...args.map(arg => arg ?? Number.POSITIVE_INFINITY));\n}\n\n/**\n * Returns the max of a set of numbers where some values may be undefined.\n * @param args `number` or `undefined` values to compare.\n * @returns The max value or `Number.NEGATIVE_INFINITY` if all values are `undefined`.\n */\nexport function safeMax(...args: (number | undefined)[]): number {\n return Math.max(...args.map(arg => arg ?? Number.NEGATIVE_INFINITY));\n}\n"],
5
- "mappings": "AAKO,WAA2B,EAAe,EAAgD,CAE/F,GAAM,GAAa,AADN,EAAM,YAAY,EACP,QAAQ,EAAc,YAAY,CAAC,EAE3D,GAAI,IAAe,GAAI,CACrB,GAAM,GAAW,EAAa,EAAc,OACtC,EAAc,SAAS,cAAc,MAAM,EAC3C,EAAgB,SAAS,cAAc,MAAM,EAEnD,SAAc,MAAM,WAAa,OACjC,EAAc,YAAc,EAAM,UAAU,EAAY,CAAQ,EAEhE,EAAY,YAAY,SAAS,eAAe,EAAM,UAAU,EAAG,CAAU,CAAC,CAAC,EAC/E,EAAY,YAAY,CAAa,EACrC,EAAY,YAAY,SAAS,eAAe,EAAM,UAAU,CAAQ,CAAC,CAAC,EAEnE,CACT,CAGF,CAYO,WAAiC,EAAsB,CAAE,UAAU,GAAM,eAAe,GAAM,UAAU,IAAS,CAAC,EAAwC,CAC/J,MAAO,IAAI,SAAoC,GAAW,CACxD,GAAM,GAAyD,CAAE,KAAM,GAAM,SAAQ,EAE/E,EAAqB,IAAY,CACrC,AAAI,GACF,EAAQ,oBAAoB,UAAW,EAAe,CAAY,EAEpE,EAAQ,cAAc,CACxB,EAEM,EAAgB,IAAY,CAChC,AAAI,GACF,EAAQ,oBAAoB,eAAgB,EAAoB,CAAY,EAE9E,EAAQ,SAAS,CACnB,EAEA,AAAI,GACF,EAAQ,iBAAiB,eAAgB,EAAoB,CAAY,EAEvE,GACF,EAAQ,iBAAiB,UAAW,EAAe,CAAY,CAEnE,CAAC,CACH,CAQO,WAAyB,EAAgB,EAA+B,CAC7E,MAAI,KAAkB,EACb,EAEF,EAAS,IAAM,CACxB,CAQO,WAAyB,EAAgB,EAA+B,CAC7E,MAAI,KAAkB,EACb,EAEF,EAAS,IAAM,CACxB,CAWO,WAAoB,EAAe,EAAiB,EAAiB,EAAQ,EAAG,EAAQ,IAAa,CAC1G,GAAM,GAAQ,EAAU,EAClB,EAAgB,EAAQ,EAC9B,MAAI,CAAC,GAAS,CAAC,EACN,EAEF,EAAgB,EAAQ,EAAQ,CACzC,CAOO,cAAoB,EAAsC,CAC/D,MAAO,MAAK,IAAI,GAAG,EAAK,IAAI,GAAO,UAAO,OAAO,iBAAiB,CAAC,CACrE,CAOO,cAAoB,EAAsC,CAC/D,MAAO,MAAK,IAAI,GAAG,EAAK,IAAI,GAAO,UAAO,OAAO,iBAAiB,CAAC,CACrE",
6
- "names": []
5
+ "mappings": "AAKO,SAASA,EAAkBC,EAAeC,EAAgD,CAE/F,IAAMC,EADOF,EAAM,YAAY,EACP,QAAQC,EAAc,YAAY,CAAC,EAE3D,GAAIC,IAAe,GAAI,CACrB,IAAMC,EAAWD,EAAaD,EAAc,OACtCG,EAAc,SAAS,cAAc,MAAM,EAC3CC,EAAgB,SAAS,cAAc,MAAM,EAEnD,OAAAA,EAAc,MAAM,WAAa,OACjCA,EAAc,YAAcL,EAAM,UAAUE,EAAYC,CAAQ,EAEhEC,EAAY,YAAY,SAAS,eAAeJ,EAAM,UAAU,EAAGE,CAAU,CAAC,CAAC,EAC/EE,EAAY,YAAYC,CAAa,EACrCD,EAAY,YAAY,SAAS,eAAeJ,EAAM,UAAUG,CAAQ,CAAC,CAAC,EAEnEC,CACT,CAGF,CAYO,SAASE,EAAwBC,EAAsB,CAAE,QAAAC,EAAU,GAAM,aAAAC,EAAe,GAAM,QAAAC,EAAU,EAAK,EAAI,CAAC,EAAwC,CAC/J,OAAO,IAAI,QAAoCC,GAAW,CACxD,IAAMC,EAAyD,CAAE,KAAM,GAAM,QAAAJ,CAAQ,EAE/EK,EAAqB,IAAY,CACjCH,GACFH,EAAQ,oBAAoB,UAAWO,EAAeF,CAAY,EAEpED,EAAQ,cAAc,CACxB,EAEMG,EAAgB,IAAY,CAC5BL,GACFF,EAAQ,oBAAoB,eAAgBM,EAAoBD,CAAY,EAE9ED,EAAQ,SAAS,CACnB,EAEIF,GACFF,EAAQ,iBAAiB,eAAgBM,EAAoBD,CAAY,EAEvEF,GACFH,EAAQ,iBAAiB,UAAWO,EAAeF,CAAY,CAEnE,CAAC,CACH,CAQO,SAASG,EAAgBC,EAAgBC,EAA+B,CAC7E,OAAIA,IAAkB,EACb,EAEFD,EAAS,IAAMC,CACxB,CAQO,SAASC,EAAgBF,EAAgBC,EAA+B,CAC7E,OAAIA,IAAkB,EACb,EAEFD,EAAS,IAAMC,CACxB,CAWO,SAASE,EAAWC,EAAeC,EAAiBC,EAAiBC,EAAQ,EAAGC,EAAQ,IAAa,CAC1G,IAAMC,EAAQH,EAAUD,EAClBK,EAAgBN,EAAQC,EAC9B,MAAI,CAACI,GAAS,CAACC,EACNH,EAEFG,EAAgBF,EAAQC,EAAQF,CACzC,CAOO,SAASI,KAAWC,EAAsC,CAC/D,OAAO,KAAK,IAAI,GAAGA,EAAK,IAAIC,GAAOA,GAAA,KAAAA,EAAO,OAAO,iBAAiB,CAAC,CACrE,CAOO,SAASC,KAAWF,EAAsC,CAC/D,OAAO,KAAK,IAAI,GAAGA,EAAK,IAAIC,GAAOA,GAAA,KAAAA,EAAO,OAAO,iBAAiB,CAAC,CACrE",
6
+ "names": ["highlightTextHTML", "label", "highlightText", "startIndex", "endIndex", "wrapperSpan", "highlightSpan", "userInteractionListener", "element", "capture", "pointerenter", "focusin", "resolve", "listenerOpts", "handlePointerenter", "handleFocusin", "percentToPixels", "amount", "containerSize", "pixelsToPercent", "scaleValue", "value", "fromMin", "fromMax", "toMin", "toMax", "range", "adjustedValue", "safeMin", "args", "arg", "safeMax"]
7
7
  }
@@ -0,0 +1,7 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2023 Tyler Technologies, Inc.
4
+ * License: Apache-2.0
5
+ */
6
+ import{a as c,b as g}from"./chunk.BE7PZANN.js";import{a as s,e as l,g as p,l as b}from"./chunk.Y4GKBJGI.js";import{t as d,u as n}from"./chunk.PN26D52V.js";import{k as i}from"./chunk.J2M2MXP2.js";import{f as a}from"./chunk.MCIQXNKY.js";var h=`${g}card`,u={OUTLINED:"outlined"},f={OUTLINED:"forge-card--outlined"},x={ROOT:".forge-card"},e={elementName:h,attributes:u,classes:f,selectors:x};var v='<template><div class="forge-card" part="root"><slot></slot></div></template>',T=".forge-card{background-color:#fff;background-color:var(--mdc-theme-surface,#fff);border-radius:4px;border-radius:var(--mdc-shape-medium,4px);-webkit-box-shadow:0 2px 1px -1px rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 1px 3px 0 rgba(0,0,0,.12);box-shadow:0 2px 1px -1px rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 1px 3px 0 rgba(0,0,0,.12);height:100%;height:var(--forge-card-height,100%);width:100%;width:var(--forge-card-width,100%);padding:16px;padding:var(--forge-card-padding,16px);overflow:hidden;overflow:var(--forge-card-overflow,hidden);-webkit-box-sizing:border-box;box-sizing:border-box}.forge-card--outlined{-webkit-box-shadow:0 0 0 0 rgba(0,0,0,.2),0 0 0 0 rgba(0,0,0,.14),0 0 0 0 rgba(0,0,0,.12);box-shadow:0 0 0 0 rgba(0,0,0,.2),0 0 0 0 rgba(0,0,0,.14),0 0 0 0 rgba(0,0,0,.12);border-width:1px;border-style:solid;border-color:#e0e0e0;border-color:#e0e0e0;border-color:var(--forge-theme-border-color,#e0e0e0)}:host{display:block}:host([hidden]){display:none}",t=class extends b{constructor(){super();this._outlined=!1;l(this,v,T),this._rootElement=p(this,e.selectors.ROOT)}static get observedAttributes(){return[e.attributes.OUTLINED]}connectedCallback(){this._applyOutlined()}attributeChangedCallback(o,m,r){if(m!==r)switch(o){case e.attributes.OUTLINED:this.outlined=i(r);break}}_applyOutlined(){d(this._rootElement,this._outlined,e.classes.OUTLINED)}get outlined(){return this._outlined}set outlined(o){this._outlined!==o&&(this._outlined=!!o,n(this,this._outlined,e.attributes.OUTLINED,String(!!this._outlined)),this._applyOutlined())}};t=a([c({name:e.elementName})],t);function A(){s(t)}export{e as a,t as b,A as c};
7
+ //# sourceMappingURL=chunk.Y72NANFX.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/card/card-constants.ts", "../../src/card/card.ts", "../../src/card/index.ts"],
4
+ "sourcesContent": ["import { COMPONENT_NAME_PREFIX } from '../constants';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}card`;\n\nconst attributes = {\n OUTLINED: 'outlined'\n};\n\nconst classes = {\n OUTLINED: 'forge-card--outlined'\n};\n\nconst selectors = {\n ROOT: '.forge-card'\n};\n\nexport const CARD_CONSTANTS = {\n elementName,\n attributes,\n classes,\n selectors\n};\n", "import { CustomElement, attachShadowTemplate, coerceBoolean, getShadowElement, toggleAttribute, toggleClass } from '@tylertech/forge-core';\nimport { BaseComponent, IBaseComponent } from '../core/base/base-component';\n\nimport { CARD_CONSTANTS } from './card-constants';\n\nconst template = '<template><div class=\\\"forge-card\\\" part=\\\"root\\\"><slot></slot></div></template>';\nconst styles = '.forge-card{background-color:#fff;background-color:var(--mdc-theme-surface,#fff);border-radius:4px;border-radius:var(--mdc-shape-medium,4px);-webkit-box-shadow:0 2px 1px -1px rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 1px 3px 0 rgba(0,0,0,.12);box-shadow:0 2px 1px -1px rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 1px 3px 0 rgba(0,0,0,.12);height:100%;height:var(--forge-card-height,100%);width:100%;width:var(--forge-card-width,100%);padding:16px;padding:var(--forge-card-padding,16px);overflow:hidden;overflow:var(--forge-card-overflow,hidden);-webkit-box-sizing:border-box;box-sizing:border-box}.forge-card--outlined{-webkit-box-shadow:0 0 0 0 rgba(0,0,0,.2),0 0 0 0 rgba(0,0,0,.14),0 0 0 0 rgba(0,0,0,.12);box-shadow:0 0 0 0 rgba(0,0,0,.2),0 0 0 0 rgba(0,0,0,.14),0 0 0 0 rgba(0,0,0,.12);border-width:1px;border-style:solid;border-color:#e0e0e0;border-color:#e0e0e0;border-color:var(--forge-theme-border-color,#e0e0e0)}:host{display:block}:host([hidden]){display:none}';\n\nexport interface ICardComponent extends IBaseComponent {\n outlined: boolean;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'forge-card': ICardComponent;\n }\n}\n\n/**\n * The custom element class behind the `<forge-card>` component.\n * \n * @tag forge-card\n */\n@CustomElement({\n name: CARD_CONSTANTS.elementName\n})\nexport class CardComponent extends BaseComponent implements ICardComponent {\n public static get observedAttributes(): string[] {\n return [\n CARD_CONSTANTS.attributes.OUTLINED\n ];\n }\n\n private _rootElement: HTMLElement;\n private _outlined = false;\n\n constructor() {\n super();\n attachShadowTemplate(this, template, styles);\n this._rootElement = getShadowElement(this, CARD_CONSTANTS.selectors.ROOT);\n }\n\n public connectedCallback(): void {\n this._applyOutlined();\n }\n\n public attributeChangedCallback(name: string, oldValue: string, newValue: string): void {\n if (oldValue === newValue) {\n return;\n }\n switch (name) {\n case CARD_CONSTANTS.attributes.OUTLINED:\n this.outlined = coerceBoolean(newValue);\n break;\n }\n }\n\n private _applyOutlined(): void {\n toggleClass(this._rootElement, this._outlined, CARD_CONSTANTS.classes.OUTLINED);\n }\n\n /** Gets/sets whether the card is using the outlined style or not. */\n public get outlined(): boolean {\n return this._outlined;\n }\n public set outlined(value: boolean) {\n if (this._outlined !== value) {\n this._outlined = !!value;\n toggleAttribute(this, this._outlined, CARD_CONSTANTS.attributes.OUTLINED, String(!!this._outlined));\n this._applyOutlined();\n }\n }\n}\n", "import { defineCustomElement } from '@tylertech/forge-core';\n\nimport { CardComponent } from './card';\n\nexport * from './card-constants';\nexport * from './card';\n\nexport function defineCardComponent(): void {\n defineCustomElement(CardComponent);\n}\n"],
5
+ "mappings": "2OAEA,IAAMA,EAA2C,GAAGC,QAE9CC,EAAa,CACjB,SAAU,UACZ,EAEMC,EAAU,CACd,SAAU,sBACZ,EAEMC,EAAY,CAChB,KAAM,aACR,EAEaC,EAAiB,CAC5B,YAAAL,EACA,WAAAE,EACA,QAAAC,EACA,UAAAC,CACF,EChBA,IAAME,EAAW,+EACXC,EAAS,k9BAoBFC,EAAN,cAA4BC,CAAwC,CAUzE,aAAc,CACZ,MAAM,EAHR,KAAQ,UAAY,GAIlBC,EAAqB,KAAMJ,EAAUC,CAAM,EAC3C,KAAK,aAAeI,EAAiB,KAAMC,EAAe,UAAU,IAAI,CAC1E,CAbA,WAAkB,oBAA+B,CAC/C,MAAO,CACLA,EAAe,WAAW,QAC5B,CACF,CAWO,mBAA0B,CAC/B,KAAK,eAAe,CACtB,CAEO,yBAAyBC,EAAcC,EAAkBC,EAAwB,CACtF,GAAID,IAAaC,EAGjB,OAAQF,QACDD,EAAe,WAAW,SAC7B,KAAK,SAAWI,EAAcD,CAAQ,EACtC,MAEN,CAEQ,gBAAuB,CAC7BE,EAAY,KAAK,aAAc,KAAK,UAAWL,EAAe,QAAQ,QAAQ,CAChF,CAGA,IAAW,UAAoB,CAC7B,OAAO,KAAK,SACd,CACA,IAAW,SAASM,EAAgB,CAC9B,KAAK,YAAcA,IACrB,KAAK,UAAY,CAAC,CAACA,EACnBC,EAAgB,KAAM,KAAK,UAAWP,EAAe,WAAW,SAAU,OAAO,CAAC,CAAC,KAAK,SAAS,CAAC,EAClG,KAAK,eAAe,EAExB,CACF,EA9CaJ,EAANY,EAAA,CAHNC,EAAc,CACb,KAAMT,EAAe,WACvB,CAAC,GACYJ,GCnBN,SAASc,GAA4B,CAC1CC,EAAoBC,CAAa,CACnC",
6
+ "names": ["elementName", "COMPONENT_NAME_PREFIX", "attributes", "classes", "selectors", "CARD_CONSTANTS", "template", "styles", "CardComponent", "BaseComponent", "attachShadowTemplate", "getShadowElement", "CARD_CONSTANTS", "name", "oldValue", "newValue", "coerceBoolean", "toggleClass", "value", "toggleAttribute", "__decorateClass", "CustomElement", "defineCardComponent", "defineCustomElement", "CardComponent"]
7
+ }
@@ -3,5 +3,5 @@
3
3
  * Copyright 2023 Tyler Technologies, Inc.
4
4
  * License: Apache-2.0
5
5
  */
6
- import{a as k}from"./chunk.R2L3S3YD.js";import{e as V,h as B,j as H}from"./chunk.24X566SZ.js";import{c as x}from"./chunk.HUX56BCR.js";import{a as m,b as N}from"./chunk.XY4N4TSH.js";import{d as K}from"./chunk.DRXMITOO.js";import{b as A}from"./chunk.UPFJ3PVE.js";import{e as F}from"./chunk.PV5MABYN.js";import{d as P}from"./chunk.LZMYHIO2.js";import{d as w}from"./chunk.ZAKLVVFO.js";import{a as S}from"./chunk.5PXABBKU.js";import{a as p}from"./chunk.B3IJU6XJ.js";import{a as T,b as D,d as y}from"./chunk.OOW3UKT4.js";import{a as L,e as C}from"./chunk.MMVZJLXE.js";import{m as M}from"./chunk.R4NDFXVA.js";import{a as g,b as O,i as I,k as _}from"./chunk.G76HB2FK.js";import{a as c,b,f as a}from"./chunk.MCIQXNKY.js";var l=`${D}menu`,U={POPUP:"forge-menu__popup",MENU:"mdc-menu"},G={TOGGLE:`.${l}__toggle,[${l}-toggle],button,[type=button],[role=button],a,[tabindex]:not([tabindex^="-"])`,MENU_LIST:"forge-list"},R={OPEN:"open",PLACEMENT:"placement",SELECTED_INDEX:"selected-index",SELECTED_VALUE:"selected-value",DENSE:"dense",ICON_CLASS:"icon-class",PERSIST_SELECTION:"persist-selection",MODE:"mode",SYNC_POPUP_WIDTH:"sync-popup-width",POPUP_CLASSES:"popup-classes",OPTION_LIMIT:"option-limit",OBSERVE_SCROLL:"observe-scroll",OBSERVE_SCROLL_THRESHOLD:"observe-scroll-threshold"},$={SELECT:`${l}-select`,OPEN:`${l}-open`,CLOSE:`${l}-close`,ACTIVE_CHANGE:`${l}-active-change`},z={CHILD_MOUSE_LEAVE_TIMEOUT:300,POPUP_MOUSE_LEAVE_TIMEOUT:500},i={elementName:l,classes:U,selectors:G,attributes:R,events:$,numbers:z};var u=class extends S{constructor(e){super(e);this._childMenus=new Map}getDropdownElement(){var e,t;return(t=(e=this._listDropdown)==null?void 0:e.dropdownElement)!=null?t:null}hasTargetElement(){return!!this._targetElement}initializeTarget(){this._targetElement=this._component.querySelector(i.selectors.TOGGLE),this._targetElement||(this._targetElement=this._component.firstElementChild)}initializeAccessibility(e){!this._targetElement||(this._targetElement.setAttribute("aria-atomic","true"),this._targetElement.setAttribute("aria-live","assertive"),this._targetElement.setAttribute("aria-haspopup","true"),this._targetElement.setAttribute("aria-expanded","false"),this._targetElement.hasAttribute("aria-label")||this._targetElement.setAttribute("aria-label",this._targetElement.textContent||""))}addTargetListener(e,t,n=!1){this._targetElement&&this._targetElement.addEventListener(e,t,n)}removeTargetListener(e,t){this._targetElement&&this._targetElement.removeEventListener(e,t)}attachMenu(e){this._listDropdown||!this._targetElement||(this._listDropdown=new B(this._targetElement,e),this._listDropdown.open(),this._targetElement.setAttribute("aria-expanded","true"),this._targetElement.setAttribute("aria-controls",`list-dropdown-popup-${e.id}`))}setOptions(e){this._listDropdown&&this._listDropdown.setOptions(e)}detachMenu(){this._targetElement&&(this._targetElement.removeAttribute("aria-activedescendant"),this._targetElement.removeAttribute("aria-expanded"),this._targetElement.removeAttribute("aria-controls")),this._listDropdown&&(this._listDropdown.close(),this._listDropdown.destroy(),this._listDropdown=void 0)}setActiveOption(e){var t;(t=this._listDropdown)==null||t.activateOption(e)}activateFirstOption(){var e;(e=this._listDropdown)==null||e.activateFirstOption()}setCascadeTargetInactive(){let e=this._targetElement;e!=null&&e.active&&(e.active=!1)}getActiveOptionIndex(){var e,t;return(t=(e=this._listDropdown)==null?void 0:e.getActiveOptionIndex())!=null?t:-1}focusTarget(){this._targetElement&&this._targetElement.focus()}isTargetFocused(){return document.activeElement===this._targetElement}updateActiveDescendant(e){!this._targetElement||(e?this._targetElement.setAttribute("aria-activedescendant",e):this._targetElement.removeAttribute("aria-activedescendant"))}addDropdownListener(e,t){!this._listDropdown||!this._listDropdown.dropdownElement||this._listDropdown.dropdownElement.addEventListener(e,t)}isOwnElement(e){return!this._targetElement||!this._listDropdown||!this._listDropdown.dropdownElement?!1:this._targetElement.contains(e)||!!this._listDropdown.dropdownElement.contains(e)}propagateKey(e){var t;(t=this._listDropdown)==null||t.handleKey(e)}proxyKeyboardEventToChild(e,t){if(!this.getDropdownElement())return;let n=this._getOpenChildMenu(t);n&&n.propagateKeyEvent(e)}toggleChildMenu(e,t){let r=this._getListItems()[e].parentElement;r&&r.tagName.toLowerCase()===i.elementName&&(t===void 0?r.open=!r.open:r.open=t,r.activateFirstOption())}createChildMenu(e,t,n,o,r){let d=document.createElement("forge-menu");return d.style.display="block",d.addEventListener(i.events.OPEN,()=>{this._childMenus.set(e,d),n(e)}),d.addEventListener(i.events.CLOSE,()=>{this._childMenus.delete(e),o(e)}),d.addEventListener(i.events.SELECT,f=>{f.stopPropagation(),r(b(c({},f.detail),{parentValue:t}))}),d}closeOtherChildMenus(e){let t=[];this._childMenus.forEach((n,o)=>{o!==e&&(n.open=!1,t.push(o))}),t.forEach(n=>this._childMenus.delete(n))}setSelectedValues(e){var t;(t=this._listDropdown)==null||t.setSelectedValues(e)}_getOpenChildMenu(e){if(!this.getDropdownElement())return null;let t=this._getOwnList(e);return t?t.querySelector(`${i.elementName}[${i.attributes.OPEN}]`):null}_getOwnList(e){let t=this.getDropdownElement();return t?t.querySelector(`${m.elementName}[id="list-dropdown-list-${e}"]`):null}_getListItems(){let e=this.getDropdownElement();if(!e)return[];let t=e.querySelector(m.elementName);return t?Array.from(t.querySelectorAll(N.elementName)):[]}};var h=class extends H{constructor(e){super({popupTimeout:i.numbers.POPUP_MOUSE_LEAVE_TIMEOUT,targetTimeout:i.numbers.CHILD_MOUSE_LEAVE_TIMEOUT});this._adapter=e;this._placement="bottom-start";this._fallbackPlacements=[];this._dense=!1;this._iconClass=y;this._persistSelection=!1;this._mode="click";this._identifier=g(),this._clickListener=t=>this._onTargetClick(t),this._blurListener=t=>this._onTargetBlur(t),this._selectListener=t=>this._handleSelectEvent(t),this._keydownListener=t=>this.onKeydown(t),this._activeChangeListener=t=>this._onActiveOptionChanged(t)}initialize(){this._adapter.initializeTarget(),this._adapter.initializeAccessibility(this._identifier),this._initializeInteractionListeners()}disconnect(){this._open&&this._closeDropdown(),this._destroyInteractionListeners()}activateFirstOption(){this._adapter.activateFirstOption()}_applyMode(){!this._adapter.hasTargetElement()||(this._mode!=="cascade"?this._adapter.addTargetListener("click",this._clickListener):this._attachCascadingListeners())}_initializeInteractionListeners(){!this._adapter.hasTargetElement()||(this._applyMode(),this._adapter.addTargetListener("keydown",this._keydownListener,!0),this._adapter.addTargetListener("focusout",this._blurListener))}_destroyInteractionListeners(){!this._adapter.hasTargetElement()||(this._adapter.removeTargetListener("keydown",this._clickListener),this._adapter.removeTargetListener("focusout",this._blurListener),this._adapter.removeTargetListener("click",this._clickListener),this._detachCascadingListeners())}_attachCascadingListeners(){this._adapter.addTargetListener("mouseenter",this._targetMouseEnterListener),this._adapter.addTargetListener("mouseleave",this._targetMouseLeaveListener),this._adapter.addDocumentListener("mousemove",this._documentMouseMoveListener)}_detachCascadingListeners(){this._adapter.removeTargetListener("mouseenter",this._targetMouseEnterListener),this._adapter.removeTargetListener("mouseleave",this._targetMouseLeaveListener),this._adapter.removeDocumentListener("mousemove",this._documentMouseMoveListener)}get _nonDividerOptions(){return this._flatOptions.filter(e=>!e.divider)}get _flatOptions(){return V(this._options,1)?this._options.reduce((e,t)=>e.concat(t.options),[]):this._options}_onTargetClick(e){if(this._open){this._closeDropdown();return}this.open=!this._open,this._open&&this._adapter.focusTarget()}_onTargetBlur(e){this._open&&this._closeDropdown()}_onActiveOptionChanged(e){let t={id:e},n=this._adapter.emitHostEvent(i.events.ACTIVE_CHANGE,t,!0,!0);this._mode!=="cascade"&&n&&this._adapter.updateActiveDescendant(e)}onKeydown(e){if(this._childOpen){this._adapter.proxyKeyboardEventToChild(e,this._identifier);return}switch(e.code){case"Tab":this._open&&this._selectActiveOption();break;case"Escape":this._open&&(e.preventDefault(),e.stopPropagation(),this._closeDropdown());break;case"Space":e.preventDefault(),this._open?this._closeDropdown():this._openDropdown({fromKeyboard:!0});break;case"Home":case"End":this._open&&(e.preventDefault(),this._adapter.propagateKey(e.code));break;case"Enter":if(e.preventDefault(),!this._open){e.preventDefault(),this._openDropdown({fromKeyboard:!0});return}e.stopImmediatePropagation(),this._adapter.propagateKey(e.code);let t=this._adapter.getActiveOptionIndex(),n=this._nonDividerOptions[t];n&&n.options&&n.options.length&&this._adapter.toggleChildMenu(t);break;case"ArrowUp":case"ArrowDown":if(this._open&&e.stopImmediatePropagation(),e.preventDefault(),!this._open&&e.code==="ArrowDown"){this._openDropdown({fromKeyboard:!0}),this._adapter.activateFirstOption();return}this._adapter.propagateKey(e.code);break;case"ArrowLeft":this._open&&e.stopImmediatePropagation(),this._mode==="cascade"&&this._open&&this._closeDropdown();break;case"ArrowRight":if(this._open&&e.stopImmediatePropagation(),!this._open)return;let o=this._adapter.getActiveOptionIndex(),r=this._nonDividerOptions[o];if(r&&r.options){this._adapter.toggleChildMenu(o,e.code==="ArrowRight");return}break}}async _openMenu({fromKeyboard:e}={}){this._open=!0;let t=[];if(typeof this._optionsFactory=="function")this._loadOptionsAsync(),this._options=[];else{if(!this._options||!this._options.length)return;t=this._options}this._persistSelection||t.forEach(r=>r.selected=!1),this._mapIconToLeadingIcon();let n=this._persistSelection?this._getSelectedValues():[],o={id:this._identifier,type:"menu",options:this._options,selectedValues:n,iconClass:this._iconClass,dense:this._dense,multiple:!1,popupStatic:!0,allowBusy:!0,asyncStyle:"spinner",optionBuilder:this._optionBuilder,optionLimit:this._optionLimit,headerBuilder:this._popupHeaderBuilder,footerBuilder:this._popupFooterBuilder,observeScroll:this._observeScroll,observeScrollThreshold:this._observeScrollThreshold,popupPlacement:this._placement,popupFallbackPlacements:this._fallbackPlacements,activeStartIndex:e?0:void 0,popupClasses:[i.classes.POPUP,i.classes.MENU,...this._popupClasses],syncWidth:this._syncPopupWidth,activeChangeCallback:this._activeChangeListener,selectCallback:this._selectListener,popupOffset:this._popupOffset,cascadingElementFactory:r=>this._createCascadingElement(r)};this._adapter.setHostAttribute(i.attributes.OPEN,""),this._adapter.attachMenu(o),this._mode==="cascade"&&(this._adapter.addDropdownListener("mouseenter",this._childPopupMouseEnterListener),this._adapter.addDropdownListener("mouseleave",this._childPopupMouseLeaveListener)),this._adapter.addDropdownListener(i.events.ACTIVE_CHANGE,r=>{this._onActiveOptionChanged(r.detail.id)}),this._adapter.emitHostEvent(i.events.OPEN)}_closeMenu(){this._open=!1,this._childOpen=!1,this._adapter.detachMenu(),this._activeMouseLeaveTimeout!==void 0&&window.clearTimeout(this._activeMouseLeaveTimeout),this._adapter.removeHostAttribute(i.attributes.OPEN),this._adapter.emitHostEvent(i.events.CLOSE)}_loadOptionsAsync(){return this._optionsFactory?Promise.resolve(this._optionsFactory()).then(e=>{if(this._persistSelection||e.forEach(t=>t.selected=!1),this._open)if(e&&I(e)&&e.length){this._options=e,this._adapter.setOptions(e);let t=this._getSelectedValues();t.length&&this._adapter.setSelectedValues(t)}else this._open&&this._closeDropdown()}).catch(e=>{console.error("An unexpected error ocurred while opening the menu:",e),this._open&&this._closeDropdown()}):(this._open&&this._closeMenu(),Promise.resolve())}_handleSelectEvent(e){let t=this._nonDividerOptions.findIndex(n=>n.value===e);t<0||this._selectOptionByIndex(t)}_selectActiveOption(){let e=this._adapter.getActiveOptionIndex();e>=0&&this._nonDividerOptions[e]&&this._selectOptionByIndex(e)}_selectOptionByIndex(e){let{options:t,value:n}=this._nonDividerOptions[e];if(t){this._adapter.setActiveOption(e);return}this._closeDropdown();let o={index:e,value:n};!this._adapter.emitHostEvent(i.events.SELECT,o,!0,!0)||(this._selectedValue=this._persistSelection?n:void 0)}_getSelectedValues(){let e=this._flatOptions.filter(t=>t.selected).map(t=>t.value);return this._selectedValue!==void 0&&e.push(this._selectedValue),e}_onCascadingOptionSelected(e){this._persistSelection&&(this._selectedValue=e.value),this._adapter.emitHostEvent(i.events.SELECT,e),this._closeDropdown()}_onCascadingChildOpen(e){super._clearMouseLeaveTimeout(),this._adapter.closeOtherChildMenus(e),this._childOpen=!0,this._adapter.setActiveOption(e)}_onCascadingChildClose(e){this._childOpen=!1}_closeDropdown(){this._closeMenu()}_openDropdown({fromKeyboard:e}={}){this._openMenu({fromKeyboard:e})}_setCascadeTargetInactive(){this._adapter.setCascadeTargetInactive()}_isOwnElement(e){return this._adapter.isOwnElement(e)}_createCascadingElement({index:e,options:t,parentValue:n}){let o=this._adapter.createChildMenu(e,n,this._onCascadingChildOpen.bind(this),this._onCascadingChildClose.bind(this),this._onCascadingOptionSelected.bind(this));return o.mode="cascade",o.popupOffset={x:0,y:-8},o.dense=this._dense,o.placement="right-start",o.fallbackPlacements=["left-start","right-start"],o.persistSelection=this._persistSelection,this._persistSelection&&(o.selectedValue=this._selectedValue),o.options=t,o.optionBuilder=this._optionBuilder,o.iconClass=this._iconClass,o}_mapIconToLeadingIcon(){this._flatOptions.filter(e=>e.icon).forEach(e=>e.leadingIcon=e.icon)}get open(){return this._open}set open(e){e=Boolean(e),this._open!==e&&(this._open=e,e?this._openDropdown():this._closeDropdown())}set options(e){if(typeof e=="function")this.optionsFactory=e;else if(this.optionsFactory=void 0,this._options=e.map(t=>c({},t)),this._open&&(this._mapIconToLeadingIcon(),this._adapter.setOptions(this._options),this._persistSelection)){let t=this._getSelectedValues();t.length&&this._adapter.setSelectedValues(t)}}get options(){return this._options?this._flatOptions.map(e=>c({},e)):[]}set optionsFactory(e){this._optionsFactory=e}set selectedIndex(e){let t=this._nonDividerOptions[e];t&&t.value!==this._selectedValue&&(this.selectedValue=t.value)}get selectedIndex(){return this._selectedValue!==void 0?this._nonDividerOptions.findIndex(e=>e.value===this._selectedValue):-1}set selectedValue(e){this._selectedValue!==e&&(this._selectedValue=e,this._adapter.setSelectedValues(this._selectedValue))}get selectedValue(){return this._selectedValue}get placement(){return this._placement}set placement(e){this._placement!==e&&(this._placement=e||"bottom-start",this._adapter.setHostAttribute(i.attributes.PLACEMENT,this._placement))}get fallbackPlacements(){return this._fallbackPlacements}set fallbackPlacements(e){this._fallbackPlacements=Array.isArray(e)?e:[]}get dense(){return this._dense}set dense(e){this._dense=e}get iconClass(){return this._iconClass}set iconClass(e){this._iconClass=e}get persistSelection(){return this._persistSelection}set persistSelection(e){this._persistSelection!==e&&(this._persistSelection=e,this._adapter.toggleHostAttribute(i.attributes.PERSIST_SELECTION,this._persistSelection),this._persistSelection||(this._flatOptions.forEach(t=>t.selected=!1),this._selectedValue=void 0))}get mode(){return this._mode}set mode(e){this._mode!==e&&(this._mode=e,this._destroyInteractionListeners(),this._applyMode(),this._adapter.setHostAttribute(i.attributes.MODE,this._mode))}get popupOffset(){return this._popupOffset}set popupOffset(e){this._popupOffset=e}get optionBuilder(){return this._optionBuilder}set optionBuilder(e){this._optionBuilder=e}get popupElement(){return this._adapter.getDropdownElement()}};var q="<template><slot></slot></template>",W=":host{display:inline-block}:host([hidden]){display:none}",s=class extends k{constructor(){super();w.define(P),this._foundation=new h(new u(this)),C(this,q,W)}static get observedAttributes(){return[i.attributes.OPEN,i.attributes.PLACEMENT,i.attributes.SELECTED_INDEX,i.attributes.SELECTED_VALUE,i.attributes.DENSE,i.attributes.ICON_CLASS,i.attributes.PERSIST_SELECTION,i.attributes.MODE,i.attributes.SYNC_POPUP_WIDTH,i.attributes.POPUP_CLASSES,i.attributes.OPTION_LIMIT,i.attributes.OBSERVE_SCROLL,i.attributes.OBSERVE_SCROLL_THRESHOLD]}connectedCallback(){this.querySelector(i.selectors.TOGGLE)?this._foundation.initialize():M(this,i.selectors.TOGGLE).then(()=>this._foundation.initialize())}attributeChangedCallback(e,t,n){switch(super.attributeChangedCallback(e,t,n),e){case i.attributes.OPEN:this._foundation.open=O(n);break;case i.attributes.PLACEMENT:this._foundation.placement=n;break;case i.attributes.SELECTED_INDEX:this._foundation.selectedIndex=Number(n);break;case i.attributes.SELECTED_VALUE:this._foundation.selectedValue=n;break;case i.attributes.DENSE:this._foundation.dense=_(n);break;case i.attributes.ICON_CLASS:this._foundation.iconClass=n;break;case i.attributes.PERSIST_SELECTION:this.persistSelection=_(n);break;case i.attributes.MODE:this.mode=n;break}}disconnectedCallback(){this._foundation.disconnect()}propagateKeyEvent(e){this._foundation.onKeydown(e)}activateFirstOption(){this._foundation.activateFirstOption()}};a([p()],s.prototype,"open",2),a([p()],s.prototype,"options",2),a([p()],s.prototype,"selectedIndex",2),a([p()],s.prototype,"selectedValue",2),a([p()],s.prototype,"placement",2),a([p()],s.prototype,"fallbackPlacements",2),a([p()],s.prototype,"dense",2),a([p()],s.prototype,"iconClass",2),a([p()],s.prototype,"persistSelection",2),a([p()],s.prototype,"mode",2),a([p()],s.prototype,"popupOffset",2),a([p()],s.prototype,"optionBuilder",2),a([p({set:!1})],s.prototype,"popupElement",2),s=a([T({name:i.elementName,dependencies:[F,x,K,A]})],s);function Ye(){L(s)}export{i as a,u as b,h as c,s as d,Ye as e};
7
- //# sourceMappingURL=chunk.P6IF3USM.js.map
6
+ import{a as k}from"./chunk.MHOS3IHQ.js";import{e as V,h as B,j as H}from"./chunk.ESR2NHOS.js";import{c as x}from"./chunk.KE6GOYAB.js";import{a as m,b as N}from"./chunk.RG6CDWEX.js";import{d as K}from"./chunk.TWZXQQQO.js";import{b as A}from"./chunk.VAKNDCLP.js";import{e as F}from"./chunk.V7WKXEZC.js";import{d as P}from"./chunk.MZLPUI6R.js";import{d as w}from"./chunk.JHBCYICS.js";import{a as S}from"./chunk.G5MGGEFP.js";import{a as p}from"./chunk.KTGSZEAG.js";import{a as T,b as D,d as y}from"./chunk.BE7PZANN.js";import{a as L,e as C}from"./chunk.Y4GKBJGI.js";import{m as M}from"./chunk.PN26D52V.js";import{a as g,b as O,i as I,k as _}from"./chunk.J2M2MXP2.js";import{a as c,b,f as a}from"./chunk.MCIQXNKY.js";var l=`${D}menu`,U={POPUP:"forge-menu__popup",MENU:"mdc-menu"},G={TOGGLE:`.${l}__toggle,[${l}-toggle],button,[type=button],[role=button],a,[tabindex]:not([tabindex^="-"])`,MENU_LIST:"forge-list"},R={OPEN:"open",PLACEMENT:"placement",SELECTED_INDEX:"selected-index",SELECTED_VALUE:"selected-value",DENSE:"dense",ICON_CLASS:"icon-class",PERSIST_SELECTION:"persist-selection",MODE:"mode",SYNC_POPUP_WIDTH:"sync-popup-width",POPUP_CLASSES:"popup-classes",OPTION_LIMIT:"option-limit",OBSERVE_SCROLL:"observe-scroll",OBSERVE_SCROLL_THRESHOLD:"observe-scroll-threshold"},$={SELECT:`${l}-select`,OPEN:`${l}-open`,CLOSE:`${l}-close`,ACTIVE_CHANGE:`${l}-active-change`},z={CHILD_MOUSE_LEAVE_TIMEOUT:300,POPUP_MOUSE_LEAVE_TIMEOUT:500},i={elementName:l,classes:U,selectors:G,attributes:R,events:$,numbers:z};var u=class extends S{constructor(e){super(e);this._childMenus=new Map}getDropdownElement(){var e,t;return(t=(e=this._listDropdown)==null?void 0:e.dropdownElement)!=null?t:null}hasTargetElement(){return!!this._targetElement}initializeTarget(){this._targetElement=this._component.querySelector(i.selectors.TOGGLE),this._targetElement||(this._targetElement=this._component.firstElementChild)}initializeAccessibility(e){!this._targetElement||(this._targetElement.setAttribute("aria-atomic","true"),this._targetElement.setAttribute("aria-live","assertive"),this._targetElement.setAttribute("aria-haspopup","true"),this._targetElement.setAttribute("aria-expanded","false"),this._targetElement.hasAttribute("aria-label")||this._targetElement.setAttribute("aria-label",this._targetElement.textContent||""))}addTargetListener(e,t,n=!1){this._targetElement&&this._targetElement.addEventListener(e,t,n)}removeTargetListener(e,t){this._targetElement&&this._targetElement.removeEventListener(e,t)}attachMenu(e){this._listDropdown||!this._targetElement||(this._listDropdown=new B(this._targetElement,e),this._listDropdown.open(),this._targetElement.setAttribute("aria-expanded","true"),this._targetElement.setAttribute("aria-controls",`list-dropdown-popup-${e.id}`))}setOptions(e){this._listDropdown&&this._listDropdown.setOptions(e)}detachMenu(){this._targetElement&&(this._targetElement.removeAttribute("aria-activedescendant"),this._targetElement.removeAttribute("aria-expanded"),this._targetElement.removeAttribute("aria-controls")),this._listDropdown&&(this._listDropdown.close(),this._listDropdown.destroy(),this._listDropdown=void 0)}setActiveOption(e){var t;(t=this._listDropdown)==null||t.activateOption(e)}activateFirstOption(){var e;(e=this._listDropdown)==null||e.activateFirstOption()}setCascadeTargetInactive(){let e=this._targetElement;e!=null&&e.active&&(e.active=!1)}getActiveOptionIndex(){var e,t;return(t=(e=this._listDropdown)==null?void 0:e.getActiveOptionIndex())!=null?t:-1}focusTarget(){this._targetElement&&this._targetElement.focus()}isTargetFocused(){return document.activeElement===this._targetElement}updateActiveDescendant(e){!this._targetElement||(e?this._targetElement.setAttribute("aria-activedescendant",e):this._targetElement.removeAttribute("aria-activedescendant"))}addDropdownListener(e,t){!this._listDropdown||!this._listDropdown.dropdownElement||this._listDropdown.dropdownElement.addEventListener(e,t)}isOwnElement(e){return!this._targetElement||!this._listDropdown||!this._listDropdown.dropdownElement?!1:this._targetElement.contains(e)||!!this._listDropdown.dropdownElement.contains(e)}propagateKey(e){var t;(t=this._listDropdown)==null||t.handleKey(e)}proxyKeyboardEventToChild(e,t){if(!this.getDropdownElement())return;let n=this._getOpenChildMenu(t);n&&n.propagateKeyEvent(e)}toggleChildMenu(e,t){let r=this._getListItems()[e].parentElement;r&&r.tagName.toLowerCase()===i.elementName&&(t===void 0?r.open=!r.open:r.open=t,r.activateFirstOption())}createChildMenu(e,t,n,o,r){let d=document.createElement("forge-menu");return d.style.display="block",d.addEventListener(i.events.OPEN,()=>{this._childMenus.set(e,d),n(e)}),d.addEventListener(i.events.CLOSE,()=>{this._childMenus.delete(e),o(e)}),d.addEventListener(i.events.SELECT,f=>{f.stopPropagation(),r(b(c({},f.detail),{parentValue:t}))}),d}closeOtherChildMenus(e){let t=[];this._childMenus.forEach((n,o)=>{o!==e&&(n.open=!1,t.push(o))}),t.forEach(n=>this._childMenus.delete(n))}setSelectedValues(e){var t;(t=this._listDropdown)==null||t.setSelectedValues(e)}_getOpenChildMenu(e){if(!this.getDropdownElement())return null;let t=this._getOwnList(e);return t?t.querySelector(`${i.elementName}[${i.attributes.OPEN}]`):null}_getOwnList(e){let t=this.getDropdownElement();return t?t.querySelector(`${m.elementName}[id="list-dropdown-list-${e}"]`):null}_getListItems(){let e=this.getDropdownElement();if(!e)return[];let t=e.querySelector(m.elementName);return t?Array.from(t.querySelectorAll(N.elementName)):[]}};var h=class extends H{constructor(e){super({popupTimeout:i.numbers.POPUP_MOUSE_LEAVE_TIMEOUT,targetTimeout:i.numbers.CHILD_MOUSE_LEAVE_TIMEOUT});this._adapter=e;this._placement="bottom-start";this._fallbackPlacements=[];this._dense=!1;this._iconClass=y;this._persistSelection=!1;this._mode="click";this._identifier=g(),this._clickListener=t=>this._onTargetClick(t),this._blurListener=t=>this._onTargetBlur(t),this._selectListener=t=>this._handleSelectEvent(t),this._keydownListener=t=>this.onKeydown(t),this._activeChangeListener=t=>this._onActiveOptionChanged(t)}initialize(){this._adapter.initializeTarget(),this._adapter.initializeAccessibility(this._identifier),this._initializeInteractionListeners()}disconnect(){this._open&&this._closeDropdown(),this._destroyInteractionListeners()}activateFirstOption(){this._adapter.activateFirstOption()}_applyMode(){!this._adapter.hasTargetElement()||(this._mode!=="cascade"?this._adapter.addTargetListener("click",this._clickListener):this._attachCascadingListeners())}_initializeInteractionListeners(){!this._adapter.hasTargetElement()||(this._applyMode(),this._adapter.addTargetListener("keydown",this._keydownListener,!0),this._adapter.addTargetListener("focusout",this._blurListener))}_destroyInteractionListeners(){!this._adapter.hasTargetElement()||(this._adapter.removeTargetListener("keydown",this._clickListener),this._adapter.removeTargetListener("focusout",this._blurListener),this._adapter.removeTargetListener("click",this._clickListener),this._detachCascadingListeners())}_attachCascadingListeners(){this._adapter.addTargetListener("mouseenter",this._targetMouseEnterListener),this._adapter.addTargetListener("mouseleave",this._targetMouseLeaveListener),this._adapter.addDocumentListener("mousemove",this._documentMouseMoveListener)}_detachCascadingListeners(){this._adapter.removeTargetListener("mouseenter",this._targetMouseEnterListener),this._adapter.removeTargetListener("mouseleave",this._targetMouseLeaveListener),this._adapter.removeDocumentListener("mousemove",this._documentMouseMoveListener)}get _nonDividerOptions(){return this._flatOptions.filter(e=>!e.divider)}get _flatOptions(){return V(this._options,1)?this._options.reduce((e,t)=>e.concat(t.options),[]):this._options}_onTargetClick(e){if(this._open){this._closeDropdown();return}this.open=!this._open,this._open&&this._adapter.focusTarget()}_onTargetBlur(e){this._open&&this._closeDropdown()}_onActiveOptionChanged(e){let t={id:e},n=this._adapter.emitHostEvent(i.events.ACTIVE_CHANGE,t,!0,!0);this._mode!=="cascade"&&n&&this._adapter.updateActiveDescendant(e)}onKeydown(e){if(this._childOpen){this._adapter.proxyKeyboardEventToChild(e,this._identifier);return}switch(e.code){case"Tab":this._open&&this._selectActiveOption();break;case"Escape":this._open&&(e.preventDefault(),e.stopPropagation(),this._closeDropdown());break;case"Space":e.preventDefault(),this._open?this._closeDropdown():this._openDropdown({fromKeyboard:!0});break;case"Home":case"End":this._open&&(e.preventDefault(),this._adapter.propagateKey(e.code));break;case"Enter":if(e.preventDefault(),!this._open){e.preventDefault(),this._openDropdown({fromKeyboard:!0});return}e.stopImmediatePropagation(),this._adapter.propagateKey(e.code);let t=this._adapter.getActiveOptionIndex(),n=this._nonDividerOptions[t];n&&n.options&&n.options.length&&this._adapter.toggleChildMenu(t);break;case"ArrowUp":case"ArrowDown":if(this._open&&e.stopImmediatePropagation(),e.preventDefault(),!this._open&&e.code==="ArrowDown"){this._openDropdown({fromKeyboard:!0}),this._adapter.activateFirstOption();return}this._adapter.propagateKey(e.code);break;case"ArrowLeft":this._open&&e.stopImmediatePropagation(),this._mode==="cascade"&&this._open&&this._closeDropdown();break;case"ArrowRight":if(this._open&&e.stopImmediatePropagation(),!this._open)return;let o=this._adapter.getActiveOptionIndex(),r=this._nonDividerOptions[o];if(r&&r.options){this._adapter.toggleChildMenu(o,e.code==="ArrowRight");return}break}}async _openMenu({fromKeyboard:e}={}){this._open=!0;let t=[];if(typeof this._optionsFactory=="function")this._loadOptionsAsync(),this._options=[];else{if(!this._options||!this._options.length)return;t=this._options}this._persistSelection||t.forEach(r=>r.selected=!1),this._mapIconToLeadingIcon();let n=this._persistSelection?this._getSelectedValues():[],o={id:this._identifier,type:"menu",options:this._options,selectedValues:n,iconClass:this._iconClass,dense:this._dense,multiple:!1,popupStatic:!0,allowBusy:!0,asyncStyle:"spinner",optionBuilder:this._optionBuilder,optionLimit:this._optionLimit,headerBuilder:this._popupHeaderBuilder,footerBuilder:this._popupFooterBuilder,observeScroll:this._observeScroll,observeScrollThreshold:this._observeScrollThreshold,popupPlacement:this._placement,popupFallbackPlacements:this._fallbackPlacements,activeStartIndex:e?0:void 0,popupClasses:[i.classes.POPUP,i.classes.MENU,...this._popupClasses],syncWidth:this._syncPopupWidth,activeChangeCallback:this._activeChangeListener,selectCallback:this._selectListener,popupOffset:this._popupOffset,cascadingElementFactory:r=>this._createCascadingElement(r)};this._adapter.setHostAttribute(i.attributes.OPEN,""),this._adapter.attachMenu(o),this._mode==="cascade"&&(this._adapter.addDropdownListener("mouseenter",this._childPopupMouseEnterListener),this._adapter.addDropdownListener("mouseleave",this._childPopupMouseLeaveListener)),this._adapter.addDropdownListener(i.events.ACTIVE_CHANGE,r=>{this._onActiveOptionChanged(r.detail.id)}),this._adapter.emitHostEvent(i.events.OPEN)}_closeMenu(){this._open=!1,this._childOpen=!1,this._adapter.detachMenu(),this._activeMouseLeaveTimeout!==void 0&&window.clearTimeout(this._activeMouseLeaveTimeout),this._adapter.removeHostAttribute(i.attributes.OPEN),this._adapter.emitHostEvent(i.events.CLOSE)}_loadOptionsAsync(){return this._optionsFactory?Promise.resolve(this._optionsFactory()).then(e=>{if(this._persistSelection||e.forEach(t=>t.selected=!1),this._open)if(e&&I(e)&&e.length){this._options=e,this._adapter.setOptions(e);let t=this._getSelectedValues();t.length&&this._adapter.setSelectedValues(t)}else this._open&&this._closeDropdown()}).catch(e=>{console.error("An unexpected error ocurred while opening the menu:",e),this._open&&this._closeDropdown()}):(this._open&&this._closeMenu(),Promise.resolve())}_handleSelectEvent(e){let t=this._nonDividerOptions.findIndex(n=>n.value===e);t<0||this._selectOptionByIndex(t)}_selectActiveOption(){let e=this._adapter.getActiveOptionIndex();e>=0&&this._nonDividerOptions[e]&&this._selectOptionByIndex(e)}_selectOptionByIndex(e){let{options:t,value:n}=this._nonDividerOptions[e];if(t){this._adapter.setActiveOption(e);return}this._closeDropdown();let o={index:e,value:n};!this._adapter.emitHostEvent(i.events.SELECT,o,!0,!0)||(this._selectedValue=this._persistSelection?n:void 0)}_getSelectedValues(){let e=this._flatOptions.filter(t=>t.selected).map(t=>t.value);return this._selectedValue!==void 0&&e.push(this._selectedValue),e}_onCascadingOptionSelected(e){this._persistSelection&&(this._selectedValue=e.value),this._adapter.emitHostEvent(i.events.SELECT,e),this._closeDropdown()}_onCascadingChildOpen(e){super._clearMouseLeaveTimeout(),this._adapter.closeOtherChildMenus(e),this._childOpen=!0,this._adapter.setActiveOption(e)}_onCascadingChildClose(e){this._childOpen=!1}_closeDropdown(){this._closeMenu()}_openDropdown({fromKeyboard:e}={}){this._openMenu({fromKeyboard:e})}_setCascadeTargetInactive(){this._adapter.setCascadeTargetInactive()}_isOwnElement(e){return this._adapter.isOwnElement(e)}_createCascadingElement({index:e,options:t,parentValue:n}){let o=this._adapter.createChildMenu(e,n,this._onCascadingChildOpen.bind(this),this._onCascadingChildClose.bind(this),this._onCascadingOptionSelected.bind(this));return o.mode="cascade",o.popupOffset={x:0,y:-8},o.dense=this._dense,o.placement="right-start",o.fallbackPlacements=["left-start","right-start"],o.persistSelection=this._persistSelection,this._persistSelection&&(o.selectedValue=this._selectedValue),o.options=t,o.optionBuilder=this._optionBuilder,o.iconClass=this._iconClass,o}_mapIconToLeadingIcon(){this._flatOptions.filter(e=>e.icon).forEach(e=>e.leadingIcon=e.icon)}get open(){return this._open}set open(e){e=Boolean(e),this._open!==e&&(this._open=e,e?this._openDropdown():this._closeDropdown())}set options(e){if(typeof e=="function")this.optionsFactory=e;else if(this.optionsFactory=void 0,this._options=e.map(t=>c({},t)),this._open&&(this._mapIconToLeadingIcon(),this._adapter.setOptions(this._options),this._persistSelection)){let t=this._getSelectedValues();t.length&&this._adapter.setSelectedValues(t)}}get options(){return this._options?this._flatOptions.map(e=>c({},e)):[]}set optionsFactory(e){this._optionsFactory=e}set selectedIndex(e){let t=this._nonDividerOptions[e];t&&t.value!==this._selectedValue&&(this.selectedValue=t.value)}get selectedIndex(){return this._selectedValue!==void 0?this._nonDividerOptions.findIndex(e=>e.value===this._selectedValue):-1}set selectedValue(e){this._selectedValue!==e&&(this._selectedValue=e,this._adapter.setSelectedValues(this._selectedValue))}get selectedValue(){return this._selectedValue}get placement(){return this._placement}set placement(e){this._placement!==e&&(this._placement=e||"bottom-start",this._adapter.setHostAttribute(i.attributes.PLACEMENT,this._placement))}get fallbackPlacements(){return this._fallbackPlacements}set fallbackPlacements(e){this._fallbackPlacements=Array.isArray(e)?e:[]}get dense(){return this._dense}set dense(e){this._dense=e}get iconClass(){return this._iconClass}set iconClass(e){this._iconClass=e}get persistSelection(){return this._persistSelection}set persistSelection(e){this._persistSelection!==e&&(this._persistSelection=e,this._adapter.toggleHostAttribute(i.attributes.PERSIST_SELECTION,this._persistSelection),this._persistSelection||(this._flatOptions.forEach(t=>t.selected=!1),this._selectedValue=void 0))}get mode(){return this._mode}set mode(e){this._mode!==e&&(this._mode=e,this._destroyInteractionListeners(),this._applyMode(),this._adapter.setHostAttribute(i.attributes.MODE,this._mode))}get popupOffset(){return this._popupOffset}set popupOffset(e){this._popupOffset=e}get optionBuilder(){return this._optionBuilder}set optionBuilder(e){this._optionBuilder=e}get popupElement(){return this._adapter.getDropdownElement()}};var q="<template><slot></slot></template>",W=":host{display:inline-block}:host([hidden]){display:none}",s=class extends k{constructor(){super();w.define(P),this._foundation=new h(new u(this)),C(this,q,W)}static get observedAttributes(){return[i.attributes.OPEN,i.attributes.PLACEMENT,i.attributes.SELECTED_INDEX,i.attributes.SELECTED_VALUE,i.attributes.DENSE,i.attributes.ICON_CLASS,i.attributes.PERSIST_SELECTION,i.attributes.MODE,i.attributes.SYNC_POPUP_WIDTH,i.attributes.POPUP_CLASSES,i.attributes.OPTION_LIMIT,i.attributes.OBSERVE_SCROLL,i.attributes.OBSERVE_SCROLL_THRESHOLD]}connectedCallback(){this.querySelector(i.selectors.TOGGLE)?this._foundation.initialize():M(this,i.selectors.TOGGLE).then(()=>this._foundation.initialize())}attributeChangedCallback(e,t,n){switch(super.attributeChangedCallback(e,t,n),e){case i.attributes.OPEN:this._foundation.open=O(n);break;case i.attributes.PLACEMENT:this._foundation.placement=n;break;case i.attributes.SELECTED_INDEX:this._foundation.selectedIndex=Number(n);break;case i.attributes.SELECTED_VALUE:this._foundation.selectedValue=n;break;case i.attributes.DENSE:this._foundation.dense=_(n);break;case i.attributes.ICON_CLASS:this._foundation.iconClass=n;break;case i.attributes.PERSIST_SELECTION:this.persistSelection=_(n);break;case i.attributes.MODE:this.mode=n;break}}disconnectedCallback(){this._foundation.disconnect()}propagateKeyEvent(e){this._foundation.onKeydown(e)}activateFirstOption(){this._foundation.activateFirstOption()}};a([p()],s.prototype,"open",2),a([p()],s.prototype,"options",2),a([p()],s.prototype,"selectedIndex",2),a([p()],s.prototype,"selectedValue",2),a([p()],s.prototype,"placement",2),a([p()],s.prototype,"fallbackPlacements",2),a([p()],s.prototype,"dense",2),a([p()],s.prototype,"iconClass",2),a([p()],s.prototype,"persistSelection",2),a([p()],s.prototype,"mode",2),a([p()],s.prototype,"popupOffset",2),a([p()],s.prototype,"optionBuilder",2),a([p({set:!1})],s.prototype,"popupElement",2),s=a([T({name:i.elementName,dependencies:[F,x,K,A]})],s);function Ye(){L(s)}export{i as a,u as b,h as c,s as d,Ye as e};
7
+ //# sourceMappingURL=chunk.YBEBD4CN.js.map
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../src/menu/menu-constants.ts", "../../src/menu/menu-adapter.ts", "../../src/menu/menu-foundation.ts", "../../src/menu/menu.ts", "../../src/menu/index.ts"],
4
4
  "sourcesContent": ["import { COMPONENT_NAME_PREFIX } from '../constants';\nimport { IListDropdownOption, IListDropdownOptionGroup } from '../list-dropdown';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}menu`;\n\nconst classes = {\n POPUP: 'forge-menu__popup',\n MENU: 'mdc-menu'\n};\n\nconst selectors = {\n TOGGLE: `.${elementName}__toggle,[${elementName}-toggle],button,[type=button],[role=button],a,[tabindex]:not([tabindex^=\"-\"])`,\n MENU_LIST: 'forge-list'\n};\n\nconst attributes = {\n OPEN: 'open',\n PLACEMENT: 'placement',\n SELECTED_INDEX: 'selected-index',\n SELECTED_VALUE: 'selected-value',\n DENSE: 'dense',\n ICON_CLASS: 'icon-class',\n PERSIST_SELECTION: 'persist-selection',\n MODE: 'mode',\n SYNC_POPUP_WIDTH: 'sync-popup-width',\n POPUP_CLASSES: 'popup-classes',\n OPTION_LIMIT: 'option-limit',\n OBSERVE_SCROLL: 'observe-scroll',\n OBSERVE_SCROLL_THRESHOLD: 'observe-scroll-threshold'\n};\n\nconst events = {\n SELECT: `${elementName}-select`,\n OPEN: `${elementName}-open`,\n CLOSE: `${elementName}-close`,\n ACTIVE_CHANGE: `${elementName}-active-change`\n};\n\nconst numbers = {\n CHILD_MOUSE_LEAVE_TIMEOUT: 300,\n POPUP_MOUSE_LEAVE_TIMEOUT: 500\n};\n\nexport const MENU_CONSTANTS = {\n elementName,\n classes,\n selectors,\n attributes,\n events,\n numbers\n};\n\nexport interface IMenuSelectEventData<T = any, K = any> {\n index: number;\n value?: T;\n parentValue?: K;\n}\n\nexport interface IMenuActiveChangeEventData {\n id: string;\n}\n\nexport interface IMenuOption<T = any> extends IListDropdownOption<T> {\n icon?: string;\n selected?: boolean;\n}\n\nexport interface IMenuOptionGroup extends IListDropdownOptionGroup {}\n\nexport type MenuOptionBuilder = (option: IMenuOption, parentElement: HTMLElement) => HTMLElement | string | void;\nexport type MenuOptionFactory = (() => IMenuOption[]) | (() => Promise<IMenuOption[]>);\nexport type MenuMode = 'click' | 'cascade';\n", "import { BaseAdapter, IBaseAdapter } from '../core/base/base-adapter';\nimport { IMenuOption } from './index';\nimport { IMenuComponent } from './menu';\nimport { MENU_CONSTANTS, IMenuSelectEventData } from './menu-constants';\nimport { IListDropdownConfig, IListDropdown, ListDropdown } from '../list-dropdown';\nimport { IListComponent, IListItemComponent, LIST_CONSTANTS, LIST_ITEM_CONSTANTS } from '../list';\n\nexport interface IMenuAdapter extends IBaseAdapter {\n getDropdownElement(): HTMLElement | null;\n initializeTarget(): void;\n initializeAccessibility(id: string): void;\n hasTargetElement(): boolean;\n addTargetListener(event: string, callback: (event: Event) => void, bubbles?: boolean): void;\n removeTargetListener(event: string, callback: (event: Event) => void): void;\n attachMenu(config: IListDropdownConfig): void;\n detachMenu(): void;\n setOptions(options: IMenuOption[]): void;\n getActiveOptionIndex(): number;\n setActiveOption(index: number): void;\n activateFirstOption(): void;\n setCascadeTargetInactive(): void;\n propagateKey(key: string): void;\n proxyKeyboardEventToChild(evt: KeyboardEvent, id: string): void;\n toggleChildMenu(index: number, open?: boolean): void;\n focusTarget(): void;\n isTargetFocused(): boolean;\n updateActiveDescendant(id: string): void;\n isOwnElement(element: Element): boolean;\n addDropdownListener(type: string, listener: (evt: any) => void): void;\n createChildMenu(index: number, parentValue: any, openCb: (index: number) => void, closeCb: (index: number) => void, selectCb: (data: IMenuSelectEventData) => void): IMenuComponent;\n closeOtherChildMenus(excludeIndex?: number): void;\n setSelectedValues(values: any[]): void;\n}\n\nexport class MenuAdapter extends BaseAdapter<IMenuComponent> implements IMenuAdapter {\n private _targetElement: HTMLElement | null;\n private _listDropdown?: IListDropdown;\n private _childMenus = new Map<number, IMenuComponent>();\n\n constructor(component: IMenuComponent) {\n super(component);\n }\n\n public getDropdownElement(): HTMLElement | null {\n return this._listDropdown?.dropdownElement ?? null;\n }\n\n public hasTargetElement(): boolean {\n return !!this._targetElement;\n }\n\n public initializeTarget(): void {\n this._targetElement = this._component.querySelector(MENU_CONSTANTS.selectors.TOGGLE);\n if (!this._targetElement) {\n this._targetElement = this._component.firstElementChild as HTMLElement;\n }\n }\n\n public initializeAccessibility(id: string): void {\n if (!this._targetElement) {\n return;\n }\n\n this._targetElement.setAttribute('aria-atomic', 'true');\n this._targetElement.setAttribute('aria-live', 'assertive');\n this._targetElement.setAttribute('aria-haspopup', 'true');\n this._targetElement.setAttribute('aria-expanded', 'false');\n\n if (!this._targetElement.hasAttribute('aria-label')) {\n this._targetElement.setAttribute('aria-label', this._targetElement.textContent || '');\n }\n }\n\n public addTargetListener(event: string, callback: (event: Event) => void, bubbles = false): void {\n if (this._targetElement) {\n this._targetElement.addEventListener(event, callback, bubbles);\n }\n }\n\n public removeTargetListener(event: string, callback: (event: Event) => void): void {\n if (this._targetElement) {\n this._targetElement.removeEventListener(event, callback);\n }\n }\n\n public attachMenu(config: IListDropdownConfig): void {\n if (this._listDropdown || !this._targetElement) {\n return;\n }\n this._listDropdown = new ListDropdown(this._targetElement as HTMLElement, config);\n this._listDropdown.open();\n this._targetElement.setAttribute('aria-expanded', 'true');\n this._targetElement.setAttribute('aria-controls', `list-dropdown-popup-${config.id}`);\n }\n\n public setOptions(options: IMenuOption[]): void {\n if (this._listDropdown) {\n this._listDropdown.setOptions(options);\n }\n }\n\n public detachMenu(): void {\n if (this._targetElement) {\n this._targetElement.removeAttribute('aria-activedescendant');\n this._targetElement.removeAttribute('aria-expanded');\n this._targetElement.removeAttribute('aria-controls');\n }\n\n if (this._listDropdown) {\n this._listDropdown.close();\n this._listDropdown.destroy();\n this._listDropdown = undefined;\n }\n }\n\n public setActiveOption(index: number): void {\n this._listDropdown?.activateOption(index);\n }\n\n public activateFirstOption(): void {\n this._listDropdown?.activateFirstOption();\n }\n\n public setCascadeTargetInactive(): void {\n const listItem = this._targetElement as IListItemComponent;\n if (listItem?.active) {\n listItem.active = false;\n }\n }\n\n public getActiveOptionIndex(): number {\n return this._listDropdown?.getActiveOptionIndex() ?? -1;\n }\n\n public focusTarget(): void {\n if (this._targetElement) {\n this._targetElement.focus();\n }\n }\n\n public isTargetFocused(): boolean {\n return document.activeElement === this._targetElement;\n }\n\n public updateActiveDescendant(id: string): void {\n if (!this._targetElement) {\n return;\n }\n if (id) {\n this._targetElement.setAttribute('aria-activedescendant', id);\n } else {\n this._targetElement.removeAttribute('aria-activedescendant');\n }\n }\n\n public addDropdownListener(type: string, listener: (evt: any) => void): void {\n if (!this._listDropdown || !this._listDropdown.dropdownElement) {\n return;\n }\n this._listDropdown.dropdownElement.addEventListener(type, listener);\n }\n\n public isOwnElement(el: Element): boolean {\n if (!this._targetElement || !this._listDropdown || !this._listDropdown.dropdownElement) {\n return false;\n }\n return this._targetElement.contains(el) || !!this._listDropdown.dropdownElement.contains(el);\n }\n\n public propagateKey(key: string): void {\n this._listDropdown?.handleKey(key);\n }\n\n public proxyKeyboardEventToChild(evt: KeyboardEvent, id: string): void {\n if (!this.getDropdownElement()) {\n return;\n }\n const openMenu = this._getOpenChildMenu(id);\n if (openMenu) {\n openMenu.propagateKeyEvent(evt);\n }\n }\n\n public toggleChildMenu(index: number, open?: boolean): void {\n const listItems = this._getListItems();\n const listItem = listItems[index];\n const childMenu = listItem.parentElement as IMenuComponent;\n if (childMenu && childMenu.tagName.toLowerCase() === MENU_CONSTANTS.elementName) {\n if (open === undefined) {\n childMenu.open = !childMenu.open;\n } else {\n childMenu.open = open;\n }\n childMenu.activateFirstOption();\n }\n }\n\n public createChildMenu(index: number, parentValue: any, openCb: (index: number) => void, closeCb: (index: number) => void, selectCb: (data: IMenuSelectEventData) => void): IMenuComponent {\n const menu = document.createElement('forge-menu');\n menu.style.display = 'block';\n\n // Set listeners to notify the parent menu when anything important happens within a child menu that needs to be propagated to the root menu\n menu.addEventListener(MENU_CONSTANTS.events.OPEN, () => {\n this._childMenus.set(index, menu);\n openCb(index);\n });\n menu.addEventListener(MENU_CONSTANTS.events.CLOSE, () => {\n this._childMenus.delete(index);\n closeCb(index);\n });\n menu.addEventListener(MENU_CONSTANTS.events.SELECT, (evt: CustomEvent<IMenuSelectEventData>) => {\n evt.stopPropagation();\n selectCb({ ...evt.detail, parentValue });\n });\n\n return menu;\n }\n\n public closeOtherChildMenus(excludeIndex?: number): void {\n const menusToRemove: number[] = [];\n this._childMenus.forEach((menu, index) => {\n if (index !== excludeIndex) {\n menu.open = false;\n menusToRemove.push(index);\n }\n });\n menusToRemove.forEach(index => this._childMenus.delete(index));\n }\n\n public setSelectedValues(values: any[]): void {\n this._listDropdown?.setSelectedValues(values);\n }\n\n private _getOpenChildMenu(id: string): IMenuComponent | null {\n if (!this.getDropdownElement()) {\n return null;\n }\n const list = this._getOwnList(id);\n return list ? list.querySelector(`${MENU_CONSTANTS.elementName}[${MENU_CONSTANTS.attributes.OPEN}]`) : null;\n }\n\n private _getOwnList(id: string): IListComponent | null {\n const popup = this.getDropdownElement();\n if (!popup) {\n return null;\n }\n return popup.querySelector(`${LIST_CONSTANTS.elementName}[id=\"list-dropdown-list-${id}\"]`);\n }\n\n private _getListItems(): IListItemComponent[] {\n const popup = this.getDropdownElement();\n if (!popup) {\n return [];\n }\n const listElement = popup.querySelector(LIST_CONSTANTS.elementName);\n if (listElement) {\n return Array.from(listElement.querySelectorAll(LIST_ITEM_CONSTANTS.elementName)) as IListItemComponent[];\n }\n return [];\n }\n}\n", "import { ICustomElementFoundation, isArray, randomChars } from '@tylertech/forge-core';\nimport { ICON_CLASS_NAME } from '../constants';\nimport { CascadingListDropdownAwareFoundation, IListDropdownCascadingElementFactoryConfig, IListDropdownConfig, ListDropdownAsyncStyle, ListDropdownType } from '../list-dropdown';\nimport { isListDropdownOptionType, ListDropdownOptionType } from '../list-dropdown/list-dropdown-utils';\nimport { IPopupPosition, PopupPlacement } from '../popup';\nimport { IMenuOption } from './index';\nimport { IMenuAdapter } from './menu-adapter';\nimport { IMenuActiveChangeEventData, IMenuOptionGroup, IMenuSelectEventData, MenuMode, MenuOptionBuilder, MenuOptionFactory, MENU_CONSTANTS } from './menu-constants';\n\nexport interface IMenuFoundation extends ICustomElementFoundation {\n initialize(): void;\n disconnect(): void;\n onKeydown(evt: KeyboardEvent): void;\n open: boolean;\n options: Array<IMenuOption | IMenuOptionGroup>;\n optionsFactory: MenuOptionFactory | undefined;\n selectedIndex: number;\n selectedValue: any;\n placement: PopupPlacement;\n fallbackPlacements: PopupPlacement[];\n dense: boolean;\n iconClass: string;\n persistSelection: boolean;\n mode: MenuMode;\n popupOffset: IPopupPosition;\n optionBuilder: MenuOptionBuilder | undefined;\n activateFirstOption(): void;\n}\n\nexport class MenuFoundation extends CascadingListDropdownAwareFoundation<IMenuOption | IMenuOptionGroup> implements IMenuFoundation {\n private _optionsFactory: MenuOptionFactory | undefined;\n private _placement: PopupPlacement = 'bottom-start';\n private _fallbackPlacements: PopupPlacement[] = [];\n private _dense = false;\n private _selectedValue: any;\n private _iconClass = ICON_CLASS_NAME;\n private _persistSelection = false;\n private _mode: MenuMode = 'click';\n private _popupOffset: IPopupPosition;\n private _optionBuilder: MenuOptionBuilder | undefined;\n private _identifier: string;\n private _clickListener: (evt: MouseEvent) => void;\n private _blurListener: (evt: MouseEvent) => void;\n private _selectListener: (value: any) => void;\n private _keydownListener: (evt: KeyboardEvent) => void;\n private _activeChangeListener: (id: string) => void;\n \n constructor(private _adapter: IMenuAdapter) {\n super({\n popupTimeout: MENU_CONSTANTS.numbers.POPUP_MOUSE_LEAVE_TIMEOUT,\n targetTimeout: MENU_CONSTANTS.numbers.CHILD_MOUSE_LEAVE_TIMEOUT\n });\n this._identifier = randomChars();\n this._clickListener = evt => this._onTargetClick(evt);\n this._blurListener = evt => this._onTargetBlur(evt);\n this._selectListener = value => this._handleSelectEvent(value);\n this._keydownListener = evt => this.onKeydown(evt);\n this._activeChangeListener = id => this._onActiveOptionChanged(id);\n }\n\n public initialize(): void {\n this._adapter.initializeTarget();\n this._adapter.initializeAccessibility(this._identifier);\n this._initializeInteractionListeners();\n }\n\n public disconnect(): void {\n if (this._open) {\n this._closeDropdown();\n }\n this._destroyInteractionListeners();\n }\n\n public activateFirstOption(): void {\n this._adapter.activateFirstOption();\n }\n\n private _applyMode(): void {\n if (!this._adapter.hasTargetElement()) {\n return;\n }\n\n if (this._mode !== 'cascade') {\n this._adapter.addTargetListener('click', this._clickListener);\n } else {\n this._attachCascadingListeners();\n }\n }\n\n private _initializeInteractionListeners(): void {\n if (!this._adapter.hasTargetElement()) {\n return;\n }\n this._applyMode();\n this._adapter.addTargetListener('keydown', this._keydownListener, true);\n this._adapter.addTargetListener('focusout', this._blurListener);\n }\n\n private _destroyInteractionListeners(): void {\n if (!this._adapter.hasTargetElement()) {\n return;\n }\n this._adapter.removeTargetListener('keydown', this._clickListener);\n this._adapter.removeTargetListener('focusout', this._blurListener);\n this._adapter.removeTargetListener('click', this._clickListener);\n this._detachCascadingListeners();\n }\n\n protected _attachCascadingListeners(): void {\n this._adapter.addTargetListener('mouseenter', this._targetMouseEnterListener);\n this._adapter.addTargetListener('mouseleave', this._targetMouseLeaveListener);\n\n // We listen for document mousemove events only to track mouse coords for use when determining\n // if popups should open/close after specific delays\n this._adapter.addDocumentListener('mousemove', this._documentMouseMoveListener);\n }\n\n protected _detachCascadingListeners(): void {\n this._adapter.removeTargetListener('mouseenter', this._targetMouseEnterListener);\n this._adapter.removeTargetListener('mouseleave', this._targetMouseLeaveListener);\n this._adapter.removeDocumentListener('mousemove', this._documentMouseMoveListener);\n }\n\n private get _nonDividerOptions(): IMenuOption[] {\n return this._flatOptions.filter(o => !o.divider);\n }\n\n private get _flatOptions(): IMenuOption[] {\n if (isListDropdownOptionType(this._options, ListDropdownOptionType.Group)) {\n return (this._options as IMenuOptionGroup[]).reduce((previousValue, currentValue) => previousValue.concat(currentValue.options), [] as IMenuOption[]) as IMenuOption[];\n }\n return this._options as IMenuOption[];\n }\n\n private _onTargetClick(evt: MouseEvent): void {\n if (this._open) {\n this._closeDropdown();\n return;\n }\n this.open = !this._open;\n if (this._open) {\n this._adapter.focusTarget();\n }\n }\n\n private _onTargetBlur(evt: Event): void {\n if (this._open) {\n this._closeDropdown();\n }\n }\n\n private _onActiveOptionChanged(id: string): void {\n // We need to dispatch an event when the active descendant changes to propagate that to the proper target element\n const data: IMenuActiveChangeEventData = { id };\n const canSetActiveDescendant = this._adapter.emitHostEvent(MENU_CONSTANTS.events.ACTIVE_CHANGE, data, true, true);\n if (this._mode !== 'cascade' && canSetActiveDescendant) {\n this._adapter.updateActiveDescendant(id);\n }\n }\n\n public onKeydown(evt: KeyboardEvent): void {\n // If we have any child menus open, we need to proxy the keyboard events to those and exit\n if (this._childOpen) {\n this._adapter.proxyKeyboardEventToChild(evt, this._identifier);\n return;\n }\n\n switch (evt.code) {\n case 'Tab':\n if (this._open) {\n this._selectActiveOption();\n }\n break;\n case 'Escape':\n if (this._open) {\n evt.preventDefault();\n evt.stopPropagation();\n this._closeDropdown();\n }\n break;\n case 'Space':\n evt.preventDefault();\n\n if (this._open) {\n this._closeDropdown();\n } else {\n this._openDropdown({ fromKeyboard: true });\n }\n break;\n case 'Home':\n case 'End':\n if (this._open) {\n evt.preventDefault();\n this._adapter.propagateKey(evt.code);\n }\n break;\n case 'Enter':\n evt.preventDefault();\n\n if (!this._open) {\n evt.preventDefault();\n this._openDropdown({ fromKeyboard: true });\n return;\n }\n\n evt.stopImmediatePropagation();\n\n this._adapter.propagateKey(evt.code);\n\n // Check if we need to toggle the child menu open state\n const activeIndex = this._adapter.getActiveOptionIndex();\n const activeOption = this._nonDividerOptions[activeIndex];\n if (activeOption && activeOption.options && activeOption.options.length) {\n this._adapter.toggleChildMenu(activeIndex);\n }\n break;\n case 'ArrowUp':\n case 'ArrowDown':\n if (this._open) {\n evt.stopImmediatePropagation();\n }\n\n evt.preventDefault();\n\n if (!this._open && evt.code === 'ArrowDown') {\n this._openDropdown({ fromKeyboard: true });\n this._adapter.activateFirstOption();\n return;\n }\n\n this._adapter.propagateKey(evt.code);\n break;\n case 'ArrowLeft':\n if (this._open) {\n evt.stopImmediatePropagation();\n }\n if (this._mode === 'cascade' && this._open) {\n this._closeDropdown();\n }\n break;\n case 'ArrowRight':\n if (this._open) {\n evt.stopImmediatePropagation();\n }\n if (!this._open) {\n return;\n }\n const hoveredIndex = this._adapter.getActiveOptionIndex();\n const hoveredOption = this._nonDividerOptions[hoveredIndex];\n if (hoveredOption && hoveredOption.options) {\n this._adapter.toggleChildMenu(hoveredIndex, evt.code === 'ArrowRight');\n return;\n }\n break;\n }\n }\n\n private async _openMenu({ fromKeyboard }: { fromKeyboard?: boolean } = {}): Promise<void> {\n this._open = true;\n let options: IMenuOption[] = [];\n\n if (typeof this._optionsFactory === 'function') {\n this._loadOptionsAsync();\n this._options = [];\n } else {\n if (!this._options || !this._options.length) {\n return;\n }\n options = this._options as IMenuOption[];\n }\n\n if (!this._persistSelection) {\n options.forEach(o => o.selected = false);\n }\n\n this._mapIconToLeadingIcon();\n\n const selectedValues = this._persistSelection ? this._getSelectedValues() : [];\n\n const config: IListDropdownConfig = {\n id: this._identifier,\n type: ListDropdownType.Menu,\n options: this._options,\n selectedValues,\n iconClass: this._iconClass,\n dense: this._dense,\n multiple: false,\n popupStatic: true,\n allowBusy: true,\n asyncStyle: ListDropdownAsyncStyle.Spinner,\n optionBuilder: this._optionBuilder,\n optionLimit: this._optionLimit,\n headerBuilder: this._popupHeaderBuilder,\n footerBuilder: this._popupFooterBuilder,\n observeScroll: this._observeScroll,\n observeScrollThreshold: this._observeScrollThreshold,\n popupPlacement: this._placement,\n popupFallbackPlacements: this._fallbackPlacements,\n activeStartIndex: fromKeyboard ? 0 : undefined,\n popupClasses: [\n MENU_CONSTANTS.classes.POPUP,\n MENU_CONSTANTS.classes.MENU,\n ...this._popupClasses as string[]\n ],\n syncWidth: this._syncPopupWidth,\n activeChangeCallback: this._activeChangeListener,\n selectCallback: this._selectListener,\n popupOffset: this._popupOffset,\n cascadingElementFactory: params => this._createCascadingElement(params)\n };\n\n this._adapter.setHostAttribute(MENU_CONSTANTS.attributes.OPEN, '');\n this._adapter.attachMenu(config);\n\n // If this menu is in a hover mode, we need to listen for mouse enter/leave events to know when the user is hovering over the popup\n if (this._mode === 'cascade') {\n this._adapter.addDropdownListener('mouseenter', this._childPopupMouseEnterListener);\n this._adapter.addDropdownListener('mouseleave', this._childPopupMouseLeaveListener);\n }\n \n this._adapter.addDropdownListener(MENU_CONSTANTS.events.ACTIVE_CHANGE, (evt: CustomEvent<IMenuActiveChangeEventData>) => {\n this._onActiveOptionChanged(evt.detail.id);\n });\n this._adapter.emitHostEvent(MENU_CONSTANTS.events.OPEN);\n }\n\n private _closeMenu(): void {\n this._open = false;\n this._childOpen = false;\n this._adapter.detachMenu();\n\n if (this._activeMouseLeaveTimeout !== undefined) {\n window.clearTimeout(this._activeMouseLeaveTimeout);\n }\n\n this._adapter.removeHostAttribute(MENU_CONSTANTS.attributes.OPEN);\n this._adapter.emitHostEvent(MENU_CONSTANTS.events.CLOSE);\n }\n\n private _loadOptionsAsync(): Promise<void> {\n if (!this._optionsFactory) {\n if (this._open) {\n this._closeMenu();\n }\n return Promise.resolve();\n }\n\n return Promise.resolve(this._optionsFactory())\n .then(results => {\n if (!this._persistSelection) {\n results.forEach(o => o.selected = false);\n }\n\n if (this._open) {\n if (results && isArray(results) && results.length) {\n this._options = results;\n this._adapter.setOptions(results);\n const selectedValues = this._getSelectedValues();\n if (selectedValues.length) {\n this._adapter.setSelectedValues(selectedValues);\n }\n } else if (this._open) {\n this._closeDropdown();\n }\n }\n })\n .catch(e => {\n console.error('An unexpected error ocurred while opening the menu:', e);\n if (this._open) {\n this._closeDropdown();\n }\n });\n }\n\n private _handleSelectEvent(value: any): void {\n const index = this._nonDividerOptions.findIndex(o => o.value === value);\n if (index < 0) {\n return;\n }\n this._selectOptionByIndex(index);\n }\n\n private _selectActiveOption(): void {\n const index = this._adapter.getActiveOptionIndex();\n if (index >= 0 && this._nonDividerOptions[index]) {\n this._selectOptionByIndex(index);\n }\n }\n\n private _selectOptionByIndex(index: number): void {\n const { options, value } = this._nonDividerOptions[index];\n\n // We ignore selections if the option has child options\n if (options) {\n this._adapter.setActiveOption(index);\n return;\n }\n\n this._closeDropdown();\n \n const data: IMenuSelectEventData = { index, value };\n const isCancelled = !this._adapter.emitHostEvent(MENU_CONSTANTS.events.SELECT, data, true, true);\n if (!isCancelled) {\n this._selectedValue = this._persistSelection ? value : undefined;\n }\n }\n\n private _getSelectedValues(): any[] {\n const values = this._flatOptions.filter(o => o.selected).map(o => o.value);\n if (this._selectedValue !== undefined) {\n values.push(this._selectedValue);\n }\n return values;\n }\n\n /** Called when a child menu option is selected. */\n protected _onCascadingOptionSelected(data: IMenuSelectEventData): void {\n if (this._persistSelection) {\n this._selectedValue = data.value;\n }\n this._adapter.emitHostEvent(MENU_CONSTANTS.events.SELECT, data);\n this._closeDropdown();\n }\n\n /** Called when a child menu is opened off of one of our menu options. */\n protected _onCascadingChildOpen(index: number): void {\n super._clearMouseLeaveTimeout();\n this._adapter.closeOtherChildMenus(index);\n this._childOpen = true;\n this._adapter.setActiveOption(index);\n }\n\n /** Called when a child menu is closed off of one of our menu options. */\n protected _onCascadingChildClose(index: number): void {\n this._childOpen = false;\n }\n\n protected _closeDropdown(): void {\n this._closeMenu();\n }\n\n protected _openDropdown({ fromKeyboard }: { fromKeyboard?: boolean } = {}): void {\n this._openMenu({ fromKeyboard });\n }\n\n protected _setCascadeTargetInactive(): void {\n this._adapter.setCascadeTargetInactive();\n }\n\n protected _isOwnElement(element: Element): boolean {\n return this._adapter.isOwnElement(element);\n }\n\n private _createCascadingElement({ index, options, parentValue }: IListDropdownCascadingElementFactoryConfig): HTMLElement {\n const menu = this._adapter.createChildMenu(\n index,\n parentValue,\n this._onCascadingChildOpen.bind(this),\n this._onCascadingChildClose.bind(this),\n this._onCascadingOptionSelected.bind(this)\n );\n menu.mode = 'cascade';\n menu.popupOffset = { x: 0, y: -8 };\n menu.dense = this._dense;\n menu.placement = 'right-start';\n menu.fallbackPlacements = ['left-start', 'right-start']; // Cascading menus should only fallback to left or right placement if needed\n menu.persistSelection = this._persistSelection;\n if (this._persistSelection) {\n menu.selectedValue = this._selectedValue;\n }\n menu.options = options;\n menu.optionBuilder = this._optionBuilder;\n menu.iconClass = this._iconClass;\n\n return menu;\n }\n\n private _mapIconToLeadingIcon(): void {\n // For backwards compatibility with old API, map the old \"icon\" property to the new \"leadingIcon\" property (if exists)\n this._flatOptions.filter(o => o.icon).forEach(o => o.leadingIcon = o.icon);\n }\n\n public get open(): boolean {\n return this._open;\n }\n public set open(value: boolean) {\n value = Boolean(value);\n if (this._open !== value) {\n this._open = value;\n if (value) {\n this._openDropdown();\n } else {\n this._closeDropdown();\n }\n }\n }\n\n public set options(options: IMenuOption[]) {\n if (typeof options === 'function') {\n this.optionsFactory = options;\n } else {\n this.optionsFactory = undefined;\n // Intentional shallow copy of member properties. These member objects have properties that are references to functions.\n // The typical JSON.parse(JSON.stringify(object)) will not work here. If this becomes an issue we'll add a deepClone\n // function to the core library.\n this._options = options.map(o => ({ ...o }));\n \n if (this._open) {\n this._mapIconToLeadingIcon();\n this._adapter.setOptions(this._options as IMenuOption[]);\n if (this._persistSelection) {\n const selectedValues = this._getSelectedValues();\n if (selectedValues.length) {\n this._adapter.setSelectedValues(selectedValues);\n }\n }\n }\n }\n }\n public get options(): IMenuOption[] {\n if (!this._options) {\n return [];\n }\n\n // Intentional shallow copy of member properties. These member objects have properties that are references to functions.\n // The typical JSON.parse(JSON.stringify(object)) will not work here. If this becomes an issue we'll add a deepClone\n // function to the core library.\n return this._flatOptions.map(o => ({ ...o }));\n }\n\n public set optionsFactory(factory: MenuOptionFactory | undefined) {\n this._optionsFactory = factory;\n }\n\n public set selectedIndex(value: number) {\n const option = this._nonDividerOptions[value];\n if (option && option.value !== this._selectedValue) {\n this.selectedValue = option.value;\n }\n }\n public get selectedIndex(): number {\n return this._selectedValue !== undefined ? this._nonDividerOptions.findIndex(o => o.value === this._selectedValue) : -1;\n }\n\n public set selectedValue(value: any) {\n if (this._selectedValue !== value) {\n this._selectedValue = value;\n this._adapter.setSelectedValues(this._selectedValue);\n }\n }\n public get selectedValue(): any {\n return this._selectedValue;\n }\n\n public get placement(): PopupPlacement {\n return this._placement;\n }\n public set placement(value: PopupPlacement) {\n if (this._placement !== value) {\n this._placement = value || 'bottom-start';\n this._adapter.setHostAttribute(MENU_CONSTANTS.attributes.PLACEMENT, this._placement);\n }\n }\n\n public get fallbackPlacements(): PopupPlacement[] {\n return this._fallbackPlacements;\n }\n public set fallbackPlacements(value: PopupPlacement[]) {\n this._fallbackPlacements = Array.isArray(value) ? value : [];\n }\n\n public get dense(): boolean {\n return this._dense;\n }\n public set dense(value: boolean) {\n this._dense = value;\n }\n\n public get iconClass(): string {\n return this._iconClass;\n }\n public set iconClass(value: string) {\n this._iconClass = value;\n }\n\n public get persistSelection(): boolean {\n return this._persistSelection;\n }\n public set persistSelection(value: boolean) {\n if (this._persistSelection === value) {\n return;\n }\n\n this._persistSelection = value;\n this._adapter.toggleHostAttribute(MENU_CONSTANTS.attributes.PERSIST_SELECTION, this._persistSelection);\n\n if (!this._persistSelection) {\n this._flatOptions.forEach(o => o.selected = false);\n this._selectedValue = undefined;\n }\n }\n\n public get mode(): MenuMode {\n return this._mode;\n }\n public set mode(value: MenuMode) {\n if (this._mode !== value) {\n this._mode = value;\n this._destroyInteractionListeners();\n this._applyMode();\n this._adapter.setHostAttribute(MENU_CONSTANTS.attributes.MODE, this._mode);\n }\n }\n\n public get popupOffset(): IPopupPosition {\n return this._popupOffset;\n }\n public set popupOffset(value: IPopupPosition) {\n this._popupOffset = value;\n }\n\n public get optionBuilder(): MenuOptionBuilder | undefined {\n return this._optionBuilder;\n }\n public set optionBuilder(cb: MenuOptionBuilder | undefined) {\n this._optionBuilder = cb;\n }\n\n public get popupElement(): HTMLElement | null {\n return this._adapter.getDropdownElement();\n }\n}\n", "import { attachShadowTemplate, coerceBoolean, CustomElement, ensureChild, FoundationProperty, isDefined } from '@tylertech/forge-core';\nimport { tylIconArrowRight } from '@tylertech/tyler-icons/standard';\nimport { CircularProgressComponent } from '../circular-progress';\nimport { IconRegistry } from '../icon';\nimport { LinearProgressComponent } from '../linear-progress';\nimport { ListComponent } from '../list';\nimport { IListDropdownAware, ListDropdownAware } from '../list-dropdown/list-dropdown-aware';\nimport { IPopupPosition, PopupComponent, PopupPlacement } from '../popup';\nimport { MenuAdapter } from './menu-adapter';\nimport { IMenuActiveChangeEventData, IMenuOption, IMenuOptionGroup, IMenuSelectEventData, MenuMode, MenuOptionBuilder, MenuOptionFactory, MENU_CONSTANTS } from './menu-constants';\nimport { MenuFoundation } from './menu-foundation';\nconst template = '<template><slot></slot></template>';\nconst styles = ':host{display:inline-block}:host([hidden]){display:none}';\n\nexport interface IMenuComponent extends IListDropdownAware {\n open: boolean;\n options: Array<IMenuOption | IMenuOptionGroup> | MenuOptionFactory;\n selectedIndex: number;\n selectedValue: number;\n placement: PopupPlacement;\n fallbackPlacements: PopupPlacement[];\n dense: boolean;\n iconClass: string;\n persistSelection: boolean;\n mode: MenuMode;\n popupOffset: IPopupPosition;\n optionBuilder: MenuOptionBuilder | undefined;\n popupElement: HTMLElement | undefined;\n propagateKeyEvent(evt: KeyboardEvent): void;\n activateFirstOption(): void;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'forge-menu': IMenuComponent;\n }\n\n interface HTMLElementEventMap {\n 'forge-menu-select': CustomEvent<IMenuSelectEventData>;\n 'forge-menu-open': CustomEvent<void>;\n 'forge-menu-close': CustomEvent<void>;\n 'forge-menu-active-change': CustomEvent<IMenuActiveChangeEventData>;\n }\n}\n\n/**\n * The web component class behind the `<forge-menu>` custom element.\n * \n * @tag forge-menu\n */\n@CustomElement({\n name: MENU_CONSTANTS.elementName,\n dependencies: [\n PopupComponent,\n ListComponent,\n CircularProgressComponent,\n LinearProgressComponent\n ]\n})\nexport class MenuComponent extends ListDropdownAware implements IMenuComponent {\n public static get observedAttributes(): string[] {\n return [\n MENU_CONSTANTS.attributes.OPEN,\n MENU_CONSTANTS.attributes.PLACEMENT,\n MENU_CONSTANTS.attributes.SELECTED_INDEX,\n MENU_CONSTANTS.attributes.SELECTED_VALUE,\n MENU_CONSTANTS.attributes.DENSE,\n MENU_CONSTANTS.attributes.ICON_CLASS,\n MENU_CONSTANTS.attributes.PERSIST_SELECTION,\n MENU_CONSTANTS.attributes.MODE,\n MENU_CONSTANTS.attributes.SYNC_POPUP_WIDTH,\n MENU_CONSTANTS.attributes.POPUP_CLASSES,\n MENU_CONSTANTS.attributes.OPTION_LIMIT,\n MENU_CONSTANTS.attributes.OBSERVE_SCROLL,\n MENU_CONSTANTS.attributes.OBSERVE_SCROLL_THRESHOLD\n ];\n }\n\n private _foundation: MenuFoundation;\n\n constructor() {\n super();\n IconRegistry.define(tylIconArrowRight);\n this._foundation = new MenuFoundation(new MenuAdapter(this));\n attachShadowTemplate(this, template, styles);\n }\n\n public connectedCallback(): void {\n if (this.querySelector(MENU_CONSTANTS.selectors.TOGGLE)) {\n this._foundation.initialize();\n } else {\n ensureChild(this, MENU_CONSTANTS.selectors.TOGGLE).then(() => this._foundation.initialize());\n }\n }\n\n public attributeChangedCallback(name: string, oldValue: string, newValue: string): void {\n super.attributeChangedCallback(name, oldValue, newValue);\n switch (name) {\n case MENU_CONSTANTS.attributes.OPEN:\n this._foundation.open = isDefined(newValue);\n break;\n case MENU_CONSTANTS.attributes.PLACEMENT:\n this._foundation.placement = newValue as PopupPlacement;\n break;\n case MENU_CONSTANTS.attributes.SELECTED_INDEX:\n this._foundation.selectedIndex = Number(newValue);\n break;\n case MENU_CONSTANTS.attributes.SELECTED_VALUE:\n this._foundation.selectedValue = newValue;\n break;\n case MENU_CONSTANTS.attributes.DENSE:\n this._foundation.dense = coerceBoolean(newValue);\n break;\n case MENU_CONSTANTS.attributes.ICON_CLASS:\n this._foundation.iconClass = newValue;\n break;\n case MENU_CONSTANTS.attributes.PERSIST_SELECTION:\n this.persistSelection = coerceBoolean(newValue);\n break;\n case MENU_CONSTANTS.attributes.MODE:\n this.mode = newValue as MenuMode;\n break;\n }\n }\n\n public disconnectedCallback(): void {\n this._foundation.disconnect();\n }\n\n /** Gets/sets the open state. */\n @FoundationProperty()\n public declare open: boolean;\n\n /** Gets/sets the array of options to display in the menu. */\n @FoundationProperty()\n public declare options: Array<IMenuOption | IMenuOptionGroup> | MenuOptionFactory;\n\n /** Gets/sets the selected option to the index. Does not support cascading menus. */\n @FoundationProperty()\n public declare selectedIndex: number;\n\n /** Gets/sets the value of the option to select. */\n @FoundationProperty()\n public declare selectedValue: any;\n\n /** Gets/sets the menu placement (default is bottom-left). */\n @FoundationProperty()\n public declare placement: `${PopupPlacement}`;\n\n /** Gets/sets the fallback menu placement for overriding the default of any side. */\n @FoundationProperty()\n public declare fallbackPlacements: `${PopupPlacement}`[];\n\n /** Gets/sets dense state of the list options used in the menu popup. */\n @FoundationProperty()\n public declare dense: boolean;\n\n /** Gets/sets the class name to use for option icons. */\n @FoundationProperty()\n public declare iconClass: string;\n\n /**\n * Gets/sets whether selection of menu items is persisted.\n * @deprecated Please use `<forge-select-dropdown>` for handling selection states.\n */\n @FoundationProperty()\n public declare persistSelection: boolean;\n\n /** Gets/sets the mode that this menu is using. */\n @FoundationProperty()\n public declare mode: MenuMode;\n\n /** Sets the position adjustment on the internal popup element. */\n @FoundationProperty()\n public declare popupOffset: IPopupPosition;\n\n /** Sets the callback that will be executed for each option in the dropdown for producing custom option templates. */\n @FoundationProperty()\n public declare optionBuilder: MenuOptionBuilder;\n\n /** Gets the currently active popup element when the dropdown is open. */\n @FoundationProperty({ set: false })\n public declare popupElement: HTMLElement | undefined;\n\n /** Force propagates the key event from another element this component. */\n public propagateKeyEvent(evt: KeyboardEvent): void {\n this._foundation.onKeydown(evt);\n }\n\n public activateFirstOption(): void {\n this._foundation.activateFirstOption();\n }\n}\n", "import { defineCustomElement } from '@tylertech/forge-core';\n\nimport { MenuComponent } from './menu';\n\nexport * from './menu-adapter';\nexport * from './menu-constants';\nexport * from './menu-foundation';\nexport * from './menu';\n\nexport function defineMenuComponent(): void {\n defineCustomElement(MenuComponent);\n}\n"],
5
- "mappings": "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",
6
- "names": []
5
+ "mappings": "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",
6
+ "names": ["elementName", "COMPONENT_NAME_PREFIX", "classes", "selectors", "attributes", "events", "numbers", "MENU_CONSTANTS", "MenuAdapter", "BaseAdapter", "component", "_a", "_b", "MENU_CONSTANTS", "id", "event", "callback", "bubbles", "config", "ListDropdown", "options", "index", "listItem", "type", "listener", "el", "key", "evt", "openMenu", "open", "childMenu", "parentValue", "openCb", "closeCb", "selectCb", "menu", "__spreadProps", "__spreadValues", "excludeIndex", "menusToRemove", "values", "list", "popup", "LIST_CONSTANTS", "listElement", "LIST_ITEM_CONSTANTS", "MenuFoundation", "CascadingListDropdownAwareFoundation", "_adapter", "MENU_CONSTANTS", "ICON_CLASS_NAME", "randomChars", "evt", "value", "id", "o", "isListDropdownOptionType", "previousValue", "currentValue", "data", "canSetActiveDescendant", "activeIndex", "activeOption", "hoveredIndex", "hoveredOption", "fromKeyboard", "options", "selectedValues", "config", "params", "results", "isArray", "index", "values", "element", "parentValue", "menu", "__spreadValues", "factory", "option", "cb", "template", "styles", "MenuComponent", "ListDropdownAware", "IconRegistry", "tylIconArrowRight", "MenuFoundation", "MenuAdapter", "attachShadowTemplate", "MENU_CONSTANTS", "ensureChild", "name", "oldValue", "newValue", "isDefined", "coerceBoolean", "evt", "__decorateClass", "FoundationProperty", "CustomElement", "PopupComponent", "ListComponent", "CircularProgressComponent", "LinearProgressComponent", "defineMenuComponent", "defineCustomElement", "MenuComponent"]
7
7
  }
@@ -11,4 +11,4 @@ var t=typeof Intl!="undefined"&&Intl.v8BreakIterator,e=class{static get isBrowse
11
11
  * Use of this source code is governed by an MIT-style license that can be
12
12
  * found in the LICENSE file at https://angular.io/license
13
13
  */
14
- //# sourceMappingURL=chunk.D4SNVKDA.js.map
14
+ //# sourceMappingURL=chunk.YI4JTY4T.js.map
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../node_modules/@tylertech/forge-core/esm/utils/platform.js"],
4
4
  "sourcesContent": ["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n// Whether the current platform supports the V8 Break Iterator. The V8 check\n// is necessary to detect all Blink based browsers.\nconst hasV8BreakIterator = typeof Intl !== 'undefined' && Intl.v8BreakIterator;\n/**\n * Class used to detect the current platform by comparing the userAgent strings and\n * checking browser-specific global properties.\n * @docs-private\n */\nexport class Platform {\n static get isBrowser() {\n return typeof document === 'object' && !!document;\n }\n static get isMobile() {\n return Platform.isBrowser && /Mobi/.test(navigator.userAgent);\n }\n /** Layout Engines */\n static get EDGE() {\n return Platform.isBrowser && /(edge)/i.test(navigator.userAgent);\n }\n static get TRIDENT() {\n return Platform.isBrowser && /(msie|trident)/i.test(navigator.userAgent);\n }\n // EdgeHTML and Trident mock Blink specific things and need to be excluded from this check.\n static get BLINK() {\n return Platform.isBrowser && (!!(window.chrome || hasV8BreakIterator) && !!CSS && !Platform.EDGE && !Platform.TRIDENT);\n }\n // Webkit is part of the userAgent in EdgeHTML, Blink and Trident. Therefore we need to\n // ensure that Webkit runs standalone and is not used as another engine's base.\n static get WEBKIT() {\n return Platform.isBrowser && /AppleWebKit/i.test(navigator.userAgent) && !Platform.BLINK && !Platform.EDGE && !Platform.TRIDENT;\n }\n /** Browsers and Platform Types */\n static get IOS() {\n return Platform.isBrowser && /iPad|iPhone|iPod/.test(navigator.userAgent) && !window.MSStream;\n }\n // It's difficult to detect the plain Gecko engine, because most of the browsers identify\n // them self as Gecko-like browsers and modify the userAgent's according to that.\n // Since we only cover one explicit Firefox case, we can simply check for Firefox\n // instead of having an unstable check for Gecko.\n static get FIREFOX() {\n return Platform.isBrowser && /(firefox|minefield)/i.test(navigator.userAgent);\n }\n // Trident on mobile adds the android platform to the userAgent to trick detections.\n static get ANDROID() {\n return Platform.isBrowser && /android/i.test(navigator.userAgent) && !Platform.TRIDENT;\n }\n // Safari browsers will include the Safari keyword in their userAgent. Some browsers may fake\n // this and just place the Safari keyword in the userAgent. To be more safe about Safari every\n // Safari browser should also use Webkit as its layout engine.\n SAFARI() {\n return Platform.isBrowser && /safari/i.test(navigator.userAgent) && Platform.WEBKIT;\n }\n}\n"],
5
- "mappings": "AAAA,AASA,GAAM,GAAqB,MAAO,OAAS,aAAe,KAAK,gBAMlD,EAAN,KAAe,CAClB,UAAW,YAAY,CACnB,MAAO,OAAO,WAAa,UAAY,CAAC,CAAC,QAC7C,CACA,UAAW,WAAW,CAClB,MAAO,GAAS,WAAa,OAAO,KAAK,UAAU,SAAS,CAChE,CAEA,UAAW,OAAO,CACd,MAAO,GAAS,WAAa,UAAU,KAAK,UAAU,SAAS,CACnE,CACA,UAAW,UAAU,CACjB,MAAO,GAAS,WAAa,kBAAkB,KAAK,UAAU,SAAS,CAC3E,CAEA,UAAW,QAAQ,CACf,MAAO,GAAS,WAAc,CAAC,CAAE,QAAO,QAAU,IAAuB,CAAC,CAAC,KAAO,CAAC,EAAS,MAAQ,CAAC,EAAS,OAClH,CAGA,UAAW,SAAS,CAChB,MAAO,GAAS,WAAa,eAAe,KAAK,UAAU,SAAS,GAAK,CAAC,EAAS,OAAS,CAAC,EAAS,MAAQ,CAAC,EAAS,OAC5H,CAEA,UAAW,MAAM,CACb,MAAO,GAAS,WAAa,mBAAmB,KAAK,UAAU,SAAS,GAAK,CAAC,OAAO,QACzF,CAKA,UAAW,UAAU,CACjB,MAAO,GAAS,WAAa,uBAAuB,KAAK,UAAU,SAAS,CAChF,CAEA,UAAW,UAAU,CACjB,MAAO,GAAS,WAAa,WAAW,KAAK,UAAU,SAAS,GAAK,CAAC,EAAS,OACnF,CAIA,QAAS,CACL,MAAO,GAAS,WAAa,UAAU,KAAK,UAAU,SAAS,GAAK,EAAS,MACjF,CACJ",
6
- "names": []
5
+ "mappings": "AASA,IAAMA,EAAqB,OAAO,MAAS,aAAe,KAAK,gBAMlDC,EAAN,KAAe,CAClB,WAAW,WAAY,CACnB,OAAO,OAAO,UAAa,UAAY,CAAC,CAAC,QAC7C,CACA,WAAW,UAAW,CAClB,OAAOA,EAAS,WAAa,OAAO,KAAK,UAAU,SAAS,CAChE,CAEA,WAAW,MAAO,CACd,OAAOA,EAAS,WAAa,UAAU,KAAK,UAAU,SAAS,CACnE,CACA,WAAW,SAAU,CACjB,OAAOA,EAAS,WAAa,kBAAkB,KAAK,UAAU,SAAS,CAC3E,CAEA,WAAW,OAAQ,CACf,OAAOA,EAAS,WAAc,CAAC,EAAE,OAAO,QAAUD,IAAuB,CAAC,CAAC,KAAO,CAACC,EAAS,MAAQ,CAACA,EAAS,OAClH,CAGA,WAAW,QAAS,CAChB,OAAOA,EAAS,WAAa,eAAe,KAAK,UAAU,SAAS,GAAK,CAACA,EAAS,OAAS,CAACA,EAAS,MAAQ,CAACA,EAAS,OAC5H,CAEA,WAAW,KAAM,CACb,OAAOA,EAAS,WAAa,mBAAmB,KAAK,UAAU,SAAS,GAAK,CAAC,OAAO,QACzF,CAKA,WAAW,SAAU,CACjB,OAAOA,EAAS,WAAa,uBAAuB,KAAK,UAAU,SAAS,CAChF,CAEA,WAAW,SAAU,CACjB,OAAOA,EAAS,WAAa,WAAW,KAAK,UAAU,SAAS,GAAK,CAACA,EAAS,OACnF,CAIA,QAAS,CACL,OAAOA,EAAS,WAAa,UAAU,KAAK,UAAU,SAAS,GAAKA,EAAS,MACjF,CACJ",
6
+ "names": ["hasV8BreakIterator", "Platform"]
7
7
  }
@@ -4,4 +4,4 @@
4
4
  * License: Apache-2.0
5
5
  */
6
6
  var e=class{constructor(t){t&&(this.from=t.from?new Date(t.from):void 0,this.to=t.to?new Date(t.to):void 0)}copy(){return new e(this)}};export{e as a};
7
- //# sourceMappingURL=chunk.E43TT4RI.js.map
7
+ //# sourceMappingURL=chunk.YPZNIYQL.js.map
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../src/calendar/core/date-range.ts"],
4
4
  "sourcesContent": ["export interface IDateRange {\n from?: Date;\n to?: Date;\n}\n\nexport class DateRange implements IDateRange {\n public from?: Date;\n public to?: Date;\n\n constructor(range?: IDateRange | null) {\n if (range) {\n this.from = range.from ? new Date(range.from) : undefined;\n this.to = range.to ? new Date(range.to) : undefined;\n }\n }\n\n public copy(): DateRange {\n return new DateRange(this);\n }\n}\n"],
5
- "mappings": "AAKO,GAAM,GAAN,KAAsC,CAI3C,YAAY,EAA2B,CACrC,AAAI,GACF,MAAK,KAAO,EAAM,KAAO,GAAI,MAAK,EAAM,IAAI,EAAI,OAChD,KAAK,GAAK,EAAM,GAAK,GAAI,MAAK,EAAM,EAAE,EAAI,OAE9C,CAEA,AAAO,MAAkB,CACvB,MAAO,IAAI,GAAU,IAAI,CAC3B,CACF",
6
- "names": []
5
+ "mappings": "AAKO,IAAMA,EAAN,KAAsC,CAI3C,YAAYC,EAA2B,CACjCA,IACF,KAAK,KAAOA,EAAM,KAAO,IAAI,KAAKA,EAAM,IAAI,EAAI,OAChD,KAAK,GAAKA,EAAM,GAAK,IAAI,KAAKA,EAAM,EAAE,EAAI,OAE9C,CAEO,MAAkB,CACvB,OAAO,IAAID,EAAU,IAAI,CAC3B,CACF",
6
+ "names": ["DateRange", "range"]
7
7
  }