@tylertech/forge 3.0.0-next.15 → 3.0.0-next.16

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 (755) hide show
  1. package/custom-elements.json +47415 -39475
  2. package/dist/esm/accordion/index.js +1 -1
  3. package/dist/esm/app-bar/app-bar/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-area/index.js +1 -1
  19. package/dist/esm/button-toggle/button-toggle/index.js +1 -1
  20. package/dist/esm/button-toggle/button-toggle-group/index.js +1 -1
  21. package/dist/esm/button-toggle/index.js +1 -1
  22. package/dist/esm/calendar/calendar-dropdown/index.js +1 -1
  23. package/dist/esm/calendar/calendar-menu/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.24NQGTNU.js +7 -0
  32. package/dist/esm/chunks/chunk.24NQGTNU.js.map +7 -0
  33. package/dist/esm/chunks/chunk.2JCTFKCR.js +7 -0
  34. package/dist/esm/chunks/{chunk.Q54DACHS.js.map → chunk.2JCTFKCR.js.map} +1 -1
  35. package/dist/esm/chunks/chunk.2OZ2HVBZ.js +7 -0
  36. package/dist/esm/chunks/{chunk.PMSCH6VK.js.map → chunk.2OZ2HVBZ.js.map} +3 -3
  37. package/dist/esm/chunks/chunk.2YE556AM.js +7 -0
  38. package/dist/esm/chunks/{chunk.5KYKGNGY.js.map → chunk.2YE556AM.js.map} +1 -1
  39. package/dist/esm/chunks/chunk.3U6A353B.js +7 -0
  40. package/dist/esm/chunks/{chunk.ZT7U7WOX.js.map → chunk.3U6A353B.js.map} +1 -1
  41. package/dist/esm/chunks/chunk.3VHQPHQP.js +7 -0
  42. package/dist/esm/chunks/chunk.3VHQPHQP.js.map +7 -0
  43. package/dist/esm/chunks/chunk.436USWLL.js +7 -0
  44. package/dist/esm/chunks/{chunk.4JDJ33IU.js.map → chunk.436USWLL.js.map} +1 -1
  45. package/dist/esm/chunks/chunk.4GMGQZOW.js +7 -0
  46. package/dist/esm/chunks/{chunk.6FUXTHO6.js.map → chunk.4GMGQZOW.js.map} +1 -1
  47. package/dist/esm/chunks/chunk.4JB3SESQ.js +7 -0
  48. package/dist/esm/chunks/{chunk.AIPDMLJD.js.map → chunk.4JB3SESQ.js.map} +1 -1
  49. package/dist/esm/chunks/chunk.4JL5LW5J.js +7 -0
  50. package/dist/esm/chunks/{chunk.BS73Y6IN.js.map → chunk.4JL5LW5J.js.map} +1 -1
  51. package/dist/esm/chunks/chunk.4O6OEUGY.js +7 -0
  52. package/dist/esm/chunks/{chunk.4XN2WGMP.js.map → chunk.4O6OEUGY.js.map} +2 -2
  53. package/dist/esm/chunks/chunk.4OG3OGVO.js +7 -0
  54. package/dist/esm/chunks/chunk.4OG3OGVO.js.map +7 -0
  55. package/dist/esm/chunks/chunk.4QOXI2GM.js +7 -0
  56. package/dist/esm/chunks/chunk.4QOXI2GM.js.map +7 -0
  57. package/dist/esm/chunks/{chunk.MTSWCXTY.js → chunk.55D2BMXX.js} +2 -2
  58. package/dist/esm/chunks/chunk.5LCWC3A7.js +7 -0
  59. package/dist/esm/chunks/{chunk.VG452D3L.js.map → chunk.5LCWC3A7.js.map} +1 -1
  60. package/dist/esm/chunks/chunk.5T7TT3AB.js +7 -0
  61. package/dist/esm/chunks/{chunk.YMSX4F3J.js.map → chunk.5T7TT3AB.js.map} +1 -1
  62. package/dist/esm/chunks/{chunk.JHELTQKA.js → chunk.5WVOPPBY.js} +2 -2
  63. package/dist/esm/chunks/{chunk.JHELTQKA.js.map → chunk.5WVOPPBY.js.map} +2 -2
  64. package/dist/esm/chunks/chunk.5XLCY232.js +7 -0
  65. package/dist/esm/chunks/chunk.5XLCY232.js.map +7 -0
  66. package/dist/esm/chunks/chunk.65WE722H.js +7 -0
  67. package/dist/esm/chunks/chunk.65WE722H.js.map +7 -0
  68. package/dist/esm/chunks/chunk.6IPX5C4B.js +7 -0
  69. package/dist/esm/chunks/chunk.6IPX5C4B.js.map +7 -0
  70. package/dist/esm/chunks/chunk.6PB5OWMP.js +7 -0
  71. package/dist/esm/chunks/{chunk.ONII3BV3.js.map → chunk.6PB5OWMP.js.map} +2 -2
  72. package/dist/esm/chunks/chunk.74HZVSDM.js +7 -0
  73. package/dist/esm/chunks/chunk.74HZVSDM.js.map +7 -0
  74. package/dist/esm/chunks/chunk.74JHE77R.js +7 -0
  75. package/dist/esm/chunks/{chunk.Y4ZS3A6F.js.map → chunk.74JHE77R.js.map} +2 -2
  76. package/dist/esm/chunks/chunk.7SYU6KRU.js +15 -0
  77. package/dist/esm/chunks/chunk.7SYU6KRU.js.map +7 -0
  78. package/dist/esm/chunks/{chunk.BC7WB5RG.js → chunk.B53Q676I.js} +2 -2
  79. package/dist/esm/chunks/chunk.BKQSLDMK.js +7 -0
  80. package/dist/esm/chunks/{chunk.NVR6KN2B.js.map → chunk.BKQSLDMK.js.map} +1 -1
  81. package/dist/esm/chunks/chunk.BZG47SA5.js +7 -0
  82. package/dist/esm/chunks/{chunk.THNCYT3E.js.map → chunk.BZG47SA5.js.map} +2 -2
  83. package/dist/esm/chunks/chunk.BZVLSWZR.js +7 -0
  84. package/dist/esm/chunks/{chunk.4IMRT2B3.js.map → chunk.BZVLSWZR.js.map} +1 -1
  85. package/dist/esm/chunks/chunk.C72LM2AL.js +7 -0
  86. package/dist/esm/chunks/chunk.C72LM2AL.js.map +7 -0
  87. package/dist/esm/chunks/chunk.DGG5ABL3.js +7 -0
  88. package/dist/esm/chunks/{chunk.WARVAVAW.js.map → chunk.DGG5ABL3.js.map} +1 -1
  89. package/dist/esm/chunks/chunk.DPIWAXEW.js +7 -0
  90. package/dist/esm/chunks/{chunk.UOEJCU6R.js.map → chunk.DPIWAXEW.js.map} +1 -1
  91. package/dist/esm/chunks/chunk.E62ZPQSM.js +7 -0
  92. package/dist/esm/chunks/chunk.E62ZPQSM.js.map +7 -0
  93. package/dist/esm/chunks/chunk.ECJBVX3D.js +7 -0
  94. package/dist/esm/chunks/{chunk.DLBAZD5X.js.map → chunk.ECJBVX3D.js.map} +1 -1
  95. package/dist/esm/chunks/chunk.EN2HVFJ4.js +7 -0
  96. package/dist/esm/chunks/chunk.EN2HVFJ4.js.map +7 -0
  97. package/dist/esm/chunks/chunk.EPRRK33O.js +7 -0
  98. package/dist/esm/chunks/chunk.EPRRK33O.js.map +7 -0
  99. package/dist/esm/chunks/chunk.ETDUW5K2.js +7 -0
  100. package/dist/esm/chunks/{chunk.FSILMO6U.js.map → chunk.ETDUW5K2.js.map} +1 -1
  101. package/dist/esm/chunks/chunk.EWFNM4WO.js +7 -0
  102. package/dist/esm/chunks/chunk.EWFNM4WO.js.map +7 -0
  103. package/dist/esm/chunks/{chunk.U7S4DJTU.js → chunk.FGHSNC2V.js} +2 -2
  104. package/dist/esm/chunks/chunk.FPRBYGET.js +7 -0
  105. package/dist/esm/chunks/{chunk.LK6QHLW2.js.map → chunk.FPRBYGET.js.map} +1 -1
  106. package/dist/esm/chunks/chunk.FQVR2QNF.js +7 -0
  107. package/dist/esm/chunks/{chunk.X3QZY7V4.js.map → chunk.FQVR2QNF.js.map} +1 -1
  108. package/dist/esm/chunks/chunk.FWWBFNQA.js +7 -0
  109. package/dist/esm/chunks/{chunk.O6F4U4VY.js.map → chunk.FWWBFNQA.js.map} +1 -1
  110. package/dist/esm/chunks/{chunk.URKQICJD.js → chunk.FZELFLPE.js} +2 -2
  111. package/dist/esm/chunks/chunk.FZZUNYH5.js +7 -0
  112. package/dist/esm/chunks/{chunk.5QZPUOGG.js.map → chunk.FZZUNYH5.js.map} +1 -1
  113. package/dist/esm/chunks/chunk.GHMAI3SM.js +15 -0
  114. package/dist/esm/chunks/chunk.GHMAI3SM.js.map +7 -0
  115. package/dist/esm/chunks/{chunk.5EGEZ4IY.js → chunk.GLUKTMQU.js} +2 -2
  116. package/dist/esm/chunks/chunk.GTBCTNMI.js +7 -0
  117. package/dist/esm/chunks/{chunk.ICIGXLJW.js.map → chunk.GTBCTNMI.js.map} +1 -1
  118. package/dist/esm/chunks/chunk.GTGXHY4A.js +7 -0
  119. package/dist/esm/chunks/chunk.GTGXHY4A.js.map +7 -0
  120. package/dist/esm/chunks/chunk.GURV4TDZ.js +7 -0
  121. package/dist/esm/chunks/{chunk.TSUAFZGY.js.map → chunk.GURV4TDZ.js.map} +1 -1
  122. package/dist/esm/chunks/chunk.H6MMHAQI.js +15 -0
  123. package/dist/esm/chunks/chunk.H6MMHAQI.js.map +7 -0
  124. package/dist/esm/chunks/chunk.HJUFU2PV.js +7 -0
  125. package/dist/esm/chunks/{chunk.RCPUTZON.js.map → chunk.HJUFU2PV.js.map} +2 -2
  126. package/dist/esm/chunks/chunk.HPCXVNG6.js +7 -0
  127. package/dist/esm/chunks/{chunk.CZOABXEQ.js.map → chunk.HPCXVNG6.js.map} +3 -3
  128. package/dist/esm/chunks/chunk.IA27LU2O.js +7 -0
  129. package/dist/esm/chunks/{chunk.JEZR25US.js.map → chunk.IA27LU2O.js.map} +1 -1
  130. package/dist/esm/chunks/chunk.INQZNXG6.js +7 -0
  131. package/dist/esm/chunks/chunk.INQZNXG6.js.map +7 -0
  132. package/dist/esm/chunks/chunk.IO3TM653.js +7 -0
  133. package/dist/esm/chunks/chunk.IO3TM653.js.map +7 -0
  134. package/dist/esm/chunks/chunk.JXJVPJRO.js +177 -0
  135. package/dist/esm/chunks/{chunk.AVRBHXDT.js.map → chunk.JXJVPJRO.js.map} +1 -1
  136. package/dist/esm/chunks/chunk.K3STAW42.js +7 -0
  137. package/dist/esm/chunks/{chunk.XQLQ73NG.js.map → chunk.K3STAW42.js.map} +1 -1
  138. package/dist/esm/chunks/chunk.KM5XYTE3.js +7 -0
  139. package/dist/esm/chunks/chunk.KM5XYTE3.js.map +7 -0
  140. package/dist/esm/chunks/chunk.KPC6IS3C.js +7 -0
  141. package/dist/esm/chunks/{chunk.OTUEB7SD.js.map → chunk.KPC6IS3C.js.map} +1 -1
  142. package/dist/esm/chunks/{chunk.PRJHBUU2.js → chunk.KPNGLSCU.js} +1 -1
  143. package/dist/esm/chunks/chunk.KPNGLSCU.js.map +7 -0
  144. package/dist/esm/chunks/chunk.KV7PGQJ7.js +7 -0
  145. package/dist/esm/chunks/{chunk.KR4BNI6X.js.map → chunk.KV7PGQJ7.js.map} +1 -1
  146. package/dist/esm/chunks/chunk.LCS2O4Y7.js +7 -0
  147. package/dist/esm/chunks/chunk.LCS2O4Y7.js.map +7 -0
  148. package/dist/esm/chunks/chunk.M4KCRUKW.js +7 -0
  149. package/dist/esm/chunks/chunk.M4KCRUKW.js.map +7 -0
  150. package/dist/esm/chunks/{chunk.IHIKIZIT.js → chunk.M5JGYRH4.js} +2 -2
  151. package/dist/esm/chunks/{chunk.O6MGA3XK.js → chunk.N75VD4S4.js} +2 -2
  152. package/dist/esm/chunks/chunk.NHOGZDLN.js +7 -0
  153. package/dist/esm/chunks/chunk.NHOGZDLN.js.map +7 -0
  154. package/dist/esm/chunks/chunk.NKEAMFO4.js +7 -0
  155. package/dist/esm/chunks/{chunk.KUNIEX72.js.map → chunk.NKEAMFO4.js.map} +1 -1
  156. package/dist/esm/chunks/{chunk.KDJZN6EW.js → chunk.NW54VA4E.js} +2 -2
  157. package/dist/esm/chunks/chunk.OJGPKHHC.js +7 -0
  158. package/dist/esm/chunks/{chunk.EMCY55MX.js.map → chunk.OJGPKHHC.js.map} +2 -2
  159. package/dist/esm/chunks/chunk.OSCODMUG.js +7 -0
  160. package/dist/esm/chunks/chunk.OSCODMUG.js.map +7 -0
  161. package/dist/esm/chunks/chunk.OT3JZ6JO.js +7 -0
  162. package/dist/esm/chunks/{chunk.7PVVZC7P.js.map → chunk.OT3JZ6JO.js.map} +3 -3
  163. package/dist/esm/chunks/{chunk.BAQYPAUM.js → chunk.OXVCCHM5.js} +2 -2
  164. package/dist/esm/chunks/chunk.P5XHGSJY.js +7 -0
  165. package/dist/esm/chunks/{chunk.5FCUOZSU.js.map → chunk.P5XHGSJY.js.map} +1 -1
  166. package/dist/esm/chunks/chunk.Q5YXX4DU.js +7 -0
  167. package/dist/esm/chunks/{chunk.ZIRA4PYV.js.map → chunk.Q5YXX4DU.js.map} +1 -1
  168. package/dist/esm/chunks/{chunk.MHH26REX.js → chunk.QKTNCOVX.js} +2 -2
  169. package/dist/esm/chunks/chunk.QZ57WM3D.js +7 -0
  170. package/dist/esm/chunks/{chunk.Q2Q626DG.js.map → chunk.QZ57WM3D.js.map} +1 -1
  171. package/dist/esm/chunks/chunk.R2QENXIL.js +7 -0
  172. package/dist/esm/chunks/{chunk.LYZXJYTW.js.map → chunk.R2QENXIL.js.map} +1 -1
  173. package/dist/esm/chunks/chunk.R53VHVKB.js +12 -0
  174. package/dist/esm/chunks/chunk.R53VHVKB.js.map +7 -0
  175. package/dist/esm/chunks/{chunk.42YDA5FH.js → chunk.RDQ3QGWS.js} +2 -2
  176. package/dist/esm/chunks/chunk.RFKKHN7V.js +7 -0
  177. package/dist/esm/chunks/{chunk.KGHABAFA.js.map → chunk.RFKKHN7V.js.map} +1 -1
  178. package/dist/esm/chunks/{chunk.AR6YUJUH.js → chunk.RKG66YKS.js} +2 -2
  179. package/dist/esm/chunks/chunk.RRNSZCVJ.js +7 -0
  180. package/dist/esm/chunks/{chunk.T4J66YX5.js.map → chunk.RRNSZCVJ.js.map} +4 -4
  181. package/dist/esm/chunks/chunk.S32JKL3M.js +7 -0
  182. package/dist/esm/chunks/chunk.S32JKL3M.js.map +7 -0
  183. package/dist/esm/chunks/chunk.SJQPD3CO.js +7 -0
  184. package/dist/esm/chunks/chunk.SJQPD3CO.js.map +7 -0
  185. package/dist/esm/chunks/chunk.T235SNYZ.js +7 -0
  186. package/dist/esm/chunks/{chunk.CBY7M4X6.js.map → chunk.T235SNYZ.js.map} +1 -1
  187. package/dist/esm/chunks/chunk.T4N7KZHZ.js +7 -0
  188. package/dist/esm/chunks/chunk.T4N7KZHZ.js.map +7 -0
  189. package/dist/esm/chunks/chunk.TE6ZNUAM.js +7 -0
  190. package/dist/esm/chunks/{chunk.JZ27GPZJ.js.map → chunk.TE6ZNUAM.js.map} +2 -2
  191. package/dist/esm/chunks/{chunk.WMP2OLMG.js → chunk.TNEUDWZU.js} +2 -2
  192. package/dist/esm/chunks/{chunk.WMP2OLMG.js.map → chunk.TNEUDWZU.js.map} +2 -2
  193. package/dist/esm/chunks/{chunk.BTWJPE4Y.js → chunk.TZ67MC2N.js} +2 -2
  194. package/{styles/focus-indicator/_configuration.scss → dist/esm/chunks/chunk.U6FJJGO3.js} +1 -5
  195. package/dist/esm/chunks/chunk.U6FJJGO3.js.map +7 -0
  196. package/dist/esm/chunks/chunk.V3IHX6B2.js +7 -0
  197. package/dist/esm/chunks/{chunk.GGQL3OZB.js.map → chunk.V3IHX6B2.js.map} +1 -1
  198. package/dist/esm/chunks/chunk.V564JB6A.js +7 -0
  199. package/dist/esm/chunks/chunk.V564JB6A.js.map +7 -0
  200. package/dist/esm/chunks/{chunk.7LOMI6J3.js → chunk.VGIZJ32U.js} +2 -2
  201. package/dist/esm/chunks/chunk.VZTV4GXC.js +7 -0
  202. package/dist/esm/chunks/chunk.VZTV4GXC.js.map +7 -0
  203. package/dist/esm/chunks/chunk.W5TDBDVY.js +7 -0
  204. package/dist/esm/chunks/{chunk.BIVQ4GTK.js.map → chunk.W5TDBDVY.js.map} +1 -1
  205. package/dist/esm/chunks/chunk.WA2YP4NC.js +7 -0
  206. package/dist/esm/chunks/{chunk.MROUV35N.js.map → chunk.WA2YP4NC.js.map} +1 -1
  207. package/dist/esm/chunks/{chunk.U42I3PGF.js → chunk.WFQYTXCB.js} +2 -2
  208. package/dist/esm/chunks/chunk.WNH7EHZP.js +7 -0
  209. package/dist/esm/chunks/{chunk.FQUZWINF.js.map → chunk.WNH7EHZP.js.map} +2 -2
  210. package/dist/esm/chunks/{chunk.KWBYYSH3.js → chunk.WQHKUNR7.js} +2 -2
  211. package/dist/esm/chunks/chunk.WYSUQK6Z.js +7 -0
  212. package/dist/esm/chunks/{chunk.L27ANAIL.js.map → chunk.WYSUQK6Z.js.map} +2 -2
  213. package/dist/esm/chunks/{chunk.NBLL7VAA.js → chunk.X57DRPFB.js} +2 -2
  214. package/dist/esm/chunks/{chunk.L45HXBDS.js → chunk.X7YTDVNT.js} +2 -2
  215. package/dist/esm/chunks/chunk.XBFH6M72.js +7 -0
  216. package/dist/esm/chunks/{chunk.FXGY5IVK.js.map → chunk.XBFH6M72.js.map} +2 -2
  217. package/dist/esm/chunks/chunk.XOH2JCRS.js +7 -0
  218. package/dist/esm/chunks/{chunk.AEO2X5OZ.js.map → chunk.XOH2JCRS.js.map} +1 -1
  219. package/dist/esm/chunks/chunk.Y6D5Z56X.js +7 -0
  220. package/dist/esm/chunks/{chunk.3KEXRSB5.js.map → chunk.Y6D5Z56X.js.map} +2 -2
  221. package/dist/esm/chunks/chunk.YBPAGWVG.js +7 -0
  222. package/dist/esm/chunks/chunk.YBPAGWVG.js.map +7 -0
  223. package/dist/esm/chunks/chunk.YWDYBX3G.js +7 -0
  224. package/dist/esm/chunks/chunk.YWDYBX3G.js.map +7 -0
  225. package/dist/esm/chunks/chunk.ZHMV5SR4.js +7 -0
  226. package/dist/esm/chunks/{chunk.Z37CZMMR.js.map → chunk.ZHMV5SR4.js.map} +1 -1
  227. package/dist/esm/chunks/chunk.ZLACSRD4.js +7 -0
  228. package/dist/esm/chunks/{chunk.WJCZJ6XD.js.map → chunk.ZLACSRD4.js.map} +1 -1
  229. package/dist/esm/chunks/chunk.ZPVRRFT7.js +7 -0
  230. package/dist/esm/chunks/{chunk.W7BP2DDU.js.map → chunk.ZPVRRFT7.js.map} +2 -2
  231. package/dist/esm/chunks/chunk.ZS3T6MJS.js +7 -0
  232. package/dist/esm/chunks/{chunk.YA5OQD37.js.map → chunk.ZS3T6MJS.js.map} +2 -2
  233. package/dist/esm/chunks/chunk.ZUTQPJ2B.js +7 -0
  234. package/dist/esm/chunks/{chunk.Q74SG6BV.js.map → chunk.ZUTQPJ2B.js.map} +1 -1
  235. package/dist/esm/chunks/chunk.ZWIEYVZC.js +7 -0
  236. package/dist/esm/chunks/chunk.ZWIEYVZC.js.map +7 -0
  237. package/dist/esm/chunks/chunk.ZY3ETQ3D.js +7 -0
  238. package/dist/esm/chunks/chunk.ZY3ETQ3D.js.map +7 -0
  239. package/dist/esm/chunks/chunk.ZYCKD6K5.js +7 -0
  240. package/dist/esm/chunks/{chunk.447QNYAZ.js.map → chunk.ZYCKD6K5.js.map} +1 -1
  241. package/dist/esm/circular-progress/index.js +1 -1
  242. package/dist/esm/color-picker/index.js +1 -1
  243. package/dist/esm/core/base/index.js +1 -1
  244. package/dist/esm/core/index.js +1 -1
  245. package/dist/esm/core/utils/index.js +1 -1
  246. package/dist/esm/date-picker/index.js +1 -1
  247. package/dist/esm/date-range-picker/index.js +1 -1
  248. package/dist/esm/dialog/index.js +1 -1
  249. package/dist/esm/divider/index.js +1 -1
  250. package/dist/esm/drawer/base/index.js +1 -1
  251. package/dist/esm/drawer/drawer/index.js +1 -1
  252. package/dist/esm/drawer/index.js +1 -1
  253. package/dist/esm/drawer/mini-drawer/index.js +1 -1
  254. package/dist/esm/drawer/modal-drawer/index.js +1 -1
  255. package/dist/esm/expansion-panel/index.js +1 -1
  256. package/dist/esm/file-picker/index.js +1 -1
  257. package/dist/esm/floating-action-button/index.js +1 -1
  258. package/dist/esm/floating-label/index.js +1 -1
  259. package/dist/esm/focus-indicator/index.js +1 -1
  260. package/dist/esm/icon/index.js +1 -1
  261. package/dist/esm/icon-button/index.js +1 -1
  262. package/dist/esm/index.js +1 -1
  263. package/dist/esm/inline-message/index.js +1 -1
  264. package/dist/esm/keyboard-shortcut/index.js +1 -1
  265. package/dist/esm/label/index.js +1 -1
  266. package/dist/esm/label-value/index.js +1 -1
  267. package/dist/esm/linear-progress/index.js +1 -1
  268. package/dist/esm/list/index.js +1 -1
  269. package/dist/esm/list/list/index.js +1 -1
  270. package/dist/esm/list/list-item/index.js +1 -1
  271. package/dist/esm/list-dropdown/index.js +1 -1
  272. package/dist/esm/menu/index.js +1 -1
  273. package/dist/esm/open-icon/index.js +1 -1
  274. package/dist/esm/overlay/index.js +7 -0
  275. package/dist/esm/overlay/index.js.map +7 -0
  276. package/dist/esm/page-state/index.js +1 -1
  277. package/dist/esm/paginator/index.js +1 -1
  278. package/dist/esm/popover/index.js +7 -0
  279. package/dist/esm/popover/index.js.map +7 -0
  280. package/dist/esm/popup/index.js +1 -1
  281. package/dist/esm/product-icon/index.js +1 -1
  282. package/dist/esm/profile-card/index.js +1 -1
  283. package/dist/esm/quantity-field/index.js +1 -1
  284. package/dist/esm/radio/index.js +1 -1
  285. package/dist/esm/radio/radio/index.js +1 -1
  286. package/dist/esm/radio/radio-group/index.js +1 -1
  287. package/dist/esm/ripple/index.js +1 -1
  288. package/dist/esm/scaffold/index.js +1 -1
  289. package/dist/esm/select/core/index.js +1 -1
  290. package/dist/esm/select/index.js +1 -1
  291. package/dist/esm/select/option/index.js +1 -1
  292. package/dist/esm/select/option-group/index.js +1 -1
  293. package/dist/esm/select/select/index.js +1 -1
  294. package/dist/esm/select/select-dropdown/index.js +1 -1
  295. package/dist/esm/skeleton/index.js +1 -1
  296. package/dist/esm/slider/index.js +1 -1
  297. package/dist/esm/split-button/index.js +1 -1
  298. package/dist/esm/split-view/index.js +1 -1
  299. package/dist/esm/split-view/split-view/index.js +1 -1
  300. package/dist/esm/split-view/split-view-panel/index.js +1 -1
  301. package/dist/esm/stack/index.js +1 -1
  302. package/dist/esm/state-layer/index.js +1 -1
  303. package/dist/esm/stepper/index.js +1 -1
  304. package/dist/esm/stepper/step/index.js +1 -1
  305. package/dist/esm/stepper/stepper/index.js +1 -1
  306. package/dist/esm/switch/index.js +1 -1
  307. package/dist/esm/table/index.js +1 -1
  308. package/dist/esm/tabs/index.js +1 -1
  309. package/dist/esm/tabs/tab/index.js +1 -1
  310. package/dist/esm/tabs/tab-bar/index.js +1 -1
  311. package/dist/esm/text-field/index.js +1 -1
  312. package/dist/esm/time-picker/index.js +1 -1
  313. package/dist/esm/toast/index.js +1 -1
  314. package/dist/esm/toolbar/index.js +1 -1
  315. package/dist/esm/tooltip/index.js +1 -1
  316. package/dist/esm/view-switcher/index.js +1 -1
  317. package/dist/esm/view-switcher/view/index.js +1 -1
  318. package/dist/forge-dark.css +1 -1
  319. package/dist/forge.css +1 -1
  320. package/dist/theme/forge-theme.css +1 -1
  321. package/esm/app-bar/help-button/app-bar-help-button-adapter.js +3 -3
  322. package/esm/app-bar/help-button/app-bar-help-button.js +1 -1
  323. package/esm/app-bar/menu-button/app-bar-menu-button.js +4 -4
  324. package/esm/app-bar/notification-button/app-bar-notification-button-adapter.js +3 -3
  325. package/esm/app-bar/notification-button/app-bar-notification-button.js +1 -1
  326. package/esm/app-bar/profile-button/app-bar-profile-button-adapter.js +3 -3
  327. package/esm/app-bar/profile-button/app-bar-profile-button-foundation.js +1 -0
  328. package/esm/app-bar/profile-button/app-bar-profile-button.js +1 -1
  329. package/esm/banner/banner.js +1 -1
  330. package/esm/button/base/base-button-adapter.d.ts +0 -3
  331. package/esm/button/base/base-button-adapter.js +5 -14
  332. package/esm/button/base/base-button-constants.d.ts +28 -28
  333. package/esm/button/base/base-button-foundation.d.ts +0 -2
  334. package/esm/button/base/base-button-foundation.js +1 -4
  335. package/esm/button/base/base-button.d.ts +8 -6
  336. package/esm/button/base/base-button.js +19 -15
  337. package/esm/button/button.js +2 -2
  338. package/esm/button-toggle/button-toggle/button-toggle-adapter.d.ts +6 -14
  339. package/esm/button-toggle/button-toggle/button-toggle-adapter.js +19 -45
  340. package/esm/button-toggle/button-toggle/button-toggle-constants.d.ts +11 -15
  341. package/esm/button-toggle/button-toggle/button-toggle-constants.js +6 -17
  342. package/esm/button-toggle/button-toggle/button-toggle-foundation.d.ts +18 -12
  343. package/esm/button-toggle/button-toggle/button-toggle-foundation.js +74 -30
  344. package/esm/button-toggle/button-toggle/button-toggle.d.ts +67 -14
  345. package/esm/button-toggle/button-toggle/button-toggle.js +82 -29
  346. package/esm/button-toggle/button-toggle-group/button-toggle-group-adapter.d.ts +7 -13
  347. package/esm/button-toggle/button-toggle-group/button-toggle-group-adapter.js +26 -91
  348. package/esm/button-toggle/button-toggle-group/button-toggle-group-constants.d.ts +20 -11
  349. package/esm/button-toggle/button-toggle-group/button-toggle-group-constants.js +8 -2
  350. package/esm/button-toggle/button-toggle-group/button-toggle-group-foundation.d.ts +20 -12
  351. package/esm/button-toggle/button-toggle-group/button-toggle-group-foundation.js +101 -97
  352. package/esm/button-toggle/button-toggle-group/button-toggle-group.d.ts +75 -9
  353. package/esm/button-toggle/button-toggle-group/button-toggle-group.js +134 -25
  354. package/esm/calendar/calendar-dom-utils.js +1 -2
  355. package/esm/calendar/calendar-foundation.d.ts +1 -1
  356. package/esm/calendar/calendar-foundation.js +13 -16
  357. package/esm/checkbox/checkbox.js +1 -1
  358. package/esm/circular-progress/circular-progress-adapter.js +8 -12
  359. package/esm/circular-progress/circular-progress.d.ts +7 -3
  360. package/esm/circular-progress/circular-progress.js +4 -2
  361. package/esm/color-picker/color-picker.js +1 -1
  362. package/esm/constants.d.ts +1 -0
  363. package/esm/constants.js +2 -0
  364. package/esm/core/base/base-adapter.d.ts +2 -0
  365. package/esm/core/base/base-adapter.js +7 -4
  366. package/esm/core/base/index.d.ts +0 -4
  367. package/esm/core/base/index.js +0 -4
  368. package/esm/core/{base/base-focusable-component.d.ts → mixins/focus/with-focusable.d.ts} +2 -2
  369. package/esm/core/{base/base-focusable-component.js → mixins/focus/with-focusable.js} +1 -1
  370. package/esm/core/{base/base-form-associated-component.d.ts → mixins/form/with-form-associated.d.ts} +4 -10
  371. package/esm/core/{base/base-form-associated-component.js → mixins/form/with-form-associated.js} +1 -1
  372. package/esm/core/mixins/form/with-form-validity.d.ts +35 -0
  373. package/esm/core/mixins/form/with-form-validity.js +43 -0
  374. package/esm/core/mixins/interactions/longpress/with-longpress-listener.d.ts +33 -0
  375. package/esm/core/mixins/interactions/longpress/with-longpress-listener.js +82 -0
  376. package/esm/core/mixins/internals/with-default-aria.d.ts +32 -0
  377. package/esm/core/mixins/internals/with-default-aria.js +22 -0
  378. package/esm/core/mixins/internals/with-element-internals.d.ts +26 -0
  379. package/esm/core/mixins/internals/with-element-internals.js +22 -0
  380. package/esm/core/{base/base-label-aware-component.d.ts → mixins/label/with-label-aware.d.ts} +2 -2
  381. package/esm/core/utils/a11y-utils.d.ts +4 -34
  382. package/esm/core/utils/a11y-utils.js +7 -61
  383. package/esm/core/utils/deferred.d.ts +29 -0
  384. package/esm/core/utils/deferred.js +32 -0
  385. package/esm/core/utils/dismissible-stack.d.ts +74 -0
  386. package/esm/core/utils/dismissible-stack.js +133 -0
  387. package/esm/core/utils/feature-detection.d.ts +5 -0
  388. package/esm/core/utils/feature-detection.js +12 -3
  389. package/esm/core/utils/form-utils.d.ts +1 -1
  390. package/esm/core/utils/position-utils.d.ts +78 -0
  391. package/esm/core/utils/position-utils.js +197 -0
  392. package/esm/core/utils/utils.d.ts +14 -0
  393. package/esm/core/utils/utils.js +25 -7
  394. package/esm/date-range-picker/date-range-picker-foundation.d.ts +1 -0
  395. package/esm/date-range-picker/date-range-picker-foundation.js +4 -0
  396. package/esm/dialog/dialog-constants.d.ts +1 -0
  397. package/esm/dialog/dialog-constants.js +2 -1
  398. package/esm/dialog/dialog-foundation.js +3 -6
  399. package/esm/dialog/dialog.js +1 -1
  400. package/esm/drawer/mini-drawer/mini-drawer.js +1 -1
  401. package/esm/expansion-panel/expansion-panel-adapter.js +0 -5
  402. package/esm/floating-action-button/floating-action-button.js +1 -1
  403. package/esm/icon-button/icon-button-component-delegate.js +1 -1
  404. package/esm/icon-button/icon-button.js +1 -1
  405. package/esm/index.d.ts +2 -0
  406. package/esm/index.js +7 -1
  407. package/esm/label/label-adapter.js +3 -3
  408. package/esm/label/label-constants.d.ts +1 -1
  409. package/esm/label/label-constants.js +3 -1
  410. package/esm/linear-progress/linear-progress-adapter.js +13 -12
  411. package/esm/linear-progress/linear-progress-constants.d.ts +6 -0
  412. package/esm/linear-progress/linear-progress-constants.js +4 -2
  413. package/esm/linear-progress/linear-progress-foundation.js +2 -1
  414. package/esm/linear-progress/linear-progress.d.ts +7 -3
  415. package/esm/linear-progress/linear-progress.js +8 -11
  416. package/esm/list/list/list.js +1 -1
  417. package/esm/list/list-item/list-item.js +1 -1
  418. package/esm/menu/menu.js +1 -5
  419. package/esm/open-icon/open-icon.js +2 -2
  420. package/esm/overlay/base/base-overlay-foundation.d.ts +50 -0
  421. package/esm/overlay/base/base-overlay-foundation.js +11 -0
  422. package/esm/overlay/base/base-overlay.d.ts +49 -0
  423. package/esm/overlay/base/base-overlay.js +106 -0
  424. package/esm/overlay/base/overlay-aware-adapter.d.ts +17 -0
  425. package/esm/overlay/base/overlay-aware-adapter.js +15 -0
  426. package/esm/overlay/base/overlay-aware-foundation.d.ts +53 -0
  427. package/esm/overlay/base/overlay-aware-foundation.js +158 -0
  428. package/esm/overlay/base/overlay-aware.d.ts +36 -0
  429. package/esm/overlay/base/overlay-aware.js +102 -0
  430. package/esm/overlay/index.d.ts +10 -0
  431. package/esm/overlay/index.js +14 -0
  432. package/esm/overlay/mixins/with-overlay-aware.d.ts +105 -0
  433. package/esm/overlay/mixins/with-overlay-aware.js +152 -0
  434. package/esm/overlay/overlay-adapter.d.ts +54 -0
  435. package/esm/overlay/overlay-adapter.js +182 -0
  436. package/esm/overlay/overlay-constants.d.ts +71 -0
  437. package/esm/overlay/overlay-constants.js +48 -0
  438. package/esm/overlay/overlay-foundation.d.ts +76 -0
  439. package/esm/overlay/overlay-foundation.js +288 -0
  440. package/esm/overlay/overlay.d.ts +90 -0
  441. package/esm/overlay/overlay.js +105 -0
  442. package/esm/paginator/paginator.js +1 -1
  443. package/esm/popover/index.d.ts +10 -0
  444. package/esm/popover/index.js +14 -0
  445. package/esm/popover/popover-adapter.d.ts +46 -0
  446. package/esm/popover/popover-adapter.js +105 -0
  447. package/esm/popover/popover-constants.d.ts +42 -0
  448. package/esm/popover/popover-constants.js +42 -0
  449. package/esm/popover/popover-foundation.d.ts +139 -0
  450. package/esm/popover/popover-foundation.js +458 -0
  451. package/esm/popover/popover.d.ts +96 -0
  452. package/esm/popover/popover.js +147 -0
  453. package/esm/popup/popup-constants.d.ts +1 -1
  454. package/esm/profile-card/profile-card.js +1 -1
  455. package/esm/radio/core/radio-group-manager.js +1 -1
  456. package/esm/radio/radio/radio-adapter.js +4 -10
  457. package/esm/radio/radio/radio-constants.d.ts +0 -2
  458. package/esm/radio/radio/radio-constants.js +1 -14
  459. package/esm/radio/radio/radio.d.ts +8 -3
  460. package/esm/radio/radio/radio.js +10 -8
  461. package/esm/radio/radio-group/radio-group-adapter.js +1 -3
  462. package/esm/radio/radio-group/radio-group-constants.d.ts +0 -2
  463. package/esm/radio/radio-group/radio-group-constants.js +1 -6
  464. package/esm/radio/radio-group/radio-group.d.ts +6 -3
  465. package/esm/radio/radio-group/radio-group.js +5 -3
  466. package/esm/slider/slider.d.ts +2 -2
  467. package/esm/slider/slider.js +2 -2
  468. package/esm/split-view/split-view-panel/split-view-panel.js +1 -1
  469. package/esm/state-layer/state-layer-foundation.js +9 -10
  470. package/esm/switch/switch.js +1 -1
  471. package/esm/table/table-utils.js +2 -3
  472. package/esm/tabs/tab/tab.js +1 -1
  473. package/esm/tabs/tab-bar/tab-bar-adapter.d.ts +1 -1
  474. package/esm/tabs/tab-bar/tab-bar-adapter.js +3 -3
  475. package/esm/tabs/tab-bar/tab-bar-constants.d.ts +1 -1
  476. package/esm/tabs/tab-bar/tab-bar-constants.js +1 -1
  477. package/esm/tabs/tab-bar/tab-bar.js +2 -2
  478. package/esm/toast/toast-constants.d.ts +1 -1
  479. package/esm/toolbar/toolbar.js +1 -1
  480. package/esm/tooltip/index.d.ts +0 -1
  481. package/esm/tooltip/index.js +0 -1
  482. package/esm/tooltip/tooltip-adapter.d.ts +30 -60
  483. package/esm/tooltip/tooltip-adapter.js +105 -97
  484. package/esm/tooltip/tooltip-constants.d.ts +44 -21
  485. package/esm/tooltip/tooltip-constants.js +27 -22
  486. package/esm/tooltip/tooltip-foundation.d.ts +72 -84
  487. package/esm/tooltip/tooltip-foundation.js +265 -192
  488. package/esm/tooltip/tooltip.d.ts +93 -26
  489. package/esm/tooltip/tooltip.js +129 -31
  490. package/package.json +2 -4
  491. package/styles/app-bar/app-bar/_core.scss +2 -0
  492. package/styles/app-bar/app-bar/app-bar.scss +17 -17
  493. package/styles/app-bar/app-bar/index.scss +0 -2
  494. package/styles/app-bar/search/_core.scss +2 -0
  495. package/styles/app-bar/search/app-bar-search.scss +5 -6
  496. package/styles/app-bar/search/index.scss +0 -2
  497. package/styles/button/_core.scss +2 -0
  498. package/styles/button/button.scss +31 -25
  499. package/styles/button/index.scss +0 -2
  500. package/styles/button-toggle/button-toggle/_core.scss +78 -0
  501. package/styles/button-toggle/button-toggle/_token-utils.scss +30 -0
  502. package/styles/button-toggle/button-toggle/button-toggle.scss +65 -11
  503. package/styles/{app-bar/search/_configuration.scss → button-toggle/button-toggle/index.scss} +1 -5
  504. package/styles/button-toggle/button-toggle-group/_core.scss +62 -0
  505. package/styles/button-toggle/button-toggle-group/_token-utils.scss +30 -0
  506. package/styles/button-toggle/button-toggle-group/button-toggle-group.scss +123 -3
  507. package/styles/button-toggle/button-toggle-group/index.scss +8 -0
  508. package/styles/checkbox/_core.scss +3 -0
  509. package/styles/checkbox/checkbox.scss +24 -26
  510. package/styles/checkbox/index.scss +0 -2
  511. package/styles/circular-progress/_core.scss +2 -0
  512. package/styles/circular-progress/circular-progress.scss +36 -27
  513. package/styles/circular-progress/index.scss +0 -2
  514. package/styles/core/styles/elevation/index.scss +1 -1
  515. package/styles/core/styles/tokens/_token-utils.scss +14 -5
  516. package/styles/core/styles/tokens/button/_tokens.scss +4 -4
  517. package/styles/core/styles/tokens/button-toggle/button-toggle/_tokens.scss +68 -0
  518. package/styles/core/styles/tokens/button-toggle/button-toggle-group/_tokens.scss +48 -0
  519. package/styles/core/styles/tokens/checkbox/_tokens.scss +6 -6
  520. package/styles/core/styles/tokens/floating-action-button/_tokens.scss +1 -1
  521. package/styles/core/styles/tokens/icon-button/_tokens.scss +3 -3
  522. package/styles/core/styles/tokens/overlay/_tokens.scss +23 -0
  523. package/styles/core/styles/tokens/popover/_tokens.scss +56 -0
  524. package/styles/core/styles/tokens/profile-card/_tokens.scss +1 -1
  525. package/styles/core/styles/tokens/radio/_tokens.scss +1 -1
  526. package/styles/core/styles/tokens/switch/_tokens.scss +3 -3
  527. package/styles/core/styles/tokens/tabs/tab/_tokens.scss +5 -5
  528. package/styles/core/styles/tokens/theme/_token-utils.scss +12 -11
  529. package/styles/core/styles/tokens/theme/_tokens.surface.scss +3 -0
  530. package/styles/core/styles/tokens/theme/_tokens.text.scss +4 -4
  531. package/styles/core/styles/tokens/theme/_tokens.utilities.scss +3 -0
  532. package/styles/core/styles/tokens/tooltip/_tokens.scss +53 -0
  533. package/styles/dialog/_mixins.scss +1 -1
  534. package/styles/drawer/mini-drawer/_mixins.scss +0 -2
  535. package/styles/floating-action-button/_core.scss +2 -0
  536. package/styles/floating-action-button/floating-action-button.scss +14 -14
  537. package/styles/floating-action-button/index.scss +0 -2
  538. package/styles/focus-indicator/_core.scss +2 -0
  539. package/styles/focus-indicator/focus-indicator.scss +7 -8
  540. package/styles/focus-indicator/index.scss +0 -2
  541. package/styles/forge.scss +0 -1
  542. package/styles/icon-button/_core.scss +2 -0
  543. package/styles/icon-button/icon-button.scss +29 -28
  544. package/styles/icon-button/index.scss +0 -2
  545. package/styles/label/label.scss +2 -2
  546. package/styles/linear-progress/_core.scss +2 -0
  547. package/styles/linear-progress/index.scss +0 -2
  548. package/styles/linear-progress/linear-progress.scss +29 -18
  549. package/styles/list/list/_core.scss +2 -0
  550. package/styles/list/list/index.scss +0 -2
  551. package/styles/list/list/list.scss +4 -4
  552. package/styles/list/list-item/_core.scss +2 -0
  553. package/styles/list/list-item/index.scss +0 -2
  554. package/styles/list/list-item/list-item.scss +50 -44
  555. package/styles/overlay/_core.scss +46 -0
  556. package/styles/overlay/_token-utils.scss +31 -0
  557. package/styles/{checkbox/_configuration.scss → overlay/index.scss} +1 -5
  558. package/styles/overlay/overlay.scss +66 -0
  559. package/styles/popover/_animations.scss +36 -0
  560. package/styles/popover/_core.scss +56 -0
  561. package/styles/popover/_token-utils.scss +31 -0
  562. package/styles/{list/list/_configuration.scss → popover/index.scss} +1 -5
  563. package/styles/popover/popover.scss +254 -0
  564. package/styles/profile-card/_core.scss +2 -0
  565. package/styles/profile-card/index.scss +0 -2
  566. package/styles/profile-card/profile-card.scss +9 -11
  567. package/styles/radio/radio/_core.scss +3 -0
  568. package/styles/radio/radio/index.scss +0 -2
  569. package/styles/radio/radio/radio.scss +12 -15
  570. package/styles/slider/_core.scss +2 -0
  571. package/styles/slider/index.scss +0 -2
  572. package/styles/slider/slider.scss +45 -41
  573. package/styles/split-button/index.scss +0 -1
  574. package/styles/split-button/split-button.scss +3 -2
  575. package/styles/state-layer/_core.scss +3 -2
  576. package/styles/state-layer/index.scss +0 -2
  577. package/styles/state-layer/state-layer.scss +7 -8
  578. package/styles/switch/_core.scss +3 -0
  579. package/styles/switch/index.scss +0 -2
  580. package/styles/switch/switch.scss +28 -30
  581. package/styles/tabs/tab/_core.scss +2 -0
  582. package/styles/tabs/tab/index.scss +0 -2
  583. package/styles/tabs/tab/tab.scss +27 -28
  584. package/styles/tabs/tab-bar/_core.scss +2 -0
  585. package/styles/tabs/tab-bar/index.scss +0 -2
  586. package/styles/tabs/tab-bar/tab-bar.scss +21 -23
  587. package/styles/theme/_theme-dark.scss +14 -2
  588. package/styles/theme/_theme-values.scss +2 -0
  589. package/styles/toolbar/_mixins.scss +2 -1
  590. package/styles/tooltip/_animations.scss +18 -0
  591. package/styles/tooltip/_core.scss +86 -0
  592. package/styles/tooltip/_token-utils.scss +31 -0
  593. package/styles/tooltip/index.scss +6 -0
  594. package/styles/tooltip/tooltip.scss +107 -0
  595. package/dist/esm/chunks/chunk.3KEXRSB5.js +0 -7
  596. package/dist/esm/chunks/chunk.3TKTJ3BY.js +0 -7
  597. package/dist/esm/chunks/chunk.3TKTJ3BY.js.map +0 -7
  598. package/dist/esm/chunks/chunk.447QNYAZ.js +0 -7
  599. package/dist/esm/chunks/chunk.4IMRT2B3.js +0 -7
  600. package/dist/esm/chunks/chunk.4JDJ33IU.js +0 -7
  601. package/dist/esm/chunks/chunk.4QCGBFLU.js +0 -7
  602. package/dist/esm/chunks/chunk.4QCGBFLU.js.map +0 -7
  603. package/dist/esm/chunks/chunk.4XN2WGMP.js +0 -7
  604. package/dist/esm/chunks/chunk.5FCUOZSU.js +0 -7
  605. package/dist/esm/chunks/chunk.5KYKGNGY.js +0 -7
  606. package/dist/esm/chunks/chunk.5QZPUOGG.js +0 -7
  607. package/dist/esm/chunks/chunk.5ZMM75CJ.js +0 -7
  608. package/dist/esm/chunks/chunk.5ZMM75CJ.js.map +0 -7
  609. package/dist/esm/chunks/chunk.6FUXTHO6.js +0 -7
  610. package/dist/esm/chunks/chunk.6ORVPXNN.js +0 -7
  611. package/dist/esm/chunks/chunk.6ORVPXNN.js.map +0 -7
  612. package/dist/esm/chunks/chunk.6ZJIHOIG.js +0 -7
  613. package/dist/esm/chunks/chunk.6ZJIHOIG.js.map +0 -7
  614. package/dist/esm/chunks/chunk.7PVVZC7P.js +0 -7
  615. package/dist/esm/chunks/chunk.AEO2X5OZ.js +0 -7
  616. package/dist/esm/chunks/chunk.AIPDMLJD.js +0 -7
  617. package/dist/esm/chunks/chunk.APFDK6YA.js +0 -7
  618. package/dist/esm/chunks/chunk.APFDK6YA.js.map +0 -7
  619. package/dist/esm/chunks/chunk.AVRBHXDT.js +0 -177
  620. package/dist/esm/chunks/chunk.BIVQ4GTK.js +0 -7
  621. package/dist/esm/chunks/chunk.BJD6BKGC.js +0 -31
  622. package/dist/esm/chunks/chunk.BJD6BKGC.js.map +0 -7
  623. package/dist/esm/chunks/chunk.BS73Y6IN.js +0 -7
  624. package/dist/esm/chunks/chunk.BWGDZUJV.js +0 -12
  625. package/dist/esm/chunks/chunk.BWGDZUJV.js.map +0 -7
  626. package/dist/esm/chunks/chunk.CBY7M4X6.js +0 -7
  627. package/dist/esm/chunks/chunk.CZOABXEQ.js +0 -7
  628. package/dist/esm/chunks/chunk.DLBAZD5X.js +0 -7
  629. package/dist/esm/chunks/chunk.DTWXICOY.js +0 -7
  630. package/dist/esm/chunks/chunk.DTWXICOY.js.map +0 -7
  631. package/dist/esm/chunks/chunk.EMCY55MX.js +0 -7
  632. package/dist/esm/chunks/chunk.ESQWFHCF.js +0 -7
  633. package/dist/esm/chunks/chunk.ESQWFHCF.js.map +0 -7
  634. package/dist/esm/chunks/chunk.FDZSLGIW.js +0 -7
  635. package/dist/esm/chunks/chunk.FDZSLGIW.js.map +0 -7
  636. package/dist/esm/chunks/chunk.FJ5VNWYK.js +0 -7
  637. package/dist/esm/chunks/chunk.FJ5VNWYK.js.map +0 -7
  638. package/dist/esm/chunks/chunk.FJRCWWE2.js +0 -7
  639. package/dist/esm/chunks/chunk.FJRCWWE2.js.map +0 -7
  640. package/dist/esm/chunks/chunk.FQUZWINF.js +0 -7
  641. package/dist/esm/chunks/chunk.FSILMO6U.js +0 -7
  642. package/dist/esm/chunks/chunk.FXGY5IVK.js +0 -7
  643. package/dist/esm/chunks/chunk.G67LO74A.js +0 -7
  644. package/dist/esm/chunks/chunk.G67LO74A.js.map +0 -7
  645. package/dist/esm/chunks/chunk.GGQL3OZB.js +0 -7
  646. package/dist/esm/chunks/chunk.I7OY43HW.js +0 -7
  647. package/dist/esm/chunks/chunk.I7OY43HW.js.map +0 -7
  648. package/dist/esm/chunks/chunk.I7X25KEB.js +0 -7
  649. package/dist/esm/chunks/chunk.I7X25KEB.js.map +0 -7
  650. package/dist/esm/chunks/chunk.ICIGXLJW.js +0 -7
  651. package/dist/esm/chunks/chunk.ILUXZNGY.js +0 -7
  652. package/dist/esm/chunks/chunk.ILUXZNGY.js.map +0 -7
  653. package/dist/esm/chunks/chunk.JEZR25US.js +0 -7
  654. package/dist/esm/chunks/chunk.JPI4XCQL.js +0 -7
  655. package/dist/esm/chunks/chunk.JPI4XCQL.js.map +0 -7
  656. package/dist/esm/chunks/chunk.JRSFCVYQ.js +0 -7
  657. package/dist/esm/chunks/chunk.JRSFCVYQ.js.map +0 -7
  658. package/dist/esm/chunks/chunk.JZ27GPZJ.js +0 -7
  659. package/dist/esm/chunks/chunk.K3TJMIKD.js +0 -7
  660. package/dist/esm/chunks/chunk.K3TJMIKD.js.map +0 -7
  661. package/dist/esm/chunks/chunk.KGHABAFA.js +0 -7
  662. package/dist/esm/chunks/chunk.KR4BNI6X.js +0 -7
  663. package/dist/esm/chunks/chunk.KUNIEX72.js +0 -7
  664. package/dist/esm/chunks/chunk.L27ANAIL.js +0 -7
  665. package/dist/esm/chunks/chunk.L4UXWCVD.js +0 -7
  666. package/dist/esm/chunks/chunk.L4UXWCVD.js.map +0 -7
  667. package/dist/esm/chunks/chunk.LK6QHLW2.js +0 -7
  668. package/dist/esm/chunks/chunk.LYZXJYTW.js +0 -7
  669. package/dist/esm/chunks/chunk.LZ2YQYJA.js +0 -7
  670. package/dist/esm/chunks/chunk.LZ2YQYJA.js.map +0 -7
  671. package/dist/esm/chunks/chunk.MROUV35N.js +0 -7
  672. package/dist/esm/chunks/chunk.NM7FJISF.js +0 -7
  673. package/dist/esm/chunks/chunk.NM7FJISF.js.map +0 -7
  674. package/dist/esm/chunks/chunk.NVR6KN2B.js +0 -7
  675. package/dist/esm/chunks/chunk.O6F4U4VY.js +0 -7
  676. package/dist/esm/chunks/chunk.ONII3BV3.js +0 -7
  677. package/dist/esm/chunks/chunk.OTUEB7SD.js +0 -7
  678. package/dist/esm/chunks/chunk.PMSCH6VK.js +0 -7
  679. package/dist/esm/chunks/chunk.PRJHBUU2.js.map +0 -7
  680. package/dist/esm/chunks/chunk.Q2Q626DG.js +0 -7
  681. package/dist/esm/chunks/chunk.Q4YL47ZL.js +0 -7
  682. package/dist/esm/chunks/chunk.Q4YL47ZL.js.map +0 -7
  683. package/dist/esm/chunks/chunk.Q54DACHS.js +0 -7
  684. package/dist/esm/chunks/chunk.Q74SG6BV.js +0 -7
  685. package/dist/esm/chunks/chunk.QGMWM7IT.js +0 -7
  686. package/dist/esm/chunks/chunk.QGMWM7IT.js.map +0 -7
  687. package/dist/esm/chunks/chunk.RCPUTZON.js +0 -7
  688. package/dist/esm/chunks/chunk.SBKKBQDX.js +0 -7
  689. package/dist/esm/chunks/chunk.SBKKBQDX.js.map +0 -7
  690. package/dist/esm/chunks/chunk.SVVF632P.js +0 -7
  691. package/dist/esm/chunks/chunk.SVVF632P.js.map +0 -7
  692. package/dist/esm/chunks/chunk.T4J66YX5.js +0 -7
  693. package/dist/esm/chunks/chunk.THNCYT3E.js +0 -7
  694. package/dist/esm/chunks/chunk.TSUAFZGY.js +0 -7
  695. package/dist/esm/chunks/chunk.UOEJCU6R.js +0 -7
  696. package/dist/esm/chunks/chunk.VG452D3L.js +0 -7
  697. package/dist/esm/chunks/chunk.VQPSP4HV.js +0 -7
  698. package/dist/esm/chunks/chunk.VQPSP4HV.js.map +0 -7
  699. package/dist/esm/chunks/chunk.W7BP2DDU.js +0 -7
  700. package/dist/esm/chunks/chunk.WARVAVAW.js +0 -7
  701. package/dist/esm/chunks/chunk.WEHQUUXJ.js +0 -7
  702. package/dist/esm/chunks/chunk.WEHQUUXJ.js.map +0 -7
  703. package/dist/esm/chunks/chunk.WJCZJ6XD.js +0 -7
  704. package/dist/esm/chunks/chunk.X3QZY7V4.js +0 -7
  705. package/dist/esm/chunks/chunk.XQLQ73NG.js +0 -7
  706. package/dist/esm/chunks/chunk.Y4ZS3A6F.js +0 -7
  707. package/dist/esm/chunks/chunk.YA5OQD37.js +0 -7
  708. package/dist/esm/chunks/chunk.YMSX4F3J.js +0 -7
  709. package/dist/esm/chunks/chunk.Z37CZMMR.js +0 -7
  710. package/dist/esm/chunks/chunk.ZIRA4PYV.js +0 -7
  711. package/dist/esm/chunks/chunk.ZT7U7WOX.js +0 -7
  712. package/dist/esm/chunks/chunk.ZX3CGET2.js +0 -7
  713. package/dist/esm/chunks/chunk.ZX3CGET2.js.map +0 -7
  714. package/dist/tooltip/forge-tooltip.css +0 -6
  715. package/esm/core/base/base-element-internals-component.d.ts +0 -41
  716. package/esm/core/base/base-element-internals-component.js +0 -47
  717. package/esm/tooltip/tooltip-utils.d.ts +0 -13
  718. package/esm/tooltip/tooltip-utils.js +0 -53
  719. package/styles/app-bar/app-bar/_configuration.scss +0 -16
  720. package/styles/button/_configuration.scss +0 -16
  721. package/styles/button-toggle/button-toggle/_mixins.scss +0 -117
  722. package/styles/button-toggle/button-toggle-group/_mixins.scss +0 -79
  723. package/styles/circular-progress/_configuration.scss +0 -16
  724. package/styles/floating-action-button/_configuration.scss +0 -16
  725. package/styles/icon-button/_configuration.scss +0 -16
  726. package/styles/linear-progress/_configuration.scss +0 -28
  727. package/styles/list/list-item/_configuration.scss +0 -16
  728. package/styles/radio/radio/_configuration.scss +0 -10
  729. package/styles/split-button/_configuration.scss +0 -12
  730. package/styles/state-layer/_configuration.scss +0 -10
  731. package/styles/switch/_configuration.scss +0 -10
  732. package/styles/tabs/tab/_configuration.scss +0 -27
  733. package/styles/tabs/tab-bar/_configuration.scss +0 -10
  734. package/styles/tooltip/_mixins.scss +0 -98
  735. package/styles/tooltip/_variables.scss +0 -18
  736. package/styles/tooltip/forge-tooltip.scss +0 -12
  737. /package/dist/esm/chunks/{chunk.MTSWCXTY.js.map → chunk.55D2BMXX.js.map} +0 -0
  738. /package/dist/esm/chunks/{chunk.BC7WB5RG.js.map → chunk.B53Q676I.js.map} +0 -0
  739. /package/dist/esm/chunks/{chunk.U7S4DJTU.js.map → chunk.FGHSNC2V.js.map} +0 -0
  740. /package/dist/esm/chunks/{chunk.URKQICJD.js.map → chunk.FZELFLPE.js.map} +0 -0
  741. /package/dist/esm/chunks/{chunk.5EGEZ4IY.js.map → chunk.GLUKTMQU.js.map} +0 -0
  742. /package/dist/esm/chunks/{chunk.IHIKIZIT.js.map → chunk.M5JGYRH4.js.map} +0 -0
  743. /package/dist/esm/chunks/{chunk.O6MGA3XK.js.map → chunk.N75VD4S4.js.map} +0 -0
  744. /package/dist/esm/chunks/{chunk.KDJZN6EW.js.map → chunk.NW54VA4E.js.map} +0 -0
  745. /package/dist/esm/chunks/{chunk.BAQYPAUM.js.map → chunk.OXVCCHM5.js.map} +0 -0
  746. /package/dist/esm/chunks/{chunk.MHH26REX.js.map → chunk.QKTNCOVX.js.map} +0 -0
  747. /package/dist/esm/chunks/{chunk.42YDA5FH.js.map → chunk.RDQ3QGWS.js.map} +0 -0
  748. /package/dist/esm/chunks/{chunk.AR6YUJUH.js.map → chunk.RKG66YKS.js.map} +0 -0
  749. /package/dist/esm/chunks/{chunk.BTWJPE4Y.js.map → chunk.TZ67MC2N.js.map} +0 -0
  750. /package/dist/esm/chunks/{chunk.7LOMI6J3.js.map → chunk.VGIZJ32U.js.map} +0 -0
  751. /package/dist/esm/chunks/{chunk.U42I3PGF.js.map → chunk.WFQYTXCB.js.map} +0 -0
  752. /package/dist/esm/chunks/{chunk.KWBYYSH3.js.map → chunk.WQHKUNR7.js.map} +0 -0
  753. /package/dist/esm/chunks/{chunk.NBLL7VAA.js.map → chunk.X57DRPFB.js.map} +0 -0
  754. /package/dist/esm/chunks/{chunk.L45HXBDS.js.map → chunk.X7YTDVNT.js.map} +0 -0
  755. /package/esm/core/{base/base-label-aware-component.js → mixins/label/with-label-aware.js} +0 -0
@@ -0,0 +1,7 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2023 Tyler Technologies, Inc.
4
+ * License: Apache-2.0
5
+ */
6
+ import{a as O}from"./chunk.6IPX5C4B.js";import{a as D}from"./chunk.WNH7EHZP.js";import{a as x}from"./chunk.E62ZPQSM.js";import{a as c,d as T}from"./chunk.KPC6IS3C.js";import{a as f}from"./chunk.LEVFMI2Q.js";import{a as L}from"./chunk.GTGXHY4A.js";import{a as H}from"./chunk.ZY3ETQ3D.js";import{a}from"./chunk.NVUMRW44.js";import{a as B,b as y}from"./chunk.RRNSZCVJ.js";import{a as k,e as S,f as v}from"./chunk.TPXXHX5J.js";import{i as C,s as b,u as l}from"./chunk.HZUQXCOQ.js";import{k as d}from"./chunk.J2M2MXP2.js";import{a as g,b as E,d as s}from"./chunk.M3QDAYD2.js";var p=`${y}bottom-sheet`,N={DRAGGING:"forge-bottom-sheet--dragging",FULLSCREEN:"forge-bottom-sheet--fullscreen",OPEN:"forge-bottom-sheet--open",SCROLLABLE:"forge-bottom-sheet--scrollable"},A={BACKDROP_CLOSE:"backdrop-close",ESCAPE_CLOSE:"escape-close",FULLSCREEN:"fullscreen",INITIAL_FOCUS:`${p}-focus`,OPEN:`${p}-open`,SHOW_BACKDROP:"show-backdrop"},P={BACKDROP:c.elementName,CONTAINER:".forge-bottom-sheet",CONTENT_BODY:"[forge-bottom-sheet-body]",INITIAL_FOCUS:`[${A.INITIAL_FOCUS}]`,HOST:`[${p}-host]`},w={BEFORE_CLOSE:"forge-bottom-sheet-before-close",CLOSE:"forge-bottom-sheet-close",OPEN:"forge-bottom-sheet-open",READY:"forge-bottom-sheet-ready",DRAG_START:"forge-bottom-sheet-drag-start",DRAGGED:"forge-bottom-sheet-dragged",DRAG_END:"forge-bottom-sheet-drag-end",DRAG_CANCEL:"forge-bottom-sheet-drag-cancel",FULLSCREEN:"forge-bottom-sheet-fullscreen"},o={elementName:p,classes:N,selectors:P,attributes:A,events:w};var h=class extends H{constructor(e){super(e);this._backdropElement=v(e,o.selectors.BACKDROP),this._containerElement=v(e,o.selectors.CONTAINER)}initializeAccessibility(){this._component.hasAttribute("role")||(this._component.setAttribute("role","dialog"),this._component.setAttribute("aria-modal","true"))}setVisibility(e){l(this._containerElement,e,o.classes.OPEN)}attach(){(document.querySelector(o.selectors.HOST)||document.body).appendChild(this._component)}detach(){C(this._component)}registerTransitionEndHandler(e){this._containerElement.addEventListener("transitionend",e)}deregisterTransitionEndHandler(e){this._containerElement.removeEventListener("transitionend",e)}setBodyListener(e,i,n){document.body.addEventListener(e,i,n)}removeBodyListener(e,i){document.body.removeEventListener(e,i)}setDocumentListener(e,i){document.addEventListener(e,i)}removeDocumentListener(e,i){document.removeEventListener(e,i)}registerBackdropClickHandler(e){this._backdropElement.addEventListener(c.events.BACKDROP_CLICK,e)}deregisterBackdropClickHandler(e){this._backdropElement.removeEventListener(c.events.BACKDROP_CLICK,e)}getOpenBottomSheets(e){return document.querySelectorAll(e)}trySetInitialFocus(){let e=b(this._component,o.selectors.INITIAL_FOCUS);e&&e.length&&e[e.length-1].focus()}isScrollable(){let e=this._getContentElement();return e?e.scrollHeight>e.offsetHeight:!1}isContentChild(e){let i=this._getContentElement();return i?i.contains(e):!1}initScrollable(){let e=this.isScrollable();l(this._component,e,o.classes.SCROLLABLE),l(this._containerElement,e,o.classes.SCROLLABLE)}setDragging(e){l(this._containerElement,e,o.classes.DRAGGING),l(this._component,e,o.classes.DRAGGING)}setBackdropVisiblity(e){this._backdropElement.hidden=!e}setFullscreen(e){l(this._containerElement,e,o.classes.FULLSCREEN)}tryLayoutChildren(){let e=[L.elementName,x.elementName,D.elementName,O.elementName];Array.from(this._component.querySelectorAll(e.join(","))).filter(n=>typeof n.layout=="function").forEach(n=>n.layout())}setContainerHeight(e){if(e!=null){let i=Math.min(100,100*e/window.innerHeight);this._containerElement.style.maxHeight=`${i}%`}else this._containerElement.style.removeProperty("max-height")}getContainerBounds(){return this._containerElement.getBoundingClientRect()}setDragTargetHandler(e,i){this._containerElement.addEventListener(e,i)}removeDragTargetHandler(e,i){this._containerElement.removeEventListener(e,i)}setBodyScrollHandler(e){let i=this._getContentElement();i&&i.addEventListener("scroll",e)}_getContentElement(){let e=Array.from(b(this._component,o.selectors.CONTENT_BODY,!1));return e.length?e[0]:null}};var m=class{constructor(t){this._adapter=t;this._open=!1;this._backdropClose=!0;this._escapeClose=!0;this._fullscreen=!1;this._showBackdrop=!1;this._isDragging=!1;this._bodyScrollHandler=()=>this._onBodyScroll();this._dragStartHandler=t=>this._onDragStart(t);this._dragMoveHandler=t=>this._onDragMove(t);this._dragEndHandler=()=>this._onDragEnd();this._dragCancelHandler=()=>this._onDragCancel();this._openTransitionEndHandler=e=>this._onOpenTransitionEnd(),this._closeTransitionEndHandler=e=>this._onCloseTransitionEnd(),this._documentKeydownHandler=e=>this._onDocumentKeydown(e),this._backdropClickHandler=e=>this._onBackdropClick(e)}initialize(){this._adapter.initializeAccessibility()}destroy(){this._open&&(this._adapter.deregisterTransitionEndHandler(this._openTransitionEndHandler),this._adapter.removeDocumentListener("keydown",this._documentKeydownHandler),this._adapter.deregisterBackdropClickHandler(this._backdropClickHandler))}_setOpen(t){this._open=t,this._open?this._openBottomSheet():this._closeBottomSheet(),this._adapter.toggleHostAttribute(o.attributes.OPEN,this._open)}_openBottomSheet(){this._adapter.attach(),this._adapter.setBodyAttribute(o.attributes.OPEN,"true"),this._adapter.registerTransitionEndHandler(this._openTransitionEndHandler),this._setDocumentKeydownListener(this._escapeClose),this._setBackdropClickListener(this._backdropClose),window.requestAnimationFrame(()=>{window.requestAnimationFrame(()=>{this._adapter.setVisibility(!0),this._adapter.emitHostEvent(o.events.OPEN),this._adapter.trySetInitialFocus(),this._adapter.initScrollable()})})}_closeBottomSheet(){this._adapter.deregisterTransitionEndHandler(this._openTransitionEndHandler),this._adapter.removeDocumentListener("keydown",this._documentKeydownHandler),this._adapter.deregisterBackdropClickHandler(this._backdropClickHandler),this._adapter.registerTransitionEndHandler(this._closeTransitionEndHandler),this._adapter.setVisibility(!1)}_onCloseTransitionEnd(){this._adapter.emitHostEvent(o.events.CLOSE),this._adapter.detach(),this._adapter.getOpenBottomSheets(o.elementName).length||this._adapter.removeBodyAttribute(o.attributes.OPEN)}_onOpenTransitionEnd(){this._open&&(this._adapter.deregisterTransitionEndHandler(this._openTransitionEndHandler),this._adapter.emitHostEvent(o.events.READY),this._adapter.tryLayoutChildren(),this._adapter.isScrollable()&&this._initScrollableHandlers())}_onDocumentKeydown(t){t.stopPropagation(),t.key&&(t.key==="Escape"||t.key==="Esc")&&this._tryClose()}_onBackdropClick(t){t.stopPropagation(),this._tryClose()}async _tryClose(){if(this._adapter.emitHostEvent(o.events.BEFORE_CLOSE,void 0,void 0,!0)){if(!this._beforeCloseCallback){this.open=!1;return}try{if(await Promise.resolve(this._beforeCloseCallback())){this.open=!1;return}}catch(e){return}}}_setBackdropClickListener(t){this._open&&(t?this._adapter.registerBackdropClickHandler(this._backdropClickHandler):this._adapter.deregisterBackdropClickHandler(this._backdropClickHandler))}_setDocumentKeydownListener(t){this._open&&(t?this._adapter.addDocumentListener("keydown",this._documentKeydownHandler):this._adapter.removeDocumentListener("keydown",this._documentKeydownHandler))}set backdropClose(t){t=!!t,this._backdropClose!==t&&(this._backdropClose=t,this._setBackdropClickListener(this._backdropClose),this._adapter.toggleHostAttribute(o.attributes.BACKDROP_CLOSE,this._backdropClose))}get backdropClose(){return this._backdropClose}set escapeClose(t){t=!!t,this._escapeClose!==t&&(this._escapeClose=t,this._setDocumentKeydownListener(this._escapeClose),this._adapter.toggleHostAttribute(o.attributes.ESCAPE_CLOSE,this._escapeClose))}get escapeClose(){return this._escapeClose}get open(){return this._open}set open(t){if(this._open!==t&&(t=!!t,t!==this._open)){let e=t?this._openCallback:this._closeCallback;e?Promise.resolve(e()).then(()=>{this._setOpen(t)}).catch(()=>{}):this._setOpen(t)}}get fullscreen(){return this._fullscreen}set fullscreen(t){this._fullscreen!==t&&(this._fullscreen=t,this._adapter.setFullscreen(this._fullscreen),this._adapter.toggleHostAttribute(o.attributes.FULLSCREEN,this._fullscreen))}get showBackdrop(){return this._showBackdrop}set showBackdrop(t){this._showBackdrop!==t&&(this._showBackdrop=t,this._adapter.setBackdropVisiblity(t),this._adapter.toggleHostAttribute(o.attributes.SHOW_BACKDROP,this._showBackdrop))}get openCallback(){return this._openCallback}set openCallback(t){this._openCallback=t}get closeCallback(){return this._closeCallback}set closeCallback(t){this._closeCallback=t}get beforeCloseCallback(){return this._beforeCloseCallback}set beforeCloseCallback(t){this._beforeCloseCallback=t}_initScrollableHandlers(){!this._fullscreen&&this._adapter.isScrollable()&&(this._adapter.setDragTargetHandler("mousedown",this._dragStartHandler),this._adapter.setDragTargetHandler("touchstart",this._dragStartHandler),this._adapter.setBodyScrollHandler(this._bodyScrollHandler))}_onBodyScroll(){!this._fullscreen&&!this._isDragging&&(this.fullscreen=!0,this._adapter.emitHostEvent(o.events.FULLSCREEN,this._fullscreen))}_onDragStart(t){if(this._fullscreen){let n=f(t);if(this._adapter.isScrollable()&&this._adapter.isContentChild(n[0]))return}t.stopPropagation();let e=this._adapter.getContainerBounds(),i=t instanceof MouseEvent?t.clientY:t.touches[0].clientY;this._dragContext={top:i-e.top,height:e.height},this._adapter.setBodyListener("mousemove",this._dragMoveHandler,{passive:!1}),this._adapter.setBodyListener("touchmove",this._dragMoveHandler,{passive:!1}),this._adapter.setBodyListener("mouseup",this._dragEndHandler),this._adapter.setBodyListener("touchend",this._dragEndHandler),this._adapter.setBodyListener("touchcancel",this._dragCancelHandler)}_onDragMove(t){if(t.stopPropagation(),t.preventDefault(),!this._dragContext)return;let e=t instanceof MouseEvent?t.clientY:t.touches[0].clientY,i={y:window.innerHeight-e+this._dragContext.top};if(!this._isDragging){if(this._isDragging=!0,!this._adapter.emitHostEvent(o.events.DRAG_START,i,!0,!0))return;this._adapter.setDragging(!0)}let n=this._fullscreen?i:{y:Math.max(i.y,this._dragContext.height)};(!this._lastPosition||n.y!==this._lastPosition.y)&&this._adapter.emitHostEvent(o.events.DRAGGED,n,!0,!0)&&(this._lastPosition=E(g({},n),{clientY:e}),this._adapter.setContainerHeight(n.y))}_onDragEnd(){if(this._lastPosition){let t=this._lastPosition.clientY,e=this._dragContext;e&&(this._fullscreen&&t>0?(this.fullscreen=!1,this._adapter.emitHostEvent(o.events.FULLSCREEN,this._fullscreen)):!this._fullscreen&&t<e.height+e.top&&(this.fullscreen=!0,this._adapter.emitHostEvent(o.events.FULLSCREEN,this._fullscreen)))}this._isDragging&&this._adapter.emitHostEvent(o.events.DRAG_END),this._dragComplete()}_onDragCancel(){this._isDragging&&this._adapter.emitHostEvent(o.events.DRAG_CANCEL),this._dragComplete()}_dragComplete(){this._adapter.setDragging(!1),this._adapter.removeBodyListener("mousemove",this._dragMoveHandler),this._adapter.removeBodyListener("touchmove",this._dragMoveHandler),this._adapter.removeBodyListener("mouseup",this._dragEndHandler),this._adapter.removeBodyListener("touchend",this._dragEndHandler),this._adapter.removeBodyListener("touchcancel",this._dragCancelHandler),this._adapter.setContainerHeight(null),this._lastPosition=void 0,this._dragContext=void 0,this._isDragging=!1}};var I='<template><forge-backdrop hidden part="backdrop"></forge-backdrop><div class="forge-bottom-sheet" part="root"><slot></slot></div></template>',R=".forge-bottom-sheet{background-color:#fff;background-color:var(--mdc-theme-surface,#fff);-webkit-box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12);box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12);border-radius:4px 4px 0 0;border-radius:var(--forge-bottom-sheet-border-radius,4px 4px 0 0);max-width:50%;max-width:var(--forge-bottom-sheet-desktop-max-width,50%);-webkit-box-sizing:border-box;box-sizing:border-box;position:fixed;bottom:0;right:0;left:0;max-height:50%;margin:0 auto;display:-webkit-inline-box;display:inline-flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-webkit-transform:translateY(100%);transform:translateY(100%);-webkit-transition:max-height var(--forge-bottom-sheet-transition-duration, 250ms) ease-in,-webkit-transform var(--forge-bottom-sheet-transition-duration-close, 200ms) cubic-bezier(.4, 0, .2, 1);transition:max-height var(--forge-bottom-sheet-transition-duration, 250ms) ease-in,-webkit-transform var(--forge-bottom-sheet-transition-duration-close, 200ms) cubic-bezier(.4, 0, .2, 1);transition:max-height var(--forge-bottom-sheet-transition-duration, 250ms) ease-in,transform var(--forge-bottom-sheet-transition-duration-close, 200ms) cubic-bezier(.4, 0, .2, 1);transition:max-height var(--forge-bottom-sheet-transition-duration, 250ms) ease-in,transform var(--forge-bottom-sheet-transition-duration-close, 200ms) cubic-bezier(.4, 0, .2, 1),-webkit-transform var(--forge-bottom-sheet-transition-duration-close, 200ms) cubic-bezier(.4, 0, .2, 1)}@media (max-width:600px){.forge-bottom-sheet{max-width:100%;width:100%;margin:0;border-radius:0}}.forge-bottom-sheet--open{-webkit-transform:translateY(0);transform:translateY(0);-webkit-transition-duration:var(--forge-bottom-sheet-transition-duration, 250ms);transition-duration:var(--forge-bottom-sheet-transition-duration, 250ms)}.forge-bottom-sheet--fullscreen.forge-bottom-sheet--open{height:100%;max-height:100%;-webkit-transition:max-height var(--forge-bottom-sheet-transition-duration, 250ms) ease-in;transition:max-height var(--forge-bottom-sheet-transition-duration, 250ms) ease-in}.forge-bottom-sheet--dragging{-webkit-transition:none!important;transition:none!important}.forge-bottom-sheet--scrollable{height:100%}:host{z-index:8;z-index:var(--forge-z-index-dialog,8);position:fixed}:host forge-backdrop{position:absolute;top:0;bottom:0;left:0;right:0;position:fixed}:host([hidden]){display:none}",r=class extends HTMLElement{constructor(){super();S(this,I,R),this._foundation=new m(new h(this))}static get observedAttributes(){return[o.attributes.BACKDROP_CLOSE,o.attributes.ESCAPE_CLOSE,o.attributes.OPEN,o.attributes.FULLSCREEN,o.attributes.SHOW_BACKDROP]}connectedCallback(){this._foundation.initialize()}disconnectedCallback(){this._foundation.destroy()}attributeChangedCallback(e,i,n){switch(e){case o.attributes.BACKDROP_CLOSE:this.backdropClose=d(n);break;case o.attributes.ESCAPE_CLOSE:this.escapeClose=d(n);break;case o.attributes.OPEN:this.open=d(n);break;case o.attributes.FULLSCREEN:this.fullscreen=d(n);break;case o.attributes.SHOW_BACKDROP:this.showBackdrop=d(n);break}}};s([a()],r.prototype,"backdropClose",2),s([a()],r.prototype,"escapeClose",2),s([a()],r.prototype,"open",2),s([a()],r.prototype,"fullscreen",2),s([a()],r.prototype,"showBackdrop",2),s([a()],r.prototype,"openCallback",2),s([a()],r.prototype,"closeCallback",2),s([a()],r.prototype,"beforeCloseCallback",2),r=s([B({name:o.elementName,dependencies:[T]})],r);function ge(){k(r)}export{o as a,h as b,m as c,r as d,ge as e};
7
+ //# sourceMappingURL=chunk.5T7TT3AB.js.map
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../src/bottom-sheet/bottom-sheet-constants.ts", "../../src/bottom-sheet/bottom-sheet-adapter.ts", "../../src/bottom-sheet/bottom-sheet-foundation.ts", "../../src/bottom-sheet/bottom-sheet.ts", "../../src/bottom-sheet/index.ts"],
4
4
  "sourcesContent": ["import { BACKDROP_CONSTANTS } from '../backdrop';\nimport { COMPONENT_NAME_PREFIX } from '../constants';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}bottom-sheet`;\n\nconst classes = {\n DRAGGING: 'forge-bottom-sheet--dragging',\n FULLSCREEN: 'forge-bottom-sheet--fullscreen',\n OPEN: 'forge-bottom-sheet--open',\n SCROLLABLE: 'forge-bottom-sheet--scrollable'\n};\n\nconst attributes = {\n BACKDROP_CLOSE: 'backdrop-close',\n ESCAPE_CLOSE: 'escape-close',\n FULLSCREEN: 'fullscreen',\n INITIAL_FOCUS: `${elementName}-focus`,\n OPEN: `${elementName}-open`,\n SHOW_BACKDROP: 'show-backdrop'\n};\n\nconst selectors = {\n BACKDROP: BACKDROP_CONSTANTS.elementName,\n CONTAINER: '.forge-bottom-sheet',\n CONTENT_BODY: '[forge-bottom-sheet-body]',\n INITIAL_FOCUS: `[${attributes.INITIAL_FOCUS}]`,\n HOST: `[${elementName}-host]`\n};\n\nconst events = {\n BEFORE_CLOSE: `forge-bottom-sheet-before-close`,\n CLOSE: `forge-bottom-sheet-close`,\n OPEN: `forge-bottom-sheet-open`,\n READY: `forge-bottom-sheet-ready`,\n DRAG_START: `forge-bottom-sheet-drag-start`,\n DRAGGED: `forge-bottom-sheet-dragged`,\n DRAG_END: `forge-bottom-sheet-drag-end`,\n DRAG_CANCEL: `forge-bottom-sheet-drag-cancel`,\n FULLSCREEN: `forge-bottom-sheet-fullscreen`\n};\n\nexport const BOTTOM_SHEET_CONSTANTS = {\n elementName,\n classes,\n selectors,\n attributes,\n events\n};\n\nexport interface IBottomSheetDragEventData {\n y: number;\n}\n\nexport interface IBottomSheetDragStartEventData extends IBottomSheetDragEventData {}\n\nexport interface IBottomSheetDragContext {\n top: number;\n height: number;\n}\n", "import { getShadowElement, removeElement, deepQuerySelectorAll, toggleClass } from '@tylertech/forge-core';\nimport { BACKDROP_CONSTANTS, IBackdropComponent } from '../backdrop';\nimport { CHECKBOX_CONSTANTS } from '../checkbox';\nimport { BaseAdapter, IBaseAdapter } from '../core/base/base-adapter';\nimport { ICON_BUTTON_CONSTANTS } from '../icon-button';\nimport { RADIO_CONSTANTS } from '../radio';\nimport { SWITCH_CONSTANTS } from '../switch';\nimport { IBottomSheetComponent } from './bottom-sheet';\nimport { BOTTOM_SHEET_CONSTANTS } from './bottom-sheet-constants';\n\nexport interface IBottomSheetAdapter extends IBaseAdapter {\n initializeAccessibility(): void;\n setVisibility(visible: boolean): void;\n attach(): void;\n detach(): void;\n registerTransitionEndHandler: (handler: (evt: TransitionEvent) => void) => void;\n deregisterTransitionEndHandler: (handler: (evt: TransitionEvent) => void) => void;\n setBodyListener(type: string, listener: (evt: Event) => void, options?: AddEventListenerOptions): void;\n removeBodyListener(type: string, listener: (evt: Event) => void): void;\n setDocumentListener(type: string, listener: (evt: Event) => void): void;\n removeDocumentListener(type: string, listener: (evt: Event) => void): void;\n registerBackdropClickHandler: (handler: (evt: CustomEvent) => void) => void;\n deregisterBackdropClickHandler: (handler: (evt: CustomEvent) => void) => void;\n getOpenBottomSheets: (selector: string) => NodeListOf<HTMLElement>;\n trySetInitialFocus: () => void;\n isScrollable(): boolean;\n isContentChild(el: HTMLElement): boolean;\n initScrollable(): void;\n setDragging(isDragging: boolean): void;\n setBackdropVisiblity(value: boolean): void;\n setFullscreen(value: boolean): void;\n tryLayoutChildren(): void;\n setContainerHeight(height: number | null): void;\n getContainerBounds(): DOMRect;\n setDragTargetHandler(type: string, listener: (evt: MouseEvent) => void): void;\n removeDragTargetHandler(type: string, listener: (evt: MouseEvent) => void): void;\n setBodyScrollHandler(listener: (evt: Event) => void): void;\n}\n\n/**\n * Provides facilities for interacting with the internal DOM of `BottomSheetComponent`.\n */\nexport class BottomSheetAdapter extends BaseAdapter<IBottomSheetComponent> implements IBottomSheetAdapter {\n private _backdropElement: IBackdropComponent;\n private _containerElement: HTMLElement;\n\n constructor(component: IBottomSheetComponent) {\n super(component);\n this._backdropElement = getShadowElement(component, BOTTOM_SHEET_CONSTANTS.selectors.BACKDROP) as IBackdropComponent;\n this._containerElement = getShadowElement(component, BOTTOM_SHEET_CONSTANTS.selectors.CONTAINER);\n }\n\n public initializeAccessibility(): void {\n if (!this._component.hasAttribute('role')) {\n this._component.setAttribute('role', 'dialog');\n this._component.setAttribute('aria-modal', 'true');\n }\n }\n\n public setVisibility(visible: boolean): void {\n toggleClass(this._containerElement, visible, BOTTOM_SHEET_CONSTANTS.classes.OPEN);\n }\n\n public attach(): void {\n const hostElement = document.querySelector(BOTTOM_SHEET_CONSTANTS.selectors.HOST) || document.body;\n hostElement.appendChild(this._component);\n }\n\n public detach(): void {\n removeElement(this._component);\n }\n\n public registerTransitionEndHandler(handler: (evt: TransitionEvent) => void): void {\n this._containerElement.addEventListener('transitionend', handler);\n }\n\n public deregisterTransitionEndHandler(handler: (evt: TransitionEvent) => void): void {\n this._containerElement.removeEventListener('transitionend', handler);\n }\n\n public setBodyListener(type: string, listener: (evt: Event) => void, options?: AddEventListenerOptions): void {\n document.body.addEventListener(type, listener, options);\n }\n\n public removeBodyListener(type: string, listener: (evt: Event) => void): void {\n document.body.removeEventListener(type, listener);\n }\n\n public setDocumentListener(type: string, listener: (evt: Event) => void): void {\n document.addEventListener(type, listener);\n }\n\n public removeDocumentListener(type: string, listener: (evt: Event) => void): void {\n document.removeEventListener(type, listener);\n }\n\n public registerBackdropClickHandler(handler: (evt: CustomEvent) => void): void {\n this._backdropElement.addEventListener(BACKDROP_CONSTANTS.events.BACKDROP_CLICK, handler);\n }\n\n public deregisterBackdropClickHandler(handler: (evt: CustomEvent) => void): void {\n this._backdropElement.removeEventListener(BACKDROP_CONSTANTS.events.BACKDROP_CLICK, handler);\n }\n\n public getOpenBottomSheets(selector: string): NodeListOf<HTMLElement> {\n return document.querySelectorAll(selector);\n }\n\n public trySetInitialFocus(): void {\n const elements = deepQuerySelectorAll(this._component, BOTTOM_SHEET_CONSTANTS.selectors.INITIAL_FOCUS);\n if (elements && elements.length) {\n const initialElement = elements[elements.length - 1] as HTMLElement;\n initialElement.focus();\n }\n }\n\n public isScrollable(): boolean {\n const contentElement = this._getContentElement();\n return contentElement ? contentElement.scrollHeight > contentElement.offsetHeight : false;\n }\n\n public isContentChild(el: HTMLElement): boolean {\n const contentElement = this._getContentElement();\n return contentElement ? contentElement.contains(el) : false;\n }\n\n public initScrollable(): void {\n const isScrollable = this.isScrollable();\n toggleClass(this._component, isScrollable, BOTTOM_SHEET_CONSTANTS.classes.SCROLLABLE);\n toggleClass(this._containerElement, isScrollable, BOTTOM_SHEET_CONSTANTS.classes.SCROLLABLE);\n }\n\n public setDragging(isDragging: boolean): void {\n toggleClass(this._containerElement, isDragging, BOTTOM_SHEET_CONSTANTS.classes.DRAGGING);\n toggleClass(this._component, isDragging, BOTTOM_SHEET_CONSTANTS.classes.DRAGGING);\n }\n\n public setBackdropVisiblity(value: boolean): void {\n this._backdropElement.hidden = !value;\n }\n\n public setFullscreen(value: boolean): void {\n toggleClass(this._containerElement, value, BOTTOM_SHEET_CONSTANTS.classes.FULLSCREEN);\n }\n\n public tryLayoutChildren(): void {\n const layoutChildren = [ICON_BUTTON_CONSTANTS.elementName, SWITCH_CONSTANTS.elementName, CHECKBOX_CONSTANTS.elementName, RADIO_CONSTANTS.elementName];\n const commonLayoutElements = Array.from(this._component.querySelectorAll(layoutChildren.join(','))) as any[];\n commonLayoutElements.filter(el => typeof el.layout === 'function').forEach(el => el.layout());\n }\n\n public setContainerHeight(height: number | null): void {\n if (height != null) {\n const percent = Math.min(100, 100 * height / window.innerHeight);\n this._containerElement.style.maxHeight = `${percent}%`;\n } else {\n this._containerElement.style.removeProperty('max-height');\n }\n }\n\n public getContainerBounds(): DOMRect {\n return this._containerElement.getBoundingClientRect() as DOMRect;\n }\n\n public setDragTargetHandler(type: string, listener: (evt: MouseEvent) => void): void {\n this._containerElement.addEventListener(type, listener);\n }\n\n public removeDragTargetHandler(type: string, listener: (evt: MouseEvent) => void): void {\n this._containerElement.removeEventListener(type, listener);\n }\n\n public setBodyScrollHandler(listener: (evt: MouseEvent) => void): void {\n const contentElement = this._getContentElement();\n if (contentElement) {\n contentElement.addEventListener('scroll', listener);\n }\n }\n\n private _getContentElement(): HTMLElement | null {\n const contentElements = Array.from(deepQuerySelectorAll(this._component, BOTTOM_SHEET_CONSTANTS.selectors.CONTENT_BODY, false)) as HTMLElement[];\n return contentElements.length ? contentElements[0] : null;\n }\n}\n", "import { ICustomElementFoundation, getEventPath } from '@tylertech/forge-core';\n\nimport { IBottomSheetAdapter } from './bottom-sheet-adapter';\nimport { BOTTOM_SHEET_CONSTANTS, IBottomSheetDragContext, IBottomSheetDragStartEventData } from './bottom-sheet-constants';\n\nexport interface IBottomSheetFoundation extends ICustomElementFoundation {\n backdropClose: boolean;\n escapeClose: boolean;\n open: boolean;\n fullscreen: boolean;\n showBackdrop: boolean;\n openCallback: () => void | Promise<void>;\n closeCallback: () => void | Promise<void>;\n beforeCloseCallback: () => boolean | Promise<boolean>;\n}\n\nexport class BottomSheetFoundation implements IBottomSheetFoundation {\n private _open = false;\n private _backdropClose = true;\n private _escapeClose = true;\n private _fullscreen = false;\n private _showBackdrop = false;\n private _openCallback: () => void | Promise<void>;\n private _closeCallback: () => void | Promise<void>;\n private _beforeCloseCallback: () => boolean | Promise<boolean>;\n private _openTransitionEndHandler: (evt: TransitionEvent) => void;\n private _closeTransitionEndHandler: (evt: TransitionEvent) => void;\n private _documentKeydownHandler: (evt: KeyboardEvent) => void;\n private _backdropClickHandler: (evt: CustomEvent) => void;\n private _isDragging = false;\n private _dragContext: IBottomSheetDragContext | undefined;\n private _lastPosition: { y: number; clientY: number } | undefined;\n private _bodyScrollHandler = (): void => this._onBodyScroll();\n private _dragStartHandler = ($event: MouseEvent): void => this._onDragStart($event);\n private _dragMoveHandler = ($event: MouseEvent): void => this._onDragMove($event);\n private _dragEndHandler = (): void => this._onDragEnd();\n private _dragCancelHandler = (): void => this._onDragCancel();\n\n constructor(public _adapter: IBottomSheetAdapter) {\n this._openTransitionEndHandler = (_evt: TransitionEvent) => this._onOpenTransitionEnd();\n this._closeTransitionEndHandler = (_evt: TransitionEvent) => this._onCloseTransitionEnd();\n this._documentKeydownHandler = (evt: KeyboardEvent) => this._onDocumentKeydown(evt);\n this._backdropClickHandler = (evt: CustomEvent) => this._onBackdropClick(evt);\n }\n\n public initialize(): void {\n this._adapter.initializeAccessibility();\n }\n\n public destroy(): void {\n if (this._open) {\n this._adapter.deregisterTransitionEndHandler(this._openTransitionEndHandler);\n this._adapter.removeDocumentListener('keydown', this._documentKeydownHandler);\n this._adapter.deregisterBackdropClickHandler(this._backdropClickHandler);\n }\n }\n\n private _setOpen(open: boolean): void {\n this._open = open;\n if (this._open) {\n this._openBottomSheet();\n } else {\n this._closeBottomSheet();\n }\n this._adapter.toggleHostAttribute(BOTTOM_SHEET_CONSTANTS.attributes.OPEN, this._open);\n }\n\n private _openBottomSheet(): void {\n this._adapter.attach();\n this._adapter.setBodyAttribute(BOTTOM_SHEET_CONSTANTS.attributes.OPEN, 'true');\n this._adapter.registerTransitionEndHandler(this._openTransitionEndHandler);\n this._setDocumentKeydownListener(this._escapeClose);\n this._setBackdropClickListener(this._backdropClose);\n\n // Ensure transitions are triggered properly\n window.requestAnimationFrame(() => {\n window.requestAnimationFrame(() => {\n this._adapter.setVisibility(true);\n this._adapter.emitHostEvent(BOTTOM_SHEET_CONSTANTS.events.OPEN);\n this._adapter.trySetInitialFocus();\n this._adapter.initScrollable();\n });\n });\n }\n\n private _closeBottomSheet(): void {\n this._adapter.deregisterTransitionEndHandler(this._openTransitionEndHandler);\n this._adapter.removeDocumentListener('keydown', this._documentKeydownHandler);\n this._adapter.deregisterBackdropClickHandler(this._backdropClickHandler);\n this._adapter.registerTransitionEndHandler(this._closeTransitionEndHandler);\n\n this._adapter.setVisibility(false);\n }\n\n private _onCloseTransitionEnd(): void {\n this._adapter.emitHostEvent(BOTTOM_SHEET_CONSTANTS.events.CLOSE);\n this._adapter.detach();\n const openBottomSheets = this._adapter.getOpenBottomSheets(BOTTOM_SHEET_CONSTANTS.elementName);\n if (!openBottomSheets.length) {\n this._adapter.removeBodyAttribute(BOTTOM_SHEET_CONSTANTS.attributes.OPEN);\n }\n }\n\n private _onOpenTransitionEnd(): void {\n if (!this._open) {\n return;\n }\n this._adapter.deregisterTransitionEndHandler(this._openTransitionEndHandler);\n this._adapter.emitHostEvent(BOTTOM_SHEET_CONSTANTS.events.READY);\n this._adapter.tryLayoutChildren();\n if (this._adapter.isScrollable()) {\n this._initScrollableHandlers();\n }\n }\n\n private _onDocumentKeydown(evt: KeyboardEvent): void {\n evt.stopPropagation();\n if (evt.key && (evt.key === 'Escape' || evt.key === 'Esc')) {\n this._tryClose();\n }\n }\n\n private _onBackdropClick(evt: CustomEvent): void {\n evt.stopPropagation();\n this._tryClose();\n }\n\n private async _tryClose(): Promise<void> {\n const isCancelled = !this._adapter.emitHostEvent(BOTTOM_SHEET_CONSTANTS.events.BEFORE_CLOSE, undefined, undefined, true);\n if (isCancelled) {\n return;\n }\n\n if (!this._beforeCloseCallback) {\n this.open = false;\n return;\n }\n\n try {\n const shouldClose = await Promise.resolve(this._beforeCloseCallback());\n if (shouldClose) {\n this.open = false;\n return;\n }\n } catch (err) {\n return;\n }\n }\n\n private _setBackdropClickListener(attach: boolean): void {\n if (!this._open) {\n return;\n }\n\n if (attach) {\n this._adapter.registerBackdropClickHandler(this._backdropClickHandler);\n } else {\n this._adapter.deregisterBackdropClickHandler(this._backdropClickHandler);\n }\n }\n\n private _setDocumentKeydownListener(attach: boolean): void {\n if (!this._open) {\n return;\n }\n\n if (attach) {\n this._adapter.addDocumentListener('keydown', this._documentKeydownHandler);\n } else {\n this._adapter.removeDocumentListener('keydown', this._documentKeydownHandler);\n }\n }\n\n /** Controls whether clicking the backdrop closes the bottom sheet or not. */\n public set backdropClose(value: boolean) {\n value = Boolean(value);\n if (this._backdropClose !== value) {\n this._backdropClose = value;\n this._setBackdropClickListener(this._backdropClose);\n this._adapter.toggleHostAttribute(BOTTOM_SHEET_CONSTANTS.attributes.BACKDROP_CLOSE, this._backdropClose);\n }\n }\n public get backdropClose(): boolean {\n return this._backdropClose;\n }\n\n /** Controls whether pressing the escape key closes the sheet or not. */\n public set escapeClose(value: boolean) {\n value = Boolean(value);\n if (this._escapeClose !== value) {\n this._escapeClose = value;\n this._setDocumentKeydownListener(this._escapeClose);\n this._adapter.toggleHostAttribute(BOTTOM_SHEET_CONSTANTS.attributes.ESCAPE_CLOSE, this._escapeClose);\n }\n }\n public get escapeClose(): boolean {\n return this._escapeClose;\n }\n\n public get open(): boolean {\n return this._open;\n }\n\n public set open(value: boolean) {\n if (this._open !== value) {\n value = Boolean(value);\n if (value !== this._open) {\n const callback = value ? this._openCallback : this._closeCallback;\n if (callback) {\n Promise.resolve(callback())\n .then(() => {\n this._setOpen(value);\n })\n .catch(() => { });\n } else {\n this._setOpen(value);\n }\n }\n }\n }\n\n public get fullscreen(): boolean {\n return this._fullscreen;\n }\n public set fullscreen(value: boolean) {\n if (this._fullscreen !== value) {\n this._fullscreen = value;\n this._adapter.setFullscreen(this._fullscreen);\n this._adapter.toggleHostAttribute(BOTTOM_SHEET_CONSTANTS.attributes.FULLSCREEN, this._fullscreen);\n }\n }\n\n public get showBackdrop(): boolean {\n return this._showBackdrop;\n }\n public set showBackdrop(value: boolean) {\n if (this._showBackdrop !== value) {\n this._showBackdrop = value;\n this._adapter.setBackdropVisiblity(value);\n this._adapter.toggleHostAttribute(BOTTOM_SHEET_CONSTANTS.attributes.SHOW_BACKDROP, this._showBackdrop);\n }\n }\n\n public get openCallback(): () => void | Promise<void> {\n return this._openCallback;\n }\n public set openCallback(callback: () => void | Promise<void>) {\n this._openCallback = callback;\n }\n\n public get closeCallback(): () => void | Promise<void> {\n return this._closeCallback;\n }\n public set closeCallback(callback: () => void | Promise<void>) {\n this._closeCallback = callback;\n }\n\n public get beforeCloseCallback(): () => boolean | Promise<boolean> {\n return this._beforeCloseCallback;\n }\n public set beforeCloseCallback(callback: () => boolean | Promise<boolean>) {\n this._beforeCloseCallback = callback;\n }\n\n /** If scrollable, allow drag to/from fullscreen, and make fullscreen on scroll. */\n private _initScrollableHandlers(): void {\n if (!this._fullscreen && this._adapter.isScrollable()) {\n this._adapter.setDragTargetHandler('mousedown', this._dragStartHandler);\n this._adapter.setDragTargetHandler('touchstart', this._dragStartHandler);\n this._adapter.setBodyScrollHandler(this._bodyScrollHandler);\n }\n }\n\n private _onBodyScroll(): void {\n if (!this._fullscreen && !this._isDragging) {\n this.fullscreen = true;\n this._adapter.emitHostEvent(BOTTOM_SHEET_CONSTANTS.events.FULLSCREEN, this._fullscreen);\n }\n }\n\n private _onDragStart(evt: MouseEvent | TouchEvent): void {\n if (this._fullscreen) {\n const eventPath = getEventPath(evt);\n const isWithinScrollContainer = this._adapter.isScrollable() && this._adapter.isContentChild(eventPath[0]);\n if (isWithinScrollContainer) {\n // We ignore drag events that originate from within the scrollable content when in full screen mode (to allow for scroll interactions)\n return;\n }\n }\n\n evt.stopPropagation();\n const bounds = this._adapter.getContainerBounds();\n const clientY = evt instanceof MouseEvent ? evt.clientY : evt.touches[0].clientY;\n this._dragContext = {\n top: clientY - bounds.top,\n height: bounds.height\n };\n this._adapter.setBodyListener('mousemove', this._dragMoveHandler, { passive: false });\n this._adapter.setBodyListener('touchmove', this._dragMoveHandler, { passive: false });\n this._adapter.setBodyListener('mouseup', this._dragEndHandler);\n this._adapter.setBodyListener('touchend', this._dragEndHandler);\n this._adapter.setBodyListener('touchcancel', this._dragCancelHandler);\n }\n\n private _onDragMove(evt: MouseEvent | TouchEvent): void {\n evt.stopPropagation();\n evt.preventDefault();\n if (!this._dragContext) {\n return;\n }\n const clientY = evt instanceof MouseEvent ? evt.clientY : evt.touches[0].clientY;\n const height = { y: window.innerHeight - clientY + this._dragContext.top };\n\n // If this is the beginning of the move sequence, we emit the start event (to allow for preventing default) and\n // then update the surface position if not prevented\n if (!this._isDragging) {\n this._isDragging = true;\n const canDrag = this._adapter.emitHostEvent(BOTTOM_SHEET_CONSTANTS.events.DRAG_START, height as IBottomSheetDragStartEventData, true, true);\n if (!canDrag) {\n return;\n }\n this._adapter.setDragging(true);\n }\n\n // If not fullscreen, clamp to minimum of original height.\n const newPosition = this._fullscreen ? height : { y: Math.max(height.y, this._dragContext.height) };\n\n // Only update the position if it actually changed\n if (!this._lastPosition || newPosition.y !== this._lastPosition.y) {\n const canMove = this._adapter.emitHostEvent(BOTTOM_SHEET_CONSTANTS.events.DRAGGED, newPosition as IBottomSheetDragStartEventData, true, true);\n if (canMove) {\n this._lastPosition = { ...newPosition, clientY };\n this._adapter.setContainerHeight(newPosition.y);\n }\n }\n }\n\n private _onDragEnd(): void {\n if (this._lastPosition) {\n const clientY = this._lastPosition.clientY;\n const dragContext = this._dragContext;\n if (dragContext) {\n if (this._fullscreen && clientY > 0) {\n this.fullscreen = false;\n this._adapter.emitHostEvent(BOTTOM_SHEET_CONSTANTS.events.FULLSCREEN, this._fullscreen);\n } else if (!this._fullscreen && clientY < dragContext.height + dragContext.top) {\n this.fullscreen = true;\n this._adapter.emitHostEvent(BOTTOM_SHEET_CONSTANTS.events.FULLSCREEN, this._fullscreen);\n }\n }\n }\n if (this._isDragging) {\n this._adapter.emitHostEvent(BOTTOM_SHEET_CONSTANTS.events.DRAG_END);\n }\n this._dragComplete();\n }\n\n private _onDragCancel(): void {\n if (this._isDragging) {\n this._adapter.emitHostEvent(BOTTOM_SHEET_CONSTANTS.events.DRAG_CANCEL);\n }\n this._dragComplete();\n }\n\n private _dragComplete(): void {\n this._adapter.setDragging(false);\n this._adapter.removeBodyListener('mousemove', this._dragMoveHandler);\n this._adapter.removeBodyListener('touchmove', this._dragMoveHandler);\n this._adapter.removeBodyListener('mouseup', this._dragEndHandler);\n this._adapter.removeBodyListener('touchend', this._dragEndHandler);\n this._adapter.removeBodyListener('touchcancel', this._dragCancelHandler);\n this._adapter.setContainerHeight(null);\n this._lastPosition = undefined;\n this._dragContext = undefined;\n this._isDragging = false;\n }\n}\n", "import { attachShadowTemplate, CustomElement, FoundationProperty, ICustomElement, upgradeProperty, coerceBoolean } from '@tylertech/forge-core';\n\nimport { BackdropComponent } from '../backdrop';\nimport { BottomSheetAdapter } from './bottom-sheet-adapter';\nimport { BOTTOM_SHEET_CONSTANTS, IBottomSheetDragEventData, IBottomSheetDragStartEventData } from './bottom-sheet-constants';\nimport { BottomSheetFoundation } from './bottom-sheet-foundation';\n\nconst template = '<template><forge-backdrop hidden part=\\\"backdrop\\\"></forge-backdrop><div class=\\\"forge-bottom-sheet\\\" part=\\\"root\\\"><slot></slot></div></template>';\nconst styles = '.forge-bottom-sheet{background-color:#fff;background-color:var(--mdc-theme-surface,#fff);-webkit-box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12);box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12);border-radius:4px 4px 0 0;border-radius:var(--forge-bottom-sheet-border-radius,4px 4px 0 0);max-width:50%;max-width:var(--forge-bottom-sheet-desktop-max-width,50%);-webkit-box-sizing:border-box;box-sizing:border-box;position:fixed;bottom:0;right:0;left:0;max-height:50%;margin:0 auto;display:-webkit-inline-box;display:inline-flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-webkit-transform:translateY(100%);transform:translateY(100%);-webkit-transition:max-height var(--forge-bottom-sheet-transition-duration, 250ms) ease-in,-webkit-transform var(--forge-bottom-sheet-transition-duration-close, 200ms) cubic-bezier(.4, 0, .2, 1);transition:max-height var(--forge-bottom-sheet-transition-duration, 250ms) ease-in,-webkit-transform var(--forge-bottom-sheet-transition-duration-close, 200ms) cubic-bezier(.4, 0, .2, 1);transition:max-height var(--forge-bottom-sheet-transition-duration, 250ms) ease-in,transform var(--forge-bottom-sheet-transition-duration-close, 200ms) cubic-bezier(.4, 0, .2, 1);transition:max-height var(--forge-bottom-sheet-transition-duration, 250ms) ease-in,transform var(--forge-bottom-sheet-transition-duration-close, 200ms) cubic-bezier(.4, 0, .2, 1),-webkit-transform var(--forge-bottom-sheet-transition-duration-close, 200ms) cubic-bezier(.4, 0, .2, 1)}@media (max-width:600px){.forge-bottom-sheet{max-width:100%;width:100%;margin:0;border-radius:0}}.forge-bottom-sheet--open{-webkit-transform:translateY(0);transform:translateY(0);-webkit-transition-duration:var(--forge-bottom-sheet-transition-duration, 250ms);transition-duration:var(--forge-bottom-sheet-transition-duration, 250ms)}.forge-bottom-sheet--fullscreen.forge-bottom-sheet--open{height:100%;max-height:100%;-webkit-transition:max-height var(--forge-bottom-sheet-transition-duration, 250ms) ease-in;transition:max-height var(--forge-bottom-sheet-transition-duration, 250ms) ease-in}.forge-bottom-sheet--dragging{-webkit-transition:none!important;transition:none!important}.forge-bottom-sheet--scrollable{height:100%}:host{z-index:8;z-index:var(--forge-z-index-dialog,8);position:fixed}:host forge-backdrop{position:absolute;top:0;bottom:0;left:0;right:0;position:fixed}:host([hidden]){display:none}';\n\nexport interface IBottomSheetComponent extends ICustomElement {\n showBackdrop: boolean;\n backdropClose: boolean;\n escapeClose: boolean;\n open: boolean;\n fullscreen: boolean;\n openCallback: () => void | Promise<void>;\n closeCallback: () => void | Promise<void>;\n beforeCloseCallback: () => boolean | Promise<boolean>;\n}\n\ndeclare global {\n // tslint:disable-next-line: interface-name\n interface HTMLElementTagNameMap {\n 'forge-bottom-sheet': IBottomSheetComponent;\n }\n\n interface HTMLElementEventMap {\n 'forge-bottom-sheet-open': CustomEvent<void>;\n 'forge-bottom-sheet-close': CustomEvent<void>;\n 'forge-bottom-sheet-before-close': CustomEvent<void>;\n 'forge-bottom-sheet-before-open': CustomEvent<void>;\n 'forge-bottom-sheet-ready': CustomEvent<void>;\n 'forge-bottom-sheet-drag-start': CustomEvent<IBottomSheetDragStartEventData>;\n 'forge-bottom-sheet-dragged': CustomEvent<IBottomSheetDragEventData>;\n 'forge-bottom-sheet-drag-end': CustomEvent<void>;\n 'forge-bottom-sheet-drag-cancel': CustomEvent<void>;\n 'forge-bottom-sheet-fullscreen': CustomEvent<boolean>;\n }\n}\n\n/**\n * The web component class behind the `<forge-bottom-sheet>` custom element.\n * \n * @tag forge-bottom-sheet\n */\n@CustomElement({\n name: BOTTOM_SHEET_CONSTANTS.elementName,\n dependencies: [BackdropComponent]\n})\nexport class BottomSheetComponent extends HTMLElement implements IBottomSheetComponent {\n public static get observedAttributes(): string[] {\n return [\n BOTTOM_SHEET_CONSTANTS.attributes.BACKDROP_CLOSE,\n BOTTOM_SHEET_CONSTANTS.attributes.ESCAPE_CLOSE,\n BOTTOM_SHEET_CONSTANTS.attributes.OPEN,\n BOTTOM_SHEET_CONSTANTS.attributes.FULLSCREEN,\n BOTTOM_SHEET_CONSTANTS.attributes.SHOW_BACKDROP\n ];\n }\n\n private _foundation: BottomSheetFoundation;\n\n constructor() {\n super();\n attachShadowTemplate(this, template, styles);\n this._foundation = new BottomSheetFoundation(new BottomSheetAdapter(this));\n }\n\n public connectedCallback(): void {\n this._foundation.initialize();\n }\n\n public disconnectedCallback(): void {\n this._foundation.destroy();\n }\n\n public attributeChangedCallback(name: string, _oldValue: string, newValue: string): void {\n switch (name) {\n case BOTTOM_SHEET_CONSTANTS.attributes.BACKDROP_CLOSE:\n this.backdropClose = coerceBoolean(newValue);\n break;\n case BOTTOM_SHEET_CONSTANTS.attributes.ESCAPE_CLOSE:\n this.escapeClose = coerceBoolean(newValue);\n break;\n case BOTTOM_SHEET_CONSTANTS.attributes.OPEN:\n this.open = coerceBoolean(newValue);\n break;\n case BOTTOM_SHEET_CONSTANTS.attributes.FULLSCREEN:\n this.fullscreen = coerceBoolean(newValue);\n break;\n case BOTTOM_SHEET_CONSTANTS.attributes.SHOW_BACKDROP:\n this.showBackdrop = coerceBoolean(newValue);\n break;\n }\n }\n\n /** Controls whether clicking the backdrop closes the bottom-sheet or not. Default is true. */\n @FoundationProperty()\n public declare backdropClose: boolean;\n\n /** Controls whether pressing the escape key closes the bottom-sheet or not. Default is true. */\n @FoundationProperty()\n public declare escapeClose: boolean;\n\n /** Controls whether the bottom-sheet is open or not. Default is false. */\n @FoundationProperty()\n public declare open: boolean;\n\n /** Controls whether the bottom-sheet is full screen or not. Default is false. */\n @FoundationProperty()\n public declare fullscreen: boolean;\n\n /** Shows a backdrop to prevent interacting with other content until the bottom sheet is dismissed. Default is false. */\n @FoundationProperty()\n public declare showBackdrop: boolean;\n\n /** The function to call when the bottom-sheet wants to open. */\n @FoundationProperty()\n public declare openCallback: () => void | Promise<void>;\n\n /** the function to call when the bottom-sheet wants to close. */\n @FoundationProperty()\n public declare closeCallback: () => void | Promise<void>;\n\n /** the function to call when the bottom-sheet wants to close. */\n @FoundationProperty()\n public declare beforeCloseCallback: () => boolean | Promise<boolean>;\n}\n", "import { defineCustomElement } from '@tylertech/forge-core';\n\nimport { BottomSheetComponent } from './bottom-sheet';\n\nexport * from './bottom-sheet-adapter';\nexport * from './bottom-sheet-constants';\nexport * from './bottom-sheet-foundation';\nexport * from './bottom-sheet';\n\nexport function defineBottomSheetComponent(): void {\n defineCustomElement(BottomSheetComponent);\n}\n"],
5
- "mappings": "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",
5
+ "mappings": "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",
6
6
  "names": ["elementName", "COMPONENT_NAME_PREFIX", "classes", "attributes", "selectors", "BACKDROP_CONSTANTS", "events", "BOTTOM_SHEET_CONSTANTS", "BottomSheetAdapter", "BaseAdapter", "component", "getShadowElement", "BOTTOM_SHEET_CONSTANTS", "visible", "toggleClass", "removeElement", "handler", "type", "listener", "options", "BACKDROP_CONSTANTS", "selector", "elements", "deepQuerySelectorAll", "contentElement", "el", "isScrollable", "isDragging", "value", "layoutChildren", "ICON_BUTTON_CONSTANTS", "SWITCH_CONSTANTS", "CHECKBOX_CONSTANTS", "RADIO_CONSTANTS", "height", "percent", "contentElements", "BottomSheetFoundation", "_adapter", "$event", "_evt", "evt", "open", "BOTTOM_SHEET_CONSTANTS", "err", "attach", "value", "callback", "eventPath", "getEventPath", "bounds", "clientY", "height", "newPosition", "__spreadProps", "__spreadValues", "dragContext", "template", "styles", "BottomSheetComponent", "attachShadowTemplate", "BottomSheetFoundation", "BottomSheetAdapter", "BOTTOM_SHEET_CONSTANTS", "name", "_oldValue", "newValue", "coerceBoolean", "__decorateClass", "FoundationProperty", "CustomElement", "BackdropComponent", "defineBottomSheetComponent", "defineCustomElement", "BottomSheetComponent"]
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 L,b as i,c as g,f as v}from"./chunk.Y4ZS3A6F.js";import{a as f}from"./chunk.3TKTJ3BY.js";import{a as r}from"./chunk.NVUMRW44.js";import{a as _}from"./chunk.T4J66YX5.js";import{a as h,e as m,k as I}from"./chunk.TPXXHX5J.js";import{k as l,n as b}from"./chunk.J2M2MXP2.js";import{d as a}from"./chunk.M3QDAYD2.js";var d=class extends f{constructor(t){super(t)}initialize(){this._component.hasAttribute("role")||this._component.setAttribute("role","list")}focusNextListItem(){let t=this._getFocusableListItems();if(t.length){let e=t.findIndex(s=>s.matches(":focus")),n=e<t.length-1?e+1:0;n<=t.length-1&&t[n].focus({preventScroll:!0})}}focusPreviousListItem(){let t=this._getFocusableListItems();if(t.length){let e=t.findIndex(s=>s.matches(":focus")),n=e>0?e-1:t.length-1;n>=0&&t[n].focus({preventScroll:!0})}}focusFirstListItem(){let t=this._getFocusableListItems();t.length&&t[0].focus({preventScroll:!0})}focusLastListItem(){let t=this._getFocusableListItems();t.length&&t[t.length-1].focus({preventScroll:!0})}setSelectedListItems(t){let e=this._getListItems();if(e.length){let n=Array.isArray(t)?t:[t];for(let s of e)s.selected=n.some(c=>b(c,s.value))}}updateListItems(t){this._getListItems().forEach(t)}updateListItemRole(){var e;let t=(e=g[this._component.getAttribute("role")])!=null?e:"listitem";this.updateListItems(n=>n.role=t)}_getListItems(){return Array.from(this._component.querySelectorAll(L.elementName)).filter(e=>e.closest(i.elementName)===this._component)}_getFocusableListItems(){return this._getListItems().filter(t=>!t.disabled&&!t.nonInteractive&&!t.hidden)}};var p=class{constructor(t){this._adapter=t;this._nonInteractive=!1;this._disabled=!1;this._dense=!1;this._propagateClick=!0;this._indented=!1;this._twoLine=!1;this._threeLine=!1;this._wrap=!1;this._keydownListener=this._onKeydown.bind(this)}initialize(){this._adapter.initialize(),this._nonInteractive||this._adapter.addHostListener("keydown",this._keydownListener),this._selectedValue!==void 0&&this._selectedValue!==null&&this._adapter.setSelectedListItems(this._selectedValue)}_onKeydown(t){let{key:e,altKey:n,ctrlKey:s,shiftKey:c,metaKey:E}=t;n||s||c||E||(e==="Home"?(t.preventDefault(),this._adapter.focusFirstListItem()):e==="End"?(t.preventDefault(),this._adapter.focusLastListItem()):e==="ArrowUp"?(t.preventDefault(),this._adapter.focusPreviousListItem()):e==="ArrowDown"&&(t.preventDefault(),this._adapter.focusNextListItem()))}updateRole(){this._adapter.updateListItemRole()}get static(){return this.nonInteractive}set static(t){this.nonInteractive=t}get nonInteractive(){return this._nonInteractive}set nonInteractive(t){this._nonInteractive!==t&&(this._nonInteractive=t,this._adapter.toggleHostListener("keydown",this._keydownListener,!this._nonInteractive),this._adapter.updateListItems(e=>e.nonInteractive=this._nonInteractive),this._adapter.toggleHostAttribute(i.attributes.STATIC,this._nonInteractive),this._adapter.toggleHostAttribute(i.attributes.NON_INTERACTIVE,this._nonInteractive))}get disabled(){return this._disabled}set disabled(t){this._disabled!==t&&(this._disabled=t,this._adapter.updateListItems(e=>e.disabled=this._disabled),this._adapter.toggleHostAttribute(i.attributes.DISABLED,this._disabled))}get dense(){return this._dense}set dense(t){this._dense!==t&&(this._dense=t,this._adapter.updateListItems(e=>e.dense=this._dense),this._adapter.toggleHostAttribute(i.attributes.DENSE,this._dense))}get propagateClick(){return this._propagateClick}set propagateClick(t){this._propagateClick!==t&&(this._propagateClick=t,this._adapter.updateListItems(e=>e.propagateClick=this._propagateClick),this._adapter.setHostAttribute(i.attributes.PROPAGATE_CLICK,this._propagateClick?"true":"false"))}get indented(){return this._indented}set indented(t){this._indented!==t&&(this._indented=t,this._adapter.updateListItems(e=>e.indented=this._indented),this._adapter.toggleHostAttribute(i.attributes.INDENTED,this._indented))}get selectedValue(){return this._selectedValue}set selectedValue(t){this._selectedValue!==t&&(this._selectedValue=t,this._adapter.setSelectedListItems(this._selectedValue))}get twoLine(){return this._twoLine}set twoLine(t){this._twoLine!==t&&(this._twoLine=t,this._adapter.updateListItems(e=>e.twoLine=this._twoLine),this._adapter.toggleHostAttribute(i.attributes.TWO_LINE,this._twoLine))}get threeLine(){return this._threeLine}set threeLine(t){this._threeLine!==t&&(this._threeLine=t,this._adapter.updateListItems(e=>e.threeLine=this._threeLine),this._adapter.toggleHostAttribute(i.attributes.THREE_LINE,this._threeLine))}get wrap(){return this._wrap}set wrap(t){this._wrap!==t&&(this._wrap=t,this._adapter.updateListItems(e=>e.wrap=this._wrap),this._adapter.toggleHostAttribute(i.attributes.WRAP,this._wrap))}};var k='<template><div class="forge-list" part="root"><slot></slot></div></template>',A=":host{display:block}:host([hidden]){display:none}:host([navlist]){--forge-list-item-height:40px;--forge-list-item-margin:4px 8px;--forge-list-item-shape:4px;--forge-list-item-supporting-text-font-size:0.875rem;--forge-list-item-supporting-text-font-weight:500}.forge-list{--_list-container-color:var(--forge-list-container-color, transparent);--_list-block-padding:var(--forge-list-block-padding, 8px);--_list-inline-padding:var(--forge-list-inline-padding, 0)}.forge-list{display:block;outline:0;background-color:var(--_list-container-color);padding:var(--_list-block-padding) var(--_list-inline-padding);margin:0;border-radius:inherit;min-width:inherit}",o=class extends I{constructor(){super();m(this,k,A),this._foundation=new p(new d(this))}static get observedAttributes(){return[i.attributes.ROLE,i.attributes.STATIC,i.attributes.NON_INTERACTIVE,i.attributes.DISABLED,i.attributes.DENSE,i.attributes.PROPAGATE_CLICK,i.attributes.SELECTED_VALUE,i.attributes.INDENTED,i.attributes.TWO_LINE,i.attributes.THREE_LINE,i.attributes.WRAP]}connectedCallback(){this._foundation.initialize()}attributeChangedCallback(e,n,s){switch(e){case i.attributes.ROLE:this._foundation.updateRole();break;case i.attributes.STATIC:case i.attributes.NON_INTERACTIVE:this.nonInteractive=l(s);break;case i.attributes.DISABLED:this.disabled=l(s);break;case i.attributes.DENSE:this.dense=l(s);break;case i.attributes.PROPAGATE_CLICK:this.propagateClick=l(s);break;case i.attributes.INDENTED:this.indented=l(s);break;case i.attributes.SELECTED_VALUE:this.selectedValue=s;break;case i.attributes.TWO_LINE:this.twoLine=l(s);break;case i.attributes.THREE_LINE:this.threeLine=l(s);break;case i.attributes.WRAP:this.wrap=l(s);break}}};a([r()],o.prototype,"static",2),a([r()],o.prototype,"nonInteractive",2),a([r()],o.prototype,"disabled",2),a([r()],o.prototype,"dense",2),a([r()],o.prototype,"propagateClick",2),a([r()],o.prototype,"indented",2),a([r()],o.prototype,"selectedValue",2),a([r()],o.prototype,"twoLine",2),a([r()],o.prototype,"threeLine",2),a([r()],o.prototype,"wrap",2),o=a([_({name:i.elementName,dependencies:[v]})],o);function G(){h(o)}export{d as a,p as b,o as c,G as d};
7
- //# sourceMappingURL=chunk.JHELTQKA.js.map
6
+ import{a as L,b as i,c as g,f as v}from"./chunk.74JHE77R.js";import{a as f}from"./chunk.ZY3ETQ3D.js";import{a as r}from"./chunk.NVUMRW44.js";import{a as _}from"./chunk.RRNSZCVJ.js";import{a as h,e as m,k as I}from"./chunk.TPXXHX5J.js";import{k as l,n as b}from"./chunk.J2M2MXP2.js";import{d as a}from"./chunk.M3QDAYD2.js";var d=class extends f{constructor(t){super(t)}initialize(){this._component.hasAttribute("role")||this._component.setAttribute("role","list")}focusNextListItem(){let t=this._getFocusableListItems();if(t.length){let e=t.findIndex(s=>s.matches(":focus")),n=e<t.length-1?e+1:0;n<=t.length-1&&t[n].focus({preventScroll:!0})}}focusPreviousListItem(){let t=this._getFocusableListItems();if(t.length){let e=t.findIndex(s=>s.matches(":focus")),n=e>0?e-1:t.length-1;n>=0&&t[n].focus({preventScroll:!0})}}focusFirstListItem(){let t=this._getFocusableListItems();t.length&&t[0].focus({preventScroll:!0})}focusLastListItem(){let t=this._getFocusableListItems();t.length&&t[t.length-1].focus({preventScroll:!0})}setSelectedListItems(t){let e=this._getListItems();if(e.length){let n=Array.isArray(t)?t:[t];for(let s of e)s.selected=n.some(c=>b(c,s.value))}}updateListItems(t){this._getListItems().forEach(t)}updateListItemRole(){var e;let t=(e=g[this._component.getAttribute("role")])!=null?e:"listitem";this.updateListItems(n=>n.role=t)}_getListItems(){return Array.from(this._component.querySelectorAll(L.elementName)).filter(e=>e.closest(i.elementName)===this._component)}_getFocusableListItems(){return this._getListItems().filter(t=>!t.disabled&&!t.nonInteractive&&!t.hidden)}};var p=class{constructor(t){this._adapter=t;this._nonInteractive=!1;this._disabled=!1;this._dense=!1;this._propagateClick=!0;this._indented=!1;this._twoLine=!1;this._threeLine=!1;this._wrap=!1;this._keydownListener=this._onKeydown.bind(this)}initialize(){this._adapter.initialize(),this._nonInteractive||this._adapter.addHostListener("keydown",this._keydownListener),this._selectedValue!==void 0&&this._selectedValue!==null&&this._adapter.setSelectedListItems(this._selectedValue)}_onKeydown(t){let{key:e,altKey:n,ctrlKey:s,shiftKey:c,metaKey:E}=t;n||s||c||E||(e==="Home"?(t.preventDefault(),this._adapter.focusFirstListItem()):e==="End"?(t.preventDefault(),this._adapter.focusLastListItem()):e==="ArrowUp"?(t.preventDefault(),this._adapter.focusPreviousListItem()):e==="ArrowDown"&&(t.preventDefault(),this._adapter.focusNextListItem()))}updateRole(){this._adapter.updateListItemRole()}get static(){return this.nonInteractive}set static(t){this.nonInteractive=t}get nonInteractive(){return this._nonInteractive}set nonInteractive(t){this._nonInteractive!==t&&(this._nonInteractive=t,this._adapter.toggleHostListener("keydown",this._keydownListener,!this._nonInteractive),this._adapter.updateListItems(e=>e.nonInteractive=this._nonInteractive),this._adapter.toggleHostAttribute(i.attributes.STATIC,this._nonInteractive),this._adapter.toggleHostAttribute(i.attributes.NON_INTERACTIVE,this._nonInteractive))}get disabled(){return this._disabled}set disabled(t){this._disabled!==t&&(this._disabled=t,this._adapter.updateListItems(e=>e.disabled=this._disabled),this._adapter.toggleHostAttribute(i.attributes.DISABLED,this._disabled))}get dense(){return this._dense}set dense(t){this._dense!==t&&(this._dense=t,this._adapter.updateListItems(e=>e.dense=this._dense),this._adapter.toggleHostAttribute(i.attributes.DENSE,this._dense))}get propagateClick(){return this._propagateClick}set propagateClick(t){this._propagateClick!==t&&(this._propagateClick=t,this._adapter.updateListItems(e=>e.propagateClick=this._propagateClick),this._adapter.setHostAttribute(i.attributes.PROPAGATE_CLICK,this._propagateClick?"true":"false"))}get indented(){return this._indented}set indented(t){this._indented!==t&&(this._indented=t,this._adapter.updateListItems(e=>e.indented=this._indented),this._adapter.toggleHostAttribute(i.attributes.INDENTED,this._indented))}get selectedValue(){return this._selectedValue}set selectedValue(t){this._selectedValue!==t&&(this._selectedValue=t,this._adapter.setSelectedListItems(this._selectedValue))}get twoLine(){return this._twoLine}set twoLine(t){this._twoLine!==t&&(this._twoLine=t,this._adapter.updateListItems(e=>e.twoLine=this._twoLine),this._adapter.toggleHostAttribute(i.attributes.TWO_LINE,this._twoLine))}get threeLine(){return this._threeLine}set threeLine(t){this._threeLine!==t&&(this._threeLine=t,this._adapter.updateListItems(e=>e.threeLine=this._threeLine),this._adapter.toggleHostAttribute(i.attributes.THREE_LINE,this._threeLine))}get wrap(){return this._wrap}set wrap(t){this._wrap!==t&&(this._wrap=t,this._adapter.updateListItems(e=>e.wrap=this._wrap),this._adapter.toggleHostAttribute(i.attributes.WRAP,this._wrap))}};var k='<template><div class="forge-list" part="root"><slot></slot></div></template>',A=":host{display:block}:host([hidden]){display:none}:host([navlist]){--forge-list-item-height:40px;--forge-list-item-margin:4px 8px;--forge-list-item-padding:0 8px;--forge-list-item-shape:4px;--forge-list-item-supporting-text-font-size:0.875rem;--forge-list-item-supporting-text-font-weight:500}.forge-list{--_list-container-color:var(--forge-list-container-color, transparent);--_list-block-padding:var(--forge-list-block-padding, 8px);--_list-inline-padding:var(--forge-list-inline-padding, 0)}.forge-list{display:block;outline:0;background-color:var(--_list-container-color);padding:var(--_list-block-padding) var(--_list-inline-padding);margin:0;border-radius:inherit;min-width:inherit}",o=class extends I{constructor(){super();m(this,k,A),this._foundation=new p(new d(this))}static get observedAttributes(){return[i.attributes.ROLE,i.attributes.STATIC,i.attributes.NON_INTERACTIVE,i.attributes.DISABLED,i.attributes.DENSE,i.attributes.PROPAGATE_CLICK,i.attributes.SELECTED_VALUE,i.attributes.INDENTED,i.attributes.TWO_LINE,i.attributes.THREE_LINE,i.attributes.WRAP]}connectedCallback(){this._foundation.initialize()}attributeChangedCallback(e,n,s){switch(e){case i.attributes.ROLE:this._foundation.updateRole();break;case i.attributes.STATIC:case i.attributes.NON_INTERACTIVE:this.nonInteractive=l(s);break;case i.attributes.DISABLED:this.disabled=l(s);break;case i.attributes.DENSE:this.dense=l(s);break;case i.attributes.PROPAGATE_CLICK:this.propagateClick=l(s);break;case i.attributes.INDENTED:this.indented=l(s);break;case i.attributes.SELECTED_VALUE:this.selectedValue=s;break;case i.attributes.TWO_LINE:this.twoLine=l(s);break;case i.attributes.THREE_LINE:this.threeLine=l(s);break;case i.attributes.WRAP:this.wrap=l(s);break}}};a([r()],o.prototype,"static",2),a([r()],o.prototype,"nonInteractive",2),a([r()],o.prototype,"disabled",2),a([r()],o.prototype,"dense",2),a([r()],o.prototype,"propagateClick",2),a([r()],o.prototype,"indented",2),a([r()],o.prototype,"selectedValue",2),a([r()],o.prototype,"twoLine",2),a([r()],o.prototype,"threeLine",2),a([r()],o.prototype,"wrap",2),o=a([_({name:i.elementName,dependencies:[v]})],o);function G(){h(o)}export{d as a,p as b,o as c,G as d};
7
+ //# sourceMappingURL=chunk.5WVOPPBY.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/list/list/list-adapter.ts", "../../src/list/list/list-foundation.ts", "../../src/list/list/list.ts", "../../src/list/list/index.ts"],
4
- "sourcesContent": ["import { isDeepEqual } from '@tylertech/forge-core';\nimport { BaseAdapter } from '../../core/base/base-adapter';\nimport { IListComponent } from './list';\nimport { LIST_ITEM_CONSTANTS } from '../list-item/list-item-constants';\nimport { IListItemComponent } from '../list-item/list-item';\nimport { ListComponentItemRole, LIST_CONSTANTS } from './list-constants';\n\nexport interface IListAdapter extends BaseAdapter<IListComponent> {\n initialize(): void;\n focusNextListItem(): void;\n focusPreviousListItem(): void;\n focusFirstListItem(): void;\n focusLastListItem(): void;\n setSelectedListItems(values: unknown | unknown[]): void;\n updateListItems(cb: (li: IListItemComponent) => void): void;\n updateListItemRole(): void;\n}\n\nexport class ListAdapter extends BaseAdapter<IListComponent> implements IListAdapter {\n constructor(component: IListComponent) {\n super(component);\n }\n\n public initialize(): void {\n if (!this._component.hasAttribute('role')) {\n this._component.setAttribute('role', 'list');\n }\n }\n\n /** Sets focus to the next item in the list. */\n public focusNextListItem(): void {\n const listItems = this._getFocusableListItems();\n if (listItems.length) {\n const focusedListItemIndex = listItems.findIndex(item => item.matches(':focus'));\n const nextIndex = focusedListItemIndex < listItems.length - 1 ? focusedListItemIndex + 1 : 0;\n if (nextIndex <= listItems.length - 1) {\n listItems[nextIndex].focus({ preventScroll: true});\n }\n }\n }\n\n /** Sets focus to the previous item in the list. */\n public focusPreviousListItem(): void {\n const listItems = this._getFocusableListItems();\n if (listItems.length) {\n const focusedListItemIndex = listItems.findIndex(item => item.matches(':focus'));\n const nextIndex = focusedListItemIndex > 0 ? focusedListItemIndex - 1 : listItems.length - 1;\n if (nextIndex >= 0) {\n listItems[nextIndex].focus({ preventScroll: true});\n }\n }\n }\n\n /** Sets focus to the first item in the list. */\n public focusFirstListItem(): void {\n const listItems = this._getFocusableListItems();\n if (listItems.length) {\n listItems[0].focus({ preventScroll: true});\n }\n }\n\n /** Sets focus to the last item in the list. */\n public focusLastListItem(): void {\n const listItems = this._getFocusableListItems();\n if (listItems.length) {\n listItems[listItems.length - 1].focus({ preventScroll: true});\n }\n }\n\n /** Select all list items that match values in the provided array of values. */\n public setSelectedListItems(value: unknown | unknown[]): void {\n const listItems = this._getListItems();\n if (listItems.length) {\n const values = Array.isArray(value) ? value : [value];\n for (const item of listItems) {\n item.selected = values.some(val => isDeepEqual(val, item.value));\n }\n }\n }\n\n /** Calls the provided callback on all list items to apply an updated property to each list item. */\n public updateListItems(cb: (li: IListItemComponent) => void): void {\n this._getListItems().forEach(cb);\n }\n\n public updateListItemRole(): void {\n const role = ListComponentItemRole[this._component.getAttribute('role') as string] ?? 'listitem';\n this.updateListItems(li => li.role = role);\n }\n\n private _getListItems(): IListItemComponent[] {\n const listItems = Array.from(this._component.querySelectorAll(LIST_ITEM_CONSTANTS.elementName));\n return listItems.filter(item => item.closest(LIST_CONSTANTS.elementName) === this._component) as IListItemComponent[];\n }\n\n private _getFocusableListItems(): IListItemComponent[] {\n return this._getListItems().filter(li => !li.disabled && !li.nonInteractive && !li.hidden);\n }\n}\n", "import { ICustomElementFoundation } from '@tylertech/forge-core';\n\nimport { IListAdapter } from './list-adapter';\nimport { LIST_CONSTANTS } from './list-constants';\n\nexport interface IListFoundation extends ICustomElementFoundation {\n static: boolean;\n nonInteractive: boolean;\n disabled: boolean;\n dense: boolean;\n propagateClick: boolean;\n indented: boolean;\n selectedValue: unknown | unknown[];\n twoLine: boolean;\n threeLine: boolean;\n wrap: boolean;\n}\n\nexport class ListFoundation implements IListFoundation {\n private _nonInteractive = false;\n private _disabled = false;\n private _dense = false;\n private _propagateClick = true;\n private _indented = false;\n private _selectedValue: unknown | unknown[];\n private _twoLine = false;\n private _threeLine = false;\n private _wrap = false;\n private _keydownListener: EventListener;\n\n constructor(private _adapter: IListAdapter) {\n this._keydownListener = this._onKeydown.bind(this);\n }\n\n public initialize(): void {\n this._adapter.initialize();\n\n if (!this._nonInteractive) {\n this._adapter.addHostListener('keydown', this._keydownListener);\n }\n\n if (this._selectedValue !== undefined && this._selectedValue !== null) {\n this._adapter.setSelectedListItems(this._selectedValue);\n }\n }\n\n private _onKeydown(evt: KeyboardEvent): void {\n const { key, altKey, ctrlKey, shiftKey, metaKey } = evt;\n\n if (altKey || ctrlKey || shiftKey || metaKey) {\n return;\n }\n\n if (key === 'Home') {\n evt.preventDefault();\n this._adapter.focusFirstListItem();\n } else if (key === 'End') {\n evt.preventDefault();\n this._adapter.focusLastListItem();\n } else if (key === 'ArrowUp') {\n evt.preventDefault();\n this._adapter.focusPreviousListItem();\n } else if (key === 'ArrowDown') {\n evt.preventDefault();\n this._adapter.focusNextListItem();\n }\n }\n\n public updateRole(): void {\n this._adapter.updateListItemRole();\n }\n\n public get static(): boolean {\n return this.nonInteractive;\n }\n public set static(value: boolean) {\n this.nonInteractive = value;\n }\n\n public get nonInteractive(): boolean {\n return this._nonInteractive;\n }\n public set nonInteractive(value: boolean) {\n if (this._nonInteractive !== value) {\n this._nonInteractive = value;\n this._adapter.toggleHostListener('keydown', this._keydownListener, !this._nonInteractive);\n this._adapter.updateListItems(li => li.nonInteractive = this._nonInteractive);\n this._adapter.toggleHostAttribute(LIST_CONSTANTS.attributes.STATIC, this._nonInteractive);\n this._adapter.toggleHostAttribute(LIST_CONSTANTS.attributes.NON_INTERACTIVE, this._nonInteractive);\n }\n }\n\n public get disabled(): boolean {\n return this._disabled;\n }\n public set disabled(value: boolean) {\n if (this._disabled !== value) {\n this._disabled = value;\n this._adapter.updateListItems(li => li.disabled = this._disabled);\n this._adapter.toggleHostAttribute(LIST_CONSTANTS.attributes.DISABLED, this._disabled);\n }\n }\n\n public get dense(): boolean {\n return this._dense;\n }\n public set dense(value: boolean) {\n if (this._dense !== value) {\n this._dense = value;\n this._adapter.updateListItems(li => li.dense = this._dense);\n this._adapter.toggleHostAttribute(LIST_CONSTANTS.attributes.DENSE, this._dense);\n }\n }\n\n public get propagateClick(): boolean {\n return this._propagateClick;\n }\n public set propagateClick(value: boolean) {\n if (this._propagateClick !== value) {\n this._propagateClick = value;\n this._adapter.updateListItems(li => li.propagateClick = this._propagateClick);\n this._adapter.setHostAttribute(LIST_CONSTANTS.attributes.PROPAGATE_CLICK, this._propagateClick ? 'true' : 'false');\n }\n }\n\n public get indented(): boolean {\n return this._indented;\n }\n public set indented(value: boolean) {\n if (this._indented !== value) {\n this._indented = value;\n this._adapter.updateListItems(li => li.indented = this._indented);\n this._adapter.toggleHostAttribute(LIST_CONSTANTS.attributes.INDENTED, this._indented);\n }\n }\n\n public get selectedValue(): unknown | unknown[] {\n return this._selectedValue;\n }\n public set selectedValue(value: unknown | unknown[]) {\n if (this._selectedValue !== value) {\n this._selectedValue = value;\n this._adapter.setSelectedListItems(this._selectedValue);\n }\n }\n\n public get twoLine(): boolean {\n return this._twoLine;\n }\n public set twoLine(value: boolean) {\n if (this._twoLine !== value) {\n this._twoLine = value;\n this._adapter.updateListItems(li => li.twoLine = this._twoLine);\n this._adapter.toggleHostAttribute(LIST_CONSTANTS.attributes.TWO_LINE, this._twoLine);\n }\n }\n\n public get threeLine(): boolean {\n return this._threeLine;\n }\n public set threeLine(value: boolean) {\n if (this._threeLine !== value) {\n this._threeLine = value;\n this._adapter.updateListItems(li => li.threeLine = this._threeLine);\n this._adapter.toggleHostAttribute(LIST_CONSTANTS.attributes.THREE_LINE, this._threeLine);\n }\n }\n\n public get wrap(): boolean {\n return this._wrap;\n }\n public set wrap(value: boolean) {\n if (this._wrap !== value) {\n this._wrap = value;\n this._adapter.updateListItems(li => li.wrap = this._wrap);\n this._adapter.toggleHostAttribute(LIST_CONSTANTS.attributes.WRAP, this._wrap);\n }\n }\n}\n", "import { CustomElement, attachShadowTemplate, FoundationProperty, coerceBoolean } from '@tylertech/forge-core';\nimport { BaseComponent, IBaseComponent } from '../../core/base/base-component';\nimport { ListAdapter } from './list-adapter';\nimport { ListFoundation } from './list-foundation';\nimport { LIST_CONSTANTS } from './list-constants';\n\nconst template = '<template><div class=\\\"forge-list\\\" part=\\\"root\\\"><slot></slot></div></template>';\nconst styles = ':host{display:block}:host([hidden]){display:none}:host([navlist]){--forge-list-item-height:40px;--forge-list-item-margin:4px 8px;--forge-list-item-shape:4px;--forge-list-item-supporting-text-font-size:0.875rem;--forge-list-item-supporting-text-font-weight:500}.forge-list{--_list-container-color:var(--forge-list-container-color, transparent);--_list-block-padding:var(--forge-list-block-padding, 8px);--_list-inline-padding:var(--forge-list-inline-padding, 0)}.forge-list{display:block;outline:0;background-color:var(--_list-container-color);padding:var(--_list-block-padding) var(--_list-inline-padding);margin:0;border-radius:inherit;min-width:inherit}';\nimport { ListItemComponent } from '../list-item';\n\nexport interface IListComponent extends IBaseComponent {\n /** @deprecated Use nonInteractive instead. */\n static: boolean;\n nonInteractive: boolean;\n disabled: boolean;\n dense: boolean;\n propagateClick: boolean;\n indented: boolean;\n selectedValue: any;\n twoLine: boolean;\n threeLine: boolean;\n wrap: boolean;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'forge-list': IListComponent;\n }\n}\n\n/**\n * @tag forge-list\n * \n * @summary Lists are vertical groupings of related content.\n * \n * @csspart root - The component's root container element.\n * \n * @slot - The default/unnamed slot for child list items.\n *\n * @cssproperty --forge-list-container-color - The background color of the list surface,\n * @cssproperty --forge-list-block-padding - The block padding of the list before and after the list items.\n * @cssproperty --forge-list-inline-padding - The inline padding of the list next to the list items.\n * \n * @property {string} role - The role of the list. Default is 'list'. Valid values are 'list', 'listbox', and 'menu'.\n * @property {boolean} static - Whether the list has all static items or not.\n * @property {boolean} nonInteractive - Whether the list has all non-interactive items or not.\n * @property {boolean} disabled - Whether the list items are disabled or not.\n * @property {boolean} dense - Whether the list has all dense items or not.\n * @property {boolean} propagateClick - Whether the list items propagate click events or not.\n * @property {boolean} indented - Whether the list items within this list are indented. Default is false.\n * @property {unknown | unknown[]} selectedValue - The selected list item value(s).\n * @property {boolean} twoLine - Whether the list has all two-line items or not.\n * @property {boolean} threeLine - Whether the list has all three-line items or not.\n * @property {boolean} wrap - Whether the list has all items that wrap their text or not.\n * \n * @attribute {string} role - The role of the list. Default is 'list'. Valid values are 'list', 'listbox', and 'menu'.\n * @attribute {boolean} static - Whether the list has all static items or not.\n * @attribute {boolean} non-interactive - Whether the list has all non-interactive items or not.\n * @attribute {boolean} disabled - Whether the list items are disabled or not.\n * @attribute {boolean} dense - Whether the list has all dense items or not.\n * @attribute {boolean} propagate-click - Whether the list items propagate click events or not.\n * @attribute {string} selected-value - The selected list item value(s).\n * @attribute {boolean} indented - Whether the list items within this list are indented. Default is false.\n * @attribute {boolean} two-line - Whether the list has all two-line items or not.\n * @attribute {boolean} three-line - Whether the list has all three-line items or not.\n * @attribute {boolean} wrap - Whether the list has all items that wrap their text or not.\n * @attribute {boolean} navlist - Controls whether the list is styled a navigation list or not.\n */\n@CustomElement({\n name: LIST_CONSTANTS.elementName,\n dependencies: [\n ListItemComponent\n ]\n})\nexport class ListComponent extends BaseComponent implements IListComponent {\n public static get observedAttributes(): string[] {\n return [\n LIST_CONSTANTS.attributes.ROLE,\n LIST_CONSTANTS.attributes.STATIC,\n LIST_CONSTANTS.attributes.NON_INTERACTIVE,\n LIST_CONSTANTS.attributes.DISABLED,\n LIST_CONSTANTS.attributes.DENSE,\n LIST_CONSTANTS.attributes.PROPAGATE_CLICK,\n LIST_CONSTANTS.attributes.SELECTED_VALUE,\n LIST_CONSTANTS.attributes.INDENTED,\n LIST_CONSTANTS.attributes.TWO_LINE,\n LIST_CONSTANTS.attributes.THREE_LINE,\n LIST_CONSTANTS.attributes.WRAP\n ];\n }\n\n private _foundation: ListFoundation;\n\n constructor() {\n super();\n attachShadowTemplate(this, template, styles);\n this._foundation = new ListFoundation(new ListAdapter(this));\n }\n\n public connectedCallback(): void {\n this._foundation.initialize();\n }\n\n public attributeChangedCallback(name: string, oldValue: string, newValue: string): void {\n switch (name) {\n case LIST_CONSTANTS.attributes.ROLE:\n this._foundation.updateRole();\n break;\n case LIST_CONSTANTS.attributes.STATIC:\n case LIST_CONSTANTS.attributes.NON_INTERACTIVE:\n this.nonInteractive = coerceBoolean(newValue);\n break;\n case LIST_CONSTANTS.attributes.DISABLED:\n this.disabled = coerceBoolean(newValue);\n break;\n case LIST_CONSTANTS.attributes.DENSE:\n this.dense = coerceBoolean(newValue);\n break;\n case LIST_CONSTANTS.attributes.PROPAGATE_CLICK:\n this.propagateClick = coerceBoolean(newValue);\n break;\n case LIST_CONSTANTS.attributes.INDENTED:\n this.indented = coerceBoolean(newValue);\n break;\n case LIST_CONSTANTS.attributes.SELECTED_VALUE:\n this.selectedValue = newValue;\n break;\n case LIST_CONSTANTS.attributes.TWO_LINE:\n this.twoLine = coerceBoolean(newValue);\n break;\n case LIST_CONSTANTS.attributes.THREE_LINE:\n this.threeLine = coerceBoolean(newValue);\n break;\n case LIST_CONSTANTS.attributes.WRAP:\n this.wrap = coerceBoolean(newValue);\n break;\n }\n }\n\n @FoundationProperty()\n public declare static: boolean;\n\n @FoundationProperty()\n public declare nonInteractive: boolean;\n\n @FoundationProperty()\n public declare disabled: boolean;\n\n @FoundationProperty()\n public declare dense: boolean;\n\n @FoundationProperty()\n public declare propagateClick: boolean;\n\n @FoundationProperty()\n public declare indented: boolean;\n\n @FoundationProperty()\n public declare selectedValue: any;\n\n @FoundationProperty()\n public declare twoLine: boolean;\n\n @FoundationProperty()\n public declare threeLine: boolean;\n\n @FoundationProperty()\n public declare wrap: boolean;\n}\n", "import { defineCustomElement } from '@tylertech/forge-core';\nimport { ListComponent } from './list';\n\nexport * from './list-adapter';\nexport * from './list-constants';\nexport * from './list-foundation';\nexport * from './list';\n\nexport function defineListComponent(): void {\n defineCustomElement(ListComponent);\n}\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["import { isDeepEqual } from '@tylertech/forge-core';\nimport { BaseAdapter } from '../../core/base/base-adapter';\nimport { IListComponent } from './list';\nimport { LIST_ITEM_CONSTANTS } from '../list-item/list-item-constants';\nimport { IListItemComponent } from '../list-item/list-item';\nimport { ListComponentItemRole, LIST_CONSTANTS } from './list-constants';\n\nexport interface IListAdapter extends BaseAdapter<IListComponent> {\n initialize(): void;\n focusNextListItem(): void;\n focusPreviousListItem(): void;\n focusFirstListItem(): void;\n focusLastListItem(): void;\n setSelectedListItems(values: unknown | unknown[]): void;\n updateListItems(cb: (li: IListItemComponent) => void): void;\n updateListItemRole(): void;\n}\n\nexport class ListAdapter extends BaseAdapter<IListComponent> implements IListAdapter {\n constructor(component: IListComponent) {\n super(component);\n }\n\n public initialize(): void {\n if (!this._component.hasAttribute('role')) {\n this._component.setAttribute('role', 'list');\n }\n }\n\n /** Sets focus to the next item in the list. */\n public focusNextListItem(): void {\n const listItems = this._getFocusableListItems();\n if (listItems.length) {\n const focusedListItemIndex = listItems.findIndex(item => item.matches(':focus'));\n const nextIndex = focusedListItemIndex < listItems.length - 1 ? focusedListItemIndex + 1 : 0;\n if (nextIndex <= listItems.length - 1) {\n listItems[nextIndex].focus({ preventScroll: true});\n }\n }\n }\n\n /** Sets focus to the previous item in the list. */\n public focusPreviousListItem(): void {\n const listItems = this._getFocusableListItems();\n if (listItems.length) {\n const focusedListItemIndex = listItems.findIndex(item => item.matches(':focus'));\n const nextIndex = focusedListItemIndex > 0 ? focusedListItemIndex - 1 : listItems.length - 1;\n if (nextIndex >= 0) {\n listItems[nextIndex].focus({ preventScroll: true});\n }\n }\n }\n\n /** Sets focus to the first item in the list. */\n public focusFirstListItem(): void {\n const listItems = this._getFocusableListItems();\n if (listItems.length) {\n listItems[0].focus({ preventScroll: true});\n }\n }\n\n /** Sets focus to the last item in the list. */\n public focusLastListItem(): void {\n const listItems = this._getFocusableListItems();\n if (listItems.length) {\n listItems[listItems.length - 1].focus({ preventScroll: true});\n }\n }\n\n /** Select all list items that match values in the provided array of values. */\n public setSelectedListItems(value: unknown | unknown[]): void {\n const listItems = this._getListItems();\n if (listItems.length) {\n const values = Array.isArray(value) ? value : [value];\n for (const item of listItems) {\n item.selected = values.some(val => isDeepEqual(val, item.value));\n }\n }\n }\n\n /** Calls the provided callback on all list items to apply an updated property to each list item. */\n public updateListItems(cb: (li: IListItemComponent) => void): void {\n this._getListItems().forEach(cb);\n }\n\n public updateListItemRole(): void {\n const role = ListComponentItemRole[this._component.getAttribute('role') as string] ?? 'listitem';\n this.updateListItems(li => li.role = role);\n }\n\n private _getListItems(): IListItemComponent[] {\n const listItems = Array.from(this._component.querySelectorAll(LIST_ITEM_CONSTANTS.elementName));\n return listItems.filter(item => item.closest(LIST_CONSTANTS.elementName) === this._component) as IListItemComponent[];\n }\n\n private _getFocusableListItems(): IListItemComponent[] {\n return this._getListItems().filter(li => !li.disabled && !li.nonInteractive && !li.hidden);\n }\n}\n", "import { ICustomElementFoundation } from '@tylertech/forge-core';\n\nimport { IListAdapter } from './list-adapter';\nimport { LIST_CONSTANTS } from './list-constants';\n\nexport interface IListFoundation extends ICustomElementFoundation {\n static: boolean;\n nonInteractive: boolean;\n disabled: boolean;\n dense: boolean;\n propagateClick: boolean;\n indented: boolean;\n selectedValue: unknown | unknown[];\n twoLine: boolean;\n threeLine: boolean;\n wrap: boolean;\n}\n\nexport class ListFoundation implements IListFoundation {\n private _nonInteractive = false;\n private _disabled = false;\n private _dense = false;\n private _propagateClick = true;\n private _indented = false;\n private _selectedValue: unknown | unknown[];\n private _twoLine = false;\n private _threeLine = false;\n private _wrap = false;\n private _keydownListener: EventListener;\n\n constructor(private _adapter: IListAdapter) {\n this._keydownListener = this._onKeydown.bind(this);\n }\n\n public initialize(): void {\n this._adapter.initialize();\n\n if (!this._nonInteractive) {\n this._adapter.addHostListener('keydown', this._keydownListener);\n }\n\n if (this._selectedValue !== undefined && this._selectedValue !== null) {\n this._adapter.setSelectedListItems(this._selectedValue);\n }\n }\n\n private _onKeydown(evt: KeyboardEvent): void {\n const { key, altKey, ctrlKey, shiftKey, metaKey } = evt;\n\n if (altKey || ctrlKey || shiftKey || metaKey) {\n return;\n }\n\n if (key === 'Home') {\n evt.preventDefault();\n this._adapter.focusFirstListItem();\n } else if (key === 'End') {\n evt.preventDefault();\n this._adapter.focusLastListItem();\n } else if (key === 'ArrowUp') {\n evt.preventDefault();\n this._adapter.focusPreviousListItem();\n } else if (key === 'ArrowDown') {\n evt.preventDefault();\n this._adapter.focusNextListItem();\n }\n }\n\n public updateRole(): void {\n this._adapter.updateListItemRole();\n }\n\n public get static(): boolean {\n return this.nonInteractive;\n }\n public set static(value: boolean) {\n this.nonInteractive = value;\n }\n\n public get nonInteractive(): boolean {\n return this._nonInteractive;\n }\n public set nonInteractive(value: boolean) {\n if (this._nonInteractive !== value) {\n this._nonInteractive = value;\n this._adapter.toggleHostListener('keydown', this._keydownListener, !this._nonInteractive);\n this._adapter.updateListItems(li => li.nonInteractive = this._nonInteractive);\n this._adapter.toggleHostAttribute(LIST_CONSTANTS.attributes.STATIC, this._nonInteractive);\n this._adapter.toggleHostAttribute(LIST_CONSTANTS.attributes.NON_INTERACTIVE, this._nonInteractive);\n }\n }\n\n public get disabled(): boolean {\n return this._disabled;\n }\n public set disabled(value: boolean) {\n if (this._disabled !== value) {\n this._disabled = value;\n this._adapter.updateListItems(li => li.disabled = this._disabled);\n this._adapter.toggleHostAttribute(LIST_CONSTANTS.attributes.DISABLED, this._disabled);\n }\n }\n\n public get dense(): boolean {\n return this._dense;\n }\n public set dense(value: boolean) {\n if (this._dense !== value) {\n this._dense = value;\n this._adapter.updateListItems(li => li.dense = this._dense);\n this._adapter.toggleHostAttribute(LIST_CONSTANTS.attributes.DENSE, this._dense);\n }\n }\n\n public get propagateClick(): boolean {\n return this._propagateClick;\n }\n public set propagateClick(value: boolean) {\n if (this._propagateClick !== value) {\n this._propagateClick = value;\n this._adapter.updateListItems(li => li.propagateClick = this._propagateClick);\n this._adapter.setHostAttribute(LIST_CONSTANTS.attributes.PROPAGATE_CLICK, this._propagateClick ? 'true' : 'false');\n }\n }\n\n public get indented(): boolean {\n return this._indented;\n }\n public set indented(value: boolean) {\n if (this._indented !== value) {\n this._indented = value;\n this._adapter.updateListItems(li => li.indented = this._indented);\n this._adapter.toggleHostAttribute(LIST_CONSTANTS.attributes.INDENTED, this._indented);\n }\n }\n\n public get selectedValue(): unknown | unknown[] {\n return this._selectedValue;\n }\n public set selectedValue(value: unknown | unknown[]) {\n if (this._selectedValue !== value) {\n this._selectedValue = value;\n this._adapter.setSelectedListItems(this._selectedValue);\n }\n }\n\n public get twoLine(): boolean {\n return this._twoLine;\n }\n public set twoLine(value: boolean) {\n if (this._twoLine !== value) {\n this._twoLine = value;\n this._adapter.updateListItems(li => li.twoLine = this._twoLine);\n this._adapter.toggleHostAttribute(LIST_CONSTANTS.attributes.TWO_LINE, this._twoLine);\n }\n }\n\n public get threeLine(): boolean {\n return this._threeLine;\n }\n public set threeLine(value: boolean) {\n if (this._threeLine !== value) {\n this._threeLine = value;\n this._adapter.updateListItems(li => li.threeLine = this._threeLine);\n this._adapter.toggleHostAttribute(LIST_CONSTANTS.attributes.THREE_LINE, this._threeLine);\n }\n }\n\n public get wrap(): boolean {\n return this._wrap;\n }\n public set wrap(value: boolean) {\n if (this._wrap !== value) {\n this._wrap = value;\n this._adapter.updateListItems(li => li.wrap = this._wrap);\n this._adapter.toggleHostAttribute(LIST_CONSTANTS.attributes.WRAP, this._wrap);\n }\n }\n}\n", "import { CustomElement, attachShadowTemplate, FoundationProperty, coerceBoolean } from '@tylertech/forge-core';\nimport { BaseComponent, IBaseComponent } from '../../core/base/base-component';\nimport { ListAdapter } from './list-adapter';\nimport { ListFoundation } from './list-foundation';\nimport { LIST_CONSTANTS } from './list-constants';\n\nconst template = '<template><div class=\\\"forge-list\\\" part=\\\"root\\\"><slot></slot></div></template>';\nconst styles = ':host{display:block}:host([hidden]){display:none}:host([navlist]){--forge-list-item-height:40px;--forge-list-item-margin:4px 8px;--forge-list-item-padding:0 8px;--forge-list-item-shape:4px;--forge-list-item-supporting-text-font-size:0.875rem;--forge-list-item-supporting-text-font-weight:500}.forge-list{--_list-container-color:var(--forge-list-container-color, transparent);--_list-block-padding:var(--forge-list-block-padding, 8px);--_list-inline-padding:var(--forge-list-inline-padding, 0)}.forge-list{display:block;outline:0;background-color:var(--_list-container-color);padding:var(--_list-block-padding) var(--_list-inline-padding);margin:0;border-radius:inherit;min-width:inherit}';\nimport { ListItemComponent } from '../list-item';\n\nexport interface IListComponent extends IBaseComponent {\n /** @deprecated Use nonInteractive instead. */\n static: boolean;\n nonInteractive: boolean;\n disabled: boolean;\n dense: boolean;\n propagateClick: boolean;\n indented: boolean;\n selectedValue: any;\n twoLine: boolean;\n threeLine: boolean;\n wrap: boolean;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'forge-list': IListComponent;\n }\n}\n\n/**\n * @tag forge-list\n * \n * @summary Lists are vertical groupings of related content.\n * \n * @csspart root - The component's root container element.\n * \n * @slot - The default/unnamed slot for child list items.\n *\n * @cssproperty --forge-list-container-color - The background color of the list surface,\n * @cssproperty --forge-list-block-padding - The block padding of the list before and after the list items.\n * @cssproperty --forge-list-inline-padding - The inline padding of the list next to the list items.\n * \n * @property {string} role - The role of the list. Default is 'list'. Valid values are 'list', 'listbox', and 'menu'.\n * @property {boolean} static - Whether the list has all static items or not.\n * @property {boolean} nonInteractive - Whether the list has all non-interactive items or not.\n * @property {boolean} disabled - Whether the list items are disabled or not.\n * @property {boolean} dense - Whether the list has all dense items or not.\n * @property {boolean} propagateClick - Whether the list items propagate click events or not.\n * @property {boolean} indented - Whether the list items within this list are indented. Default is false.\n * @property {unknown | unknown[]} selectedValue - The selected list item value(s).\n * @property {boolean} twoLine - Whether the list has all two-line items or not.\n * @property {boolean} threeLine - Whether the list has all three-line items or not.\n * @property {boolean} wrap - Whether the list has all items that wrap their text or not.\n * \n * @attribute {string} role - The role of the list. Default is 'list'. Valid values are 'list', 'listbox', and 'menu'.\n * @attribute {boolean} static - Whether the list has all static items or not.\n * @attribute {boolean} non-interactive - Whether the list has all non-interactive items or not.\n * @attribute {boolean} disabled - Whether the list items are disabled or not.\n * @attribute {boolean} dense - Whether the list has all dense items or not.\n * @attribute {boolean} propagate-click - Whether the list items propagate click events or not.\n * @attribute {string} selected-value - The selected list item value(s).\n * @attribute {boolean} indented - Whether the list items within this list are indented. Default is false.\n * @attribute {boolean} two-line - Whether the list has all two-line items or not.\n * @attribute {boolean} three-line - Whether the list has all three-line items or not.\n * @attribute {boolean} wrap - Whether the list has all items that wrap their text or not.\n * @attribute {boolean} navlist - Controls whether the list is styled a navigation list or not.\n */\n@CustomElement({\n name: LIST_CONSTANTS.elementName,\n dependencies: [\n ListItemComponent\n ]\n})\nexport class ListComponent extends BaseComponent implements IListComponent {\n public static get observedAttributes(): string[] {\n return [\n LIST_CONSTANTS.attributes.ROLE,\n LIST_CONSTANTS.attributes.STATIC,\n LIST_CONSTANTS.attributes.NON_INTERACTIVE,\n LIST_CONSTANTS.attributes.DISABLED,\n LIST_CONSTANTS.attributes.DENSE,\n LIST_CONSTANTS.attributes.PROPAGATE_CLICK,\n LIST_CONSTANTS.attributes.SELECTED_VALUE,\n LIST_CONSTANTS.attributes.INDENTED,\n LIST_CONSTANTS.attributes.TWO_LINE,\n LIST_CONSTANTS.attributes.THREE_LINE,\n LIST_CONSTANTS.attributes.WRAP\n ];\n }\n\n private _foundation: ListFoundation;\n\n constructor() {\n super();\n attachShadowTemplate(this, template, styles);\n this._foundation = new ListFoundation(new ListAdapter(this));\n }\n\n public connectedCallback(): void {\n this._foundation.initialize();\n }\n\n public attributeChangedCallback(name: string, oldValue: string, newValue: string): void {\n switch (name) {\n case LIST_CONSTANTS.attributes.ROLE:\n this._foundation.updateRole();\n break;\n case LIST_CONSTANTS.attributes.STATIC:\n case LIST_CONSTANTS.attributes.NON_INTERACTIVE:\n this.nonInteractive = coerceBoolean(newValue);\n break;\n case LIST_CONSTANTS.attributes.DISABLED:\n this.disabled = coerceBoolean(newValue);\n break;\n case LIST_CONSTANTS.attributes.DENSE:\n this.dense = coerceBoolean(newValue);\n break;\n case LIST_CONSTANTS.attributes.PROPAGATE_CLICK:\n this.propagateClick = coerceBoolean(newValue);\n break;\n case LIST_CONSTANTS.attributes.INDENTED:\n this.indented = coerceBoolean(newValue);\n break;\n case LIST_CONSTANTS.attributes.SELECTED_VALUE:\n this.selectedValue = newValue;\n break;\n case LIST_CONSTANTS.attributes.TWO_LINE:\n this.twoLine = coerceBoolean(newValue);\n break;\n case LIST_CONSTANTS.attributes.THREE_LINE:\n this.threeLine = coerceBoolean(newValue);\n break;\n case LIST_CONSTANTS.attributes.WRAP:\n this.wrap = coerceBoolean(newValue);\n break;\n }\n }\n\n @FoundationProperty()\n public declare static: boolean;\n\n @FoundationProperty()\n public declare nonInteractive: boolean;\n\n @FoundationProperty()\n public declare disabled: boolean;\n\n @FoundationProperty()\n public declare dense: boolean;\n\n @FoundationProperty()\n public declare propagateClick: boolean;\n\n @FoundationProperty()\n public declare indented: boolean;\n\n @FoundationProperty()\n public declare selectedValue: any;\n\n @FoundationProperty()\n public declare twoLine: boolean;\n\n @FoundationProperty()\n public declare threeLine: boolean;\n\n @FoundationProperty()\n public declare wrap: boolean;\n}\n", "import { defineCustomElement } from '@tylertech/forge-core';\nimport { ListComponent } from './list';\n\nexport * from './list-adapter';\nexport * from './list-constants';\nexport * from './list-foundation';\nexport * from './list';\n\nexport function defineListComponent(): void {\n defineCustomElement(ListComponent);\n}\n"],
5
+ "mappings": "kUAkBO,IAAMA,EAAN,cAA0BC,CAAoD,CACnF,YAAYC,EAA2B,CACrC,MAAMA,CAAS,CACjB,CAEO,YAAmB,CACnB,KAAK,WAAW,aAAa,MAAM,GACtC,KAAK,WAAW,aAAa,OAAQ,MAAM,CAE/C,CAGO,mBAA0B,CAC/B,IAAMC,EAAY,KAAK,uBAAuB,EAC9C,GAAIA,EAAU,OAAQ,CACpB,IAAMC,EAAuBD,EAAU,UAAUE,GAAQA,EAAK,QAAQ,QAAQ,CAAC,EACzEC,EAAYF,EAAuBD,EAAU,OAAS,EAAIC,EAAuB,EAAI,EACvFE,GAAaH,EAAU,OAAS,GAClCA,EAAUG,CAAS,EAAE,MAAM,CAAE,cAAe,EAAI,CAAC,EAGvD,CAGO,uBAA8B,CACnC,IAAMH,EAAY,KAAK,uBAAuB,EAC9C,GAAIA,EAAU,OAAQ,CACpB,IAAMC,EAAuBD,EAAU,UAAUE,GAAQA,EAAK,QAAQ,QAAQ,CAAC,EACzEC,EAAYF,EAAuB,EAAIA,EAAuB,EAAID,EAAU,OAAS,EACvFG,GAAa,GACfH,EAAUG,CAAS,EAAE,MAAM,CAAE,cAAe,EAAI,CAAC,EAGvD,CAGO,oBAA2B,CAChC,IAAMH,EAAY,KAAK,uBAAuB,EAC1CA,EAAU,QACZA,EAAU,CAAC,EAAE,MAAM,CAAE,cAAe,EAAI,CAAC,CAE7C,CAGO,mBAA0B,CAC/B,IAAMA,EAAY,KAAK,uBAAuB,EAC1CA,EAAU,QACZA,EAAUA,EAAU,OAAS,CAAC,EAAE,MAAM,CAAE,cAAe,EAAI,CAAC,CAEhE,CAGO,qBAAqBI,EAAkC,CAC5D,IAAMJ,EAAY,KAAK,cAAc,EACrC,GAAIA,EAAU,OAAQ,CACpB,IAAMK,EAAS,MAAM,QAAQD,CAAK,EAAIA,EAAQ,CAACA,CAAK,EACpD,QAAWF,KAAQF,EACjBE,EAAK,SAAWG,EAAO,KAAKC,GAAOC,EAAYD,EAAKJ,EAAK,KAAK,CAAC,EAGrE,CAGO,gBAAgBM,EAA4C,CACjE,KAAK,cAAc,EAAE,QAAQA,CAAE,CACjC,CAEO,oBAA2B,CArFpC,IAAAC,EAsFI,IAAMC,GAAOD,EAAAE,EAAsB,KAAK,WAAW,aAAa,MAAM,CAAW,IAApE,KAAAF,EAAyE,WACtF,KAAK,gBAAgBG,GAAMA,EAAG,KAAOF,CAAI,CAC3C,CAEQ,eAAsC,CAE5C,OADkB,MAAM,KAAK,KAAK,WAAW,iBAAiBG,EAAoB,WAAW,CAAC,EAC7E,OAAOX,GAAQA,EAAK,QAAQY,EAAe,WAAW,IAAM,KAAK,UAAU,CAC9F,CAEQ,wBAA+C,CACrD,OAAO,KAAK,cAAc,EAAE,OAAOF,GAAM,CAACA,EAAG,UAAY,CAACA,EAAG,gBAAkB,CAACA,EAAG,MAAM,CAC3F,CACF,EChFO,IAAMG,EAAN,KAAgD,CAYrD,YAAoBC,EAAwB,CAAxB,cAAAA,EAXpB,KAAQ,gBAAkB,GAC1B,KAAQ,UAAY,GACpB,KAAQ,OAAS,GACjB,KAAQ,gBAAkB,GAC1B,KAAQ,UAAY,GAEpB,KAAQ,SAAW,GACnB,KAAQ,WAAa,GACrB,KAAQ,MAAQ,GAId,KAAK,iBAAmB,KAAK,WAAW,KAAK,IAAI,CACnD,CAEO,YAAmB,CACxB,KAAK,SAAS,WAAW,EAEpB,KAAK,iBACR,KAAK,SAAS,gBAAgB,UAAW,KAAK,gBAAgB,EAG5D,KAAK,iBAAmB,QAAa,KAAK,iBAAmB,MAC/D,KAAK,SAAS,qBAAqB,KAAK,cAAc,CAE1D,CAEQ,WAAWC,EAA0B,CAC3C,GAAM,CAAE,IAAAC,EAAK,OAAAC,EAAQ,QAAAC,EAAS,SAAAC,EAAU,QAAAC,CAAQ,EAAIL,EAEhDE,GAAUC,GAAWC,GAAYC,IAIjCJ,IAAQ,QACVD,EAAI,eAAe,EACnB,KAAK,SAAS,mBAAmB,GACxBC,IAAQ,OACjBD,EAAI,eAAe,EACnB,KAAK,SAAS,kBAAkB,GACvBC,IAAQ,WACjBD,EAAI,eAAe,EACnB,KAAK,SAAS,sBAAsB,GAC3BC,IAAQ,cACjBD,EAAI,eAAe,EACnB,KAAK,SAAS,kBAAkB,GAEpC,CAEO,YAAmB,CACxB,KAAK,SAAS,mBAAmB,CACnC,CAEA,IAAW,QAAkB,CAC3B,OAAO,KAAK,cACd,CACA,IAAW,OAAOM,EAAgB,CAChC,KAAK,eAAiBA,CACxB,CAEA,IAAW,gBAA0B,CACnC,OAAO,KAAK,eACd,CACA,IAAW,eAAeA,EAAgB,CACpC,KAAK,kBAAoBA,IAC3B,KAAK,gBAAkBA,EACvB,KAAK,SAAS,mBAAmB,UAAW,KAAK,iBAAkB,CAAC,KAAK,eAAe,EACxF,KAAK,SAAS,gBAAgBC,GAAMA,EAAG,eAAiB,KAAK,eAAe,EAC5E,KAAK,SAAS,oBAAoBC,EAAe,WAAW,OAAQ,KAAK,eAAe,EACxF,KAAK,SAAS,oBAAoBA,EAAe,WAAW,gBAAiB,KAAK,eAAe,EAErG,CAEA,IAAW,UAAoB,CAC7B,OAAO,KAAK,SACd,CACA,IAAW,SAASF,EAAgB,CAC9B,KAAK,YAAcA,IACrB,KAAK,UAAYA,EACjB,KAAK,SAAS,gBAAgBC,GAAMA,EAAG,SAAW,KAAK,SAAS,EAChE,KAAK,SAAS,oBAAoBC,EAAe,WAAW,SAAU,KAAK,SAAS,EAExF,CAEA,IAAW,OAAiB,CAC1B,OAAO,KAAK,MACd,CACA,IAAW,MAAMF,EAAgB,CAC3B,KAAK,SAAWA,IAClB,KAAK,OAASA,EACd,KAAK,SAAS,gBAAgBC,GAAMA,EAAG,MAAQ,KAAK,MAAM,EAC1D,KAAK,SAAS,oBAAoBC,EAAe,WAAW,MAAO,KAAK,MAAM,EAElF,CAEA,IAAW,gBAA0B,CACnC,OAAO,KAAK,eACd,CACA,IAAW,eAAeF,EAAgB,CACpC,KAAK,kBAAoBA,IAC3B,KAAK,gBAAkBA,EACvB,KAAK,SAAS,gBAAgBC,GAAMA,EAAG,eAAiB,KAAK,eAAe,EAC5E,KAAK,SAAS,iBAAiBC,EAAe,WAAW,gBAAiB,KAAK,gBAAkB,OAAS,OAAO,EAErH,CAEA,IAAW,UAAoB,CAC7B,OAAO,KAAK,SACd,CACA,IAAW,SAASF,EAAgB,CAC9B,KAAK,YAAcA,IACrB,KAAK,UAAYA,EACjB,KAAK,SAAS,gBAAgBC,GAAMA,EAAG,SAAW,KAAK,SAAS,EAChE,KAAK,SAAS,oBAAoBC,EAAe,WAAW,SAAU,KAAK,SAAS,EAExF,CAEA,IAAW,eAAqC,CAC9C,OAAO,KAAK,cACd,CACA,IAAW,cAAcF,EAA4B,CAC/C,KAAK,iBAAmBA,IAC1B,KAAK,eAAiBA,EACtB,KAAK,SAAS,qBAAqB,KAAK,cAAc,EAE1D,CAEA,IAAW,SAAmB,CAC5B,OAAO,KAAK,QACd,CACA,IAAW,QAAQA,EAAgB,CAC7B,KAAK,WAAaA,IACpB,KAAK,SAAWA,EAChB,KAAK,SAAS,gBAAgBC,GAAMA,EAAG,QAAU,KAAK,QAAQ,EAC9D,KAAK,SAAS,oBAAoBC,EAAe,WAAW,SAAU,KAAK,QAAQ,EAEvF,CAEA,IAAW,WAAqB,CAC9B,OAAO,KAAK,UACd,CACA,IAAW,UAAUF,EAAgB,CAC/B,KAAK,aAAeA,IACtB,KAAK,WAAaA,EAClB,KAAK,SAAS,gBAAgBC,GAAMA,EAAG,UAAY,KAAK,UAAU,EAClE,KAAK,SAAS,oBAAoBC,EAAe,WAAW,WAAY,KAAK,UAAU,EAE3F,CAEA,IAAW,MAAgB,CACzB,OAAO,KAAK,KACd,CACA,IAAW,KAAKF,EAAgB,CAC1B,KAAK,QAAUA,IACjB,KAAK,MAAQA,EACb,KAAK,SAAS,gBAAgBC,GAAMA,EAAG,KAAO,KAAK,KAAK,EACxD,KAAK,SAAS,oBAAoBC,EAAe,WAAW,KAAM,KAAK,KAAK,EAEhF,CACF,EC5KA,IAAMC,EAAW,+EACXC,EAAS,krBAmEFC,EAAN,cAA4BC,CAAwC,CAmBzE,aAAc,CACZ,MAAM,EACNC,EAAqB,KAAMJ,EAAUC,CAAM,EAC3C,KAAK,YAAc,IAAII,EAAe,IAAIC,EAAY,IAAI,CAAC,CAC7D,CAtBA,WAAkB,oBAA+B,CAC/C,MAAO,CACLC,EAAe,WAAW,KAC1BA,EAAe,WAAW,OAC1BA,EAAe,WAAW,gBAC1BA,EAAe,WAAW,SAC1BA,EAAe,WAAW,MAC1BA,EAAe,WAAW,gBAC1BA,EAAe,WAAW,eAC1BA,EAAe,WAAW,SAC1BA,EAAe,WAAW,SAC1BA,EAAe,WAAW,WAC1BA,EAAe,WAAW,IAC5B,CACF,CAUO,mBAA0B,CAC/B,KAAK,YAAY,WAAW,CAC9B,CAEO,yBAAyBC,EAAcC,EAAkBC,EAAwB,CACtF,OAAQF,EAAM,CACZ,KAAKD,EAAe,WAAW,KAC7B,KAAK,YAAY,WAAW,EAC5B,MACF,KAAKA,EAAe,WAAW,OAC/B,KAAKA,EAAe,WAAW,gBAC7B,KAAK,eAAiBI,EAAcD,CAAQ,EAC5C,MACF,KAAKH,EAAe,WAAW,SAC7B,KAAK,SAAWI,EAAcD,CAAQ,EACtC,MACF,KAAKH,EAAe,WAAW,MAC7B,KAAK,MAAQI,EAAcD,CAAQ,EACnC,MACF,KAAKH,EAAe,WAAW,gBAC7B,KAAK,eAAiBI,EAAcD,CAAQ,EAC5C,MACF,KAAKH,EAAe,WAAW,SAC7B,KAAK,SAAWI,EAAcD,CAAQ,EACtC,MACF,KAAKH,EAAe,WAAW,eAC7B,KAAK,cAAgBG,EACrB,MACF,KAAKH,EAAe,WAAW,SAC7B,KAAK,QAAUI,EAAcD,CAAQ,EACrC,MACF,KAAKH,EAAe,WAAW,WAC7B,KAAK,UAAYI,EAAcD,CAAQ,EACvC,MACF,KAAKH,EAAe,WAAW,KAC7B,KAAK,KAAOI,EAAcD,CAAQ,EAClC,KACJ,CACF,CA+BF,EA5BiBE,EAAA,CADdC,EAAmB,GAjETX,EAkEI,sBAGAU,EAAA,CADdC,EAAmB,GApETX,EAqEI,8BAGAU,EAAA,CADdC,EAAmB,GAvETX,EAwEI,wBAGAU,EAAA,CADdC,EAAmB,GA1ETX,EA2EI,qBAGAU,EAAA,CADdC,EAAmB,GA7ETX,EA8EI,8BAGAU,EAAA,CADdC,EAAmB,GAhFTX,EAiFI,wBAGAU,EAAA,CADdC,EAAmB,GAnFTX,EAoFI,6BAGAU,EAAA,CADdC,EAAmB,GAtFTX,EAuFI,uBAGAU,EAAA,CADdC,EAAmB,GAzFTX,EA0FI,yBAGAU,EAAA,CADdC,EAAmB,GA5FTX,EA6FI,oBA7FJA,EAANU,EAAA,CANNE,EAAc,CACb,KAAMP,EAAe,YACrB,aAAc,CACZQ,CACF,CACF,CAAC,GACYb,GClEN,SAASc,GAA4B,CAC1CC,EAAoBC,CAAa,CACnC",
6
6
  "names": ["ListAdapter", "BaseAdapter", "component", "listItems", "focusedListItemIndex", "item", "nextIndex", "value", "values", "val", "isDeepEqual", "cb", "_a", "role", "ListComponentItemRole", "li", "LIST_ITEM_CONSTANTS", "LIST_CONSTANTS", "ListFoundation", "_adapter", "evt", "key", "altKey", "ctrlKey", "shiftKey", "metaKey", "value", "li", "LIST_CONSTANTS", "template", "styles", "ListComponent", "BaseComponent", "attachShadowTemplate", "ListFoundation", "ListAdapter", "LIST_CONSTANTS", "name", "oldValue", "newValue", "coerceBoolean", "__decorateClass", "FoundationProperty", "CustomElement", "ListItemComponent", "defineListComponent", "defineCustomElement", "ListComponent"]
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 x}from"./chunk.GHMAI3SM.js";import{b as I,d as L}from"./chunk.5LCWC3A7.js";import{a as E,p as T}from"./chunk.HJUFU2PV.js";import{a as w,b as A}from"./chunk.H6MMHAQI.js";import{c as k}from"./chunk.BX4AQRHB.js";import{a as m}from"./chunk.ZY3ETQ3D.js";import{a as i}from"./chunk.NVUMRW44.js";import{a as v,b as y,l as b,m as s}from"./chunk.RRNSZCVJ.js";import{e as h,f as c,k as _}from"./chunk.TPXXHX5J.js";import{k as l}from"./chunk.J2M2MXP2.js";import{a as f,d as a}from"./chunk.M3QDAYD2.js";var g=class extends m{constructor(e){super(e);this._focusIndicatorElement=c(e,I.elementName),this._stateLayerElement=c(e,E.elementName)}initialize(){this._component[s]({role:"button"},{setAttribute:!this._component.hasAttribute("role")}),this._component[s]({ariaPressed:`${!!this._component.selected}`,ariaDisabled:`${!!this._component.disabled}`}),this._component[b]=!this._component.disabled}setSelected(e){this._component[s]({ariaPressed:`${!!e}`})}setDisabled(e){this._component[s]({ariaDisabled:`${!!e}`}),this._component[b]=!e,this._stateLayerElement.disabled=e}forceFocusVisible(){this._focusIndicatorElement.active=!0}};var C=`${y}button-toggle`,S={SELECTED:"selected",VALUE:"value",DISABLED:"disabled",READONLY:"readonly",TABINDEX:"tabindex"},D=f({},S),N={SELECT:`${C}-select`},o={elementName:C,observedAttributes:S,attributes:D,events:N};var d=class{constructor(t){this._adapter=t;this._selected=!1;this._disabled=!1;this._readonly=!1;this._clickListener=t=>this._onClick(t);this._keydownListener=t=>this._onKeyDown(t)}initialize(){this._adapter.initialize(),!this._disabled&&!this._readonly&&this._applyListeners()}destroy(){this._removeListeners()}focus(t={focusVisible:!0}){this._adapter.focusHost(t),t.focusVisible&&this._adapter.forceFocusVisible()}click(){this._adapter.clickHost()}_applyListeners(){this._adapter.addHostListener("click",this._clickListener),this._adapter.addHostListener("keydown",this._keydownListener)}_removeListeners(){this._adapter.removeHostListener("click",this._clickListener),this._adapter.removeHostListener("keydown",this._keydownListener)}async _onClick(t){let e=this._selected;this._selected=!this._selected;let u={value:this._value,selected:this._selected},r=new CustomEvent(o.events.SELECT,{detail:u,bubbles:!0,cancelable:!0});this._adapter.dispatchHostEvent(r),await k(),this._selected=e,!r.defaultPrevented&&(this.selected=!e)}_onKeyDown(t){t.key===" "&&(t.preventDefault(),this.click())}get value(){return this._value}set value(t){this._value!==t&&(this._value=t,this._adapter.setHostAttribute(o.attributes.VALUE,`${this._value}`))}get selected(){return this._selected}set selected(t){t=!!t,this._selected!==t&&(this._selected=t,this._adapter.setSelected(this._selected),this._adapter.toggleHostAttribute(o.attributes.SELECTED,this._selected))}get disabled(){return this._disabled}set disabled(t){t=!!t,this._disabled!==t&&(this._disabled=t,this._disabled?this._removeListeners():this._applyListeners(),this._adapter.setDisabled(this._disabled),this._adapter.toggleHostAttribute(o.attributes.DISABLED,this._disabled))}get readonly(){return this._readonly}set readonly(t){t=!!t,this._readonly!==t&&(this._readonly=t,this._readonly?this._removeListeners():this._applyListeners(),this._adapter.toggleHostAttribute(o.attributes.READONLY,this._readonly))}};var B='<template><div class="forge-button-toggle" part="root"><slot name="start"></slot><slot></slot><slot name="end"></slot><forge-focus-indicator target=":host" part="focus-indicator"></forge-focus-indicator><forge-state-layer target=":host" exportparts="surface:state-layer"></forge-state-layer></div></template>',F=':host{--_button-toggle-display:var(--forge-button-toggle-display, inline-flex)}:host{display:var(--_button-toggle-display);position:relative;outline:0;height:100%;-webkit-tap-highlight-color:transparent}:host([hidden]){display:none}.forge-button-toggle{--_button-toggle-min-width:var(--forge-button-toggle-min-width, auto);--_button-toggle-spacing:var(--forge-button-toggle-spacing, var(--forge-spacing-xsmall, 8px));--_button-toggle-padding-block:var(--forge-button-toggle-padding-block, 2px);--_button-toggle-padding-inline:var(--forge-button-toggle-padding-inline, 8px);--_button-toggle-icon-size:var(--forge-button-toggle-icon-size, var(--forge-button-icon-size, calc(var(--forge-typography-font-size, 1rem) * 1.125)));--_button-toggle-color:var(--forge-button-toggle-color, var(--forge-theme-text-medium, rgba(0, 0, 0, 0.6)));--_button-toggle-background:var(--forge-button-toggle-background, transparent);--_button-toggle-hover-background:var(--forge-button-toggle-hover-background, var(--_button-toggle-background));--_button-toggle-active-background:var(--forge-button-toggle-active-background, var(--_button-toggle-background));--_button-toggle-cursor:var(--forge-button-toggle-cursor, pointer);--_button-toggle-border-width:var(--forge-button-toggle-border-width, medium);--_button-toggle-border-style:var(--forge-button-toggle-border-style, none);--_button-toggle-border-color:var(--forge-button-toggle-border-color, var(--forge-theme-outline-medium, #757575));--_button-toggle-shape:var(--forge-button-toggle-shape, var(--forge-shape-small, 2px));--_button-toggle-shape-start-start:var(--forge-button-toggle-shape-start-start, var(--_button-toggle-shape));--_button-toggle-shape-start-end:var(--forge-button-toggle-shape-start-end, var(--_button-toggle-shape));--_button-toggle-shape-end-start:var(--forge-button-toggle-shape-end-start, var(--_button-toggle-shape));--_button-toggle-shape-end-end:var(--forge-button-toggle-shape-end-end, var(--_button-toggle-shape));--_button-toggle-selected-background:var(--forge-button-toggle-selected-background, var(--forge-theme-tertiary-container, #d0d7ff));--_button-toggle-selected-color:var(--forge-button-toggle-selected-color, var(--forge-theme-on-tertiary-container, #213189));--_button-toggle-selected-disabled-background:var(--forge-button-toggle-selected-disabled-background, var(--forge-theme-surface-container, #e0e0e0));--_button-toggle-dense-height:var(--forge-button-toggle-dense-height, 24px);--_button-toggle-disabled-opacity:var(--forge-button-toggle-disabled-opacity, 0.38);--_button-toggle-disabled-cursor:var(--forge-button-toggle-disabled-cursor, not-allowed);--_button-toggle-disabled-color:var(--forge-button-toggle-disabled-color, var(--forge-theme-text-low, rgba(0, 0, 0, 0.38)));--_button-toggle-disabled-background:var(--forge-button-toggle-disabled-background, transparent);--_button-toggle-transition-duration:var(--forge-button-toggle-transition-duration, var(--forge-animation-duration-short3, 150ms));--_button-toggle-transition-timing:var(--forge-button-toggle-transition-timing, var(--forge-animation-easing-standard, cubic-bezier(0.2, 0, 0, 1)));--_button-toggle-focus-indicator-color:var(--forge-button-toggle-focus-indicator-color, var(--forge-theme-primary, #3f51b5));--_button-toggle-focus-indicator-offset:var(--forge-button-toggle-focus-indicator-offset, 0px)}.forge-button-toggle{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:var(--forge-typography-button-font-family, var(--forge-typography-font-family, "Roboto", sans-serif));font-size:var(--forge-typography-button-font-size, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-button-font-size-scale, .875)));font-weight:var(--forge-typography-button-font-weight,500);line-height:var(--forge-typography-button-line-height, normal);letter-spacing:var(--forge-typography-button-letter-spacing, .0714285714em);text-transform:var(--forge-typography-button-text-transform,inherit);-webkit-text-decoration:var(--forge-typography-button-text-decoration,inherit);text-decoration:var(--forge-typography-button-text-decoration,inherit);position:relative;display:var(--_button-toggle-display);-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;gap:var(--_button-toggle-spacing);z-index:0;-webkit-box-sizing:border-box;box-sizing:border-box;min-inline-size:var(--_button-toggle-min-width);inline-size:100%;border-width:var(--_button-toggle-border-width);border-style:var(--_button-toggle-border-style);border-color:var(--_button-toggle-border-color);border-start-start-radius:var(--_button-toggle-shape-start-start);border-start-end-radius:var(--_button-toggle-shape-start-end);border-end-start-radius:var(--_button-toggle-shape-end-start);border-end-end-radius:var(--_button-toggle-shape-end-end);padding-block:var(--_button-toggle-padding-block);padding-inline:var(--_button-toggle-padding-inline);outline:0;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-appearance:none;vertical-align:middle;text-decoration:none;white-space:nowrap;background:var(--_button-toggle-background);color:var(--_button-toggle-color);cursor:var(--_button-toggle-cursor);-webkit-transition-property:color,background-color,border-color;transition-property:color,background-color,border-color;-webkit-transition-duration:var(--_button-toggle-transition-duration);transition-duration:var(--_button-toggle-transition-duration);-webkit-transition-timing-function:var(--_button-toggle-transition-timing);transition-timing-function:var(--_button-toggle-transition-timing)}.forge-button-toggle forge-state-layer{--forge-state-layer-color:var(--_button-toggle-color)}.forge-button-toggle forge-focus-indicator{--forge-focus-indicator-outward-offset:var(--_button-toggle-focus-indicator-offset);--forge-focus-indicator-color:var(--_button-toggle-focus-indicator-color);--forge-focus-indicator-shape:var(--_button-toggle-shape);--forge-focus-indicator-shape-start-start:var(--_button-toggle-shape-start-start);--forge-focus-indicator-shape-start-end:var(--_button-toggle-shape-start-end);--forge-focus-indicator-shape-end-start:var(--_button-toggle-shape-end-start);--forge-focus-indicator-shape-end-end:var(--_button-toggle-shape-end-end)}::slotted(:is([slot=start],[slot=end])){font-size:var(--_button-toggle-icon-size)}:host([selected]) .forge-button-toggle{--_button-toggle-background:var(--_button-toggle-selected-background);--_button-toggle-color:var(--_button-toggle-selected-color);--_button-toggle-border-color:var(--_button-toggle-background)}:host([disabled]){--_button-toggle-cursor:var(--_button-toggle-disabled-cursor);cursor:not-allowed}:host([disabled]) .forge-button-toggle{--_button-toggle-background:var(--_button-toggle-disabled-background);--_button-toggle-color:var(--_button-toggle-disabled-color);opacity:var(--_button-toggle-disabled-opacity);pointer-events:none}:host([disabled][selected]) .forge-button-toggle{--_button-toggle-background:var(--_button-toggle-selected-disabled-background)}',O=A(w(x(_))),n=class extends O{constructor(){super();h(this,B,F),this._foundation=new d(new g(this))}static get observedAttributes(){return Object.values(o.observedAttributes)}connectedCallback(){this._foundation.initialize()}disconnectedCallback(){this._foundation.destroy()}attributeChangedCallback(e,u,r){switch(e){case o.attributes.VALUE:this.value=r;return;case o.attributes.SELECTED:this.selected=l(r);return;case o.attributes.DISABLED:this.disabled=l(r);return;case o.attributes.READONLY:this.readonly=l(r);return}super.attributeChangedCallback(e,u,r)}focus(e){this._foundation.focus(e)}click(){this._foundation.click()}};a([i()],n.prototype,"value",2),a([i()],n.prototype,"selected",2),a([i()],n.prototype,"disabled",2),a([i()],n.prototype,"readonly",2),n=a([v({name:o.elementName,dependencies:[L,T]})],n);export{g as a,o as b,d as c,n as d};
7
+ //# sourceMappingURL=chunk.5XLCY232.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/button-toggle/button-toggle/button-toggle-adapter.ts", "../../src/button-toggle/button-toggle/button-toggle-constants.ts", "../../src/button-toggle/button-toggle/button-toggle-foundation.ts", "../../src/button-toggle/button-toggle/button-toggle.ts"],
4
+ "sourcesContent": ["import { getShadowElement } from '@tylertech/forge-core';\nimport { BaseAdapter, IBaseAdapter } from '../../core/base/base-adapter';\nimport { IButtonToggleComponent } from './button-toggle';\nimport { isFocusable, setDefaultAria } from '../../constants';\nimport { IStateLayerComponent } from '../../state-layer/state-layer';\nimport { STATE_LAYER_CONSTANTS } from '../../state-layer/state-layer-constants';\nimport { IFocusIndicatorComponent } from '../../focus-indicator/focus-indicator';\nimport { FOCUS_INDICATOR_CONSTANTS } from '../../focus-indicator/focus-indicator-constants';\n\nexport interface IButtonToggleAdapter extends IBaseAdapter {\n initialize(): void;\n setSelected(value: boolean): void;\n setDisabled(value: boolean): void;\n forceFocusVisible(): void;\n}\n\nexport class ButtonToggleAdapter extends BaseAdapter<IButtonToggleComponent> implements IButtonToggleAdapter {\n private _focusIndicatorElement: IFocusIndicatorComponent;\n private _stateLayerElement: IStateLayerComponent;\n\n constructor(component: IButtonToggleComponent) {\n super(component);\n this._focusIndicatorElement = getShadowElement(component, FOCUS_INDICATOR_CONSTANTS.elementName) as IFocusIndicatorComponent;\n this._stateLayerElement = getShadowElement(component, STATE_LAYER_CONSTANTS.elementName) as IStateLayerComponent;\n }\n\n public initialize(): void {\n this._component[setDefaultAria]({ role: 'button' }, { setAttribute: !this._component.hasAttribute('role') });\n this._component[setDefaultAria]({\n ariaPressed: `${!!this._component.selected}`,\n ariaDisabled: `${!!this._component.disabled}`\n });\n this._component[isFocusable] = !this._component.disabled;\n }\n\n public setSelected(value: boolean): void {\n this._component[setDefaultAria]({ ariaPressed: `${!!value}` });\n }\n\n public setDisabled(value: boolean): void {\n this._component[setDefaultAria]({ ariaDisabled: `${!!value}` });\n this._component[isFocusable] = !value;\n this._stateLayerElement.disabled = value;\n }\n\n public forceFocusVisible(): void {\n this._focusIndicatorElement.active = true;\n }\n}\n", "import { COMPONENT_NAME_PREFIX } from '../../constants';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}button-toggle`;\n\nconst observedAttributes = {\n SELECTED: 'selected',\n VALUE: 'value',\n DISABLED: 'disabled',\n READONLY: 'readonly',\n TABINDEX: 'tabindex' // Need this to support the focusable mixin\n};\n\nconst attributes = {\n ...observedAttributes\n};\n\nconst events = {\n SELECT: `${elementName}-select`\n};\n\nexport const BUTTON_TOGGLE_CONSTANTS = {\n elementName,\n observedAttributes,\n attributes,\n events\n};\n\nexport interface IButtonToggleSelectEventData<T = unknown> {\n value: T;\n selected: boolean;\n}\n", "import { ICustomElementFoundation } from '@tylertech/forge-core';\nimport { task } from '../../core/utils/event-utils';\nimport { ExperimentalFocusOptions } from '../../constants';\nimport { IButtonToggleAdapter } from './button-toggle-adapter';\nimport { BUTTON_TOGGLE_CONSTANTS, IButtonToggleSelectEventData } from './button-toggle-constants';\n\nexport interface IButtonToggleFoundation extends ICustomElementFoundation {\n value: unknown;\n selected: boolean;\n disabled: boolean;\n readonly: boolean;\n destroy(): void;\n focus(options?: ExperimentalFocusOptions): void;\n click(): void;\n}\n\nexport class ButtonToggleFoundation implements IButtonToggleFoundation {\n private _value: unknown;\n private _selected = false;\n private _disabled = false;\n private _readonly = false;\n\n private _clickListener: EventListener = (evt: MouseEvent) => this._onClick(evt);\n private _keydownListener: EventListener = (evt: KeyboardEvent) => this._onKeyDown(evt);\n\n constructor(private _adapter: IButtonToggleAdapter) {}\n\n public initialize(): void {\n this._adapter.initialize();\n\n if (!this._disabled && !this._readonly) {\n this._applyListeners();\n }\n }\n\n public destroy(): void {\n this._removeListeners();\n }\n\n public focus(options: ExperimentalFocusOptions = { focusVisible: true }): void {\n this._adapter.focusHost(options);\n\n if (options.focusVisible) {\n this._adapter.forceFocusVisible();\n }\n }\n\n public click(): void {\n this._adapter.clickHost();\n }\n\n private _applyListeners(): void {\n this._adapter.addHostListener('click', this._clickListener);\n this._adapter.addHostListener('keydown', this._keydownListener);\n }\n\n private _removeListeners(): void {\n this._adapter.removeHostListener('click', this._clickListener);\n this._adapter.removeHostListener('keydown', this._keydownListener);\n }\n\n private async _onClick(_evt: MouseEvent | KeyboardEvent): Promise<void> {\n const originalSelected = this._selected;\n this._selected = !this._selected;\n\n const detail: IButtonToggleSelectEventData = {\n value: this._value,\n selected: this._selected\n };\n const evt = new CustomEvent(BUTTON_TOGGLE_CONSTANTS.events.SELECT, { detail, bubbles: true, cancelable: true });\n this._adapter.dispatchHostEvent(evt);\n\n await task();\n\n this._selected = originalSelected;\n\n if (evt.defaultPrevented) {\n return;\n }\n\n this.selected = !originalSelected;\n }\n\n private _onKeyDown(evt: KeyboardEvent): void {\n if (evt.key === ' ') {\n evt.preventDefault();\n this.click();\n }\n }\n\n public get value(): unknown {\n return this._value;\n }\n public set value(value: unknown) {\n if (this._value !== value) {\n this._value = value;\n this._adapter.setHostAttribute(BUTTON_TOGGLE_CONSTANTS.attributes.VALUE, `${this._value}`);\n }\n }\n \n public get selected(): boolean {\n return this._selected;\n }\n public set selected(value: boolean) {\n value = !!value;\n if (this._selected !== value) {\n this._selected = value;\n this._adapter.setSelected(this._selected);\n this._adapter.toggleHostAttribute(BUTTON_TOGGLE_CONSTANTS.attributes.SELECTED, this._selected);\n }\n }\n \n public get disabled(): boolean {\n return this._disabled;\n }\n public set disabled(value: boolean) {\n value = !!value;\n if (this._disabled !== value) {\n this._disabled = value;\n if (this._disabled) {\n this._removeListeners();\n } else {\n this._applyListeners();\n }\n this._adapter.setDisabled(this._disabled);\n this._adapter.toggleHostAttribute(BUTTON_TOGGLE_CONSTANTS.attributes.DISABLED, this._disabled);\n }\n }\n\n public get readonly(): boolean {\n return this._readonly;\n }\n public set readonly(value: boolean) {\n value = !!value;\n if (this._readonly !== value) {\n this._readonly = value;\n \n if (this._readonly) {\n this._removeListeners();\n } else {\n this._applyListeners();\n }\n\n this._adapter.toggleHostAttribute(BUTTON_TOGGLE_CONSTANTS.attributes.READONLY, this._readonly);\n }\n }\n}\n", "import { attachShadowTemplate, coerceBoolean, CustomElement, FoundationProperty } from '@tylertech/forge-core';\nimport { ExperimentalFocusOptions } from '../../constants';\nimport { IWithFocusable, WithFocusable } from '../../core/mixins/focus/with-focusable';\nimport { IWithElementInternals, WithElementInternals } from '../../core/mixins/internals/with-element-internals';\nimport { FocusIndicatorComponent } from '../../focus-indicator';\nimport { StateLayerComponent } from '../../state-layer';\nimport { BaseComponent } from '../../core/base/base-component';\nimport { ButtonToggleAdapter } from './button-toggle-adapter';\nimport { BUTTON_TOGGLE_CONSTANTS, IButtonToggleSelectEventData } from './button-toggle-constants';\nimport { ButtonToggleFoundation } from './button-toggle-foundation';\nimport { IWithDefaultAria, WithDefaultAria } from '../../core/mixins/internals/with-default-aria';\n\nconst template = '<template><div class=\\\"forge-button-toggle\\\" part=\\\"root\\\"><slot name=\\\"start\\\"></slot><slot></slot><slot name=\\\"end\\\"></slot><forge-focus-indicator target=\\\":host\\\" part=\\\"focus-indicator\\\"></forge-focus-indicator><forge-state-layer target=\\\":host\\\" exportparts=\\\"surface:state-layer\\\"></forge-state-layer></div></template>';\nconst styles = ':host{--_button-toggle-display:var(--forge-button-toggle-display, inline-flex)}:host{display:var(--_button-toggle-display);position:relative;outline:0;height:100%;-webkit-tap-highlight-color:transparent}:host([hidden]){display:none}.forge-button-toggle{--_button-toggle-min-width:var(--forge-button-toggle-min-width, auto);--_button-toggle-spacing:var(--forge-button-toggle-spacing, var(--forge-spacing-xsmall, 8px));--_button-toggle-padding-block:var(--forge-button-toggle-padding-block, 2px);--_button-toggle-padding-inline:var(--forge-button-toggle-padding-inline, 8px);--_button-toggle-icon-size:var(--forge-button-toggle-icon-size, var(--forge-button-icon-size, calc(var(--forge-typography-font-size, 1rem) * 1.125)));--_button-toggle-color:var(--forge-button-toggle-color, var(--forge-theme-text-medium, rgba(0, 0, 0, 0.6)));--_button-toggle-background:var(--forge-button-toggle-background, transparent);--_button-toggle-hover-background:var(--forge-button-toggle-hover-background, var(--_button-toggle-background));--_button-toggle-active-background:var(--forge-button-toggle-active-background, var(--_button-toggle-background));--_button-toggle-cursor:var(--forge-button-toggle-cursor, pointer);--_button-toggle-border-width:var(--forge-button-toggle-border-width, medium);--_button-toggle-border-style:var(--forge-button-toggle-border-style, none);--_button-toggle-border-color:var(--forge-button-toggle-border-color, var(--forge-theme-outline-medium, #757575));--_button-toggle-shape:var(--forge-button-toggle-shape, var(--forge-shape-small, 2px));--_button-toggle-shape-start-start:var(--forge-button-toggle-shape-start-start, var(--_button-toggle-shape));--_button-toggle-shape-start-end:var(--forge-button-toggle-shape-start-end, var(--_button-toggle-shape));--_button-toggle-shape-end-start:var(--forge-button-toggle-shape-end-start, var(--_button-toggle-shape));--_button-toggle-shape-end-end:var(--forge-button-toggle-shape-end-end, var(--_button-toggle-shape));--_button-toggle-selected-background:var(--forge-button-toggle-selected-background, var(--forge-theme-tertiary-container, #d0d7ff));--_button-toggle-selected-color:var(--forge-button-toggle-selected-color, var(--forge-theme-on-tertiary-container, #213189));--_button-toggle-selected-disabled-background:var(--forge-button-toggle-selected-disabled-background, var(--forge-theme-surface-container, #e0e0e0));--_button-toggle-dense-height:var(--forge-button-toggle-dense-height, 24px);--_button-toggle-disabled-opacity:var(--forge-button-toggle-disabled-opacity, 0.38);--_button-toggle-disabled-cursor:var(--forge-button-toggle-disabled-cursor, not-allowed);--_button-toggle-disabled-color:var(--forge-button-toggle-disabled-color, var(--forge-theme-text-low, rgba(0, 0, 0, 0.38)));--_button-toggle-disabled-background:var(--forge-button-toggle-disabled-background, transparent);--_button-toggle-transition-duration:var(--forge-button-toggle-transition-duration, var(--forge-animation-duration-short3, 150ms));--_button-toggle-transition-timing:var(--forge-button-toggle-transition-timing, var(--forge-animation-easing-standard, cubic-bezier(0.2, 0, 0, 1)));--_button-toggle-focus-indicator-color:var(--forge-button-toggle-focus-indicator-color, var(--forge-theme-primary, #3f51b5));--_button-toggle-focus-indicator-offset:var(--forge-button-toggle-focus-indicator-offset, 0px)}.forge-button-toggle{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:var(--forge-typography-button-font-family, var(--forge-typography-font-family, \\\"Roboto\\\", sans-serif));font-size:var(--forge-typography-button-font-size, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-button-font-size-scale, .875)));font-weight:var(--forge-typography-button-font-weight,500);line-height:var(--forge-typography-button-line-height, normal);letter-spacing:var(--forge-typography-button-letter-spacing, .0714285714em);text-transform:var(--forge-typography-button-text-transform,inherit);-webkit-text-decoration:var(--forge-typography-button-text-decoration,inherit);text-decoration:var(--forge-typography-button-text-decoration,inherit);position:relative;display:var(--_button-toggle-display);-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;gap:var(--_button-toggle-spacing);z-index:0;-webkit-box-sizing:border-box;box-sizing:border-box;min-inline-size:var(--_button-toggle-min-width);inline-size:100%;border-width:var(--_button-toggle-border-width);border-style:var(--_button-toggle-border-style);border-color:var(--_button-toggle-border-color);border-start-start-radius:var(--_button-toggle-shape-start-start);border-start-end-radius:var(--_button-toggle-shape-start-end);border-end-start-radius:var(--_button-toggle-shape-end-start);border-end-end-radius:var(--_button-toggle-shape-end-end);padding-block:var(--_button-toggle-padding-block);padding-inline:var(--_button-toggle-padding-inline);outline:0;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-appearance:none;vertical-align:middle;text-decoration:none;white-space:nowrap;background:var(--_button-toggle-background);color:var(--_button-toggle-color);cursor:var(--_button-toggle-cursor);-webkit-transition-property:color,background-color,border-color;transition-property:color,background-color,border-color;-webkit-transition-duration:var(--_button-toggle-transition-duration);transition-duration:var(--_button-toggle-transition-duration);-webkit-transition-timing-function:var(--_button-toggle-transition-timing);transition-timing-function:var(--_button-toggle-transition-timing)}.forge-button-toggle forge-state-layer{--forge-state-layer-color:var(--_button-toggle-color)}.forge-button-toggle forge-focus-indicator{--forge-focus-indicator-outward-offset:var(--_button-toggle-focus-indicator-offset);--forge-focus-indicator-color:var(--_button-toggle-focus-indicator-color);--forge-focus-indicator-shape:var(--_button-toggle-shape);--forge-focus-indicator-shape-start-start:var(--_button-toggle-shape-start-start);--forge-focus-indicator-shape-start-end:var(--_button-toggle-shape-start-end);--forge-focus-indicator-shape-end-start:var(--_button-toggle-shape-end-start);--forge-focus-indicator-shape-end-end:var(--_button-toggle-shape-end-end)}::slotted(:is([slot=start],[slot=end])){font-size:var(--_button-toggle-icon-size)}:host([selected]) .forge-button-toggle{--_button-toggle-background:var(--_button-toggle-selected-background);--_button-toggle-color:var(--_button-toggle-selected-color);--_button-toggle-border-color:var(--_button-toggle-background)}:host([disabled]){--_button-toggle-cursor:var(--_button-toggle-disabled-cursor);cursor:not-allowed}:host([disabled]) .forge-button-toggle{--_button-toggle-background:var(--_button-toggle-disabled-background);--_button-toggle-color:var(--_button-toggle-disabled-color);opacity:var(--_button-toggle-disabled-opacity);pointer-events:none}:host([disabled][selected]) .forge-button-toggle{--_button-toggle-background:var(--_button-toggle-selected-disabled-background)}';\n\nexport interface IButtonToggleComponent<T = unknown> extends IWithElementInternals, IWithDefaultAria, IWithFocusable {\n value: T;\n selected: boolean;\n disabled: boolean;\n readonly: boolean;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'forge-button-toggle': IButtonToggleComponent;\n }\n\n interface HTMLElementEventMap {\n 'forge-button-toggle-select': CustomEvent<IButtonToggleSelectEventData>;\n }\n}\n\nconst BaseButtonToggleClass = WithDefaultAria(WithElementInternals(WithFocusable(BaseComponent)));\n\n/**\n * @tag forge-button-toggle\n * \n * @property {unknown} value - The value of the button toggle.\n * @property {boolean} selected - Whether or not the button is selected.\n * @property {boolean} disabled - Whether or not the button is disabled.\n * @property {boolean} readonly - Whether or not the button is readonly.\n * \n * @attribute {unknown} value - The value of the button toggle.\n * @attribute {boolean} selected - Whether or not the button is selected.\n * @attribute {boolean} disabled - Whether or not the button is disabled.\n * @attribute {boolean} readonly - Whether or not the button is readonly.\n * \n * @event {CustomEvent<IButtonToggleSelectEventData>} forge-button-toggle-select - Dispatches when the user toggles the button.\n * \n * @cssproperty --forge-button-toggle-display - The `display` style for the button toggle container element.\n * @cssproperty --forge-button-toggle-min-width - The minimum width.\n * @cssproperty --forge-button-toggle-spacing - The spacing between the button toggle and its content.\n * @cssproperty --forge-button-toggle-padding-block - The padding on the block axis.\n * @cssproperty --forge-button-toggle-padding-inline - The padding on the inline axis.\n * @cssproperty --forge-button-toggle-icon-size - The font-size of start/end slotted content.\n * @cssproperty --forge-button-toggle-color - The color of the button toggle content.\n * @cssproperty --forge-button-toggle-background - The background of the button toggle.\n * @cssproperty --forge-button-toggle-hover-background - The background of the button toggle when hovered.\n * @cssproperty --forge-button-toggle-active-background - The background of the button toggle when active.\n * @cssproperty --forge-button-toggle-cursor - The cursor of the button toggle.\n * @cssproperty --forge-button-toggle-border-width - The border-width of the button toggle.\n * @cssproperty --forge-button-toggle-border-style - The border-style of the button toggle.\n * @cssproperty --forge-button-toggle-border-color - The border-color of the button toggle.\n * @cssproperty --forge-button-toggle-shape - The shape radius of the button toggle.\n * @cssproperty --forge-button-toggle-shape-start-start - The start-start shape radius of the button toggle.\n * @cssproperty --forge-button-toggle-shape-start-end - The start-end shape radius of the button toggle.\n * @cssproperty --forge-button-toggle-shape-end-start - The end-start shape radius of the button toggle.\n * @cssproperty --forge-button-toggle-shape-end-end - The end-end shape radius of the button toggle.\n * @cssproperty --forge-button-toggle-selected-background - The background of the button toggle when selected.\n * @cssproperty --forge-button-toggle-selected-color - The color of the button toggle content when selected.\n * @cssproperty --forge-button-toggle-selected-disabled-background - The background of the button toggle when selected and disabled.\n * @cssproperty --forge-button-toggle-dense-height - The height of the button toggle when dense.\n * @cssproperty --forge-button-toggle-disabled-opacity - The opacity of the button toggle when disabled.\n * @cssproperty --forge-button-toggle-disabled-cursor - The cursor of the button toggle when disabled.\n * @cssproperty --forge-button-toggle-disabled-color - The color of the button toggle content when disabled.\n * @cssproperty --forge-button-toggle-disabled-background - The background of the button toggle when disabled.\n * @cssproperty --forge-button-toggle-transition-duration - The transition-duration of various properties.\n * @cssproperty --forge-button-toggle-transition-timing - The transition-timing of various properties.\n * @cssproperty --forge-button-toggle-focus-indicator-color - The color of the focus indicator.\n * \n * @csspart root - The root container element.\n * @csspart focus-indicator - The focus indicator element.\n * @csspart state-layer - The state layer surface element.\n * \n * @slot - The default/unnamed slot for the button toggle's content.\n * @slot start - Typically reserved for content/icons that render logically before the default slot content.\n * @slot end - Typically reserved content/icons that render logically after the default slot content.\n */\n@CustomElement({\n name: BUTTON_TOGGLE_CONSTANTS.elementName,\n dependencies: [\n FocusIndicatorComponent,\n StateLayerComponent\n ]\n})\nexport class ButtonToggleComponent<T = unknown> extends BaseButtonToggleClass implements IButtonToggleComponent {\n public static get observedAttributes(): string[] {\n return Object.values(BUTTON_TOGGLE_CONSTANTS.observedAttributes);\n }\n\n private _foundation: ButtonToggleFoundation;\n\n constructor() {\n super();\n attachShadowTemplate(this, template, styles);\n this._foundation = new ButtonToggleFoundation(new ButtonToggleAdapter(this));\n }\n\n public connectedCallback(): void {\n this._foundation.initialize();\n }\n\n public disconnectedCallback(): void {\n this._foundation.destroy();\n }\n\n public attributeChangedCallback(name: string, oldValue: string, newValue: string): void {\n switch (name) {\n case BUTTON_TOGGLE_CONSTANTS.attributes.VALUE:\n this.value = newValue as T;\n return;\n case BUTTON_TOGGLE_CONSTANTS.attributes.SELECTED:\n this.selected = coerceBoolean(newValue);\n return;\n case BUTTON_TOGGLE_CONSTANTS.attributes.DISABLED:\n this.disabled = coerceBoolean(newValue);\n return;\n case BUTTON_TOGGLE_CONSTANTS.attributes.READONLY:\n this.readonly = coerceBoolean(newValue);\n return;\n }\n super.attributeChangedCallback(name, oldValue, newValue);\n }\n\n @FoundationProperty()\n public declare value: T;\n\n @FoundationProperty()\n public declare selected: boolean;\n\n @FoundationProperty()\n public declare disabled: boolean;\n\n @FoundationProperty()\n public declare readonly: boolean;\n\n public override focus(options?: ExperimentalFocusOptions): void {\n this._foundation.focus(options);\n }\n\n public override click(): void {\n this._foundation.click();\n }\n}\n"],
5
+ "mappings": "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",
6
+ "names": ["ButtonToggleAdapter", "BaseAdapter", "component", "getShadowElement", "FOCUS_INDICATOR_CONSTANTS", "STATE_LAYER_CONSTANTS", "setDefaultAria", "isFocusable", "value", "elementName", "COMPONENT_NAME_PREFIX", "observedAttributes", "attributes", "__spreadValues", "events", "BUTTON_TOGGLE_CONSTANTS", "ButtonToggleFoundation", "_adapter", "evt", "options", "_evt", "originalSelected", "detail", "BUTTON_TOGGLE_CONSTANTS", "task", "value", "template", "styles", "BaseButtonToggleClass", "WithDefaultAria", "WithElementInternals", "WithFocusable", "BaseComponent", "ButtonToggleComponent", "attachShadowTemplate", "ButtonToggleFoundation", "ButtonToggleAdapter", "BUTTON_TOGGLE_CONSTANTS", "name", "oldValue", "newValue", "coerceBoolean", "options", "__decorateClass", "FoundationProperty", "CustomElement", "FocusIndicatorComponent", "StateLayerComponent"]
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,d as w}from"./chunk.KPC6IS3C.js";import{a as A}from"./chunk.ZY3ETQ3D.js";import{a as n}from"./chunk.NVUMRW44.js";import{a as D,b as O}from"./chunk.RRNSZCVJ.js";import{a as k,e as M,f as u,k as x}from"./chunk.TPXXHX5J.js";import{i as C,s as T,t as y,u as p}from"./chunk.HZUQXCOQ.js";import{c as f,d as E,k as m}from"./chunk.J2M2MXP2.js";import{a as _,d as s}from"./chunk.M3QDAYD2.js";var l=`${O}dialog`,S={ANIMATING:"forge-dialog--animating",OPEN:"forge-dialog--open",ACTION_BUTTON:"forge-dialog__action__button",BUTTON_TEXT:"forge-button__text",SCROLLABLE:"forge-dialog--scrollable",FULLSCREEN:"forge-dialog--fullscreen",MOVEABLE:"forge-dialog--moveable"},v={BACKDROP_CLOSE:"backdrop-close",ESCAPE_CLOSE:"escape-close",FULLSCREEN:"fullscreen",POSITION_TYPE:"position-type",POSITION_X:"position-x",POSITION_Y:"position-y",MOVEABLE:"moveable",MOVE_TARGET:"move-target",OPEN:"open",BODY_OPEN:"forge-dialog-open",INITIAL_FOCUS:"forge-dialog-focus",DFEAULT_MOVE_TARGET:"forge-dialog-move-target"},L={CONTAINER:".forge-dialog",SURFACE:".forge-dialog__surface",BACKDROP:c.elementName,INITIAL_FOCUS:`[${v.INITIAL_FOCUS}]`,DFEAULT_MOVE_TARGET:`[${v.DFEAULT_MOVE_TARGET}]`,CONTENT:".forge-dialog__body"},I={BEFORE_CLOSE:`${l}-before-close`,OPEN:`${l}-open`,CLOSE:`${l}-close`,READY:`${l}-ready`,MOVE_START:`${l}-move-start`,MOVED:`${l}-move`,MOVE_END:`${l}-move-end`},H={ANIMATION_DURATION:150,BACKDROP_MAX_OPACITY:.3},i={elementName:l,classes:S,selectors:L,attributes:v,events:I,numbers:H};var b=class{constructor(t){this._adapter=t;this._open=!1;this._backdropClose=!0;this._escapeClose=!0;this._fullscreen=!1;this._positionType="absolute";this._positionX=null;this._positionY=null;this._moveable=!1;this._moveTarget=i.selectors.DFEAULT_MOVE_TARGET;this._isAnimating=!1;this._isMoving=!1;this._transitionEndHandler=e=>this._onTransitionEnd(),this._documentKeydownHandler=e=>this._onDocumentKeydown(e),this._backdropClickHandler=e=>this._onBackdropClick(e),this._moveTargetMouseDownHandler=e=>this._onMoveTargetMouseDown(e),this._moveTargetMouseMoveHandler=e=>this._onMoveTargetMouseMove(e),this._moveTargetMouseUpHandler=e=>this._onMoveTargetMouseUp(e)}initialize(){this._adapter.initializeAccessibility(),this._open&&this._moveable&&(this._adapter.setMoveable(this._moveable),this._initMoveTarget())}destroy(){this._open&&(this._removeDragHandlers(),this._adapter.deregisterTransitionEndHandler(this._transitionEndHandler),this._adapter.removeDocumentListener("keydown",this._documentKeydownHandler),this._adapter.deregisterBackdropClickHandler(this._backdropClickHandler))}async _applyOpen(t){if(t){if(typeof this._openCallback=="function"&&!await this._executeOpenCallback())return;this._open=t,this._openDialog()}else{if(typeof this._closeCallback=="function"&&!await this._executeCloseCallback())return;this._open=t,this._closeDialog()}this._adapter.toggleHostAttribute(i.attributes.OPEN,this._open)}async _executeOpenCallback(){try{return await Promise.resolve(this._openCallback())!==!1}catch(t){return!1}}async _executeCloseCallback(){try{return await Promise.resolve(this._closeCallback())!==!1}catch(t){return!1}}initializeMoveTarget(){this._moveTarget||(this._moveTarget=i.selectors.DFEAULT_MOVE_TARGET),this._initMoveTarget()}resetPosition(){this._adapter.setSurfacePosition(this._positionX,this._positionY,this._positionType)}async show(t){this._open||(this._open=!0,this._adapter.isConnected||this._adapter.attach(t),await this._openDialog())}async hide(t){this._open&&(this._open=!1,await this._closeDialog(),t&&this._adapter.detach())}_normalizePositionValue(t){return E(t)?`${t}px`:f(t)?t:null}_openDialog(){return this._fullscreen||(this._moveable&&this._adapter.setMoveable(this._moveable),(this._positionX!==null||this._positionY!==null)&&this._adapter.setSurfacePosition(this._positionX,this._positionY,this._positionType)),this._adapter.setBodyAttribute(i.attributes.BODY_OPEN,"true"),this._adapter.registerTransitionEndHandler(this._transitionEndHandler),this._setDocumentKeydownListener(this._escapeClose),this._adapter.setAnimating(!0),this._isAnimating=!0,window.requestAnimationFrame(()=>{window.requestAnimationFrame(()=>{this._adapter.setVisibility(!0),this._setBackdropClickListener(this._backdropClose),this._adapter.emitHostEvent(i.events.OPEN),this._adapter.trySetInitialFocus(),this._adapter.isScrollable()&&this._adapter.addRootClass(i.classes.SCROLLABLE)})}),new Promise(t=>{window.setTimeout(()=>{window.requestAnimationFrame(()=>{this._open&&this._isAnimating&&(this._onTransitionEnd(),t())})},i.numbers.ANIMATION_DURATION)})}_closeDialog(){return this._moveTarget&&this._removeDragHandlers(),this._adapter.deregisterTransitionEndHandler(this._transitionEndHandler),this._escapeClose&&this._adapter.removeDocumentListener("keydown",this._documentKeydownHandler),this._backdropClose&&this._adapter.deregisterBackdropClickHandler(this._backdropClickHandler),this._isAnimating=!1,this._moveContext=void 0,this._lastPosition=void 0,this._adapter.setAnimating(!0),this._adapter.setVisibility(!1),this._adapter.setSurfacePosition(null,null,null),new Promise(t=>{setTimeout(()=>{this._adapter.emitHostEvent(i.events.CLOSE),this._adapter.getOpenDialogs(`${i.elementName}[${i.attributes.OPEN}]`).length||this._adapter.removeBodyAttribute(i.attributes.BODY_OPEN),this._adapter.setAnimating(!1),t()},i.numbers.ANIMATION_DURATION)})}_onTransitionEnd(){this._isAnimating&&(this._adapter.deregisterTransitionEndHandler(this._transitionEndHandler),this._adapter.setAnimating(!1),this._adapter.emitHostEvent(i.events.READY),this._moveable&&this._initMoveTarget(),this._isAnimating=!1)}_initMoveTarget(){!this._fullscreen&&this._moveable&&this._moveTarget&&this._adapter.setMoveTarget(this._moveTarget)&&this._adapter.setMoveTargetHandler("mousedown",this._moveTargetMouseDownHandler)}_removeDragHandlers(){this._adapter.removeDragTargetHandler("mousedown",this._moveTargetMouseDownHandler),this._adapter.removeDocumentListener("mousemove",this._moveTargetMouseMoveHandler),this._adapter.removeDocumentListener("mouseup",this._moveTargetMouseUpHandler)}_onMoveTargetMouseDown(t){t.preventDefault(),this._adapter.captureActiveElement();let e=this._adapter.getSurfaceBounds();this._moveContext={top:t.pageY-e.top,left:t.pageX-e.left,height:e.height,width:e.width},this._adapter.setDocumentListener("mousemove",this._moveTargetMouseMoveHandler),this._adapter.setDocumentListener("mouseup",this._moveTargetMouseUpHandler)}_onMoveTargetMouseMove(t){t.preventDefault();let e=this._calculateOffsetPosition(t.pageX,t.pageY,this._moveContext);if(!this._isMoving&&(this._isMoving=!0,!this._adapter.emitHostEvent(i.events.MOVE_START,e,!0,!0)))return;let o=this._clampPosition(e,this._moveContext);if((!this._lastPosition||o.x!==this._lastPosition.x||o.y!==this._lastPosition.y)&&this._adapter.emitHostEvent(i.events.MOVED,o,!0,!0)){this._lastPosition=_({},o);let d=this._normalizePositionValue(o.x),P=this._normalizePositionValue(o.y);this._adapter.setSurfacePosition(d,P,"absolute")}}_onMoveTargetMouseUp(t){this._isMoving&&this._adapter.emitHostEvent(i.events.MOVE_END),this._moveComplete()}_moveComplete(){this._adapter.tryRestoreActiveElement(),this._adapter.removeDocumentListener("mousemove",this._moveTargetMouseMoveHandler),this._adapter.removeDocumentListener("mouseup",this._moveTargetMouseUpHandler),this._lastPosition=void 0,this._moveContext=void 0,this._isMoving=!1}_onDocumentKeydown(t){t.stopPropagation(),t.key&&(t.key==="Escape"||t.key==="Esc")&&this._tryClose()}_onBackdropClick(t){t.stopPropagation(),this._tryClose()}async _tryClose(){if(this._adapter.emitHostEvent(i.events.BEFORE_CLOSE,void 0,void 0,!0)){if(!this._beforeCloseCallback){this.open=!1;return}try{if(await Promise.resolve(this._beforeCloseCallback())!==!1){this.open=!1;return}}catch(e){return}}}_setBackdropClickListener(t){this._open&&(t&&this._backdropClose?this._adapter.registerBackdropClickHandler(this._backdropClickHandler):t||this._adapter.deregisterBackdropClickHandler(this._backdropClickHandler))}_setDocumentKeydownListener(t){this._open&&(t&&this._escapeClose?this._adapter.setDocumentListener("keydown",this._documentKeydownHandler):t||this._adapter.removeDocumentListener("keydown",this._documentKeydownHandler))}_calculateOffsetPosition(t,e,o){return{x:t-((o==null?void 0:o.left)||0),y:e-((o==null?void 0:o.top)||0)}}_clampPosition({x:t,y:e},o){let a=0,d=0;return o&&(a=o.width,d=o.height),t<=0?t=0:t+a>=window.innerWidth&&(t=window.innerWidth-a),e<=0?e=0:e+d>=window.innerHeight&&(e=window.innerHeight-d),{x:t,y:e}}set backdropClose(t){t=!!t,this._backdropClose!==t&&(this._backdropClose=t,this._setBackdropClickListener(this._backdropClose),this._adapter.toggleHostAttribute(i.attributes.BACKDROP_CLOSE,this._backdropClose))}get backdropClose(){return this._backdropClose}set escapeClose(t){t=!!t,this._escapeClose!==t&&(this._escapeClose=!!t,this._setDocumentKeydownListener(this._escapeClose),this._adapter.toggleHostAttribute(i.attributes.ESCAPE_CLOSE,this._escapeClose))}get escapeClose(){return this._escapeClose}get open(){return this._open}set open(t){this._open!==t&&this._applyOpen(!!t)}get fullscreen(){return this._fullscreen}set fullscreen(t){this._fullscreen!==t&&(this._fullscreen=!!t,this._adapter.setFullscreen(this._fullscreen),this._adapter.toggleHostAttribute(i.attributes.FULLSCREEN,this._fullscreen))}get openCallback(){return this._openCallback}set openCallback(t){this._openCallback=t}get closeCallback(){return this._closeCallback}set closeCallback(t){this._closeCallback=t}get beforeCloseCallback(){return this._beforeCloseCallback}set beforeCloseCallback(t){this._beforeCloseCallback=t}get positionType(){return this._positionType}set positionType(t){this._positionType!==t&&(this._positionType=t,this._open&&this._adapter.setSurfacePosition(this._positionX,this._positionY,this._positionType))}get positionX(){return this._positionX}set positionX(t){this._positionX!==t&&(this._positionX=this._normalizePositionValue(t),this._open&&this._adapter.setSurfacePosition(this._positionX,this._positionY,this._positionType))}get positionY(){return this._positionY}set positionY(t){this._positionY!==t&&(this._positionY=this._normalizePositionValue(t),this._open&&this._adapter.setSurfacePosition(this._positionX,this._positionY,this._positionType))}get moveable(){return this._moveable}set moveable(t){this._moveable!==t&&(this._moveable=!!t,this._open&&(this._adapter.setMoveable(this._moveable),this._moveable?this._initMoveTarget():(this._removeDragHandlers(),this._isMoving=!1)),this._adapter.toggleHostAttribute(i.attributes.MOVEABLE,this._moveable))}get moveTarget(){return this._moveTarget}set moveTarget(t){this._moveTarget=t}};var g=class extends A{constructor(e){super(e);this._containerElement=u(e,i.selectors.CONTAINER),this._surfaceElement=u(e,i.selectors.SURFACE)}initializeAccessibility(){this._component.hasAttribute("role")||this._component.setAttribute("role","dialog"),this._component.setAttribute("aria-modal","true")}setAnimating(e){p(this._containerElement,e,i.classes.ANIMATING)}setVisibility(e){p(this._containerElement,e,i.classes.OPEN),this._backdropElement||(this._backdropElement=document.createElement("forge-backdrop"),this._backdropElement.setAttribute("part","scrim"),this._containerElement.appendChild(this._backdropElement)),e?this._backdropElement.fadeIn():this._backdropElement.fadeOut()}attach(e=document.body){e.appendChild(this._component)}detach(){this._activeElement&&(this._activeElement=void 0),C(this._component)}registerTransitionEndHandler(e){this._surfaceElement.addEventListener("transitionend",e)}deregisterTransitionEndHandler(e){this._surfaceElement.removeEventListener("transitionend",e)}setDocumentListener(e,o){document.addEventListener(e,o)}removeDocumentListener(e,o){document.removeEventListener(e,o)}registerBackdropClickHandler(e){var o;(o=this._backdropElement)==null||o.addEventListener(c.events.BACKDROP_CLICK,e)}deregisterBackdropClickHandler(e){var o;(o=this._backdropElement)==null||o.removeEventListener(c.events.BACKDROP_CLICK,e)}getOpenDialogs(e){return document.querySelectorAll(e)}setBodyAttribute(e,o){document.body.setAttribute(e,o)}removeBodyAttribute(e){document.body.removeAttribute(e)}trySetInitialFocus(){let e=T(this._component,i.selectors.INITIAL_FOCUS);e&&e.length&&e[e.length-1].focus()}isScrollable(){let e=this._component.querySelector(i.selectors.CONTENT);return e?e.scrollHeight>e.offsetHeight:!1}addRootClass(e){this._component.classList.add(e)}setFullscreen(e){p(this._containerElement,e,i.classes.FULLSCREEN)}setMoveable(e){p(this._containerElement,e,i.classes.MOVEABLE)}setMoveTarget(e){return e?(this._moveTargetElement=this._component.querySelector(e),!!this._moveTargetElement):!1}setMoveTargetHandler(e,o){var a;(a=this._moveTargetElement)==null||a.addEventListener(e,o)}removeDragTargetHandler(e,o){var a;(a=this._moveTargetElement)==null||a.removeEventListener(e,o)}getSurfaceBounds(){return this._surfaceElement.getBoundingClientRect()}setSurfacePosition(e,o,a){a?this._surfaceElement.style.position=a==="absolute"?a:"relative":this._surfaceElement.style.removeProperty("position"),o!==null?this._surfaceElement.style.top=o:this._surfaceElement.style.removeProperty("top"),e!==null?this._surfaceElement.style.left=e:this._surfaceElement.style.removeProperty("left")}captureActiveElement(){var e;this._activeElement=y(this._component.ownerDocument),(e=this._activeElement)==null||e.blur()}tryRestoreActiveElement(){this._activeElement&&(this._activeElement.isConnected&&this._activeElement.focus(),this._activeElement=void 0)}};var N='<template><div class="forge-dialog" part="root"><div class="forge-dialog__surface" part="surface"><slot></slot></div></div></template>',B='.forge-dialog{position:fixed;top:0;bottom:0;left:0;right:0;z-index:8;z-index:var(--forge-z-index-dialog,8);-webkit-box-align:center;align-items:center;-webkit-box-align:var(--forge-dialog-align-items,center);align-items:var(--forge-dialog-align-items,center);top:0;top:var(--forge-dialog-top,0);padding:24px;padding:var(--forge-dialog-padding,24px);display:-webkit-box;display:flex;-webkit-box-pack:center;justify-content:center;visibility:hidden}@media (max-width:599px){.forge-dialog{padding:0}}.forge-dialog--moveable:not(.forge-dialog--fullscreen) ::slotted([forge-dialog-move-target]){cursor:move}.forge-dialog--animating{visibility:visible}.forge-dialog--animating .forge-dialog--open .forge-dialog__surface{-webkit-transition:-webkit-transform 150ms 0s cubic-bezier(0, 0, .2, 1);transition:-webkit-transform 150ms 0s cubic-bezier(0, 0, .2, 1);transition:transform 150ms 0s cubic-bezier(0, 0, .2, 1);transition:transform 150ms 0s cubic-bezier(0, 0, .2, 1),-webkit-transform 150ms 0s cubic-bezier(0, 0, .2, 1)}.forge-dialog--animating .forge-dialog__surface{-webkit-transition:-webkit-transform 150ms 0s cubic-bezier(0, 0, .2, 1);transition:-webkit-transform 150ms 0s cubic-bezier(0, 0, .2, 1);transition:transform 150ms 0s cubic-bezier(0, 0, .2, 1);transition:transform 150ms 0s cubic-bezier(0, 0, .2, 1),-webkit-transform 150ms 0s cubic-bezier(0, 0, .2, 1)}.forge-dialog--scrollable .forge-dialog__footer,.forge-dialog--scrollable .forge-dialog__title{border-color:rgba(0,0,0,.12)}.forge-dialog--open{visibility:visible!important}.forge-dialog--open .forge-dialog__surface{-webkit-transform:scale(1);transform:scale(1);opacity:1}.forge-dialog__surface{-webkit-box-shadow:0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12);box-shadow:0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12);background-color:#fff;background-color:var(--mdc-theme-surface,#fff);width:auto;width:var(--forge-dialog-width,auto);height:auto;height:var(--forge-dialog-height,auto);min-width:280px;min-width:var(--forge-dialog-min-width,280px);max-width:100%;max-width:var(--forge-dialog-max-width,100%);max-height:100%;max-height:var(--forge-dialog-max-height,100%);border-radius:4px;border-radius:var(--forge-dialog-border-radius,var(--mdc-shape-medium,4px));overflow:visible;overflow:var(--forge-dialog-overflow,visible);display:-webkit-inline-box;display:inline-flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-transform:scale(.8);transform:scale(.8);opacity:0;z-index:inherit}.forge-dialog__header{margin:0;padding:0 24px 9px;border-bottom:1px solid transparent}.forge-dialog__title{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-size:1.25rem;font-size:var(--forge-typography-title-font-size, 1.25rem);line-height:2rem;line-height:var(--forge-typography-title-line-height, 2rem);font-weight:400;font-weight:var(--forge-typography-title-font-weight,400);letter-spacing:.0125em;letter-spacing:var(--forge-typography-title-letter-spacing, .0125em);text-decoration:inherit;-webkit-text-decoration:var(--forge-typography-title-text-decoration,inherit);text-decoration:var(--forge-typography-title-text-decoration,inherit);text-transform:inherit;text-transform:var(--forge-typography-title-text-transform,inherit);-webkit-box-sizing:border-box;box-sizing:border-box;margin:0}.forge-dialog__title::before{display:inline-block;width:0;height:40px;content:"";vertical-align:0}.forge-dialog__body{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-body1-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:1rem;font-size:var(--mdc-typography-body1-font-size, 1rem);line-height:1.5rem;line-height:var(--mdc-typography-body1-line-height, 1.5rem);font-weight:400;font-weight:var(--mdc-typography-body1-font-weight,400);letter-spacing:.03125em;letter-spacing:var(--mdc-typography-body1-letter-spacing, .03125em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-body1-text-decoration,inherit);text-decoration:var(--mdc-typography-body1-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-body1-text-transform,inherit);padding-top:20px;padding:0 24px 24px;overflow:auto}.forge-dialog__body--scrollable{max-height:195px;border-top:1px solid rgba(0,0,0,.1);border-bottom:1px solid rgba(0,0,0,.1);overflow-x:auto;overflow-y:scroll;-webkit-overflow-scrolling:touch}.forge-dialog__footer{display:-webkit-box;display:flex;position:relative;flex-shrink:0;flex-wrap:wrap;-webkit-box-align:center;align-items:center;-webkit-box-pack:end;justify-content:flex-end;-webkit-box-sizing:border-box;box-sizing:border-box;min-height:52px;margin:0;padding:8px;border-top:1px solid transparent}.forge-dialog--fullscreen{padding:0}.forge-dialog--fullscreen .forge-dialog__surface{height:100%;width:100%;min-width:auto;max-width:100%;border-radius:0}:host{display:block}:host([hidden]){display:none}',r=class extends x{constructor(){super();M(this,N,B),this._foundation=new b(new g(this))}static get observedAttributes(){return[i.attributes.BACKDROP_CLOSE,i.attributes.ESCAPE_CLOSE,i.attributes.OPEN,i.attributes.FULLSCREEN,i.attributes.POSITION_TYPE,i.attributes.POSITION_X,i.attributes.POSITION_Y,i.attributes.MOVEABLE,i.attributes.MOVE_TARGET]}connectedCallback(){this._foundation.initialize()}disconnectedCallback(){this._foundation.destroy()}attributeChangedCallback(e,o,a){switch(e){case i.attributes.BACKDROP_CLOSE:this.backdropClose=a==="true";break;case i.attributes.ESCAPE_CLOSE:this.escapeClose=a==="true";break;case i.attributes.OPEN:this.open=m(a);break;case i.attributes.FULLSCREEN:this.fullscreen=m(a);break;case i.attributes.POSITION_TYPE:this.positionType=a;break;case i.attributes.POSITION_X:this.positionX=a;break;case i.attributes.POSITION_Y:this.positionY=a;break;case i.attributes.MOVEABLE:this.moveable=m(a);break;case i.attributes.MOVE_TARGET:this.moveTarget=a;break}}initializeMoveTarget(){this._foundation.initializeMoveTarget()}resetPosition(){this._foundation.resetPosition()}show(e){return this._foundation.show(e)}hide(e){return this._foundation.hide(e)}};s([n()],r.prototype,"backdropClose",2),s([n()],r.prototype,"escapeClose",2),s([n()],r.prototype,"open",2),s([n()],r.prototype,"fullscreen",2),s([n()],r.prototype,"openCallback",2),s([n()],r.prototype,"closeCallback",2),s([n()],r.prototype,"beforeCloseCallback",2),s([n()],r.prototype,"positionType",2),s([n()],r.prototype,"positionX",2),s([n()],r.prototype,"positionY",2),s([n()],r.prototype,"moveable",2),s([n()],r.prototype,"moveTarget",2),r=s([D({name:i.elementName,dependencies:[w]})],r);function Ee(){k(r)}export{i as a,b,g as c,r as d,Ee as e};
7
+ //# sourceMappingURL=chunk.65WE722H.js.map