@tylertech/forge 3.0.0-next.1 → 3.0.0-next.11

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 (773) hide show
  1. package/custom-elements.json +18061 -12338
  2. package/dist/button/forge-button.css +1 -1
  3. package/dist/esm/accordion/index.js +1 -1
  4. package/dist/esm/app-bar/help-button/index.js +1 -1
  5. package/dist/esm/app-bar/index.js +1 -1
  6. package/dist/esm/app-bar/menu-button/index.js +1 -1
  7. package/dist/esm/app-bar/notification-button/index.js +1 -1
  8. package/dist/esm/app-bar/profile-button/index.js +1 -1
  9. package/dist/esm/app-bar/search/index.js +1 -1
  10. package/dist/esm/autocomplete/index.js +1 -1
  11. package/dist/esm/avatar/index.js +1 -1
  12. package/dist/esm/backdrop/index.js +1 -1
  13. package/dist/esm/badge/index.js +1 -1
  14. package/dist/esm/banner/index.js +1 -1
  15. package/dist/esm/bottom-sheet/index.js +1 -1
  16. package/dist/esm/busy-indicator/index.js +1 -1
  17. package/dist/esm/button/index.js +1 -1
  18. package/dist/esm/button-toggle/button-toggle/index.js +1 -1
  19. package/dist/esm/button-toggle/button-toggle-group/index.js +1 -1
  20. package/dist/esm/button-toggle/index.js +1 -1
  21. package/dist/esm/calendar/calendar-dropdown/index.js +1 -1
  22. package/dist/esm/calendar/calendar-menu/index.js +1 -1
  23. package/dist/esm/calendar/core/index.js +1 -1
  24. package/dist/esm/calendar/index.js +1 -1
  25. package/dist/esm/card/index.js +1 -1
  26. package/dist/esm/checkbox/index.js +1 -1
  27. package/dist/esm/chip-field/index.js +1 -1
  28. package/dist/esm/chips/chip/index.js +1 -1
  29. package/dist/esm/chips/chip-set/index.js +1 -1
  30. package/dist/esm/chips/index.js +1 -1
  31. package/dist/esm/chunks/chunk.2AJ7FFI6.js +7 -0
  32. package/dist/esm/chunks/chunk.2AJ7FFI6.js.map +7 -0
  33. package/dist/esm/chunks/{chunk.SSRQFKNH.js → chunk.2EWV2XBP.js} +2 -2
  34. package/dist/esm/chunks/{chunk.SSRQFKNH.js.map → chunk.2EWV2XBP.js.map} +1 -1
  35. package/dist/esm/chunks/chunk.2QHD3DCR.js +7 -0
  36. package/dist/esm/chunks/chunk.2QHD3DCR.js.map +7 -0
  37. package/dist/esm/chunks/{chunk.BJZ7RB5F.js → chunk.3CTKWBV2.js} +1 -1
  38. package/dist/esm/chunks/{chunk.BJZ7RB5F.js.map → chunk.3CTKWBV2.js.map} +1 -1
  39. package/dist/esm/chunks/chunk.3HB22HCX.js +7 -0
  40. package/dist/esm/chunks/chunk.44IUAOBP.js +7 -0
  41. package/dist/esm/chunks/{chunk.YPZNIYQL.js.map → chunk.44IUAOBP.js.map} +2 -2
  42. package/dist/esm/chunks/chunk.4C6KHYUO.js +7 -0
  43. package/dist/esm/chunks/{chunk.SXTTEIIH.js → chunk.4YFVG4KP.js} +2 -2
  44. package/dist/esm/chunks/{chunk.SXTTEIIH.js.map → chunk.4YFVG4KP.js.map} +1 -1
  45. package/dist/esm/chunks/chunk.4ZKX3SO5.js +7 -0
  46. package/dist/esm/chunks/{chunk.5WNKQTXX.js.map → chunk.4ZKX3SO5.js.map} +2 -2
  47. package/dist/esm/chunks/chunk.54OOOQ4R.js +7 -0
  48. package/dist/esm/chunks/chunk.54OOOQ4R.js.map +7 -0
  49. package/dist/esm/chunks/chunk.5565ZSTH.js +7 -0
  50. package/dist/esm/chunks/chunk.5565ZSTH.js.map +7 -0
  51. package/dist/esm/chunks/chunk.5MZ5SGMO.js +7 -0
  52. package/dist/esm/chunks/chunk.5MZ5SGMO.js.map +7 -0
  53. package/dist/esm/chunks/{chunk.7UKA4E5A.js → chunk.624UKZFU.js} +2 -2
  54. package/dist/esm/chunks/{chunk.7UKA4E5A.js.map → chunk.624UKZFU.js.map} +1 -1
  55. package/dist/esm/chunks/chunk.6GC5AJPE.js +7 -0
  56. package/dist/esm/chunks/chunk.6GC5AJPE.js.map +7 -0
  57. package/dist/esm/chunks/{chunk.CLM6MNKC.js → chunk.6OUJSOJY.js} +2 -2
  58. package/dist/esm/chunks/{chunk.CLM6MNKC.js.map → chunk.6OUJSOJY.js.map} +1 -1
  59. package/dist/esm/chunks/{chunk.TR5YMNJJ.js → chunk.6OW6Q3EW.js} +2 -2
  60. package/dist/esm/chunks/{chunk.TR5YMNJJ.js.map → chunk.6OW6Q3EW.js.map} +1 -1
  61. package/dist/esm/chunks/chunk.7CGKFRBK.js +7 -0
  62. package/dist/esm/chunks/chunk.7CGKFRBK.js.map +7 -0
  63. package/dist/esm/chunks/chunk.7DB3XVPI.js +7 -0
  64. package/dist/esm/chunks/chunk.7DB3XVPI.js.map +7 -0
  65. package/dist/esm/chunks/chunk.7TMLILLW.js +7 -0
  66. package/dist/esm/chunks/{chunk.ZFHPUAYX.js.map → chunk.7TMLILLW.js.map} +2 -2
  67. package/dist/esm/chunks/{chunk.KU5CXXGS.js → chunk.A62DE5PD.js} +2 -2
  68. package/dist/esm/chunks/chunk.AEKOP3XT.js +7 -0
  69. package/dist/esm/chunks/chunk.AEKOP3XT.js.map +7 -0
  70. package/dist/esm/chunks/chunk.ALIYGJXA.js +129 -0
  71. package/dist/esm/chunks/chunk.ALIYGJXA.js.map +7 -0
  72. package/dist/esm/chunks/chunk.B4T3R53C.js +7 -0
  73. package/dist/esm/chunks/{chunk.6OKJPSUE.js.map → chunk.B4T3R53C.js.map} +2 -2
  74. package/dist/esm/chunks/chunk.BH2TUG2V.js +7 -0
  75. package/dist/esm/chunks/chunk.BH2TUG2V.js.map +7 -0
  76. package/dist/esm/chunks/chunk.BKL2BAYW.js +7 -0
  77. package/dist/esm/chunks/{chunk.G5MGGEFP.js.map → chunk.BKL2BAYW.js.map} +1 -1
  78. package/dist/esm/chunks/chunk.BY25RT52.js +7 -0
  79. package/dist/esm/chunks/chunk.BY25RT52.js.map +7 -0
  80. package/dist/esm/chunks/chunk.CDGZYUQS.js +7 -0
  81. package/dist/esm/chunks/{chunk.RB5BTA5N.js.map → chunk.CDGZYUQS.js.map} +2 -2
  82. package/dist/esm/chunks/chunk.CKW7KKDW.js +7 -0
  83. package/dist/esm/chunks/{chunk.4NI63FGK.js.map → chunk.CKW7KKDW.js.map} +2 -2
  84. package/dist/esm/chunks/{chunk.RYMPSU4J.js → chunk.COVTBIQQ.js} +2 -2
  85. package/dist/esm/chunks/{chunk.RYMPSU4J.js.map → chunk.COVTBIQQ.js.map} +2 -2
  86. package/dist/esm/chunks/{chunk.G45OZEIS.js → chunk.CWTV3TB3.js} +2 -2
  87. package/dist/esm/chunks/chunk.CXY6K7EI.js +7 -0
  88. package/dist/esm/chunks/{chunk.ROR6JMAE.js.map → chunk.CXY6K7EI.js.map} +1 -1
  89. package/dist/esm/chunks/chunk.D5TAI6Q7.js +7 -0
  90. package/dist/esm/chunks/{chunk.BTBHIIGI.js.map → chunk.D5TAI6Q7.js.map} +1 -1
  91. package/dist/esm/chunks/chunk.DBNJHUYY.js +7 -0
  92. package/dist/esm/chunks/chunk.DBNJHUYY.js.map +7 -0
  93. package/dist/esm/chunks/{chunk.WP4QOOIS.js → chunk.DG4ZM3AW.js} +2 -2
  94. package/dist/esm/chunks/{chunk.U6WGJELL.js → chunk.DMCBAYQX.js} +1 -1
  95. package/dist/esm/chunks/{chunk.U6WGJELL.js.map → chunk.DMCBAYQX.js.map} +1 -1
  96. package/dist/esm/chunks/{chunk.BE7PZANN.js → chunk.DXN7ZOH3.js} +2 -2
  97. package/dist/esm/chunks/{chunk.BE7PZANN.js.map → chunk.DXN7ZOH3.js.map} +1 -1
  98. package/dist/esm/chunks/chunk.EK24Y56W.js +7 -0
  99. package/dist/esm/chunks/chunk.F4VXEE76.js +7 -0
  100. package/dist/esm/chunks/chunk.F4VXEE76.js.map +7 -0
  101. package/dist/esm/chunks/chunk.F5SY2D4B.js +7 -0
  102. package/dist/esm/chunks/{chunk.DT7MZR5Y.js.map → chunk.F5SY2D4B.js.map} +3 -3
  103. package/dist/esm/chunks/chunk.F74YURLV.js +7 -0
  104. package/dist/esm/chunks/chunk.F74YURLV.js.map +7 -0
  105. package/dist/esm/chunks/chunk.FCATJM34.js +7 -0
  106. package/dist/esm/chunks/chunk.FCATJM34.js.map +7 -0
  107. package/dist/esm/chunks/{chunk.3KQL7VAZ.js → chunk.FDZSLGIW.js} +2 -2
  108. package/dist/esm/chunks/{chunk.3KQL7VAZ.js.map → chunk.FDZSLGIW.js.map} +1 -1
  109. package/dist/esm/chunks/chunk.FG2GNAM2.js +7 -0
  110. package/dist/esm/chunks/chunk.FG2GNAM2.js.map +7 -0
  111. package/dist/esm/chunks/{chunk.UT7QUGAO.js → chunk.FWFOOQMA.js} +2 -2
  112. package/dist/esm/chunks/{chunk.MZLPUI6R.js → chunk.FYWPZFLJ.js} +2 -2
  113. package/dist/esm/chunks/{chunk.MZLPUI6R.js.map → chunk.FYWPZFLJ.js.map} +2 -2
  114. package/dist/esm/chunks/chunk.GNG64TXK.js +7 -0
  115. package/dist/esm/chunks/chunk.GNG64TXK.js.map +7 -0
  116. package/dist/esm/chunks/chunk.HHCO64F3.js +7 -0
  117. package/dist/esm/chunks/chunk.HHCO64F3.js.map +7 -0
  118. package/dist/esm/chunks/chunk.HRGTAVNA.js +7 -0
  119. package/dist/esm/chunks/{chunk.J6WCFQSS.js.map → chunk.HRGTAVNA.js.map} +2 -2
  120. package/dist/esm/chunks/chunk.ISC7SZSP.js +7 -0
  121. package/dist/esm/chunks/chunk.ISC7SZSP.js.map +7 -0
  122. package/dist/esm/chunks/{chunk.ZUNZKRRK.js → chunk.IX25DYIM.js} +2 -2
  123. package/dist/esm/chunks/chunk.JIKSKUDW.js +7 -0
  124. package/dist/esm/chunks/chunk.JIKSKUDW.js.map +7 -0
  125. package/dist/esm/chunks/{chunk.F2B24WLK.js → chunk.JLLHDJSO.js} +2 -2
  126. package/dist/esm/chunks/{chunk.F2B24WLK.js.map → chunk.JLLHDJSO.js.map} +1 -1
  127. package/dist/esm/chunks/chunk.JUJGROHA.js +7 -0
  128. package/dist/esm/chunks/{chunk.YBEBD4CN.js.map → chunk.JUJGROHA.js.map} +1 -1
  129. package/dist/esm/chunks/{chunk.UBD2DPQN.js → chunk.K3KAM2PL.js} +2 -2
  130. package/dist/esm/chunks/{chunk.UBD2DPQN.js.map → chunk.K3KAM2PL.js.map} +1 -1
  131. package/dist/esm/chunks/{chunk.PN26D52V.js → chunk.K7FPXAFS.js} +2 -2
  132. package/dist/esm/chunks/{chunk.PN26D52V.js.map → chunk.K7FPXAFS.js.map} +3 -3
  133. package/dist/esm/chunks/chunk.KJP2VA6Q.js +7 -0
  134. package/dist/esm/chunks/chunk.KJP2VA6Q.js.map +7 -0
  135. package/dist/esm/chunks/{chunk.ARJ3EVVO.js → chunk.KVCDAZ6B.js} +2 -2
  136. package/dist/esm/chunks/{chunk.4DAIIJ37.js → chunk.LEVFMI2Q.js} +1 -1
  137. package/dist/esm/chunks/{chunk.4DAIIJ37.js.map → chunk.LEVFMI2Q.js.map} +1 -1
  138. package/dist/esm/chunks/{chunk.77Y3EABF.js → chunk.LFODKHUO.js} +2 -2
  139. package/dist/esm/chunks/{chunk.77Y3EABF.js.map → chunk.LFODKHUO.js.map} +1 -1
  140. package/dist/esm/chunks/{chunk.XQ2EQIDS.js → chunk.LK4AAUOP.js} +2 -2
  141. package/dist/esm/chunks/{chunk.XQ2EQIDS.js.map → chunk.LK4AAUOP.js.map} +2 -2
  142. package/dist/esm/chunks/{chunk.H4Z4DHPA.js → chunk.LTT67HTW.js} +2 -2
  143. package/dist/esm/chunks/chunk.LXPFG7MW.js +7 -0
  144. package/dist/esm/chunks/chunk.LXPFG7MW.js.map +7 -0
  145. package/dist/esm/chunks/chunk.M3QDAYD2.js +7 -0
  146. package/dist/esm/chunks/chunk.M56LSSPW.js +7 -0
  147. package/dist/esm/chunks/{chunk.Y5A7RQ5M.js.map → chunk.M56LSSPW.js.map} +1 -1
  148. package/dist/esm/chunks/chunk.MACPUZC2.js +7 -0
  149. package/dist/esm/chunks/chunk.MACPUZC2.js.map +7 -0
  150. package/dist/esm/chunks/{chunk.O73S5LF3.js → chunk.MGLL67VO.js} +2 -2
  151. package/dist/esm/chunks/chunk.MGLWXAZO.js +18 -0
  152. package/dist/esm/chunks/{chunk.YI4JTY4T.js.map → chunk.MGLWXAZO.js.map} +2 -2
  153. package/dist/esm/chunks/{chunk.XZ4WI7VK.js → chunk.MHBBMC6O.js} +2 -2
  154. package/dist/esm/chunks/{chunk.XZ4WI7VK.js.map → chunk.MHBBMC6O.js.map} +1 -1
  155. package/dist/esm/chunks/{chunk.HBMNXZES.js → chunk.MTKSU2BV.js} +2 -2
  156. package/dist/esm/chunks/{chunk.HBMNXZES.js.map → chunk.MTKSU2BV.js.map} +1 -1
  157. package/dist/esm/chunks/chunk.MVTBJPO2.js +7 -0
  158. package/dist/esm/chunks/{chunk.Y4GKBJGI.js.map → chunk.MVTBJPO2.js.map} +3 -3
  159. package/dist/esm/chunks/chunk.MXEKIEJA.js +7 -0
  160. package/dist/esm/chunks/chunk.MXEKIEJA.js.map +7 -0
  161. package/dist/esm/chunks/chunk.N43BCJHN.js +7 -0
  162. package/dist/esm/chunks/chunk.N43BCJHN.js.map +7 -0
  163. package/dist/esm/chunks/{chunk.VC2BG2RS.js → chunk.NR3MLTXF.js} +2 -2
  164. package/dist/esm/chunks/{chunk.VC2BG2RS.js.map → chunk.NR3MLTXF.js.map} +1 -1
  165. package/dist/esm/chunks/{chunk.KTGSZEAG.js → chunk.NVUMRW44.js} +1 -1
  166. package/dist/esm/chunks/{chunk.KTGSZEAG.js.map → chunk.NVUMRW44.js.map} +1 -1
  167. package/dist/esm/chunks/{chunk.MLV25D2G.js → chunk.OWCYRSI3.js} +2 -2
  168. package/dist/esm/chunks/chunk.P2CW5MQO.js +12 -0
  169. package/dist/esm/chunks/chunk.P2CW5MQO.js.map +7 -0
  170. package/dist/esm/chunks/{chunk.N4PVZUJX.js → chunk.P2ZCNO63.js} +2 -2
  171. package/dist/esm/chunks/{chunk.N4PVZUJX.js.map → chunk.P2ZCNO63.js.map} +2 -2
  172. package/dist/esm/chunks/chunk.PADPL4L3.js +7 -0
  173. package/dist/esm/chunks/{chunk.47A2CN5U.js.map → chunk.PADPL4L3.js.map} +1 -1
  174. package/dist/esm/chunks/chunk.PEBT47AU.js +7 -0
  175. package/dist/esm/chunks/chunk.PEBT47AU.js.map +7 -0
  176. package/dist/esm/chunks/chunk.PH3HUFJJ.js +7 -0
  177. package/dist/esm/chunks/{chunk.JHBCYICS.js.map → chunk.PH3HUFJJ.js.map} +1 -1
  178. package/dist/esm/chunks/chunk.Q7JUJNYD.js +7 -0
  179. package/dist/esm/chunks/chunk.Q7JUJNYD.js.map +7 -0
  180. package/dist/esm/chunks/chunk.Q7Z3SJ5F.js +7 -0
  181. package/dist/esm/chunks/{chunk.4BEI55KI.js.map → chunk.Q7Z3SJ5F.js.map} +1 -1
  182. package/dist/esm/chunks/chunk.QCRRHGBA.js +7 -0
  183. package/dist/esm/chunks/chunk.QCRRHGBA.js.map +7 -0
  184. package/dist/esm/chunks/{chunk.IUOBRBDZ.js → chunk.QOJESHEV.js} +2 -2
  185. package/dist/esm/chunks/chunk.S3JMOOWC.js +7 -0
  186. package/dist/esm/chunks/{chunk.4WPFFNLH.js.map → chunk.S3JMOOWC.js.map} +1 -1
  187. package/dist/esm/chunks/{chunk.O4FB4BV5.js → chunk.SBYX7VZ4.js} +2 -2
  188. package/dist/esm/chunks/{chunk.O4FB4BV5.js.map → chunk.SBYX7VZ4.js.map} +2 -2
  189. package/dist/esm/chunks/{chunk.XUW3GG46.js → chunk.SFCGOCQK.js} +2 -2
  190. package/dist/esm/chunks/chunk.SJJS4LYN.js +7 -0
  191. package/dist/esm/chunks/chunk.SJJS4LYN.js.map +7 -0
  192. package/dist/esm/chunks/{chunk.P3IA2WTO.js → chunk.SMGXXR6K.js} +2 -2
  193. package/dist/esm/chunks/{chunk.P3IA2WTO.js.map → chunk.SMGXXR6K.js.map} +1 -1
  194. package/dist/esm/chunks/{chunk.PALRSBSY.js → chunk.SU4FU7GK.js} +2 -2
  195. package/dist/esm/chunks/{chunk.PALRSBSY.js.map → chunk.SU4FU7GK.js.map} +1 -1
  196. package/dist/esm/chunks/{chunk.XHV3GQ7L.js → chunk.TK5I4RHF.js} +2 -2
  197. package/dist/esm/chunks/{chunk.XHV3GQ7L.js.map → chunk.TK5I4RHF.js.map} +2 -2
  198. package/dist/esm/chunks/{chunk.BJE6O5ES.js → chunk.TYLOAD7R.js} +2 -2
  199. package/dist/esm/chunks/{chunk.BJE6O5ES.js.map → chunk.TYLOAD7R.js.map} +2 -2
  200. package/dist/esm/chunks/chunk.UJ2WQOLO.js +7 -0
  201. package/dist/esm/chunks/{chunk.E6CYXNS2.js.map → chunk.UJ2WQOLO.js.map} +2 -2
  202. package/dist/esm/chunks/{chunk.J2H5RXTX.js → chunk.ULY4H76N.js} +2 -2
  203. package/dist/esm/chunks/{chunk.J2H5RXTX.js.map → chunk.ULY4H76N.js.map} +1 -1
  204. package/dist/esm/chunks/{chunk.DONAMICM.js → chunk.UV3WIHCM.js} +1 -1
  205. package/dist/esm/chunks/{chunk.DONAMICM.js.map → chunk.UV3WIHCM.js.map} +1 -1
  206. package/dist/esm/chunks/{chunk.T76JYRPR.js → chunk.VSQOTSAO.js} +2 -2
  207. package/dist/esm/chunks/{chunk.T76JYRPR.js.map → chunk.VSQOTSAO.js.map} +2 -2
  208. package/dist/esm/chunks/chunk.VVXSELXX.js +7 -0
  209. package/dist/esm/chunks/chunk.VVXSELXX.js.map +7 -0
  210. package/dist/esm/chunks/chunk.VZWNNK7A.js +7 -0
  211. package/dist/esm/chunks/chunk.VZWNNK7A.js.map +7 -0
  212. package/dist/esm/chunks/chunk.W4247Q2P.js +7 -0
  213. package/dist/esm/chunks/{chunk.MHOS3IHQ.js.map → chunk.W4247Q2P.js.map} +1 -1
  214. package/dist/esm/chunks/chunk.WPG7NNQX.js +7 -0
  215. package/dist/esm/chunks/chunk.WPG7NNQX.js.map +7 -0
  216. package/dist/esm/chunks/{chunk.LYOQ2RGP.js → chunk.X3C3J5MH.js} +2 -2
  217. package/dist/esm/chunks/{chunk.LYOQ2RGP.js.map → chunk.X3C3J5MH.js.map} +1 -1
  218. package/dist/esm/chunks/{chunk.RBAVT3XQ.js → chunk.XGOAYMK2.js} +2 -2
  219. package/dist/esm/chunks/chunk.XI3MJSIS.js +7 -0
  220. package/dist/esm/chunks/chunk.XI3MJSIS.js.map +7 -0
  221. package/dist/esm/chunks/chunk.XIQFHO5R.js +7 -0
  222. package/dist/esm/chunks/{chunk.FVRSGKJD.js.map → chunk.XIQFHO5R.js.map} +2 -2
  223. package/dist/esm/chunks/chunk.XKI46BH2.js +7 -0
  224. package/dist/esm/chunks/{chunk.INCKI5IX.js.map → chunk.XKI46BH2.js.map} +1 -1
  225. package/dist/esm/chunks/{chunk.AFLH5HUG.js → chunk.YLG6ZC5K.js} +2 -2
  226. package/dist/esm/chunks/chunk.YRMR7IOS.js +7 -0
  227. package/dist/esm/chunks/chunk.YRMR7IOS.js.map +7 -0
  228. package/dist/esm/chunks/chunk.YWNCJ7XP.js +7 -0
  229. package/dist/esm/chunks/{chunk.242YUZKU.js.map → chunk.YWNCJ7XP.js.map} +2 -2
  230. package/dist/esm/chunks/{chunk.K2C4W3CO.js → chunk.YX7WLO5Y.js} +2 -2
  231. package/dist/esm/chunks/chunk.YZLASVCK.js +177 -0
  232. package/dist/esm/chunks/chunk.YZLASVCK.js.map +7 -0
  233. package/dist/esm/chunks/{chunk.5FPFRE4H.js → chunk.Z6FCL3G3.js} +2 -2
  234. package/dist/esm/chunks/{chunk.5FPFRE4H.js.map → chunk.Z6FCL3G3.js.map} +1 -1
  235. package/dist/esm/chunks/chunk.ZDD2NLGP.js +7 -0
  236. package/dist/esm/chunks/{chunk.FRYLJWYL.js → chunk.ZJC2DSNM.js} +2 -2
  237. package/dist/esm/chunks/{chunk.FRYLJWYL.js.map → chunk.ZJC2DSNM.js.map} +1 -1
  238. package/dist/esm/chunks/chunk.ZKGSQQGU.js +12 -0
  239. package/dist/esm/chunks/chunk.ZKGSQQGU.js.map +7 -0
  240. package/dist/esm/chunks/{chunk.JEN6YP2Q.js → chunk.ZVBZ3LGP.js} +2 -2
  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/delegates/index.js +1 -1
  245. package/dist/esm/core/index.js +1 -1
  246. package/dist/esm/core/mask/index.js +1 -1
  247. package/dist/esm/core/utils/index.js +1 -1
  248. package/dist/esm/date-picker/index.js +1 -1
  249. package/dist/esm/date-range-picker/index.js +1 -1
  250. package/dist/esm/dialog/index.js +1 -1
  251. package/dist/esm/divider/index.js +1 -1
  252. package/dist/esm/drawer/base/index.js +1 -1
  253. package/dist/esm/drawer/drawer/index.js +1 -1
  254. package/dist/esm/drawer/index.js +1 -1
  255. package/dist/esm/drawer/mini-drawer/index.js +1 -1
  256. package/dist/esm/drawer/modal-drawer/index.js +1 -1
  257. package/dist/esm/expansion-panel/index.js +1 -1
  258. package/dist/esm/file-picker/index.js +1 -1
  259. package/dist/esm/floating-action-button/index.js +1 -1
  260. package/dist/esm/floating-label/index.js +1 -1
  261. package/dist/esm/focus-indicator/index.js +7 -0
  262. package/dist/esm/focus-indicator/index.js.map +7 -0
  263. package/dist/esm/icon/index.js +1 -1
  264. package/dist/esm/icon-button/index.js +1 -1
  265. package/dist/esm/index.js +1 -1
  266. package/dist/esm/inline-message/index.js +1 -1
  267. package/dist/esm/keyboard-shortcut/index.js +1 -1
  268. package/dist/esm/label-value/index.js +1 -1
  269. package/dist/esm/linear-progress/index.js +1 -1
  270. package/dist/esm/list/index.js +1 -1
  271. package/dist/esm/list/list/index.js +1 -1
  272. package/dist/esm/list/list-item/index.js +1 -1
  273. package/dist/esm/list-dropdown/index.js +1 -1
  274. package/dist/esm/menu/index.js +1 -1
  275. package/dist/esm/open-icon/index.js +1 -1
  276. package/dist/esm/page-state/index.js +1 -1
  277. package/dist/esm/paginator/index.js +1 -1
  278. package/dist/esm/popup/index.js +1 -1
  279. package/dist/esm/product-icon/index.js +1 -1
  280. package/dist/esm/profile-card/index.js +1 -1
  281. package/dist/esm/quantity-field/index.js +1 -1
  282. package/dist/esm/radio/index.js +1 -1
  283. package/dist/esm/ripple/index.js +1 -1
  284. package/dist/esm/scaffold/index.js +1 -1
  285. package/dist/esm/select/core/index.js +1 -1
  286. package/dist/esm/select/index.js +1 -1
  287. package/dist/esm/select/option/index.js +1 -1
  288. package/dist/esm/select/option-group/index.js +1 -1
  289. package/dist/esm/select/select/index.js +1 -1
  290. package/dist/esm/select/select-dropdown/index.js +1 -1
  291. package/dist/esm/skeleton/index.js +1 -1
  292. package/dist/esm/slider/index.js +1 -1
  293. package/dist/esm/split-view/index.js +1 -1
  294. package/dist/esm/split-view/split-view/index.js +1 -1
  295. package/dist/esm/split-view/split-view-panel/index.js +1 -1
  296. package/dist/esm/stack/index.js +1 -1
  297. package/dist/esm/state-layer/index.js +7 -0
  298. package/dist/esm/state-layer/index.js.map +7 -0
  299. package/dist/esm/stepper/index.js +1 -1
  300. package/dist/esm/stepper/step/index.js +1 -1
  301. package/dist/esm/stepper/stepper/index.js +1 -1
  302. package/dist/esm/switch/index.js +1 -1
  303. package/dist/esm/table/index.js +1 -1
  304. package/dist/esm/tabs/index.js +1 -1
  305. package/dist/esm/tabs/tab/index.js +1 -1
  306. package/dist/esm/tabs/tab-bar/index.js +1 -1
  307. package/dist/esm/text-field/index.js +1 -1
  308. package/dist/esm/theme/index.js +1 -1
  309. package/dist/esm/time-picker/index.js +1 -1
  310. package/dist/esm/toast/index.js +1 -1
  311. package/dist/esm/toolbar/index.js +1 -1
  312. package/dist/esm/tooltip/index.js +1 -1
  313. package/dist/esm/utils/index.js +1 -1
  314. package/dist/esm/view-switcher/index.js +1 -1
  315. package/dist/esm/view-switcher/view/index.js +1 -1
  316. package/dist/forge-dark.css +1 -1
  317. package/dist/forge.css +1 -1
  318. package/dist/icon-button/forge-icon-button.css +1 -1
  319. package/dist/table/forge-table.css +1 -1
  320. package/dist/theme/forge-theme.css +1 -1
  321. package/dist/typography/forge-typography-legacy.css +6 -0
  322. package/dist/typography/forge-typography.css +1 -1
  323. package/esm/accordion/accordion.js +4 -4
  324. package/esm/app-bar/app-bar.js +6 -6
  325. package/esm/app-bar/notification-button/app-bar-notification-button.js +5 -5
  326. package/esm/app-bar/profile-button/app-bar-profile-button-adapter.js +1 -1
  327. package/esm/app-bar/profile-button/app-bar-profile-button-constants.d.ts +1 -1
  328. package/esm/app-bar/profile-button/app-bar-profile-button.js +4 -4
  329. package/esm/app-bar/search/app-bar-search.js +6 -6
  330. package/esm/autocomplete/autocomplete-adapter.d.ts +0 -2
  331. package/esm/autocomplete/autocomplete-adapter.js +1 -5
  332. package/esm/autocomplete/autocomplete-component-delegate.d.ts +1 -1
  333. package/esm/autocomplete/autocomplete-constants.d.ts +5 -4
  334. package/esm/autocomplete/autocomplete-constants.js +1 -0
  335. package/esm/autocomplete/autocomplete-foundation.d.ts +5 -0
  336. package/esm/autocomplete/autocomplete-foundation.js +12 -12
  337. package/esm/autocomplete/autocomplete.d.ts +3 -0
  338. package/esm/autocomplete/autocomplete.js +13 -6
  339. package/esm/avatar/avatar-component-delegate.d.ts +1 -1
  340. package/esm/avatar/avatar.js +5 -5
  341. package/esm/backdrop/backdrop-constants.d.ts +1 -1
  342. package/esm/backdrop/backdrop.js +5 -5
  343. package/esm/badge/badge-component-delegate.d.ts +1 -1
  344. package/esm/badge/badge.js +5 -5
  345. package/esm/banner/banner.js +7 -7
  346. package/esm/bottom-sheet/bottom-sheet.js +6 -6
  347. package/esm/busy-indicator/busy-indicator-adapter.js +1 -1
  348. package/esm/busy-indicator/busy-indicator-constants.d.ts +1 -1
  349. package/esm/busy-indicator/busy-indicator.js +6 -6
  350. package/esm/button/button-component-delegate.d.ts +1 -1
  351. package/esm/button/button.d.ts +1 -0
  352. package/esm/button/button.js +11 -5
  353. package/esm/button-toggle/button-toggle/button-toggle.js +7 -7
  354. package/esm/button-toggle/button-toggle-group/button-toggle-group-constants.d.ts +2 -2
  355. package/esm/button-toggle/button-toggle-group/button-toggle-group.js +5 -5
  356. package/esm/calendar/calendar-component-delegate.d.ts +1 -1
  357. package/esm/calendar/calendar-constants.d.ts +10 -10
  358. package/esm/calendar/calendar-dropdown/calendar-dropdown.d.ts +3 -0
  359. package/esm/calendar/calendar-dropdown/calendar-dropdown.js +14 -5
  360. package/esm/calendar/calendar-menu/calendar-menu-constants.d.ts +2 -2
  361. package/esm/calendar/calendar-menu/calendar-menu.js +6 -6
  362. package/esm/calendar/calendar.js +7 -7
  363. package/esm/card/card-constants.d.ts +2 -2
  364. package/esm/card/card-constants.js +2 -2
  365. package/esm/card/card.d.ts +19 -8
  366. package/esm/card/card.js +34 -25
  367. package/esm/checkbox/checkbox-adapter.d.ts +1 -0
  368. package/esm/checkbox/checkbox-adapter.js +9 -2
  369. package/esm/checkbox/checkbox-component-delegate.d.ts +1 -1
  370. package/esm/checkbox/checkbox.js +4 -4
  371. package/esm/chip-field/chip-field-component-delegate.d.ts +1 -1
  372. package/esm/chip-field/chip-field-foundation.d.ts +1 -1
  373. package/esm/chip-field/chip-field-foundation.js +1 -1
  374. package/esm/chip-field/chip-field.js +1 -1
  375. package/esm/chips/chip/chip-adapter.js +2 -2
  376. package/esm/chips/chip/chip.js +7 -7
  377. package/esm/chips/chip-set/chip-set.js +5 -5
  378. package/esm/circular-progress/circular-progress-adapter.d.ts +7 -14
  379. package/esm/circular-progress/circular-progress-adapter.js +25 -25
  380. package/esm/circular-progress/circular-progress-constants.d.ts +6 -2
  381. package/esm/circular-progress/circular-progress-constants.js +8 -3
  382. package/esm/circular-progress/circular-progress-foundation.d.ts +0 -8
  383. package/esm/circular-progress/circular-progress-foundation.js +9 -27
  384. package/esm/circular-progress/circular-progress.d.ts +24 -5
  385. package/esm/circular-progress/circular-progress.js +33 -21
  386. package/esm/color-picker/color-picker-constants.d.ts +2 -2
  387. package/esm/color-picker/color-picker-foundation.d.ts +0 -1
  388. package/esm/color-picker/color-picker-foundation.js +2 -5
  389. package/esm/color-picker/color-picker.js +7 -7
  390. package/esm/core/base/base-component.d.ts +1 -2
  391. package/esm/core/delegates/base-component-delegate.d.ts +1 -1
  392. package/esm/core/delegates/base-component-delegate.js +3 -3
  393. package/esm/core/delegates/form-field-component-delegate.d.ts +1 -1
  394. package/esm/core/mask/time-segment-parser.d.ts +1 -1
  395. package/esm/core/testing/pointer.d.ts +13 -0
  396. package/esm/core/testing/pointer.js +42 -0
  397. package/esm/core/utils/utils.d.ts +33 -2
  398. package/esm/core/utils/utils.js +74 -6
  399. package/esm/date-picker/base/base-date-picker-adapter.d.ts +4 -2
  400. package/esm/date-picker/base/base-date-picker-adapter.js +6 -0
  401. package/esm/date-picker/base/base-date-picker-constants.d.ts +1 -0
  402. package/esm/date-picker/base/base-date-picker-constants.js +2 -1
  403. package/esm/date-picker/base/base-date-picker-foundation.d.ts +6 -2
  404. package/esm/date-picker/base/base-date-picker-foundation.js +21 -6
  405. package/esm/date-picker/base/base-date-picker.d.ts +3 -0
  406. package/esm/date-picker/base/base-date-picker.js +6 -0
  407. package/esm/date-picker/date-picker-adapter.js +6 -8
  408. package/esm/date-picker/date-picker-component-delegate.d.ts +1 -1
  409. package/esm/date-range-picker/date-range-picker-adapter.d.ts +4 -2
  410. package/esm/date-range-picker/date-range-picker-adapter.js +20 -18
  411. package/esm/date-range-picker/date-range-picker-component-delegate.d.ts +1 -1
  412. package/esm/date-range-picker/date-range-picker-foundation.d.ts +4 -1
  413. package/esm/date-range-picker/date-range-picker-foundation.js +48 -14
  414. package/esm/dialog/dialog-adapter.js +1 -1
  415. package/esm/dialog/dialog-constants.d.ts +2 -2
  416. package/esm/dialog/dialog.js +5 -5
  417. package/esm/drawer/base/base-drawer-constants.d.ts +1 -1
  418. package/esm/expansion-panel/expansion-panel-constants.d.ts +2 -0
  419. package/esm/expansion-panel/expansion-panel-constants.js +3 -1
  420. package/esm/expansion-panel/expansion-panel-foundation.js +4 -1
  421. package/esm/expansion-panel/expansion-panel.js +6 -6
  422. package/esm/field/field-adapter.d.ts +4 -2
  423. package/esm/field/field-adapter.js +5 -2
  424. package/esm/field/field-constants.d.ts +3 -3
  425. package/esm/field/field-foundation.d.ts +2 -2
  426. package/esm/field/field-foundation.js +12 -9
  427. package/esm/field/field.js +3 -3
  428. package/esm/file-picker/file-picker-component-delegate.d.ts +1 -1
  429. package/esm/file-picker/file-picker.js +6 -6
  430. package/esm/floating-action-button/floating-action-button-component-delegate.d.ts +1 -1
  431. package/esm/floating-action-button/floating-action-button.js +6 -6
  432. package/esm/focus-indicator/focus-indicator-adapter.d.ts +29 -0
  433. package/esm/focus-indicator/focus-indicator-adapter.js +39 -0
  434. package/esm/focus-indicator/focus-indicator-constants.d.ts +15 -0
  435. package/esm/focus-indicator/focus-indicator-constants.js +19 -0
  436. package/esm/focus-indicator/focus-indicator-foundation.d.ts +43 -0
  437. package/esm/focus-indicator/focus-indicator-foundation.js +110 -0
  438. package/esm/focus-indicator/focus-indicator.d.ts +67 -0
  439. package/esm/focus-indicator/focus-indicator.js +112 -0
  440. package/esm/focus-indicator/index.d.ts +10 -0
  441. package/esm/focus-indicator/index.js +14 -0
  442. package/esm/icon/icon.js +5 -5
  443. package/esm/icon-button/icon-button-component-delegate.d.ts +1 -1
  444. package/esm/icon-button/icon-button.d.ts +1 -0
  445. package/esm/icon-button/icon-button.js +16 -9
  446. package/esm/index.d.ts +2 -0
  447. package/esm/index.js +6 -0
  448. package/esm/keyboard-shortcut/keyboard-shortcut.js +4 -4
  449. package/esm/label-value/label-value-component-delegate.d.ts +1 -1
  450. package/esm/label-value/label-value-constants.d.ts +1 -1
  451. package/esm/label-value/label-value.js +5 -5
  452. package/esm/linear-progress/linear-progress-adapter.d.ts +23 -0
  453. package/esm/linear-progress/linear-progress-adapter.js +34 -0
  454. package/esm/linear-progress/linear-progress-constants.d.ts +6 -2
  455. package/esm/linear-progress/linear-progress-constants.js +8 -3
  456. package/esm/linear-progress/linear-progress-foundation.d.ts +26 -0
  457. package/esm/linear-progress/linear-progress-foundation.js +53 -0
  458. package/esm/linear-progress/linear-progress.d.ts +32 -25
  459. package/esm/linear-progress/linear-progress.js +49 -107
  460. package/esm/list/list/list-adapter.js +2 -2
  461. package/esm/list/list/list.js +5 -5
  462. package/esm/list/list-item/list-item-adapter.d.ts +3 -3
  463. package/esm/list/list-item/list-item-adapter.js +2 -2
  464. package/esm/list/list-item/list-item-foundation.d.ts +1 -0
  465. package/esm/list/list-item/list-item-foundation.js +8 -1
  466. package/esm/list/list-item/list-item.js +6 -6
  467. package/esm/list-dropdown/list-dropdown-adapter.js +4 -5
  468. package/esm/list-dropdown/list-dropdown-constants.d.ts +6 -6
  469. package/esm/list-dropdown/list-dropdown-utils.d.ts +1 -1
  470. package/esm/list-dropdown/list-dropdown-utils.js +7 -4
  471. package/esm/menu/menu-constants.d.ts +3 -3
  472. package/esm/menu/menu.js +6 -6
  473. package/esm/open-icon/open-icon.js +6 -6
  474. package/esm/paginator/paginator-constants.d.ts +1 -1
  475. package/esm/paginator/paginator-foundation.js +2 -0
  476. package/esm/paginator/paginator.js +12 -12
  477. package/esm/popup/popup-adapter.js +2 -2
  478. package/esm/popup/popup-constants.d.ts +2 -2
  479. package/esm/popup/popup.js +5 -5
  480. package/esm/product-icon/product-icon.js +5 -5
  481. package/esm/profile-card/profile-card.js +6 -6
  482. package/esm/quantity-field/quantity-field-component-delegate.d.ts +1 -1
  483. package/esm/quantity-field/quantity-field.js +6 -6
  484. package/esm/radio/radio-adapter.d.ts +1 -0
  485. package/esm/radio/radio-adapter.js +11 -3
  486. package/esm/radio/radio.js +5 -5
  487. package/esm/ripple/forge-ripple.d.ts +2 -0
  488. package/esm/ripple/forge-ripple.js +4 -0
  489. package/esm/ripple/ripple.js +4 -4
  490. package/esm/select/core/base-select-constants.d.ts +4 -4
  491. package/esm/select/option/option.js +4 -4
  492. package/esm/select/option-group/option-group.js +3 -3
  493. package/esm/select/select/select-adapter.d.ts +1 -1
  494. package/esm/select/select/select.js +1 -1
  495. package/esm/select/select-component-delegate.d.ts +1 -1
  496. package/esm/slider/slider-adapter.d.ts +79 -0
  497. package/esm/slider/slider-adapter.js +178 -0
  498. package/esm/slider/slider-component-delegate.d.ts +19 -3
  499. package/esm/slider/slider-component-delegate.js +48 -0
  500. package/esm/slider/slider-constants.d.ts +55 -19
  501. package/esm/slider/slider-constants.js +56 -14
  502. package/esm/slider/slider-foundation.d.ts +94 -0
  503. package/esm/slider/slider-foundation.js +313 -0
  504. package/esm/slider/slider-utils.d.ts +9 -0
  505. package/esm/slider/slider-utils.js +56 -0
  506. package/esm/slider/slider.d.ts +135 -66
  507. package/esm/slider/slider.js +241 -249
  508. package/esm/split-view/split-view/split-view-adapter.js +3 -1
  509. package/esm/split-view/split-view/split-view-constants.d.ts +1 -1
  510. package/esm/split-view/split-view/split-view.js +5 -5
  511. package/esm/split-view/split-view-panel/split-view-panel-constants.d.ts +2 -2
  512. package/esm/split-view/split-view-panel/split-view-panel-foundation.js +18 -18
  513. package/esm/split-view/split-view-panel/split-view-panel.js +7 -7
  514. package/esm/stack/stack-constants.d.ts +1 -1
  515. package/esm/stack/stack.js +5 -5
  516. package/esm/state-layer/index.d.ts +10 -0
  517. package/esm/state-layer/index.js +14 -0
  518. package/esm/state-layer/state-layer-adapter.d.ts +41 -0
  519. package/esm/state-layer/state-layer-adapter.js +101 -0
  520. package/esm/state-layer/state-layer-constants.d.ts +79 -0
  521. package/esm/state-layer/state-layer-constants.js +89 -0
  522. package/esm/state-layer/state-layer-foundation.d.ts +57 -0
  523. package/esm/state-layer/state-layer-foundation.js +237 -0
  524. package/esm/state-layer/state-layer-utils.d.ts +26 -0
  525. package/esm/state-layer/state-layer-utils.js +54 -0
  526. package/esm/state-layer/state-layer.d.ts +66 -0
  527. package/esm/state-layer/state-layer.js +96 -0
  528. package/esm/stepper/core/stepper-utils.js +2 -1
  529. package/esm/stepper/step/step-constants.d.ts +1 -1
  530. package/esm/stepper/step/step.js +13 -13
  531. package/esm/stepper/stepper/stepper-adapter.js +1 -1
  532. package/esm/stepper/stepper/stepper-constants.d.ts +2 -2
  533. package/esm/stepper/stepper/stepper-foundation.js +1 -0
  534. package/esm/stepper/stepper/stepper.js +5 -5
  535. package/esm/switch/switch-component-delegate.d.ts +1 -1
  536. package/esm/switch/switch-constants.d.ts +1 -1
  537. package/esm/switch/switch.js +19 -12
  538. package/esm/table/table.js +5 -5
  539. package/esm/table/types.d.ts +4 -4
  540. package/esm/tabs/tab/tab-adapter.d.ts +14 -40
  541. package/esm/tabs/tab/tab-adapter.js +57 -79
  542. package/esm/tabs/tab/tab-constants.d.ts +13 -14
  543. package/esm/tabs/tab/tab-constants.js +17 -10
  544. package/esm/tabs/tab/tab-foundation.d.ts +23 -23
  545. package/esm/tabs/tab/tab-foundation.js +66 -62
  546. package/esm/tabs/tab/tab.d.ts +56 -20
  547. package/esm/tabs/tab/tab.js +88 -39
  548. package/esm/tabs/tab-bar/tab-bar-adapter.d.ts +49 -87
  549. package/esm/tabs/tab-bar/tab-bar-adapter.js +114 -188
  550. package/esm/tabs/tab-bar/tab-bar-constants.d.ts +15 -45
  551. package/esm/tabs/tab-bar/tab-bar-constants.js +22 -56
  552. package/esm/tabs/tab-bar/tab-bar-foundation.d.ts +56 -65
  553. package/esm/tabs/tab-bar/tab-bar-foundation.js +241 -302
  554. package/esm/tabs/tab-bar/tab-bar.d.ts +51 -36
  555. package/esm/tabs/tab-bar/tab-bar.js +89 -57
  556. package/esm/text-field/text-field-adapter.d.ts +1 -1
  557. package/esm/text-field/text-field-adapter.js +5 -3
  558. package/esm/text-field/text-field-component-delegate.d.ts +1 -1
  559. package/esm/text-field/text-field.js +1 -1
  560. package/esm/theme/theme-utils.d.ts +2 -2
  561. package/esm/time-picker/time-picker-adapter.js +6 -8
  562. package/esm/time-picker/time-picker-component-delegate.d.ts +1 -1
  563. package/esm/time-picker/time-picker-constants.d.ts +6 -6
  564. package/esm/time-picker/time-picker-foundation.js +9 -6
  565. package/esm/time-picker/time-picker.js +6 -6
  566. package/esm/toast/toast-constants.d.ts +2 -2
  567. package/esm/toast/toast.js +7 -7
  568. package/esm/toolbar/toolbar.js +5 -5
  569. package/esm/tooltip/tooltip-constants.d.ts +1 -1
  570. package/esm/tooltip/tooltip.js +4 -4
  571. package/esm/utils/color-utils.js +1 -0
  572. package/esm/view-switcher/view-switcher.js +5 -5
  573. package/package.json +2 -4
  574. package/styles/app-bar/_mixins.scss +8 -1
  575. package/styles/card/_mixins.scss +8 -7
  576. package/styles/chips/chip/_mixins.scss +1 -0
  577. package/styles/circular-progress/_animation.scss +75 -0
  578. package/styles/circular-progress/_configuration.scss +23 -0
  579. package/styles/circular-progress/_core.scss +122 -0
  580. package/styles/circular-progress/circular-progress.scss +92 -3
  581. package/styles/circular-progress/index.scss +8 -0
  582. package/styles/core/styles/_utils.scss +63 -0
  583. package/styles/core/styles/animation/index.scss +16 -0
  584. package/styles/core/styles/border/index.scss +38 -0
  585. package/styles/core/styles/core/_config.scss +6 -0
  586. package/styles/core/styles/elevation/index.scss +61 -0
  587. package/styles/core/styles/shape/index.scss +31 -0
  588. package/styles/core/styles/spacing/index.scss +30 -0
  589. package/styles/core/styles/theme/index.scss +52 -0
  590. package/styles/core/styles/tokens/_color-palette.scss +299 -0
  591. package/styles/core/styles/tokens/animation/_tokens.scss +38 -0
  592. package/styles/core/styles/tokens/border/_tokens.scss +17 -0
  593. package/styles/core/styles/tokens/circular-progress/_tokens.scss +21 -0
  594. package/styles/core/styles/tokens/elevation/_tokens.scss +105 -0
  595. package/styles/core/styles/tokens/focus-indicator/_tokens.scss +34 -0
  596. package/styles/core/styles/tokens/index.scss +10 -0
  597. package/styles/core/styles/tokens/linear-progress/_tokens.scss +25 -0
  598. package/styles/core/styles/tokens/shape/_tokens.scss +42 -0
  599. package/styles/core/styles/tokens/slider/_tokens.scss +49 -0
  600. package/styles/core/styles/tokens/spacing/_tokens.scss +23 -0
  601. package/styles/core/styles/tokens/state-layer/_tokens.scss +23 -0
  602. package/styles/core/styles/tokens/tabs/tab/_tokens.scss +71 -0
  603. package/styles/core/styles/tokens/tabs/tab-bar/_tokens.scss +19 -0
  604. package/styles/core/styles/tokens/theme/_tokens.scss +133 -0
  605. package/styles/core/styles/tokens/typography/_tokens.scss +236 -0
  606. package/styles/core/styles/typography/index.scss +119 -0
  607. package/styles/focus-indicator/_animations.scss +36 -0
  608. package/styles/focus-indicator/_configuration.scss +23 -0
  609. package/styles/focus-indicator/_core.scss +52 -0
  610. package/styles/focus-indicator/focus-indicator.scss +55 -0
  611. package/styles/focus-indicator/index.scss +8 -0
  612. package/styles/linear-progress/_animations.scss +129 -0
  613. package/styles/linear-progress/_configuration.scss +29 -0
  614. package/styles/linear-progress/_core.scss +99 -0
  615. package/styles/linear-progress/index.scss +8 -0
  616. package/styles/linear-progress/linear-progress.scss +101 -18
  617. package/styles/list/list-item/_mixins.scss +11 -1
  618. package/styles/list/list-item/_variables.scss +9 -0
  619. package/styles/slider/_configuration.scss +61 -0
  620. package/styles/slider/_core.scss +344 -0
  621. package/styles/slider/index.scss +7 -0
  622. package/styles/slider/slider.scss +186 -14
  623. package/styles/state-layer/_configuration.scss +17 -0
  624. package/styles/state-layer/_core.scss +124 -0
  625. package/styles/state-layer/index.scss +7 -0
  626. package/styles/state-layer/state-layer.scss +38 -0
  627. package/styles/table/_mixins.scss +2 -2
  628. package/styles/tabs/tab/_configuration.scss +64 -0
  629. package/styles/tabs/tab/_core.scss +190 -0
  630. package/styles/tabs/tab/index.scss +7 -0
  631. package/styles/tabs/tab/tab.scss +182 -15
  632. package/styles/tabs/tab-bar/_configuration.scss +13 -0
  633. package/styles/tabs/tab-bar/_core.scss +60 -0
  634. package/styles/tabs/tab-bar/index.scss +7 -0
  635. package/styles/tabs/tab-bar/tab-bar.scss +66 -5
  636. package/styles/theme/_theme-dark.scss +4 -8
  637. package/styles/theme/_theme.scss +3 -36
  638. package/styles/typography/forge-typography-legacy.scss +8 -0
  639. package/styles/typography/forge-typography.scss +11 -3
  640. package/styles/utils/_mixins-core.scss +1 -1
  641. package/dist/esm/chunks/chunk.242YUZKU.js +0 -7
  642. package/dist/esm/chunks/chunk.2BNDXFI5.js +0 -7
  643. package/dist/esm/chunks/chunk.2BNDXFI5.js.map +0 -7
  644. package/dist/esm/chunks/chunk.2DXG2R3M.js +0 -73
  645. package/dist/esm/chunks/chunk.2DXG2R3M.js.map +0 -7
  646. package/dist/esm/chunks/chunk.44IJE5UL.js +0 -7
  647. package/dist/esm/chunks/chunk.44IJE5UL.js.map +0 -7
  648. package/dist/esm/chunks/chunk.47A2CN5U.js +0 -7
  649. package/dist/esm/chunks/chunk.4BEI55KI.js +0 -7
  650. package/dist/esm/chunks/chunk.4FSAAN6W.js +0 -29
  651. package/dist/esm/chunks/chunk.4FSAAN6W.js.map +0 -7
  652. package/dist/esm/chunks/chunk.4NI63FGK.js +0 -7
  653. package/dist/esm/chunks/chunk.4WPFFNLH.js +0 -7
  654. package/dist/esm/chunks/chunk.5WNKQTXX.js +0 -7
  655. package/dist/esm/chunks/chunk.6OKJPSUE.js +0 -7
  656. package/dist/esm/chunks/chunk.72AUOVCD.js +0 -7
  657. package/dist/esm/chunks/chunk.72AUOVCD.js.map +0 -7
  658. package/dist/esm/chunks/chunk.7A6MX6CS.js +0 -7
  659. package/dist/esm/chunks/chunk.7A6MX6CS.js.map +0 -7
  660. package/dist/esm/chunks/chunk.7BOXIJAM.js +0 -7
  661. package/dist/esm/chunks/chunk.7BOXIJAM.js.map +0 -7
  662. package/dist/esm/chunks/chunk.ABLKZXJ3.js +0 -12
  663. package/dist/esm/chunks/chunk.ABLKZXJ3.js.map +0 -7
  664. package/dist/esm/chunks/chunk.BTBHIIGI.js +0 -7
  665. package/dist/esm/chunks/chunk.C7AN6FMW.js +0 -7
  666. package/dist/esm/chunks/chunk.C7AN6FMW.js.map +0 -7
  667. package/dist/esm/chunks/chunk.CKYHP5MC.js +0 -7
  668. package/dist/esm/chunks/chunk.CKYHP5MC.js.map +0 -7
  669. package/dist/esm/chunks/chunk.DT7MZR5Y.js +0 -7
  670. package/dist/esm/chunks/chunk.DYNEJBYK.js +0 -7
  671. package/dist/esm/chunks/chunk.E6CYXNS2.js +0 -7
  672. package/dist/esm/chunks/chunk.EGRUD7S7.js +0 -7
  673. package/dist/esm/chunks/chunk.ESR2NHOS.js +0 -7
  674. package/dist/esm/chunks/chunk.ESR2NHOS.js.map +0 -7
  675. package/dist/esm/chunks/chunk.F3MP6AXF.js +0 -29
  676. package/dist/esm/chunks/chunk.F3MP6AXF.js.map +0 -7
  677. package/dist/esm/chunks/chunk.FVRSGKJD.js +0 -7
  678. package/dist/esm/chunks/chunk.G3ZTZ4AN.js +0 -7
  679. package/dist/esm/chunks/chunk.G3ZTZ4AN.js.map +0 -7
  680. package/dist/esm/chunks/chunk.G5MGGEFP.js +0 -7
  681. package/dist/esm/chunks/chunk.HPDBSBQJ.js +0 -29
  682. package/dist/esm/chunks/chunk.HPDBSBQJ.js.map +0 -7
  683. package/dist/esm/chunks/chunk.HV6SPRC4.js +0 -7
  684. package/dist/esm/chunks/chunk.HV6SPRC4.js.map +0 -7
  685. package/dist/esm/chunks/chunk.I5BAZWUF.js +0 -7
  686. package/dist/esm/chunks/chunk.I5BAZWUF.js.map +0 -7
  687. package/dist/esm/chunks/chunk.IGTXLDZS.js +0 -7
  688. package/dist/esm/chunks/chunk.ILRWZHH3.js +0 -29
  689. package/dist/esm/chunks/chunk.ILRWZHH3.js.map +0 -7
  690. package/dist/esm/chunks/chunk.INCKI5IX.js +0 -7
  691. package/dist/esm/chunks/chunk.J6WCFQSS.js +0 -7
  692. package/dist/esm/chunks/chunk.JHBCYICS.js +0 -7
  693. package/dist/esm/chunks/chunk.JHY2CKEH.js +0 -7
  694. package/dist/esm/chunks/chunk.K6AFP52A.js +0 -7
  695. package/dist/esm/chunks/chunk.K6AFP52A.js.map +0 -7
  696. package/dist/esm/chunks/chunk.KE6GOYAB.js +0 -7
  697. package/dist/esm/chunks/chunk.KE6GOYAB.js.map +0 -7
  698. package/dist/esm/chunks/chunk.LDN4HLF7.js +0 -7
  699. package/dist/esm/chunks/chunk.LDN4HLF7.js.map +0 -7
  700. package/dist/esm/chunks/chunk.M2QU3LUR.js +0 -7
  701. package/dist/esm/chunks/chunk.M2QU3LUR.js.map +0 -7
  702. package/dist/esm/chunks/chunk.MCIQXNKY.js +0 -7
  703. package/dist/esm/chunks/chunk.MHOS3IHQ.js +0 -7
  704. package/dist/esm/chunks/chunk.MSF55AA3.js +0 -7
  705. package/dist/esm/chunks/chunk.MSF55AA3.js.map +0 -7
  706. package/dist/esm/chunks/chunk.MXTDW27J.js +0 -7
  707. package/dist/esm/chunks/chunk.MXTDW27J.js.map +0 -7
  708. package/dist/esm/chunks/chunk.NW7NV2A2.js +0 -7
  709. package/dist/esm/chunks/chunk.NW7NV2A2.js.map +0 -7
  710. package/dist/esm/chunks/chunk.Q7LFOS2I.js +0 -7
  711. package/dist/esm/chunks/chunk.Q7LFOS2I.js.map +0 -7
  712. package/dist/esm/chunks/chunk.RB5BTA5N.js +0 -7
  713. package/dist/esm/chunks/chunk.RE5X26QT.js +0 -29
  714. package/dist/esm/chunks/chunk.RE5X26QT.js.map +0 -7
  715. package/dist/esm/chunks/chunk.RG6CDWEX.js +0 -7
  716. package/dist/esm/chunks/chunk.RG6CDWEX.js.map +0 -7
  717. package/dist/esm/chunks/chunk.ROR6JMAE.js +0 -7
  718. package/dist/esm/chunks/chunk.SAQVWOVK.js +0 -7
  719. package/dist/esm/chunks/chunk.SAQVWOVK.js.map +0 -7
  720. package/dist/esm/chunks/chunk.TWZXQQQO.js +0 -29
  721. package/dist/esm/chunks/chunk.TWZXQQQO.js.map +0 -7
  722. package/dist/esm/chunks/chunk.UF43SSFY.js +0 -7
  723. package/dist/esm/chunks/chunk.UF43SSFY.js.map +0 -7
  724. package/dist/esm/chunks/chunk.V4TCOZLK.js +0 -29
  725. package/dist/esm/chunks/chunk.V4TCOZLK.js.map +0 -7
  726. package/dist/esm/chunks/chunk.V7WKXEZC.js +0 -7
  727. package/dist/esm/chunks/chunk.V7WKXEZC.js.map +0 -7
  728. package/dist/esm/chunks/chunk.VAKNDCLP.js +0 -29
  729. package/dist/esm/chunks/chunk.VAKNDCLP.js.map +0 -7
  730. package/dist/esm/chunks/chunk.WY7DECJD.js +0 -7
  731. package/dist/esm/chunks/chunk.WY7DECJD.js.map +0 -7
  732. package/dist/esm/chunks/chunk.X5LGVZGO.js +0 -7
  733. package/dist/esm/chunks/chunk.X5LGVZGO.js.map +0 -7
  734. package/dist/esm/chunks/chunk.Y4GKBJGI.js +0 -7
  735. package/dist/esm/chunks/chunk.Y5A7RQ5M.js +0 -7
  736. package/dist/esm/chunks/chunk.Y66GSZJB.js +0 -7
  737. package/dist/esm/chunks/chunk.Y66GSZJB.js.map +0 -7
  738. package/dist/esm/chunks/chunk.Y72NANFX.js +0 -7
  739. package/dist/esm/chunks/chunk.Y72NANFX.js.map +0 -7
  740. package/dist/esm/chunks/chunk.YBEBD4CN.js +0 -7
  741. package/dist/esm/chunks/chunk.YI4JTY4T.js +0 -14
  742. package/dist/esm/chunks/chunk.YPZNIYQL.js +0 -7
  743. package/dist/esm/chunks/chunk.ZFHPUAYX.js +0 -7
  744. package/dist/typography/forge-form.css +0 -6
  745. package/styles/circular-progress/_keyframes.scss +0 -185
  746. package/styles/circular-progress/_mixins.scss +0 -320
  747. package/styles/circular-progress/_variables.scss +0 -50
  748. package/styles/linear-progress/_mixins.scss +0 -11
  749. package/styles/linear-progress/_variables.scss +0 -15
  750. package/styles/tabs/tab/_mixins.scss +0 -165
  751. package/styles/tabs/tab/_variables.scss +0 -9
  752. package/styles/tabs/tab-bar/_mixins.scss +0 -78
  753. package/styles/typography/forge-form.scss +0 -67
  754. /package/dist/esm/chunks/{chunk.JHY2CKEH.js.map → chunk.3HB22HCX.js.map} +0 -0
  755. /package/dist/esm/chunks/{chunk.IGTXLDZS.js.map → chunk.4C6KHYUO.js.map} +0 -0
  756. /package/dist/esm/chunks/{chunk.KU5CXXGS.js.map → chunk.A62DE5PD.js.map} +0 -0
  757. /package/dist/esm/chunks/{chunk.G45OZEIS.js.map → chunk.CWTV3TB3.js.map} +0 -0
  758. /package/dist/esm/chunks/{chunk.WP4QOOIS.js.map → chunk.DG4ZM3AW.js.map} +0 -0
  759. /package/dist/esm/chunks/{chunk.EGRUD7S7.js.map → chunk.EK24Y56W.js.map} +0 -0
  760. /package/dist/esm/chunks/{chunk.UT7QUGAO.js.map → chunk.FWFOOQMA.js.map} +0 -0
  761. /package/dist/esm/chunks/{chunk.ZUNZKRRK.js.map → chunk.IX25DYIM.js.map} +0 -0
  762. /package/dist/esm/chunks/{chunk.ARJ3EVVO.js.map → chunk.KVCDAZ6B.js.map} +0 -0
  763. /package/dist/esm/chunks/{chunk.H4Z4DHPA.js.map → chunk.LTT67HTW.js.map} +0 -0
  764. /package/dist/esm/chunks/{chunk.MCIQXNKY.js.map → chunk.M3QDAYD2.js.map} +0 -0
  765. /package/dist/esm/chunks/{chunk.O73S5LF3.js.map → chunk.MGLL67VO.js.map} +0 -0
  766. /package/dist/esm/chunks/{chunk.MLV25D2G.js.map → chunk.OWCYRSI3.js.map} +0 -0
  767. /package/dist/esm/chunks/{chunk.IUOBRBDZ.js.map → chunk.QOJESHEV.js.map} +0 -0
  768. /package/dist/esm/chunks/{chunk.XUW3GG46.js.map → chunk.SFCGOCQK.js.map} +0 -0
  769. /package/dist/esm/chunks/{chunk.RBAVT3XQ.js.map → chunk.XGOAYMK2.js.map} +0 -0
  770. /package/dist/esm/chunks/{chunk.AFLH5HUG.js.map → chunk.YLG6ZC5K.js.map} +0 -0
  771. /package/dist/esm/chunks/{chunk.K2C4W3CO.js.map → chunk.YX7WLO5Y.js.map} +0 -0
  772. /package/dist/esm/chunks/{chunk.DYNEJBYK.js.map → chunk.ZDD2NLGP.js.map} +0 -0
  773. /package/dist/esm/chunks/{chunk.JEN6YP2Q.js.map → chunk.ZVBZ3LGP.js.map} +0 -0
@@ -0,0 +1,7 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2023 Tyler Technologies, Inc.
4
+ * License: Apache-2.0
5
+ */
6
+ import{a as s,d as F}from"./chunk.LK4AAUOP.js";import{a as u,d as R}from"./chunk.4YFVG4KP.js";import{d as S}from"./chunk.S3JMOOWC.js";import{a as P,e as U}from"./chunk.7CGKFRBK.js";import{a as B}from"./chunk.MGLWXAZO.js";import{b as k}from"./chunk.MXEKIEJA.js";import{l as N,m as x}from"./chunk.PH3HUFJJ.js";import{a as n}from"./chunk.NVUMRW44.js";import{a as O}from"./chunk.BKL2BAYW.js";import{a as I,b as L}from"./chunk.DXN7ZOH3.js";import{a as A,d as E,g as h,k as C}from"./chunk.MVTBJPO2.js";import{c as g,d as c,s as b}from"./chunk.K7FPXAFS.js";import{h as m,k as p,l as T}from"./chunk.J2M2MXP2.js";import{d as a}from"./chunk.M3QDAYD2.js";var M=`${L}app-bar-profile-button`,D={FULL_NAME:"full-name",EMAIL:"email",AVATAR_IMAGE_URL:"avatar-image-url",AVATAR_LETTER_COUNT:"avatar-letter-count",AVATAR_TEXT:"avatar-text",AVATAR_ICON:"avatar-icon",SIGN_OUT_BUTTON:"sign-out-button",PROFILE_BUTTON:"profile-button",SIGN_OUT_BUTTON_TEXT:"sign-out-button-text",PROFILE_BUTTON_TEXT:"profile-button-text",OPEN:"open"},y={BUTTON:"button"},i={elementName:M,attributes:D,selectors:y};var _=class extends O{constructor(e){super(e)}initialize(){this._avatarElement=h(this._component,u.elementName),this._buttonElement=h(this._component,i.selectors.BUTTON)}setClickListener(e){this._component.addEventListener("click",e)}removeClickListener(e){this._component.removeEventListener("click",e)}openPopup(e,l,o,w,f){return this._profileCardElement=document.createElement(s.elementName),this._profileCardElement.fullName=e.fullName,this._profileCardElement.email=e.email,this._profileCardElement.signOut=e.signOut,this._profileCardElement.profile=e.profile,this._profileCardElement.signOutText=e.signOutButtonText,this._profileCardElement.profileText=e.profileButtonText,this._profileCardElement.avatarText=e.avatarText,this._profileCardElement.avatarIcon=e.avatarIcon,this._profileCardElement.avatarImageUrl=e.avatarImageUrl,this._profileCardElement.avatarLetterCount=e.avatarLetterCount,this._profileCardElement.addEventListener(s.events.PROFILE,()=>o()),this._profileCardElement.addEventListener(s.events.SIGN_OUT,()=>w()),f&&this._profileCardElement.appendChild(f),this._popupElement=document.createElement(P.elementName),this._popupElement.targetElement=this._component,this._popupElement.placement="bottom-end",this._popupElement.animationType="menu",this._popupElement.appendChild(this._profileCardElement),this._popupElement.open=!0,g(this._popupElement,G=>{this._popupElement&&(this._component.contains(b(this._component.ownerDocument))||l())},!0)}closePopup(){this._popupElement&&(this._popupElement.open=!1,this._popupElement=void 0,this._profileCardElement=void 0)}requestFocus(){this._buttonElement.focus()}setAvatarText(e){this._avatarElement.text=e,c(this._avatarElement)}setAvatarIcon(e){if(e){let l=new x({props:{name:e}});this._avatarElement.replaceChildren(l.element)}else c(this._avatarElement)}setAvatarLetterCount(e){this._avatarElement.letterCount=e}setAvatarImageUrl(e){this._avatarElement.imageUrl=e}setSignOutButtonText(e){var l;this._profileCardElement&&(this._profileCardElement.signOutText=e,(l=this._popupElement)==null||l.position())}setProfileButtonText(e){var l;this._profileCardElement&&(this._profileCardElement.profileText=e,(l=this._popupElement)==null||l.position())}};var d=class{constructor(t){this._adapter=t;this._avatarLetterCount=u.numbers.DEFAULT_LETTER_COUNT;this._showSignOutButton=s.defaults.SHOW_SIGN_OUT_BUTTON;this._showProfileButton=s.defaults.SHOW_PROFILE_BUTTON;this._signOutButtonText=s.defaults.SIGN_OUT_BUTTON_TEXT;this._profileButtonText=s.defaults.PROFILE_BUTTON_TEXT;this._open=!1;this._isInitialized=!1;this._clickListener=e=>this._onClick(e),this._dismissListener=()=>this._onDimiss(),this._keydownListener=e=>this._onKeydown(e),this._profileButtonListener=()=>this._onProfileButtonClick(),this._signOutButtonListener=()=>this._onSignOutButtonClick()}initialize(){this._adapter.initialize(),this._adapter.setClickListener(this._clickListener),this._adapter.setAvatarImageUrl(this._avatarImageUrl),this._adapter.setAvatarLetterCount(this._avatarLetterCount),this._adapter.setAvatarText(this._avatarText),this._adapter.setAvatarIcon(this._avatarIcon),this._isInitialized=!0}disconnect(){this._open&&this._closeDropdown(),this._adapter.removeWindowListener("keydown",this._keydownListener),this._adapter.removeClickListener(this._clickListener),this._isInitialized=!1}_onClick(t){this._open?this._closeDropdown():this._openDropdown()}_onKeydown(t){(t.key==="Escape"||t.keyCode===27)&&(this._closeDropdown(),this._adapter.requestFocus())}_onDimiss(){B.WEBKIT?window.requestAnimationFrame(()=>this._closeDropdown()):this._closeDropdown()}_onProfileButtonClick(){this._adapter.emitHostEvent(s.events.PROFILE),this._closeDropdown(),this._adapter.requestFocus()}_onSignOutButtonClick(){this._adapter.emitHostEvent(s.events.SIGN_OUT),this._closeDropdown(),this._adapter.requestFocus()}_openDropdown(){if(this._open)return;m(this._cancelDismissListener)&&this._cancelDismissListener();let t={fullName:this._fullName,email:this._email,signOut:this._showSignOutButton,profile:this._showProfileButton,signOutButtonText:this._signOutButtonText,profileButtonText:this._profileButtonText,avatarText:this._avatarText,avatarIcon:this._avatarIcon,avatarImageUrl:this._avatarImageUrl,avatarLetterCount:this._avatarLetterCount},e=this._profileCardBuilder?this._profileCardBuilder():void 0;this._cancelDismissListener=this._adapter.openPopup(t,this._dismissListener,this._profileButtonListener,this._signOutButtonListener,e),this._adapter.addWindowListener("keydown",this._keydownListener),this._open=!0,!t.signOut&&!t.profile&&this._adapter.requestFocus()}_closeDropdown(){this._open&&(m(this._cancelDismissListener)&&this._cancelDismissListener(),this._open=!1,this._adapter.removeWindowListener("keydown",this._keydownListener),this._adapter.closePopup())}get fullName(){return this._fullName}set fullName(t){this._fullName!==t&&(this._fullName=t,this._adapter.setHostAttribute(i.attributes.FULL_NAME,this._fullName))}get email(){return this._email}set email(t){this._email!==t&&(this._email=t,this._adapter.setHostAttribute(i.attributes.EMAIL,this._email))}get avatarImageUrl(){return this._avatarImageUrl}set avatarImageUrl(t){this._avatarImageUrl!==t&&(this._avatarImageUrl=t,this._isInitialized&&(this._adapter.setAvatarImageUrl(this._avatarImageUrl),this._adapter.setHostAttribute(i.attributes.AVATAR_IMAGE_URL,this._avatarImageUrl)))}get avatarLetterCount(){return this._avatarLetterCount}set avatarLetterCount(t){this._avatarLetterCount!==t&&(this._avatarLetterCount=t,this._isInitialized&&(this._adapter.setAvatarLetterCount(this._avatarLetterCount),this._adapter.setHostAttribute(i.attributes.AVATAR_LETTER_COUNT,this._avatarLetterCount)))}get avatarText(){return this._avatarText}set avatarText(t){this._avatarText!==t&&(this._avatarText=t,this._isInitialized&&(this._adapter.setAvatarText(this._avatarText),this._adapter.toggleHostAttribute(i.attributes.AVATAR_TEXT,!!this._avatarText,this._avatarText)))}get avatarIcon(){return this._avatarIcon}set avatarIcon(t){this._avatarIcon!==t&&(this._avatarIcon=t,this._isInitialized&&(this._adapter.setAvatarIcon(this._avatarIcon),this._adapter.toggleHostAttribute(i.attributes.AVATAR_ICON,!!this._avatarIcon,this._avatarIcon)))}get signOutButton(){return this._showSignOutButton}set signOutButton(t){this._showSignOutButton!==t&&(this._showSignOutButton=t,this._adapter.setHostAttribute(i.attributes.SIGN_OUT_BUTTON,this._showSignOutButton))}get profileButton(){return this._showProfileButton}set profileButton(t){this._showProfileButton!==t&&(this._showProfileButton=t,this._adapter.setHostAttribute(i.attributes.PROFILE_BUTTON,this._showProfileButton))}get signOutButtonText(){return this._signOutButtonText}set signOutButtonText(t){this._signOutButtonText!==t&&(this._signOutButtonText=t,this._adapter.setSignOutButtonText(t))}get profileButtonText(){return this._profileButtonText}set profileButtonText(t){this._profileButtonText!==t&&(this._profileButtonText=t,this._adapter.setProfileButtonText(t))}get open(){return this._open}set open(t){this._open!==t&&(t?this._openDropdown():this._closeDropdown())}get profileCardBuilder(){return this._profileCardBuilder}set profileCardBuilder(t){this._profileCardBuilder=t}};var H='<template><forge-icon-button><button type="button" aria-label="View profile card"><forge-avatar aria-hidden="true"></forge-avatar></button><forge-tooltip delay="500" position="bottom">View profile</forge-tooltip></forge-icon-button></template>',r=class extends C{constructor(){super();this._foundation=new d(new _(this))}static get observedAttributes(){return[i.attributes.FULL_NAME,i.attributes.EMAIL,i.attributes.AVATAR_IMAGE_URL,i.attributes.AVATAR_LETTER_COUNT,i.attributes.AVATAR_TEXT,i.attributes.AVATAR_ICON,i.attributes.SIGN_OUT_BUTTON,i.attributes.PROFILE_BUTTON,i.attributes.SIGN_OUT_BUTTON_TEXT,i.attributes.PROFILE_BUTTON_TEXT,i.attributes.OPEN]}initializedCallback(){E(this,H)}connectedCallback(){this._foundation.initialize()}disconnectedCallback(){this._foundation.disconnect()}attributeChangedCallback(e,l,o){switch(e){case i.attributes.FULL_NAME:this.fullName=o;break;case i.attributes.EMAIL:this.email=o;break;case i.attributes.AVATAR_IMAGE_URL:this.avatarImageUrl=o;break;case i.attributes.AVATAR_LETTER_COUNT:this.avatarLetterCount=T(o);break;case i.attributes.AVATAR_TEXT:this.avatarText=o;break;case i.attributes.AVATAR_ICON:this.avatarIcon=o;break;case i.attributes.SIGN_OUT_BUTTON:this.signOutButton=p(o);break;case i.attributes.PROFILE_BUTTON:this.profileButton=p(o);break;case i.attributes.SIGN_OUT_BUTTON_TEXT:this.signOutButtonText=o;break;case i.attributes.PROFILE_BUTTON_TEXT:this.profileButtonText=o;break;case i.attributes.OPEN:this.open=p(o);break}}};a([n()],r.prototype,"fullName",2),a([n()],r.prototype,"email",2),a([n()],r.prototype,"avatarImageUrl",2),a([n()],r.prototype,"avatarLetterCount",2),a([n()],r.prototype,"avatarText",2),a([n()],r.prototype,"avatarIcon",2),a([n()],r.prototype,"signOutButton",2),a([n()],r.prototype,"profileButton",2),a([n()],r.prototype,"signOutButtonText",2),a([n()],r.prototype,"profileButtonText",2),a([n()],r.prototype,"open",2),a([n()],r.prototype,"profileCardBuilder",2),r=a([I({name:i.elementName,dependencies:[U,F,k,N,R,S]})],r);function Pt(){A(r)}export{i as a,_ as b,d as c,r as d,Pt as e};
7
+ //# sourceMappingURL=chunk.BH2TUG2V.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/app-bar/profile-button/app-bar-profile-button-constants.ts", "../../src/app-bar/profile-button/app-bar-profile-button-adapter.ts", "../../src/app-bar/profile-button/app-bar-profile-button-foundation.ts", "../../src/app-bar/profile-button/app-bar-profile-button.ts", "../../src/app-bar/profile-button/index.ts"],
4
+ "sourcesContent": ["import { COMPONENT_NAME_PREFIX } from '../../constants';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}app-bar-profile-button`;\n\nconst attributes = {\n FULL_NAME: 'full-name',\n EMAIL: 'email',\n AVATAR_IMAGE_URL: 'avatar-image-url',\n AVATAR_LETTER_COUNT: 'avatar-letter-count',\n AVATAR_TEXT: 'avatar-text',\n AVATAR_ICON: 'avatar-icon',\n SIGN_OUT_BUTTON: 'sign-out-button',\n PROFILE_BUTTON: 'profile-button',\n SIGN_OUT_BUTTON_TEXT: 'sign-out-button-text',\n PROFILE_BUTTON_TEXT: 'profile-button-text',\n OPEN: 'open'\n};\n\nconst selectors = {\n BUTTON: 'button'\n};\n\nexport const APP_BAR_PROFILE_BUTTON_CONSTANTS = {\n elementName,\n attributes,\n selectors\n};\n\nexport interface IAppBarProfileCardConfig {\n fullName: string;\n email: string;\n signOut: boolean;\n profile: boolean;\n signOutButtonText: string;\n profileButtonText: string;\n avatarText: string;\n avatarIcon: string;\n avatarImageUrl: string;\n avatarLetterCount: number;\n}\n\nexport type AppBarProfileButtonProfileCardBuilder = () => HTMLElement;\n", "import { getLightElement, notChildEventListener, getActiveElement, removeAllChildren } from '@tylertech/forge-core';\nimport { IconComponentDelegate } from '../../icon';\nimport { AVATAR_CONSTANTS, IAvatarComponent } from '../../avatar';\nimport { BaseAdapter, IBaseAdapter } from '../../core/base/base-adapter';\nimport { IPopupComponent, PopupAnimationType, POPUP_CONSTANTS } from '../../popup';\nimport { IProfileCardComponent, PROFILE_CARD_CONSTANTS } from '../../profile-card';\nimport { IAppBarProfileButtonComponent } from './app-bar-profile-button';\nimport { IAppBarProfileCardConfig, APP_BAR_PROFILE_BUTTON_CONSTANTS } from './app-bar-profile-button-constants';\n\nexport interface IAppBarProfileButtonAdapter extends IBaseAdapter {\n initialize(): void;\n setClickListener(listener: (evt: MouseEvent) => void): void;\n removeClickListener(listener: (evt: MouseEvent) => void): void;\n openPopup(profileCardConfig: IAppBarProfileCardConfig, dismissListener: () => void, profileListener: () => void, signOutListener: () => void, profileCardContent?: HTMLElement): () => void;\n closePopup(): void;\n requestFocus(): void;\n setAvatarText(value: string): void;\n setAvatarIcon(value: string): void;\n setAvatarLetterCount(value: number): void;\n setAvatarImageUrl(value: string): void;\n setSignOutButtonText(value: string): void;\n setProfileButtonText(value: string): void;\n}\n\nexport class AppBarProfileButtonAdapter extends BaseAdapter<IAppBarProfileButtonComponent> implements IAppBarProfileButtonAdapter {\n private _avatarElement: IAvatarComponent;\n private _buttonElement: HTMLButtonElement;\n private _popupElement?: IPopupComponent;\n private _profileCardElement?: IProfileCardComponent;\n\n constructor(component: IAppBarProfileButtonComponent) {\n super(component);\n }\n\n public initialize(): void {\n this._avatarElement = getLightElement(this._component, AVATAR_CONSTANTS.elementName) as IAvatarComponent;\n this._buttonElement = getLightElement(this._component, APP_BAR_PROFILE_BUTTON_CONSTANTS.selectors.BUTTON) as HTMLButtonElement;\n }\n\n public setClickListener(listener: (evt: MouseEvent) => void): void {\n this._component.addEventListener('click', listener);\n }\n\n public removeClickListener(listener: (evt: MouseEvent) => void): void {\n this._component.removeEventListener('click', listener);\n }\n\n public openPopup(profileCardConfig: IAppBarProfileCardConfig, dismissListener: () => void, profileListener: () => void, signOutListener: () => void, profileCardContent?: HTMLElement): () => void {\n this._profileCardElement = document.createElement(PROFILE_CARD_CONSTANTS.elementName);\n this._profileCardElement.fullName = profileCardConfig.fullName;\n this._profileCardElement.email = profileCardConfig.email;\n this._profileCardElement.signOut = profileCardConfig.signOut;\n this._profileCardElement.profile = profileCardConfig.profile;\n this._profileCardElement.signOutText = profileCardConfig.signOutButtonText;\n this._profileCardElement.profileText = profileCardConfig.profileButtonText;\n this._profileCardElement.avatarText = profileCardConfig.avatarText;\n this._profileCardElement.avatarIcon = profileCardConfig.avatarIcon;\n this._profileCardElement.avatarImageUrl = profileCardConfig.avatarImageUrl;\n this._profileCardElement.avatarLetterCount = profileCardConfig.avatarLetterCount;\n this._profileCardElement.addEventListener(PROFILE_CARD_CONSTANTS.events.PROFILE, () => profileListener());\n this._profileCardElement.addEventListener(PROFILE_CARD_CONSTANTS.events.SIGN_OUT, () => signOutListener());\n\n if (profileCardContent) {\n this._profileCardElement.appendChild(profileCardContent);\n }\n\n this._popupElement = document.createElement(POPUP_CONSTANTS.elementName);\n this._popupElement.targetElement = this._component;\n this._popupElement.placement = 'bottom-end';\n this._popupElement.animationType = PopupAnimationType.Menu;\n this._popupElement.appendChild(this._profileCardElement);\n this._popupElement.open = true;\n\n return notChildEventListener(this._popupElement, activeElement => {\n if (!this._popupElement) {\n return;\n }\n if (!this._component.contains(getActiveElement(this._component.ownerDocument))) {\n dismissListener();\n }\n }, true);\n }\n\n public closePopup(): void {\n if (this._popupElement) {\n this._popupElement.open = false;\n this._popupElement = undefined;\n this._profileCardElement = undefined;\n }\n }\n\n public requestFocus(): void {\n this._buttonElement.focus();\n }\n\n public setAvatarText(value: string): void {\n this._avatarElement.text = value;\n removeAllChildren(this._avatarElement);\n }\n\n public setAvatarIcon(value: string): void {\n if (value) {\n const iconDelegate = new IconComponentDelegate({ props: { name: value }});\n this._avatarElement.replaceChildren(iconDelegate.element);\n } else {\n removeAllChildren(this._avatarElement);\n }\n }\n\n public setAvatarLetterCount(value: number): void {\n this._avatarElement.letterCount = value;\n }\n\n public setAvatarImageUrl(value: string): void {\n this._avatarElement.imageUrl = value;\n }\n\n public setSignOutButtonText(value: string): void {\n if (this._profileCardElement) {\n this._profileCardElement.signOutText = value;\n this._popupElement?.position();\n }\n }\n\n public setProfileButtonText(value: string): void {\n if (this._profileCardElement) {\n this._profileCardElement.profileText = value;\n this._popupElement?.position();\n }\n }\n}\n", "import { ICustomElementFoundation, isFunction, Platform, getActiveElement } from '@tylertech/forge-core';\nimport { AVATAR_CONSTANTS } from '../../avatar';\nimport { PROFILE_CARD_CONSTANTS } from '../../profile-card';\nimport { IAppBarProfileButtonAdapter } from './app-bar-profile-button-adapter';\nimport { IAppBarProfileCardConfig, AppBarProfileButtonProfileCardBuilder, APP_BAR_PROFILE_BUTTON_CONSTANTS } from './app-bar-profile-button-constants';\n\nexport interface IAppBarProfileButtonFoundation extends ICustomElementFoundation {\n fullName: string;\n email: string;\n avatarImageUrl: string;\n avatarLetterCount: number;\n avatarText: string;\n avatarIcon: string;\n signOutButton: boolean;\n profileButton: boolean;\n signOutButtonText: string;\n profileButtonText: string;\n open: boolean;\n profileCardBuilder: AppBarProfileButtonProfileCardBuilder;\n}\n\nexport class AppBarProfileButtonFoundation implements IAppBarProfileButtonFoundation {\n private _fullName: string;\n private _email: string;\n private _avatarImageUrl: string;\n private _avatarLetterCount = AVATAR_CONSTANTS.numbers.DEFAULT_LETTER_COUNT;\n private _avatarText: string;\n private _avatarIcon: string;\n private _showSignOutButton = PROFILE_CARD_CONSTANTS.defaults.SHOW_SIGN_OUT_BUTTON;\n private _showProfileButton = PROFILE_CARD_CONSTANTS.defaults.SHOW_PROFILE_BUTTON;\n private _signOutButtonText = PROFILE_CARD_CONSTANTS.defaults.SIGN_OUT_BUTTON_TEXT;\n private _profileButtonText = PROFILE_CARD_CONSTANTS.defaults.PROFILE_BUTTON_TEXT;\n private _profileCardBuilder: AppBarProfileButtonProfileCardBuilder;\n private _open = false;\n private _isInitialized = false;\n private _clickListener: (evt: MouseEvent) => void;\n private _dismissListener: () => void;\n private _cancelDismissListener: () => void;\n private _keydownListener: (evt: KeyboardEvent) => void;\n private _profileButtonListener: () => void;\n private _signOutButtonListener: () => void;\n\n constructor(private _adapter: IAppBarProfileButtonAdapter) {\n this._clickListener = evt => this._onClick(evt);\n this._dismissListener = () => this._onDimiss();\n this._keydownListener = evt => this._onKeydown(evt);\n this._profileButtonListener = () => this._onProfileButtonClick();\n this._signOutButtonListener = () => this._onSignOutButtonClick();\n }\n\n public initialize(): void {\n this._adapter.initialize();\n this._adapter.setClickListener(this._clickListener);\n this._adapter.setAvatarImageUrl(this._avatarImageUrl);\n this._adapter.setAvatarLetterCount(this._avatarLetterCount);\n this._adapter.setAvatarText(this._avatarText);\n this._adapter.setAvatarIcon(this._avatarIcon);\n this._isInitialized = true;\n }\n\n public disconnect(): void {\n if (this._open) {\n this._closeDropdown();\n }\n this._adapter.removeWindowListener('keydown', this._keydownListener);\n this._adapter.removeClickListener(this._clickListener);\n this._isInitialized = false;\n }\n\n private _onClick(evt: MouseEvent): void {\n if (!this._open) {\n this._openDropdown();\n } else {\n this._closeDropdown();\n }\n }\n\n private _onKeydown(evt: KeyboardEvent): void {\n if (evt.key === 'Escape' || evt.keyCode === 27) {\n this._closeDropdown();\n this._adapter.requestFocus();\n }\n }\n\n private _onDimiss(): void {\n if (Platform.WEBKIT) {\n window.requestAnimationFrame(() => this._closeDropdown());\n } else {\n this._closeDropdown();\n }\n }\n\n private _onProfileButtonClick(): void {\n this._adapter.emitHostEvent(PROFILE_CARD_CONSTANTS.events.PROFILE);\n this._closeDropdown();\n this._adapter.requestFocus();\n }\n\n private _onSignOutButtonClick(): void {\n this._adapter.emitHostEvent(PROFILE_CARD_CONSTANTS.events.SIGN_OUT);\n this._closeDropdown();\n this._adapter.requestFocus();\n }\n\n private _openDropdown(): void {\n if (this._open) {\n return;\n }\n\n if (isFunction(this._cancelDismissListener)) {\n this._cancelDismissListener();\n }\n const profileCardConfig: IAppBarProfileCardConfig = {\n fullName: this._fullName,\n email: this._email,\n signOut: this._showSignOutButton,\n profile: this._showProfileButton,\n signOutButtonText: this._signOutButtonText,\n profileButtonText: this._profileButtonText,\n avatarText: this._avatarText,\n avatarIcon: this._avatarIcon,\n avatarImageUrl: this._avatarImageUrl,\n avatarLetterCount: this._avatarLetterCount\n };\n const profileCardContent = this._profileCardBuilder ? this._profileCardBuilder() : undefined;\n this._cancelDismissListener = this._adapter.openPopup(profileCardConfig, this._dismissListener, this._profileButtonListener, this._signOutButtonListener, profileCardContent);\n this._adapter.addWindowListener('keydown', this._keydownListener);\n this._open = true;\n\n // If we aren't showing the sign out or profile buttons then leave focus on our button\n if (!profileCardConfig.signOut && !profileCardConfig.profile) {\n this._adapter.requestFocus();\n }\n }\n\n private _closeDropdown(): void {\n if (!this._open) {\n return;\n }\n if (isFunction(this._cancelDismissListener)) {\n this._cancelDismissListener();\n }\n this._open = false;\n this._adapter.removeWindowListener('keydown', this._keydownListener);\n this._adapter.closePopup();\n }\n\n public get fullName(): string {\n return this._fullName;\n }\n public set fullName(value: string) {\n if (this._fullName !== value) {\n this._fullName = value;\n this._adapter.setHostAttribute(APP_BAR_PROFILE_BUTTON_CONSTANTS.attributes.FULL_NAME, this._fullName);\n }\n }\n\n public get email(): string {\n return this._email;\n }\n public set email(value: string) {\n if (this._email !== value) {\n this._email = value;\n this._adapter.setHostAttribute(APP_BAR_PROFILE_BUTTON_CONSTANTS.attributes.EMAIL, this._email);\n }\n }\n\n public get avatarImageUrl(): string {\n return this._avatarImageUrl;\n }\n public set avatarImageUrl(value: string) {\n if (this._avatarImageUrl !== value) {\n this._avatarImageUrl = value;\n if (this._isInitialized) {\n this._adapter.setAvatarImageUrl(this._avatarImageUrl);\n this._adapter.setHostAttribute(APP_BAR_PROFILE_BUTTON_CONSTANTS.attributes.AVATAR_IMAGE_URL, this._avatarImageUrl);\n }\n }\n }\n\n public get avatarLetterCount(): number {\n return this._avatarLetterCount;\n }\n public set avatarLetterCount(value: number) {\n if (this._avatarLetterCount !== value) {\n this._avatarLetterCount = value;\n if (this._isInitialized) {\n this._adapter.setAvatarLetterCount(this._avatarLetterCount);\n this._adapter.setHostAttribute(APP_BAR_PROFILE_BUTTON_CONSTANTS.attributes.AVATAR_LETTER_COUNT, this._avatarLetterCount as any);\n }\n }\n }\n\n public get avatarText(): string {\n return this._avatarText;\n }\n public set avatarText(value: string) {\n if (this._avatarText !== value) {\n this._avatarText = value;\n if (this._isInitialized) {\n this._adapter.setAvatarText(this._avatarText);\n this._adapter.toggleHostAttribute(APP_BAR_PROFILE_BUTTON_CONSTANTS.attributes.AVATAR_TEXT, !!this._avatarText, this._avatarText);\n }\n }\n }\n\n public get avatarIcon(): string {\n return this._avatarIcon;\n }\n public set avatarIcon(value: string) {\n if (this._avatarIcon !== value) {\n this._avatarIcon = value;\n if (this._isInitialized) {\n this._adapter.setAvatarIcon(this._avatarIcon);\n this._adapter.toggleHostAttribute(APP_BAR_PROFILE_BUTTON_CONSTANTS.attributes.AVATAR_ICON, !!this._avatarIcon, this._avatarIcon);\n }\n }\n }\n\n public get signOutButton(): boolean {\n return this._showSignOutButton;\n }\n public set signOutButton(value: boolean) {\n if (this._showSignOutButton !== value) {\n this._showSignOutButton = value;\n this._adapter.setHostAttribute(APP_BAR_PROFILE_BUTTON_CONSTANTS.attributes.SIGN_OUT_BUTTON, this._showSignOutButton as any);\n }\n }\n\n public get profileButton(): boolean {\n return this._showProfileButton;\n }\n public set profileButton(value: boolean) {\n if (this._showProfileButton !== value) {\n this._showProfileButton = value;\n this._adapter.setHostAttribute(APP_BAR_PROFILE_BUTTON_CONSTANTS.attributes.PROFILE_BUTTON, this._showProfileButton as any);\n }\n }\n\n public get signOutButtonText(): string {\n return this._signOutButtonText;\n }\n public set signOutButtonText(value: string) {\n if (this._signOutButtonText !== value) {\n this._signOutButtonText = value;\n this._adapter.setSignOutButtonText(value);\n }\n }\n\n public get profileButtonText(): string {\n return this._profileButtonText;\n }\n public set profileButtonText(value: string) {\n if (this._profileButtonText !== value) {\n this._profileButtonText = value;\n this._adapter.setProfileButtonText(value);\n }\n }\n\n public get open(): boolean {\n return this._open;\n }\n public set open(value: boolean) {\n if (this._open !== value) {\n if (value) {\n this._openDropdown();\n } else {\n this._closeDropdown();\n }\n }\n }\n\n public get profileCardBuilder(): AppBarProfileButtonProfileCardBuilder {\n return this._profileCardBuilder;\n }\n public set profileCardBuilder(fn: AppBarProfileButtonProfileCardBuilder) {\n this._profileCardBuilder = fn;\n }\n}\n", "import { CustomElement, attachLightTemplate, coerceNumber, coerceBoolean, FoundationProperty } from '@tylertech/forge-core';\nimport { AppBarProfileButtonAdapter } from './app-bar-profile-button-adapter';\nimport { AppBarProfileButtonFoundation } from './app-bar-profile-button-foundation';\nimport { APP_BAR_PROFILE_BUTTON_CONSTANTS, AppBarProfileButtonProfileCardBuilder } from './app-bar-profile-button-constants';\nimport { ProfileCardComponent } from '../../profile-card';\nimport { IconButtonComponent } from '../../icon-button';\nimport { AvatarComponent } from '../../avatar';\nimport { PopupComponent } from '../../popup';\nimport { TooltipComponent } from '../../tooltip';\nimport { BaseComponent, IBaseComponent } from '../../core/base/base-component';\nimport { IconComponent } from '../../icon';\n\nconst template = '<template><forge-icon-button><button type=\\\"button\\\" aria-label=\\\"View profile card\\\"><forge-avatar aria-hidden=\\\"true\\\"></forge-avatar></button><forge-tooltip delay=\\\"500\\\" position=\\\"bottom\\\">View profile</forge-tooltip></forge-icon-button></template>';\n\nexport interface IAppBarProfileButtonComponent extends IBaseComponent {\n avatarImageUrl: string;\n avatarLetterCount: number;\n avatarText: string;\n avatarIcon: string;\n fullName: string;\n email: string;\n signOutButton: boolean;\n profileButton: boolean;\n signOutButtonText: string;\n profileButtonText: string;\n open: boolean;\n profileCardBuilder: (fn: AppBarProfileButtonProfileCardBuilder) => void;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'forge-app-bar-profile-button': IAppBarProfileButtonComponent;\n }\n}\n\n/**\n * The web component class behind the `<forge-app-bar-profile-button>` custom element.\n * \n * @tag forge-app-bar-profile-button\n */\n@CustomElement({\n name: APP_BAR_PROFILE_BUTTON_CONSTANTS.elementName,\n dependencies: [\n PopupComponent,\n ProfileCardComponent,\n IconButtonComponent,\n IconComponent,\n AvatarComponent,\n TooltipComponent\n ]\n})\nexport class AppBarProfileButtonComponent extends BaseComponent implements IAppBarProfileButtonComponent {\n public static get observedAttributes(): string[] {\n return [\n APP_BAR_PROFILE_BUTTON_CONSTANTS.attributes.FULL_NAME,\n APP_BAR_PROFILE_BUTTON_CONSTANTS.attributes.EMAIL,\n APP_BAR_PROFILE_BUTTON_CONSTANTS.attributes.AVATAR_IMAGE_URL,\n APP_BAR_PROFILE_BUTTON_CONSTANTS.attributes.AVATAR_LETTER_COUNT,\n APP_BAR_PROFILE_BUTTON_CONSTANTS.attributes.AVATAR_TEXT,\n APP_BAR_PROFILE_BUTTON_CONSTANTS.attributes.AVATAR_ICON,\n APP_BAR_PROFILE_BUTTON_CONSTANTS.attributes.SIGN_OUT_BUTTON,\n APP_BAR_PROFILE_BUTTON_CONSTANTS.attributes.PROFILE_BUTTON,\n APP_BAR_PROFILE_BUTTON_CONSTANTS.attributes.SIGN_OUT_BUTTON_TEXT,\n APP_BAR_PROFILE_BUTTON_CONSTANTS.attributes.PROFILE_BUTTON_TEXT,\n APP_BAR_PROFILE_BUTTON_CONSTANTS.attributes.OPEN\n ];\n }\n\n private _foundation: AppBarProfileButtonFoundation;\n\n constructor() {\n super();\n this._foundation = new AppBarProfileButtonFoundation(new AppBarProfileButtonAdapter(this));\n }\n\n public initializedCallback(): void {\n attachLightTemplate(this, template);\n }\n\n public connectedCallback(): void {\n this._foundation.initialize();\n }\n\n public disconnectedCallback(): void {\n this._foundation.disconnect();\n }\n\n public attributeChangedCallback(name: string, oldValue: string, newValue: string): void {\n switch (name) {\n case APP_BAR_PROFILE_BUTTON_CONSTANTS.attributes.FULL_NAME:\n this.fullName = newValue;\n break;\n case APP_BAR_PROFILE_BUTTON_CONSTANTS.attributes.EMAIL:\n this.email = newValue;\n break;\n case APP_BAR_PROFILE_BUTTON_CONSTANTS.attributes.AVATAR_IMAGE_URL:\n this.avatarImageUrl = newValue;\n break;\n case APP_BAR_PROFILE_BUTTON_CONSTANTS.attributes.AVATAR_LETTER_COUNT:\n this.avatarLetterCount = coerceNumber(newValue);\n break;\n case APP_BAR_PROFILE_BUTTON_CONSTANTS.attributes.AVATAR_TEXT:\n this.avatarText = newValue;\n break;\n case APP_BAR_PROFILE_BUTTON_CONSTANTS.attributes.AVATAR_ICON:\n this.avatarIcon = newValue;\n break;\n case APP_BAR_PROFILE_BUTTON_CONSTANTS.attributes.SIGN_OUT_BUTTON:\n this.signOutButton = coerceBoolean(newValue);\n break;\n case APP_BAR_PROFILE_BUTTON_CONSTANTS.attributes.PROFILE_BUTTON:\n this.profileButton = coerceBoolean(newValue);\n break;\n case APP_BAR_PROFILE_BUTTON_CONSTANTS.attributes.SIGN_OUT_BUTTON_TEXT:\n this.signOutButtonText = newValue;\n break;\n case APP_BAR_PROFILE_BUTTON_CONSTANTS.attributes.PROFILE_BUTTON_TEXT:\n this.profileButtonText = newValue;\n break;\n case APP_BAR_PROFILE_BUTTON_CONSTANTS.attributes.OPEN:\n this.open = coerceBoolean(newValue);\n break;\n }\n }\n\n @FoundationProperty()\n public declare fullName: string;\n\n @FoundationProperty()\n public declare email: string;\n\n @FoundationProperty()\n public declare avatarImageUrl: string;\n\n @FoundationProperty()\n public declare avatarLetterCount: number;\n\n @FoundationProperty()\n public declare avatarText: string;\n\n @FoundationProperty()\n public declare avatarIcon: string;\n\n @FoundationProperty()\n public declare signOutButton: boolean;\n\n @FoundationProperty()\n public declare profileButton: boolean;\n\n @FoundationProperty()\n public declare signOutButtonText: string;\n\n @FoundationProperty()\n public declare profileButtonText: string;\n\n @FoundationProperty()\n public declare open: boolean;\n\n /** Sets the profile card builder callback that will be used to add extra content to the profile card. */\n @FoundationProperty()\n public declare profileCardBuilder: AppBarProfileButtonProfileCardBuilder;\n}\n", "import { defineCustomElement } from '@tylertech/forge-core';\n\nimport { AppBarProfileButtonComponent } from './app-bar-profile-button';\n\nexport * from './app-bar-profile-button-adapter';\nexport * from './app-bar-profile-button-constants';\nexport * from './app-bar-profile-button-foundation';\nexport * from './app-bar-profile-button';\n\nexport function defineAppBarProfileButtonComponent(): void {\n defineCustomElement(AppBarProfileButtonComponent);\n}\n"],
5
+ "mappings": "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",
6
+ "names": ["elementName", "COMPONENT_NAME_PREFIX", "attributes", "selectors", "APP_BAR_PROFILE_BUTTON_CONSTANTS", "AppBarProfileButtonAdapter", "BaseAdapter", "component", "getLightElement", "AVATAR_CONSTANTS", "APP_BAR_PROFILE_BUTTON_CONSTANTS", "listener", "profileCardConfig", "dismissListener", "profileListener", "signOutListener", "profileCardContent", "PROFILE_CARD_CONSTANTS", "POPUP_CONSTANTS", "notChildEventListener", "activeElement", "getActiveElement", "value", "removeAllChildren", "iconDelegate", "IconComponentDelegate", "_a", "AppBarProfileButtonFoundation", "_adapter", "AVATAR_CONSTANTS", "PROFILE_CARD_CONSTANTS", "evt", "Platform", "isFunction", "profileCardConfig", "profileCardContent", "value", "APP_BAR_PROFILE_BUTTON_CONSTANTS", "fn", "template", "AppBarProfileButtonComponent", "BaseComponent", "AppBarProfileButtonFoundation", "AppBarProfileButtonAdapter", "APP_BAR_PROFILE_BUTTON_CONSTANTS", "attachLightTemplate", "name", "oldValue", "newValue", "coerceNumber", "coerceBoolean", "__decorateClass", "FoundationProperty", "CustomElement", "PopupComponent", "ProfileCardComponent", "IconButtonComponent", "IconComponent", "AvatarComponent", "TooltipComponent", "defineAppBarProfileButtonComponent", "defineCustomElement", "AppBarProfileButtonComponent"]
7
+ }
@@ -0,0 +1,7 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2023 Tyler Technologies, Inc.
4
+ * License: Apache-2.0
5
+ */
6
+ import{h as i}from"./chunk.MVTBJPO2.js";import{u as o}from"./chunk.K7FPXAFS.js";var r=class{constructor(e){this._component=e}getHostAttribute(e){return this._component.getAttribute(e)}setHostAttribute(e,t=""){this._component.setAttribute(e,t)}removeHostAttribute(e){this._component.removeAttribute(e)}toggleHostAttribute(e,t,n){o(this._component,t,e,n)}emitHostEvent(e,t=null,n=!0,s){return i(this._component,e,t,n,s)}addHostListener(e,t,n){this._component.addEventListener(e,t,n)}removeHostListener(e,t){this._component.removeEventListener(e,t)}addWindowListener(e,t,n){window.addEventListener(e,t,n)}removeWindowListener(e,t,n){window.removeEventListener(e,t,n)}addDocumentListener(e,t,n){document.addEventListener(e,t,n)}removeDocumentListener(e,t,n){document.removeEventListener(e,t,n)}getScreenWidth(){return window.innerWidth}setBodyAttribute(e,t){document.body.setAttribute(e,t)}removeBodyAttribute(e){document.body.removeAttribute(e)}get isConnected(){return this._component.isConnected}};export{r as a};
7
+ //# sourceMappingURL=chunk.BKL2BAYW.js.map
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../src/core/base/base-adapter.ts"],
4
4
  "sourcesContent": ["import { emitEvent, toggleAttribute } from '@tylertech/forge-core';\nimport { IBaseComponent } from './base-component';\n\nexport interface IBaseAdapter {\n readonly isConnected: boolean;\n removeHostAttribute(name: string): void;\n getHostAttribute(name: string): string | null;\n setHostAttribute(name: string, value?: string): void;\n toggleHostAttribute(name: string, hasAttribute: boolean, value?: string): void;\n emitHostEvent(type: string, data?: any, bubble?: boolean, cancelable?: boolean): boolean;\n addHostListener(event: string, callback: (event: Event) => void, options?: boolean | AddEventListenerOptions): void;\n removeHostListener(event: string, callback: (event: Event) => void): void;\n addWindowListener(event: string, callback: (event: Event) => void, options?: boolean | AddEventListenerOptions): void;\n removeWindowListener(event: string, callback: (event: Event) => void, options?: boolean | EventListenerOptions): void;\n addDocumentListener(event: string, callback: (event: Event) => void, options?: boolean | AddEventListenerOptions): void;\n removeDocumentListener(event: string, callback: (event: Event) => void, options?: boolean | EventListenerOptions): void;\n getScreenWidth(): number;\n setBodyAttribute(name: string, value: string): void;\n removeBodyAttribute(name: string): void;\n}\n\nexport class BaseAdapter<T extends IBaseComponent> implements IBaseAdapter {\n constructor(protected _component: T) {}\n\n public getHostAttribute(name: string): string | null {\n return this._component.getAttribute(name);\n }\n\n public setHostAttribute(name: string, value = ''): void {\n this._component.setAttribute(name, value);\n }\n\n public removeHostAttribute(name: string): void {\n this._component.removeAttribute(name);\n }\n\n public toggleHostAttribute(name: string, hasAttribute: boolean, value?: string): void {\n toggleAttribute(this._component, hasAttribute, name, value);\n }\n\n public emitHostEvent(type: string, data: any = null, bubble = true, cancelable?: boolean): boolean {\n return emitEvent(this._component, type, data, bubble, cancelable);\n }\n\n public addHostListener(event: string, callback: (event: Event) => void, options?: boolean | AddEventListenerOptions): void {\n this._component.addEventListener(event, callback, options);\n }\n\n public removeHostListener(event: string, callback: (event: Event) => void): void {\n this._component.removeEventListener(event, callback);\n }\n\n public addWindowListener(event: string, callback: (event: Event) => void, options?: boolean | AddEventListenerOptions): void {\n window.addEventListener(event, callback, options);\n }\n\n public removeWindowListener(event: string, callback: (event: Event) => void, options?: boolean | EventListenerOptions): void {\n window.removeEventListener(event, callback, options);\n }\n\n public addDocumentListener(event: string, callback: (event: Event) => void, options?: boolean | AddEventListenerOptions): void {\n document.addEventListener(event, callback, options);\n }\n\n public removeDocumentListener(event: string, callback: (event: Event) => void, options?: boolean | EventListenerOptions): void {\n document.removeEventListener(event, callback, options);\n }\n\n public getScreenWidth(): number {\n return window.innerWidth;\n }\n\n public setBodyAttribute(name: string, value: string): void {\n document.body.setAttribute(name, value);\n }\n\n public removeBodyAttribute(name: string): void {\n document.body.removeAttribute(name);\n }\n\n public get isConnected(): boolean {\n return this._component.isConnected;\n }\n}\n"],
5
- "mappings": "2EAqBO,IAAMA,EAAN,KAAoE,CACzE,YAAsBC,EAAe,CAAf,gBAAAA,CAAgB,CAE/B,iBAAiBC,EAA6B,CACnD,OAAO,KAAK,WAAW,aAAaA,CAAI,CAC1C,CAEO,iBAAiBA,EAAcC,EAAQ,GAAU,CACtD,KAAK,WAAW,aAAaD,EAAMC,CAAK,CAC1C,CAEO,oBAAoBD,EAAoB,CAC7C,KAAK,WAAW,gBAAgBA,CAAI,CACtC,CAEO,oBAAoBA,EAAcE,EAAuBD,EAAsB,CACpFE,EAAgB,KAAK,WAAYD,EAAcF,EAAMC,CAAK,CAC5D,CAEO,cAAcG,EAAcC,EAAY,KAAMC,EAAS,GAAMC,EAA+B,CACjG,OAAOC,EAAU,KAAK,WAAYJ,EAAMC,EAAMC,EAAQC,CAAU,CAClE,CAEO,gBAAgBE,EAAeC,EAAkCC,EAAmD,CACzH,KAAK,WAAW,iBAAiBF,EAAOC,EAAUC,CAAO,CAC3D,CAEO,mBAAmBF,EAAeC,EAAwC,CAC/E,KAAK,WAAW,oBAAoBD,EAAOC,CAAQ,CACrD,CAEO,kBAAkBD,EAAeC,EAAkCC,EAAmD,CAC3H,OAAO,iBAAiBF,EAAOC,EAAUC,CAAO,CAClD,CAEO,qBAAqBF,EAAeC,EAAkCC,EAAgD,CAC3H,OAAO,oBAAoBF,EAAOC,EAAUC,CAAO,CACrD,CAEO,oBAAoBF,EAAeC,EAAkCC,EAAmD,CAC7H,SAAS,iBAAiBF,EAAOC,EAAUC,CAAO,CACpD,CAEO,uBAAuBF,EAAeC,EAAkCC,EAAgD,CAC7H,SAAS,oBAAoBF,EAAOC,EAAUC,CAAO,CACvD,CAEO,gBAAyB,CAC9B,OAAO,OAAO,UAChB,CAEO,iBAAiBX,EAAcC,EAAqB,CACzD,SAAS,KAAK,aAAaD,EAAMC,CAAK,CACxC,CAEO,oBAAoBD,EAAoB,CAC7C,SAAS,KAAK,gBAAgBA,CAAI,CACpC,CAEA,IAAW,aAAuB,CAChC,OAAO,KAAK,WAAW,WACzB,CACF",
5
+ "mappings": "gFAqBO,IAAMA,EAAN,KAAoE,CACzE,YAAsBC,EAAe,CAAf,gBAAAA,CAAgB,CAE/B,iBAAiBC,EAA6B,CACnD,OAAO,KAAK,WAAW,aAAaA,CAAI,CAC1C,CAEO,iBAAiBA,EAAcC,EAAQ,GAAU,CACtD,KAAK,WAAW,aAAaD,EAAMC,CAAK,CAC1C,CAEO,oBAAoBD,EAAoB,CAC7C,KAAK,WAAW,gBAAgBA,CAAI,CACtC,CAEO,oBAAoBA,EAAcE,EAAuBD,EAAsB,CACpFE,EAAgB,KAAK,WAAYD,EAAcF,EAAMC,CAAK,CAC5D,CAEO,cAAcG,EAAcC,EAAY,KAAMC,EAAS,GAAMC,EAA+B,CACjG,OAAOC,EAAU,KAAK,WAAYJ,EAAMC,EAAMC,EAAQC,CAAU,CAClE,CAEO,gBAAgBE,EAAeC,EAAkCC,EAAmD,CACzH,KAAK,WAAW,iBAAiBF,EAAOC,EAAUC,CAAO,CAC3D,CAEO,mBAAmBF,EAAeC,EAAwC,CAC/E,KAAK,WAAW,oBAAoBD,EAAOC,CAAQ,CACrD,CAEO,kBAAkBD,EAAeC,EAAkCC,EAAmD,CAC3H,OAAO,iBAAiBF,EAAOC,EAAUC,CAAO,CAClD,CAEO,qBAAqBF,EAAeC,EAAkCC,EAAgD,CAC3H,OAAO,oBAAoBF,EAAOC,EAAUC,CAAO,CACrD,CAEO,oBAAoBF,EAAeC,EAAkCC,EAAmD,CAC7H,SAAS,iBAAiBF,EAAOC,EAAUC,CAAO,CACpD,CAEO,uBAAuBF,EAAeC,EAAkCC,EAAgD,CAC7H,SAAS,oBAAoBF,EAAOC,EAAUC,CAAO,CACvD,CAEO,gBAAyB,CAC9B,OAAO,OAAO,UAChB,CAEO,iBAAiBX,EAAcC,EAAqB,CACzD,SAAS,KAAK,aAAaD,EAAMC,CAAK,CACxC,CAEO,oBAAoBD,EAAoB,CAC7C,SAAS,KAAK,gBAAgBA,CAAI,CACpC,CAEA,IAAW,aAAuB,CAChC,OAAO,KAAK,WAAW,WACzB,CACF",
6
6
  "names": ["BaseAdapter", "_component", "name", "value", "hasAttribute", "toggleAttribute", "type", "data", "bubble", "cancelable", "emitEvent", "event", "callback", "options"]
7
7
  }
@@ -0,0 +1,7 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2023 Tyler Technologies, Inc.
4
+ * License: Apache-2.0
5
+ */
6
+ import{d as W}from"./chunk.S3JMOOWC.js";import{b as K}from"./chunk.MXEKIEJA.js";import{C as D}from"./chunk.FYWPZFLJ.js";import{d as U,l as Z}from"./chunk.PH3HUFJJ.js";import{a as g}from"./chunk.NVUMRW44.js";import{a as z}from"./chunk.BKL2BAYW.js";import{a as B,b as N}from"./chunk.DXN7ZOH3.js";import{a as M,e as O,f as s,k as G}from"./chunk.MVTBJPO2.js";import{d as u,k as C,o as P}from"./chunk.J2M2MXP2.js";import{a as L,d as h}from"./chunk.M3QDAYD2.js";var F=`${N}color-picker`,Y={VALUE:"value",ALLOW_OPACITY:"allow-opacity",DEBOUNCE_CHANGE_EVENT:"debounce-change-event"},J={SLIDER_THUMB_ACTIVE:"forge-color-picker__slider-thumb--active",GRADIENT_THUMB_ACTIVE:"forge-color-picker__gradient-thumb--active"},Q={GRADIENT:".forge-color-picker__gradient",GRADIENT_THUMB:".forge-color-picker__gradient-thumb",PREVIEW_COLOR:".forge-color-picker__color-preview",HEX_INPUT:"#forge-color-picker-hex-input",RGBA_INPUT:"#forge-color-picker-rgba-input",HSVA_INPUT:"#forge-color-picker-hsva-input",HUE_SLIDER:".forge-color-picker__hue-slider",HUE_SLIDER_THUMB:"#forge-color-picker-hue-thumb",OPACITY_SLIDER:".forge-color-picker__opacity-slider",OPACITY_SLIDER_THUMB:"#forge-color-picker-opacity-thumb",SLIDER:".forge-color-picker__slider",SLIDER_THUMB:".forge-color-picker__slider-thumb",COLOR_VALUE_HEX_CONTAINER:".forge-color-picker__color-hex",COLOR_VALUE_RGBA_CONTAINER:".forge-color-picker__color-rgba",COLOR_VALUE_HSVA_CONTAINER:".forge-color-picker__color-hsva",TYPE_BUTTON:"#forge-color-picker-type-button",COLOR_VALUE_RGBA_R:"#forge-color-picker-rgba-r-input",COLOR_VALUE_RGBA_G:"#forge-color-picker-rgba-g-input",COLOR_VALUE_RGBA_B:"#forge-color-picker-rgba-b-input",COLOR_VALUE_RGBA_A:"#forge-color-picker-rgba-a-input",COLOR_VALUE_HSVA_H:"#forge-color-picker-hsva-h-input",COLOR_VALUE_HSVA_S:"#forge-color-picker-hsva-s-input",COLOR_VALUE_HSVA_V:"#forge-color-picker-hsva-v-input",COLOR_VALUE_HSVA_A:"#forge-color-picker-hsva-a-input"},q={CHANGE:`${F}-change`},ee={CHANGE_EVENT_DEBOUNCE_THRESHOLD:200},o={elementName:F,attributes:Y,events:q,classes:J,selectors:Q,numbers:ee},w="000000",A=(n=>(n.HEX="hex",n.RGB="rgb",n.RGBA="rgba",n.HSV="hsv",n.HSVA="hsva",n))(A||{});var f=class extends z{constructor(t){super(t);this._gradientElement=s(t,o.selectors.GRADIENT),this._previewColorElement=s(t,o.selectors.PREVIEW_COLOR),this._hexInputElement=s(t,o.selectors.HEX_INPUT),this._rgbaInputRElement=s(t,o.selectors.COLOR_VALUE_RGBA_R),this._rgbaInputGElement=s(t,o.selectors.COLOR_VALUE_RGBA_G),this._rgbaInputBElement=s(t,o.selectors.COLOR_VALUE_RGBA_B),this._rgbaInputAElement=s(t,o.selectors.COLOR_VALUE_RGBA_A),this._hsvaInputHElement=s(t,o.selectors.COLOR_VALUE_HSVA_H),this._hsvaInputSElement=s(t,o.selectors.COLOR_VALUE_HSVA_S),this._hsvaInputVElement=s(t,o.selectors.COLOR_VALUE_HSVA_V),this._hsvaInputAElement=s(t,o.selectors.COLOR_VALUE_HSVA_A),this._hueSliderElement=s(t,o.selectors.HUE_SLIDER),this._hueSliderThumbElement=s(t,o.selectors.HUE_SLIDER_THUMB),this._opacitySliderElement=s(t,o.selectors.OPACITY_SLIDER),this._opacitySliderThumbElement=s(t,o.selectors.OPACITY_SLIDER_THUMB),this._hexValueContainerElement=s(t,o.selectors.COLOR_VALUE_HEX_CONTAINER),this._rgbaValueContainerElement=s(t,o.selectors.COLOR_VALUE_RGBA_CONTAINER),this._hsvaValueContainerElement=s(t,o.selectors.COLOR_VALUE_HSVA_CONTAINER),this._typeButtonElement=s(t,o.selectors.TYPE_BUTTON)}setPreviewColor(t){this._previewColorElement.style.backgroundColor=t}setHexInputValue(t){this._hexInputElement.value=t}setRgbaInputValue(t){this._rgbaInputRElement.value=t.r.toString(),this._rgbaInputGElement.value=t.g.toString(),this._rgbaInputBElement.value=t.b.toString(),this._rgbaInputAElement.value=t.a.toString()}setHsvaInputValue(t){this._hsvaInputHElement.value=t.h.toString(),this._hsvaInputSElement.value=t.s.toString(),this._hsvaInputVElement.value=t.v.toString(),this._hsvaInputAElement.value=t.a.toString()}updateA11y(t,i){this._hueSliderThumbElement.setAttribute("aria-valuenow",t.toString()),this._hueSliderThumbElement.setAttribute("aria-valuetext",t.toString()),this._opacitySliderThumbElement.setAttribute("aria-valuenow",i.toString()),this._opacitySliderThumbElement.setAttribute("aria-valuetext",i.toString())}setGradientColor(t){this._gradientElement.style.backgroundColor=t}getHueSliderElement(){return this._hueSliderElement}getOpacitySliderElement(){return this._opacitySliderElement}getGradientElement(){return this._gradientElement}setActiveValueType(t){switch(this._hexValueContainerElement.style.display="none",this._rgbaValueContainerElement.style.display="none",this._hsvaValueContainerElement.style.display="none",t){case"hex":this._hexValueContainerElement.style.removeProperty("display");break;case"rgba":this._rgbaValueContainerElement.style.removeProperty("display");break;case"hsva":this._hsvaValueContainerElement.style.removeProperty("display");break}}focusValueInput(t){switch(t){case"hex":this._hexInputElement.focus(),this._hexInputElement.select();break;case"rgba":this._rgbaInputRElement.focus(),this._rgbaInputRElement.select();break;case"hsva":this._hsvaInputHElement.focus(),this._hsvaInputHElement.select();break}}setTypeClickListener(t){this._typeButtonElement.addEventListener("click",t)}removeTypeClickListener(t){this._typeButtonElement.removeEventListener("click",t)}setHexInputListener(t,i){this._hexInputElement.addEventListener(t,i)}removeHexInputListener(t,i){this._hexInputElement.removeEventListener(t,i)}getHexInputValue(){return this._hexInputElement.value}setRgbaInputListener(t,i){this._rgbaInputRElement.addEventListener(t,i),this._rgbaInputGElement.addEventListener(t,i),this._rgbaInputBElement.addEventListener(t,i),this._rgbaInputAElement.addEventListener(t,i)}removeRgbaInputListener(t,i){this._rgbaInputRElement.removeEventListener(t,i),this._rgbaInputGElement.removeEventListener(t,i),this._rgbaInputBElement.removeEventListener(t,i),this._rgbaInputAElement.removeEventListener(t,i)}getRgbaInputValue(){return{r:parseInt(this._rgbaInputRElement.value,10),g:parseInt(this._rgbaInputGElement.value,10),b:parseInt(this._rgbaInputBElement.value,10),a:parseFloat(this._rgbaInputAElement.value)}}setHsvaInputListener(t,i){this._hsvaInputHElement.addEventListener(t,i),this._hsvaInputSElement.addEventListener(t,i),this._hsvaInputVElement.addEventListener(t,i),this._hsvaInputAElement.addEventListener(t,i)}removeHsvaInputListener(t,i){this._hsvaInputHElement.removeEventListener(t,i),this._hsvaInputSElement.removeEventListener(t,i),this._hsvaInputVElement.removeEventListener(t,i),this._hsvaInputAElement.removeEventListener(t,i)}getHsvaInputValue(){return{h:parseInt(this._hsvaInputHElement.value,10),s:parseInt(this._hsvaInputSElement.value,10),v:parseInt(this._hsvaInputVElement.value,10),a:parseFloat(this._hsvaInputAElement.value)}}toggleOpacityControls(t){t?(this._opacitySliderElement.style.removeProperty("display"),this._rgbaInputAElement.parentElement&&this._rgbaInputAElement.parentElement.style.removeProperty("display"),this._hsvaInputAElement.parentElement&&this._hsvaInputAElement.parentElement.style.removeProperty("display")):(this._opacitySliderElement.style.display="none",this._rgbaInputAElement.parentElement&&(this._rgbaInputAElement.parentElement.style.display="none"),this._hsvaInputAElement.parentElement&&(this._hsvaInputAElement.parentElement.style.display="none"))}};function E(r,e,t){let i=t.getBoundingClientRect(),a=r-i.left,n=e-i.top;return a>i.width?a=i.width:a<0&&(a=0),n>i.height?n=i.height:n<0&&(n=0),{x:a,y:n,height:i.height,width:i.width}}function v(r){let e,t,i,a=r.h/60,n=r.s/100,l=r.v/100;if(n===0)return e=t=i=l,{r:Math.round(e*255),g:Math.round(t*255),b:Math.round(i*255),a:r.a};let d=Math.floor(a),_=a-d,c=l*(1-n),k=l*(1-n*_),x=l*(1-n*(1-_));switch(d){case 0:e=l,t=x,i=c;break;case 1:e=k,t=l,i=c;break;case 2:e=c,t=l,i=x;break;case 3:e=c,t=k,i=l;break;case 4:e=x,t=c,i=l;break;default:e=l,t=c,i=k}return{r:Math.round(e*255),g:Math.round(t*255),b:Math.round(i*255),a:r.a}}function m(r){return T(r.r)+T(r.g)+T(r.b)+(Math.round(r.a*255)+65536).toString(16).substr(-2)}function T(r){return("0"+r.toString(16)).slice(-2)}function $(r){let e=r.length===3||r.length===4,t=e?`${r.slice(0,1)}${r.slice(0,1)}`:r.slice(0,2),i=e?`${r.slice(1,2)}${r.slice(1,2)}`:r.slice(2,4),a=e?`${r.slice(2,3)}${r.slice(2,3)}`:r.slice(4,6),n=(e?`${r.slice(3,4)}${r.slice(3,4)}`:r.slice(6,8))||"ff";return{r:parseInt(t,16),g:parseInt(i,16),b:parseInt(a,16),a:parseFloat((parseInt(n,16)/255).toFixed(2))}}function X(r){return`rgba(${r.r}, ${r.g}, ${r.b}, ${r.a})`}function H(r,e){let t=r.replace(/^#/,"");return e||(t.length===4?t=t.substring(0,3):t.length===8&&(t=t.substring(0,6))),`#${t}`}function j(r){let e=r.r/255,t=r.g/255,i=r.b/255,a=Math.max(e,t,i),n=Math.min(e,t,i),l=a,d=a,_=a,c=a-n;if(d=a===0?0:c/a,a===n)l=0;else{switch(a){case e:l=(t-i)/c+(t<i?6:0);break;case t:l=(i-e)/c+2;break;case i:l=(e-t)/c+4;break}l/=6}return{h:Math.round(l*360),s:Math.round(d*100),v:Math.round(_*100),a:r.a}}function S(r){if(!r||typeof r!="string")return!1;switch(r.substring(0,1)==="#"&&(r=r.substring(1)),r.length){case 3:return/^[0-9A-F]{3}$/i.test(r);case 4:return/^[0-9A-F]{4}$/i.test(r);case 6:return/^[0-9A-F]{6}$/i.test(r);case 8:return/^[0-9A-F]{8}$/i.test(r);default:return!1}}function R(r){return u(r.r)&&r.r>=0&&r.r<=255&&u(r.g)&&r.g>=0&&r.g<=255&&u(r.b)&&r.b>=0&&r.b<=255&&u(r.a)&&r.a>=0&&r.a<=1}function V(r){return u(r.h)&&r.h>=0&&r.h<=360&&u(r.s)&&r.s>=0&&r.s<=100&&u(r.v)&&r.v>=0&&r.v<=100&&u(r.a)&&r.a>=0&&r.a<=1}var y=class{constructor(e,t){this._rootElement=e;this._changeListener=t;this._keydownListener=i=>this._onKeydown(i),this._downListener=i=>this._onDown(i),this._moveListener=i=>this._onMove(i),this._upListener=i=>this._onUp(i),this._initialize()}destroy(){this._unlisten()}setValue(e,t){window.requestAnimationFrame(()=>{let i=this._rootElement.getBoundingClientRect();this._xPercent=Math.round(i.width*(e/100)),this._yPercent=i.height-Math.round(i.height*(t/100)),this._setThumbPosition(this._xPercent,this._yPercent)})}_initialize(){this._thumbElement=this._rootElement.querySelector(o.selectors.GRADIENT_THUMB),this._listen(),this._setThumbPosition(this._xPercent,this._yPercent)}_listen(){this._rootElement.addEventListener("keydown",this._keydownListener),this._rootElement.addEventListener("mousedown",this._downListener),this._rootElement.addEventListener("touchstart",this._downListener)}_unlisten(){this._rootElement.removeEventListener("keydown",this._keydownListener),this._rootElement.removeEventListener("mousedown",this._downListener),this._rootElement.removeEventListener("touchstart",this._downListener),document.removeEventListener("mousemove",this._moveListener),document.removeEventListener("touchmove",this._moveListener),document.removeEventListener("mouseup",this._upListener),document.removeEventListener("touchend",this._upListener)}_onKeydown(e){let t=e.key==="Enter"||e.keyCode===13,i=e.key==="ArrowLeft"||e.keyCode===37,a=e.key==="ArrowUp"||e.keyCode===38,n=e.key==="ArrowRight"||e.keyCode===39,l=e.key==="ArrowDown"||e.keyCode===40,d=this._rootElement.getBoundingClientRect();if(l)e.preventDefault(),this._yPercent++;else if(a)e.preventDefault(),this._yPercent--;else if(i)e.preventDefault(),this._xPercent--;else if(n)e.preventDefault(),this._xPercent++;else if(t)e.preventDefault();else return;this._xPercent>d.width?this._xPercent=d.width:this._xPercent<0&&(this._xPercent=0),this._yPercent>d.height?this._yPercent=d.height:this._yPercent<0&&(this._yPercent=0),this._setThumbPosition(this._xPercent,this._yPercent),this._notify()}_onDown(e){e.preventDefault(),document.addEventListener("mousemove",this._moveListener),document.addEventListener("touchmove",this._moveListener),document.addEventListener("mouseup",this._upListener),document.addEventListener("touchend",this._upListener),this._updateThumbPosition(e)}_onMove(e){e.preventDefault(),this._updateThumbPosition(e)}_onUp(e){document.removeEventListener("mousemove",this._moveListener),document.removeEventListener("touchmove",this._moveListener),document.removeEventListener("mouseup",this._upListener),document.removeEventListener("touchend",this._upListener),this._updateThumbPosition(e),this._thumbElement.focus()}_updateThumbPosition(e){let t=/^mouse/.test(e.type),i=t?e.clientX:e.changedTouches[0].clientX,a=t?e.clientY:e.changedTouches[0].clientY,n=this._calculateSliderPercent(i,a);this._setThumbPosition(n.x,n.y),this._xPercent=parseInt((n.x/n.width*100).toString(),10),this._yPercent=Math.abs(parseInt((n.y/n.height*100).toString(),10)-100),this._notify()}_calculateSliderPercent(e,t){return E(e,t,this._rootElement)}_setThumbPosition(e,t){this._thumbElement.style.left=`${e}px`,this._thumbElement.style.top=`${t}px`}_notify(){typeof this._changeListener=="function"&&this._changeListener(this._xPercent,this._yPercent)}};var b=class{constructor(e,t){this._rootElement=e;this._changeListener=t;this._percent=1;this._min=0;this._max=1;this._step=.01;this._keydownListener=i=>this._onKeydown(i),this._downListener=i=>this._onDown(i),this._moveListener=i=>this._onMove(i),this._upListener=i=>this._onUp(i),this._initialize()}destroy(){this._unlisten()}setValue(e){this._percent=e,this._setThumbPosition(this._percent)}_initialize(){this._thumbElement=this._rootElement.querySelector(o.selectors.SLIDER_THUMB),this._listen(),this._setThumbPosition(this._percent)}_listen(){this._thumbElement.addEventListener("keydown",this._keydownListener),this._rootElement.addEventListener("mousedown",this._downListener),this._rootElement.addEventListener("touchstart",this._downListener)}_unlisten(){this._thumbElement.removeEventListener("keydown",this._keydownListener),this._rootElement.removeEventListener("mousedown",this._downListener),this._rootElement.removeEventListener("touchstart",this._downListener),document.removeEventListener("mousemove",this._moveListener),document.removeEventListener("touchmove",this._moveListener),document.removeEventListener("mouseup",this._upListener),document.removeEventListener("touchend",this._upListener)}_onKeydown(e){let t=e.key==="ArrowLeft"||e.keyCode===37,i=e.key==="ArrowRight"||e.keyCode===39,a=e.key==="Home"||e.keyCode===36,n=e.key==="End"||e.keyCode===35;t?(e.preventDefault(),this._percent-=this._step):i?(e.preventDefault(),this._percent+=this._step):a?(e.preventDefault(),this._percent=this._min):n&&(e.preventDefault(),this._percent=this._max),this._percent<this._min?this._percent=this._min:this._percent>this._max&&(this._percent=this._max),this._setThumbPosition(this._percent),this._notify()}_onDown(e){e.preventDefault(),document.addEventListener("mousemove",this._moveListener),document.addEventListener("touchmove",this._moveListener),document.addEventListener("mouseup",this._upListener),document.addEventListener("touchend",this._upListener),this._updateThumbPosition(e)}_onMove(e){e.preventDefault(),this._thumbElement.classList.add(o.classes.SLIDER_THUMB_ACTIVE),this._updateThumbPosition(e)}_onUp(e){this._thumbElement.classList.remove(o.classes.SLIDER_THUMB_ACTIVE),document.removeEventListener("mousemove",this._moveListener),document.removeEventListener("touchmove",this._moveListener),document.removeEventListener("mouseup",this._upListener),document.removeEventListener("touchend",this._upListener),this._updateThumbPosition(e),this._thumbElement.focus()}_updateThumbPosition(e){let t=/^mouse/.test(e.type)?e.clientX:e.changedTouches[0].clientX;this._percent=this._calculateSliderPercent(t),this._setThumbPosition(this._percent),this._notify()}_calculateSliderPercent(e){let t=E(e,0,this._rootElement);return parseFloat((t.x/t.width).toFixed(2))}_setThumbPosition(e){this._thumbElement.style.left=`${e*100}%`}_notify(){typeof this._changeListener=="function"&&this._changeListener(this._percent)}};var I=class{constructor(e){this._adapter=e;this._value=null;this._allowOpacity=!0;this._hex=w;this._hsva={h:0,s:0,v:0,a:1};this._rgba={r:0,g:0,b:0,a:1};this._debounceChangeEvent=!1;this._valueType="hex";this._initialized=!1;this._gradientSliderChangedListener=(t,i)=>this._onGradientSliderChanged(t,i),this._hueSliderChangedListener=t=>this._onHueSliderChanged(t),this._opacitySliderChangedListener=t=>this._onOpacitySliderChanged(t),this._typeClickListener=t=>this._onTypeClicked(t),this._hexInputChangedListener=t=>this._onHexInputChanged(),this._rgbaInputChangedListener=t=>this._onRgbaInputChanged(),this._hsvaInputChangedListener=t=>this._onHsvaInputChanged()}initialize(){this._initialized=!0,this._applyChangeEventTrigger(),this._adapter.setTypeClickListener(this._typeClickListener),this._adapter.setHexInputListener("input",this._hexInputChangedListener),this._adapter.setRgbaInputListener("input",this._rgbaInputChangedListener),this._adapter.setHsvaInputListener("input",this._hsvaInputChangedListener),this._gradientSlider=new y(this._adapter.getGradientElement(),this._gradientSliderChangedListener),this._hueSlider=new b(this._adapter.getHueSliderElement(),this._hueSliderChangedListener),this._opacitySlider=new b(this._adapter.getOpacitySliderElement(),this._opacitySliderChangedListener),this._initializeOpacity(),this._setColorFromHex(),this._adapter.setActiveValueType(this._valueType)}disconnect(){this._adapter.removeTypeClickListener(this._typeClickListener),this._adapter.removeHexInputListener("input",this._hexInputChangedListener),this._adapter.removeRgbaInputListener("input",this._hexInputChangedListener),this._adapter.removeHsvaInputListener("input",this._hexInputChangedListener),this._gradientSlider.destroy(),this._hueSlider.destroy(),this._opacitySlider.destroy(),this._initialized=!1}_applyChangeEventTrigger(){this._debounceChangeEvent?this._triggerChangeEvent=P((e,t)=>{this._emitChangeEvent(e,t)},o.numbers.CHANGE_EVENT_DEBOUNCE_THRESHOLD,!1):this._triggerChangeEvent=(e,t)=>this._emitChangeEvent(e,t)}_initializeOpacity(){this._hsva.a=1,this._adapter.toggleOpacityControls(this._allowOpacity),this._render()}_onTypeClicked(e){this._valueType==="hex"?this._valueType="rgba":this._valueType==="rgba"?this._valueType="hsva":this._valueType==="hsva"&&(this._valueType="hex"),this._adapter.setActiveValueType(this._valueType),this._adapter.focusValueInput(this._valueType)}_onHexInputChanged(){let e=this._adapter.getHexInputValue();S(e)&&(this.value=e,this._triggerChangeEvent("input","hex"))}_onRgbaInputChanged(){let e=this._adapter.getRgbaInputValue();R(e)&&(this.value=m(e),this._triggerChangeEvent("input","rgba"))}_onHsvaInputChanged(){let e=this._adapter.getHsvaInputValue();V(e)&&(this.value=m(v(e)),this._triggerChangeEvent("input","hsva"))}_setColorFromHex(){this._rgba=$(this._hex),this._hsva=j(this._rgba),this._initialized&&(this._gradientSlider.setValue(this._hsva.s,this._hsva.v),this._hueSlider.setValue(parseFloat((this._hsva.h/360).toFixed(2))),this._opacitySlider.setValue(this._hsva.a),this._render())}_onGradientSliderChanged(e,t){this._hsva.s=e,this._hsva.v=t,this._syncColors(),this._render(),this._triggerChangeEvent("slider","gradient")}_onHueSliderChanged(e){this._hsva.h=parseInt((360*e).toString(),10),this._syncColors(),this._setGradientColor(),this._render(),this._triggerChangeEvent("slider","hue")}_onOpacitySliderChanged(e){this._hsva.a=e,this._syncColors(),this._render(),this._triggerChangeEvent("slider","opacity")}_setGradientColor(){let e=v({h:this._hsva.h,s:100,v:100,a:1});this._adapter.setGradientColor(`rgb(${e.r}, ${e.g}, ${e.b})`)}_syncColors(){this._rgba=v(this._hsva),this._hex=m(this._rgba),this._value=this._hex||null}_render(){this._setGradientColor(),this._adapter.setPreviewColor(X(this._rgba)),this._adapter.setHexInputValue(`#${this._hex}`),this._adapter.setRgbaInputValue(this._rgba),this._adapter.setHsvaInputValue(this._hsva),this._adapter.updateA11y(this._hsva.h,Math.round(this._hsva.a*100))}_emitChangeEvent(e,t){let i={type:e,source:t,hex:H(this._hex,!1).replace(/^#/,""),rgba:this._rgba,hsva:this._hsva};this._allowOpacity&&(i.alpha=this._hsva.a),this._adapter.emitHostEvent(o.events.CHANGE,i)}get value(){return H(this._hex,!1)}set value(e){if(this._value!==e){if(this._value=e||w,!S(this._value))throw new Error("Invalid hex value provided.");this._hex=this._value.replace(/^#/,""),this._setColorFromHex(),this._adapter.setHostAttribute(o.attributes.VALUE,this._value)}}get rgba(){return this._rgba?L({},this._rgba):null}set rgba(e){e?R(e)&&(this.value=m(e)):this.value=null}get hsva(){return this._hsva?L({},this._hsva):null}set hsva(e){e?V(e)&&(this.value=m(v(e))):this.value=null}get opacity(){return this._hsva?this._hsva.a:null}set opacity(e){this._hsva.a!==e&&e!=null&&this._allowOpacity&&(e>=0&&e<=1?(this._hsva.a=e,this._syncColors(),this._initialized&&(this._opacitySlider.setValue(this._hsva.a),this._render())):console.warn(`The provided opacity value (${e}) must be between 0 and 1.`))}get allowOpacity(){return this._allowOpacity}set allowOpacity(e){this._allowOpacity=e,this._initialized&&this._initializeOpacity()}get debounceChangeEvent(){return this._debounceChangeEvent}set debounceChangeEvent(e){this._debounceChangeEvent!==e&&(this._debounceChangeEvent=e,this._initialized&&this._applyChangeEventTrigger())}};var te='<template><div class="forge-color-picker" part="root"><input type="color" tabindex="-1" class="forge-color-picker__input" spellcheck="false" autocomplete="off" aria-label="Color picker value" part="input"><div class="forge-color-picker__container" part="container"><div class="forge-color-picker__gradient" tabindex="0" part="gradient"><div class="forge-color-picker__gradient-color" part="gradient-color"></div><div class="forge-color-picker__gradient-thumb" part="gradient-thumb"></div></div><div class="forge-color-picker__control-preview" part="controls-preview-container"><div class="forge-color-picker__controls" part="controls-container"><div class="forge-color-picker__slider-control" part="hue-control-container"><div class="forge-color-picker__slider forge-color-picker__hue-slider" part="hue-control-slider"><div class="forge-color-picker__slider-thumb" id="forge-color-picker-hue-thumb" part="hue-control-slider-thumb" tabindex="0" role="slider" aria-label="Change hue" aria-valuemin="0" aria-valuemax="360" aria-valuenow="0" aria-orientation="horizontal" aria-valuetext="0"></div></div></div><div class="forge-color-picker__slider-control" part="opacity-control-container"><div class="forge-color-picker__canvas" part="opacity-control-canvas"><div class="forge-color-picker__slider forge-color-picker__opacity-slider" part="opacity-control-slider"><div class="forge-color-picker__slider-thumb" id="forge-color-picker-opacity-thumb" part="opacity-control-slider-thumb" tabindex="0" role="slider" aria-label="Change opacity" aria-valuemin="0" aria-valuemax="100" aria-valuenow="0" aria-orientation="horizontal" aria-valuetext="0"></div></div></div></div></div><div class="forge-color-picker__color-preview-container forge-color-picker__canvas" part="color-preview-container"><div class="forge-color-picker__color-preview" part="color-preview"></div></div></div><div class="forge-color-picker__value" part="value-container"><div class="forge-color-picker__color-types" part="types-container"><div class="forge-color-picker__color-hex" part="hex-type-container"><div part="hex-type-label-wrapper"><label for="forge-color-picker-hex-input" part="hex-label">HEX</label></div><input type="text" id="forge-color-picker-hex-input" part="hex-input" style="width: 88px;" maxlength="9" spellcheck="false" autocomplete="off" aria-label="HEX value"></div><div class="forge-color-picker__color-rgba" part="rgba-type-container"><div part="rgba-type-wrapper-r"><label for="forge-color-picker-rgba-r-input" part="rgba-type-label-r">R</label> <input type="number" id="forge-color-picker-rgba-r-input" part="rgba-type-input-r" min="0" max="255" maxlength="3" autocomplete="off" aria-label="Red"></div><div part="rgba-type-wrapper-g"><label for="forge-color-picker-rgba-g-input" part="rgba-type-label-g">G</label> <input type="number" id="forge-color-picker-rgba-g-input" part="rgba-type-input-g" min="0" max="255" maxlength="3" autocomplete="off" aria-label="Green"></div><div part="rgba-type-wrapper-b"><label for="forge-color-picker-rgba-b-input" part="rgba-type-label-b">B</label> <input type="number" id="forge-color-picker-rgba-b-input" part="rgba-type-input-b" min="0" max="255" maxlength="3" autocomplete="off" aria-label="Blue"></div><div part="rgba-type-wrapper-a"><label for="forge-color-picker-rgba-a-input" part="rgba-type-label-a">A</label> <input type="number" id="forge-color-picker-rgba-a-input" part="rgba-type-input-a" min="0" max="1" step="0.1" maxlength="3" autocomplete="off" aria-label="Alpha"></div></div><div class="forge-color-picker__color-hsva" part="hsva-type-container"><div part="hsva-type-wrapper-h"><label for="forge-color-picker-hsva-h-input" part="hsva-type-label-h">H</label> <input type="number" id="forge-color-picker-hsva-h-input" part="hsva-type-input-h" min="0" max="360" maxlength="3" autocomplete="off" aria-label="Hue"></div><div part="hsva-type-wrapper-s"><label for="forge-color-picker-hsva-s-input" part="hsva-type-label-s">S</label> <input type="number" id="forge-color-picker-hsva-s-input" part="hsva-type-input-s" min="0" max="100" maxlength="3" autocomplete="off" aria-label="Saturation"></div><div part="hsva-type-wrapper-v"><label for="forge-color-picker-hsva-v-input" part="hsva-type-label-v">V</label> <input type="number" id="forge-color-picker-hsva-v-input" part="hsva-type-input-v" min="0" max="100" maxlength="3" autocomplete="off" aria-label="Value"></div><div part="hsva-type-wrapper-a"><label for="forge-color-picker-hsva-a-input" part="hsva-type-label-a">A</label> <input type="number" id="forge-color-picker-hsva-a-input" part="hsva-type-input-a" min="0" max="1" step="0.1" maxlength="3" autocomplete="off" aria-label="Alpha"></div></div></div><div class="forge-color-picker__type-button" part="type-container"><forge-icon-button part="type-button"><button type="button" id="forge-color-picker-type-button" aria-labelledby="type-button-tooltip" part="type-button-element"><forge-icon name="unfold_more" part="type-button-icon"></forge-icon></button><forge-tooltip delay="500" position="bottom" id="type-button-tooltip">Change color format</forge-tooltip></forge-icon-button></div></div></div></div></template>',ie='.forge-icon-button{display:-webkit-inline-box;display:inline-flex;-webkit-box-pack:center;justify-content:center;-webkit-box-align:center;align-items:center;position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;border:none;outline:0;background-color:transparent;fill:currentColor;color:inherit;font-size:24px;text-decoration:none;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;width:48px;height:48px;padding:12px}.forge-icon-button forge-icon,.forge-icon-button img,.forge-icon-button svg{width:24px;height:24px}.forge-icon-button:disabled{color:rgba(0,0,0,.38);color:var(--mdc-theme-text-disabled-on-light,rgba(0,0,0,.38))}.forge-icon-button:disabled{cursor:default;pointer-events:none}.forge-icon-button__icon{display:inline-block}.forge-icon-button__icon.forge-icon-button__icon--on{display:none}.forge-icon-button--on .forge-icon-button__icon{display:none}.forge-icon-button--on .forge-icon-button__icon.forge-icon-button__icon--on{display:inline-block}@-webkit-keyframes mdc-ripple-fg-radius-in{from{-webkit-animation-timing-function:cubic-bezier(0.4,0,0.2,1);animation-timing-function:cubic-bezier(0.4,0,0.2,1);-webkit-transform:translate(var(--mdc-ripple-fg-translate-start,0)) scale(1);transform:translate(var(--mdc-ripple-fg-translate-start,0)) scale(1)}to{-webkit-transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1));transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1))}}@keyframes mdc-ripple-fg-radius-in{from{-webkit-animation-timing-function:cubic-bezier(0.4,0,0.2,1);animation-timing-function:cubic-bezier(0.4,0,0.2,1);-webkit-transform:translate(var(--mdc-ripple-fg-translate-start,0)) scale(1);transform:translate(var(--mdc-ripple-fg-translate-start,0)) scale(1)}to{-webkit-transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1));transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1))}}@-webkit-keyframes mdc-ripple-fg-opacity-in{from{-webkit-animation-timing-function:linear;animation-timing-function:linear;opacity:0}to{opacity:var(--mdc-ripple-fg-opacity, 0)}}@keyframes mdc-ripple-fg-opacity-in{from{-webkit-animation-timing-function:linear;animation-timing-function:linear;opacity:0}to{opacity:var(--mdc-ripple-fg-opacity, 0)}}@-webkit-keyframes mdc-ripple-fg-opacity-out{from{-webkit-animation-timing-function:linear;animation-timing-function:linear;opacity:var(--mdc-ripple-fg-opacity, 0)}to{opacity:0}}@keyframes mdc-ripple-fg-opacity-out{from{-webkit-animation-timing-function:linear;animation-timing-function:linear;opacity:var(--mdc-ripple-fg-opacity, 0)}to{opacity:0}}.forge-icon-button{--mdc-ripple-fg-size:0;--mdc-ripple-left:0;--mdc-ripple-top:0;--mdc-ripple-fg-scale:1;--mdc-ripple-fg-translate-end:0;--mdc-ripple-fg-translate-start:0;-webkit-tap-highlight-color:transparent;will-change:transform,opacity}.forge-icon-button::after,.forge-icon-button::before{position:absolute;border-radius:50%;opacity:0;pointer-events:none;content:""}.forge-icon-button::before{-webkit-transition:opacity 15ms linear,background-color 15ms linear;transition:opacity 15ms linear,background-color 15ms linear;z-index:1;z-index:var(--mdc-ripple-z-index,1)}.forge-icon-button::after{z-index:0;z-index:var(--mdc-ripple-z-index,0)}.forge-icon-button.mdc-ripple-upgraded::before{-webkit-transform:scale(var(--mdc-ripple-fg-scale,1));transform:scale(var(--mdc-ripple-fg-scale,1))}.forge-icon-button.mdc-ripple-upgraded::after{top:0;left:0;-webkit-transform:scale(0);transform:scale(0);-webkit-transform-origin:center center;transform-origin:center center}.forge-icon-button.mdc-ripple-upgraded--unbounded::after{top:var(--mdc-ripple-top,0);left:var(--mdc-ripple-left,0)}.forge-icon-button.mdc-ripple-upgraded--foreground-activation::after{-webkit-animation:mdc-ripple-fg-radius-in 225ms forwards,mdc-ripple-fg-opacity-in 75ms forwards;animation:mdc-ripple-fg-radius-in 225ms forwards,mdc-ripple-fg-opacity-in 75ms forwards}.forge-icon-button.mdc-ripple-upgraded--foreground-deactivation::after{-webkit-animation:mdc-ripple-fg-opacity-out 150ms;animation:mdc-ripple-fg-opacity-out 150ms;-webkit-transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1));transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1))}.forge-icon-button::after,.forge-icon-button::before{top:calc(50% - 50%);left:calc(50% - 50%);width:100%;height:100%}.forge-icon-button.mdc-ripple-upgraded::after,.forge-icon-button.mdc-ripple-upgraded::before{top:var(--mdc-ripple-top,calc(50% - 50%));left:var(--mdc-ripple-left,calc(50% - 50%));width:var(--mdc-ripple-fg-size,100%);height:var(--mdc-ripple-fg-size,100%)}.forge-icon-button.mdc-ripple-upgraded::after{width:var(--mdc-ripple-fg-size,100%);height:var(--mdc-ripple-fg-size,100%)}.forge-icon-button::after,.forge-icon-button::before{background-color:#000;background-color:var(--mdc-ripple-color,var(--mdc-theme-on-surface,#000))}.forge-icon-button.mdc-ripple-surface--hover::before,.forge-icon-button:hover::before{opacity:.04;opacity:var(--mdc-ripple-hover-opacity, .04)}.forge-icon-button.mdc-ripple-upgraded--background-focused::before,.forge-icon-button:not(.mdc-ripple-upgraded):focus::before{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.12;opacity:var(--mdc-ripple-focus-opacity, .12)}.forge-icon-button:not(.mdc-ripple-upgraded)::after{-webkit-transition:opacity 150ms linear;transition:opacity 150ms linear}.forge-icon-button:not(.mdc-ripple-upgraded):active::after{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.12;opacity:var(--mdc-ripple-press-opacity, .12)}.forge-icon-button.mdc-ripple-upgraded{--mdc-ripple-fg-opacity:var(--mdc-ripple-press-opacity, 0.12)}forge-icon-button{position:relative;display:inline-block;overflow:visible}.forge-icon-button--on{color:#6200ee;color:var(--mdc-theme-primary,#6200ee)}.forge-icon-button--on::after,.forge-icon-button--on::before{background-color:#6200ee;background-color:var(--mdc-ripple-color,var(--mdc-theme-primary,#6200ee))}.forge-icon-button--on.mdc-ripple-surface--hover::before,.forge-icon-button--on:hover::before{opacity:.04;opacity:var(--mdc-ripple-hover-opacity, .04)}.forge-icon-button--on.mdc-ripple-upgraded--background-focused::before,.forge-icon-button--on:not(.mdc-ripple-upgraded):focus::before{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.12;opacity:var(--mdc-ripple-focus-opacity, .12)}.forge-icon-button--on:not(.mdc-ripple-upgraded)::after{-webkit-transition:opacity 150ms linear;transition:opacity 150ms linear}.forge-icon-button--on:not(.mdc-ripple-upgraded):active::after{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.12;opacity:var(--mdc-ripple-press-opacity, .12)}.forge-icon-button--on.mdc-ripple-upgraded{--mdc-ripple-fg-opacity:var(--mdc-ripple-press-opacity, 0.12)}.forge-icon-button--on::before{background-color:#6200ee;background-color:var(--mdc-theme-primary,#6200ee);opacity:.08}.forge-icon-button--dense{width:28px;height:28px;padding:2px;padding:0}.forge-icon-button--dense-1{width:44px;height:44px;padding:10px}.forge-icon-button--dense-2{width:40px;height:40px;padding:8px}.forge-icon-button--dense-3{width:36px;height:36px;padding:6px}.forge-icon-button--dense-4{width:32px;height:32px;padding:4px}.forge-icon-button--dense-5{width:28px;height:28px;padding:2px}.forge-icon-button--dense-6{width:24px;height:24px;padding:0}.forge-icon-button--with-badge forge-badge{z-index:1;z-index:var(--forge-z-index-surface,1);pointer-events:none;--forge-badge-max-width:32px;--forge-badge-border:1px solid transparent}.forge-icon-button--with-badge forge-badge[app-bar-context]{--forge-badge-border:2px solid var(--forge-app-bar-theme-background)}*{-webkit-box-sizing:border-box;box-sizing:border-box}.forge-color-picker{width:272px;width:var(--forge-color-picker-width,272px);position:relative;display:inline-block;overflow:hidden}.forge-color-picker__input{height:1px;opacity:0;position:absolute;width:1px}.forge-color-picker__gradient{position:relative;outline:0}.forge-color-picker__gradient-color{background:-webkit-gradient(linear,left top,left bottom,color-stop(0,rgba(0,0,0,0)),to(#000)),-webkit-gradient(linear,left top,right top,color-stop(0,#fff),to(rgba(255,255,255,0)));background:linear-gradient(to bottom,rgba(0,0,0,0) 0,#000 100%),linear-gradient(to right,#fff 0,rgba(255,255,255,0) 100%);height:152px}.forge-color-picker__gradient-thumb{border:1px solid #fff;border-radius:50%;cursor:pointer;display:inline-block;height:10px;width:10px;margin-left:-5px;margin-top:-5px;position:absolute;touch-action:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-transition:left .2s cubic-bezier(.25, .8, .25, 1) 0s,top .2s cubic-bezier(.25, .8, .25, 1) 0s;transition:left .2s cubic-bezier(.25, .8, .25, 1) 0s,top .2s cubic-bezier(.25, .8, .25, 1) 0s}.forge-color-picker__control-preview{display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;width:100%;padding:16px}.forge-color-picker__controls{-webkit-box-flex:1;flex:1;margin-right:16px}.forge-color-picker__slider{position:relative}.forge-color-picker__slider-thumb{outline:0;height:16px;width:16px;background-color:#fff;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.3);box-shadow:0 1px 2px rgba(0,0,0,.3);position:absolute;border-radius:50%;top:calc(50% - 8px);margin-left:-8px;-webkit-transition:left .4s cubic-bezier(.25, .8, .25, 1);transition:left .4s cubic-bezier(.25, .8, .25, 1)}.forge-color-picker__slider-thumb--active{-webkit-transition:none;transition:none}.forge-color-picker__slider-thumb:hover{cursor:pointer}.forge-color-picker__color-preview-container{border-radius:50%;-webkit-box-shadow:0 0 2px 0 rgba(0,0,0,.54) inset,0 0 2px 0 rgba(0,0,0,.54);box-shadow:0 0 2px 0 rgba(0,0,0,.54) inset,0 0 2px 0 rgba(0,0,0,.54);overflow:hidden}.forge-color-picker__color-preview{height:32px;width:32px;-webkit-transition:background-color .2s cubic-bezier(.25, .8, .25, 1);transition:background-color .2s cubic-bezier(.25, .8, .25, 1)}.forge-color-picker__value{display:-webkit-box;display:flex;width:100%;-webkit-box-align:center;align-items:center;padding:0 8px 16px 16px;font-size:12px}.forge-color-picker__color-types{-webkit-box-flex:1;flex:1}.forge-color-picker__color-types label{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-caption-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:.75rem;font-size:var(--mdc-typography-caption-font-size, .75rem);line-height:1.25rem;line-height:var(--mdc-typography-caption-line-height, 1.25rem);font-weight:400;font-weight:var(--mdc-typography-caption-font-weight,400);letter-spacing:.0333333333em;letter-spacing:var(--mdc-typography-caption-letter-spacing, .0333333333em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-caption-text-decoration,inherit);text-decoration:var(--mdc-typography-caption-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-caption-text-transform,inherit);color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-light,rgba(0,0,0,.54))}.forge-color-picker__color-types input{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-caption-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:.75rem;font-size:var(--mdc-typography-caption-font-size, .75rem);line-height:1.25rem;line-height:var(--mdc-typography-caption-line-height, 1.25rem);font-weight:400;font-weight:var(--mdc-typography-caption-font-weight,400);letter-spacing:.0333333333em;letter-spacing:var(--mdc-typography-caption-letter-spacing, .0333333333em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-caption-text-decoration,inherit);text-decoration:var(--mdc-typography-caption-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-caption-text-transform,inherit)}.forge-color-picker__color-types input[type=number],.forge-color-picker__color-types input[type=text]{color:#000;color:var(--mdc-theme-on-surface,#000);border-color:#e0e0e0;border-color:var(--forge-theme-border-color,#e0e0e0);background-color:transparent;padding:4px 8px;border-width:1px;border-style:solid;border-radius:4px;-webkit-box-sizing:border-box;box-sizing:border-box;outline:0;-webkit-transition:border-color .2s 0s cubic-bezier(0, 0, .2, 1),-webkit-box-shadow .2s 0s cubic-bezier(0, 0, .2, 1);transition:border-color .2s 0s cubic-bezier(0, 0, .2, 1),-webkit-box-shadow .2s 0s cubic-bezier(0, 0, .2, 1);transition:box-shadow .2s 0s cubic-bezier(0, 0, .2, 1),border-color .2s 0s cubic-bezier(0, 0, .2, 1);transition:box-shadow .2s 0s cubic-bezier(0, 0, .2, 1),border-color .2s 0s cubic-bezier(0, 0, .2, 1),-webkit-box-shadow .2s 0s cubic-bezier(0, 0, .2, 1)}.forge-color-picker__color-types input[type=number]:hover,.forge-color-picker__color-types input[type=text]:hover{border-color:rgba(0,0,0,.87);border-color:var(--mdc-theme-text-primary-on-background,rgba(0,0,0,.87))}.forge-color-picker__color-types input[type=number]:focus,.forge-color-picker__color-types input[type=text]:focus{border-color:#6200ee;border-color:var(--mdc-theme-primary,#6200ee);-webkit-box-shadow:0 0 0 1px inset #3f51b5;box-shadow:0 0 0 1px inset #3f51b5;-webkit-box-shadow:0 0 0 1px inset var(--mdc-theme-primary,#3f51b5);box-shadow:0 0 0 1px inset var(--mdc-theme-primary,#3f51b5)}.forge-color-picker__color-types input[type=number]{text-align:center;-moz-appearance:textfield}.forge-color-picker__color-types input[type=number]::-webkit-inner-spin-button,.forge-color-picker__color-types input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;appearance:none;margin:0}.forge-color-picker__color-hex{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-webkit-box-pack:center;justify-content:center;-webkit-box-align:space-between;align-items:space-between}.forge-color-picker__canvas{background-image:url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iNnB4IiBoZWlnaHQ9IjZweCIgdmlld0JveD0iMCAwIDYgNiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj4KICAgIDwhLS0gR2VuZXJhdG9yOiBTa2V0Y2ggNTAgKDU0OTgzKSAtIGh0dHA6Ly93d3cuYm9oZW1pYW5jb2RpbmcuY29tL3NrZXRjaCAtLT4KICAgIDx0aXRsZT5Hcm91cCA5PC90aXRsZT4KICAgIDxkZXNjPkNyZWF0ZWQgd2l0aCBTa2V0Y2guPC9kZXNjPgogICAgPGRlZnM+PC9kZWZzPgogICAgPGcgaWQ9IlBhZ2UtMSIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPGcgaWQ9Ikdyb3VwLTkiPgogICAgICAgICAgICA8cmVjdCBpZD0iUmVjdGFuZ2xlLTExIiBmaWxsPSIjRTBFMEUwIiB4PSIwIiB5PSIwIiB3aWR0aD0iMyIgaGVpZ2h0PSIzIj48L3JlY3Q+CiAgICAgICAgICAgIDxyZWN0IGlkPSJSZWN0YW5nbGUtMTEtQ29weS0yIiBmaWxsPSIjRkZGRkZGIiB4PSIwIiB5PSIzIiB3aWR0aD0iMyIgaGVpZ2h0PSIzIj48L3JlY3Q+CiAgICAgICAgICAgIDxyZWN0IGlkPSJSZWN0YW5nbGUtMTEtQ29weSIgZmlsbD0iI0ZGRkZGRiIgeD0iMyIgeT0iMCIgd2lkdGg9IjMiIGhlaWdodD0iMyI+PC9yZWN0PgogICAgICAgICAgICA8cmVjdCBpZD0iUmVjdGFuZ2xlLTExLUNvcHktMyIgZmlsbD0iI0UwRTBFMCIgeD0iMyIgeT0iMyIgd2lkdGg9IjMiIGhlaWdodD0iMyI+PC9yZWN0PgogICAgICAgIDwvZz4KICAgIDwvZz4KPC9zdmc+")}.forge-color-picker__hue-slider{height:8px;background:-webkit-gradient(linear,left top,right top,color-stop(0,red),color-stop(16%,#ff0),color-stop(33%,#0f0),color-stop(50%,#0ff),color-stop(67%,#00f),color-stop(84%,#f0f),to(#ff0004));background:linear-gradient(to right,red 0,#ff0 16%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 84%,#ff0004 100%)}.forge-color-picker__opacity-slider{height:8px;margin-top:16px;background:-webkit-gradient(linear,left top,right top,from(rgba(255,0,0,0)),to(red));background:linear-gradient(to right,rgba(255,0,0,0) 0,red 100%)}.forge-color-picker__color-hsva,.forge-color-picker__color-rgba{display:-webkit-box;display:flex}.forge-color-picker__color-hsva div,.forge-color-picker__color-rgba div{margin-right:4px}.forge-color-picker__color-hsva label,.forge-color-picker__color-rgba label{display:block;text-align:center}.forge-color-picker__color-hsva input,.forge-color-picker__color-rgba input{width:44px}:host{display:inline-block}:host([hidden]){display:none}',p=class extends G{constructor(){super();U.define(D),O(this,te,ie),this._foundation=new I(new f(this))}static get observedAttributes(){return[o.attributes.VALUE,o.attributes.ALLOW_OPACITY,o.attributes.DEBOUNCE_CHANGE_EVENT]}connectedCallback(){this._foundation.initialize()}disconnectedCallback(){this._foundation.disconnect()}attributeChangedCallback(t,i,a){switch(t){case o.attributes.VALUE:this.value=a;break;case o.attributes.ALLOW_OPACITY:this.allowOpacity=C(a);break;case o.attributes.DEBOUNCE_CHANGE_EVENT:this.debounceChangeEvent=C(a);break}}};h([g()],p.prototype,"value",2),h([g()],p.prototype,"rgba",2),h([g()],p.prototype,"hsva",2),h([g()],p.prototype,"opacity",2),h([g()],p.prototype,"allowOpacity",2),h([g()],p.prototype,"debounceChangeEvent",2),p=h([B({name:o.elementName,dependencies:[K,W,Z]})],p);function Ye(){M(p)}export{o as a,w as b,A as c,f as d,I as e,p as f,Ye as g};
7
+ //# sourceMappingURL=chunk.BY25RT52.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/color-picker/color-picker-constants.ts", "../../src/color-picker/color-picker-adapter.ts", "../../src/color-picker/color-picker-utils.ts", "../../src/color-picker/color-picker-gradient-slider.ts", "../../src/color-picker/color-picker-slider.ts", "../../src/color-picker/color-picker-foundation.ts", "../../src/color-picker/color-picker.ts", "../../src/color-picker/index.ts"],
4
+ "sourcesContent": ["import { COMPONENT_NAME_PREFIX } from '../constants';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}color-picker`;\n\nconst attributes = {\n VALUE: 'value',\n ALLOW_OPACITY: 'allow-opacity',\n DEBOUNCE_CHANGE_EVENT: 'debounce-change-event'\n};\n\nconst classes = {\n SLIDER_THUMB_ACTIVE: 'forge-color-picker__slider-thumb--active',\n GRADIENT_THUMB_ACTIVE: 'forge-color-picker__gradient-thumb--active'\n};\n\nconst selectors = {\n GRADIENT: '.forge-color-picker__gradient',\n GRADIENT_THUMB: '.forge-color-picker__gradient-thumb',\n PREVIEW_COLOR: '.forge-color-picker__color-preview',\n HEX_INPUT: '#forge-color-picker-hex-input',\n RGBA_INPUT: '#forge-color-picker-rgba-input',\n HSVA_INPUT: '#forge-color-picker-hsva-input',\n HUE_SLIDER: '.forge-color-picker__hue-slider',\n HUE_SLIDER_THUMB: '#forge-color-picker-hue-thumb',\n OPACITY_SLIDER: '.forge-color-picker__opacity-slider',\n OPACITY_SLIDER_THUMB: '#forge-color-picker-opacity-thumb',\n SLIDER: '.forge-color-picker__slider',\n SLIDER_THUMB: '.forge-color-picker__slider-thumb',\n COLOR_VALUE_HEX_CONTAINER: '.forge-color-picker__color-hex',\n COLOR_VALUE_RGBA_CONTAINER: '.forge-color-picker__color-rgba',\n COLOR_VALUE_HSVA_CONTAINER: '.forge-color-picker__color-hsva',\n TYPE_BUTTON: '#forge-color-picker-type-button',\n COLOR_VALUE_RGBA_R: '#forge-color-picker-rgba-r-input',\n COLOR_VALUE_RGBA_G: '#forge-color-picker-rgba-g-input',\n COLOR_VALUE_RGBA_B: '#forge-color-picker-rgba-b-input',\n COLOR_VALUE_RGBA_A: '#forge-color-picker-rgba-a-input',\n COLOR_VALUE_HSVA_H: '#forge-color-picker-hsva-h-input',\n COLOR_VALUE_HSVA_S: '#forge-color-picker-hsva-s-input',\n COLOR_VALUE_HSVA_V: '#forge-color-picker-hsva-v-input',\n COLOR_VALUE_HSVA_A: '#forge-color-picker-hsva-a-input'\n};\n\nconst events = {\n CHANGE: `${elementName}-change`\n};\n\nconst numbers = {\n CHANGE_EVENT_DEBOUNCE_THRESHOLD: 200\n};\n\nexport const COLOR_PICKER_CONSTANTS = {\n elementName,\n attributes,\n events,\n classes,\n selectors,\n numbers\n};\n\nexport const DEFAULT_COLOR = '000000';\n\nexport enum ColorPickerValueType {\n HEX = 'hex',\n RGB = 'rgb',\n RGBA = 'rgba',\n HSV = 'hsv',\n HSVA = 'hsva'\n}\n\nexport interface IRGBA {\n r: number;\n g: number;\n b: number;\n a: number;\n}\n\nexport interface IHSVA {\n h: number;\n s: number;\n v: number;\n a: number;\n}\n\nexport type ColorPickerChangeEventType = 'slider' | 'input';\nexport type ColorPickerChangeEventSource = 'gradient' | 'hue' | 'opacity' | 'hex' | 'rgba' | 'hsva';\n\nexport interface IColorPickerChangeEventData {\n type: ColorPickerChangeEventType;\n source: ColorPickerChangeEventSource;\n hex: string;\n rgba: IRGBA;\n hsva: IHSVA;\n alpha?: number;\n}\n", "import { getShadowElement } from '@tylertech/forge-core';\nimport { BaseAdapter, IBaseAdapter } from '../core/base/base-adapter';\nimport { IColorPickerComponent } from './color-picker';\nimport { ColorPickerValueType, COLOR_PICKER_CONSTANTS, IHSVA, IRGBA } from './color-picker-constants';\n\nexport interface IColorPickerAdapter extends IBaseAdapter {\n setPreviewColor(rgbaStyle: string): void;\n setHexInputValue(value: string): void;\n setRgbaInputValue(rgba: IRGBA): void;\n setHsvaInputValue(hsva: IHSVA): void;\n updateA11y(hueValue: number, opacityValue: number): void;\n setGradientColor(value: string): void;\n getHueSliderElement(): HTMLElement;\n getOpacitySliderElement(): HTMLElement;\n getGradientElement(): HTMLElement;\n setActiveValueType(type: ColorPickerValueType): void;\n focusValueInput(type: ColorPickerValueType): void;\n setTypeClickListener(listener: (evt: MouseEvent) => void): void;\n removeTypeClickListener(listener: (evt: MouseEvent) => void): void;\n setHexInputListener(type: string, listener: (evt: Event) => void): void;\n removeHexInputListener(type: string, listener: (evt: Event) => void): void;\n getHexInputValue(): string;\n setRgbaInputListener(type: string, listener: (evt: Event) => void): void;\n removeRgbaInputListener(type: string, listener: (evt: Event) => void): void;\n getRgbaInputValue(): IRGBA;\n setHsvaInputListener(type: string, listener: (evt: Event) => void): void;\n removeHsvaInputListener(type: string, listener: (evt: Event) => void): void;\n getHsvaInputValue(): IHSVA;\n toggleOpacityControls(visible: boolean): void;\n}\n\nexport class ColorPickerAdapter extends BaseAdapter<IColorPickerComponent> implements IColorPickerAdapter {\n private _gradientElement: HTMLElement;\n private _previewColorElement: HTMLElement;\n private _hexInputElement: HTMLInputElement;\n private _rgbaInputRElement: HTMLInputElement;\n private _rgbaInputGElement: HTMLInputElement;\n private _rgbaInputBElement: HTMLInputElement;\n private _rgbaInputAElement: HTMLInputElement;\n private _hsvaInputHElement: HTMLInputElement;\n private _hsvaInputSElement: HTMLInputElement;\n private _hsvaInputVElement: HTMLInputElement;\n private _hsvaInputAElement: HTMLInputElement;\n private _hueSliderElement: HTMLElement;\n private _hueSliderThumbElement: HTMLElement;\n private _opacitySliderElement: HTMLElement;\n private _opacitySliderThumbElement: HTMLElement;\n private _hexValueContainerElement: HTMLElement;\n private _rgbaValueContainerElement: HTMLElement;\n private _hsvaValueContainerElement: HTMLElement;\n private _typeButtonElement: HTMLButtonElement;\n\n constructor(component: IColorPickerComponent) {\n super(component);\n this._gradientElement = getShadowElement(component, COLOR_PICKER_CONSTANTS.selectors.GRADIENT);\n this._previewColorElement = getShadowElement(component, COLOR_PICKER_CONSTANTS.selectors.PREVIEW_COLOR);\n this._hexInputElement = getShadowElement(component, COLOR_PICKER_CONSTANTS.selectors.HEX_INPUT) as HTMLInputElement;\n this._rgbaInputRElement = getShadowElement(component, COLOR_PICKER_CONSTANTS.selectors.COLOR_VALUE_RGBA_R) as HTMLInputElement;\n this._rgbaInputGElement = getShadowElement(component, COLOR_PICKER_CONSTANTS.selectors.COLOR_VALUE_RGBA_G) as HTMLInputElement;\n this._rgbaInputBElement = getShadowElement(component, COLOR_PICKER_CONSTANTS.selectors.COLOR_VALUE_RGBA_B) as HTMLInputElement;\n this._rgbaInputAElement = getShadowElement(component, COLOR_PICKER_CONSTANTS.selectors.COLOR_VALUE_RGBA_A) as HTMLInputElement;\n this._hsvaInputHElement = getShadowElement(component, COLOR_PICKER_CONSTANTS.selectors.COLOR_VALUE_HSVA_H) as HTMLInputElement;\n this._hsvaInputSElement = getShadowElement(component, COLOR_PICKER_CONSTANTS.selectors.COLOR_VALUE_HSVA_S) as HTMLInputElement;\n this._hsvaInputVElement = getShadowElement(component, COLOR_PICKER_CONSTANTS.selectors.COLOR_VALUE_HSVA_V) as HTMLInputElement;\n this._hsvaInputAElement = getShadowElement(component, COLOR_PICKER_CONSTANTS.selectors.COLOR_VALUE_HSVA_A) as HTMLInputElement;\n this._hueSliderElement = getShadowElement(component, COLOR_PICKER_CONSTANTS.selectors.HUE_SLIDER);\n this._hueSliderThumbElement = getShadowElement(component, COLOR_PICKER_CONSTANTS.selectors.HUE_SLIDER_THUMB);\n this._opacitySliderElement = getShadowElement(component, COLOR_PICKER_CONSTANTS.selectors.OPACITY_SLIDER);\n this._opacitySliderThumbElement = getShadowElement(component, COLOR_PICKER_CONSTANTS.selectors.OPACITY_SLIDER_THUMB);\n this._hexValueContainerElement = getShadowElement(component, COLOR_PICKER_CONSTANTS.selectors.COLOR_VALUE_HEX_CONTAINER);\n this._rgbaValueContainerElement = getShadowElement(component, COLOR_PICKER_CONSTANTS.selectors.COLOR_VALUE_RGBA_CONTAINER);\n this._hsvaValueContainerElement = getShadowElement(component, COLOR_PICKER_CONSTANTS.selectors.COLOR_VALUE_HSVA_CONTAINER);\n this._typeButtonElement = getShadowElement(component, COLOR_PICKER_CONSTANTS.selectors.TYPE_BUTTON) as HTMLButtonElement;\n }\n\n public setPreviewColor(rgbaStyle: string): void {\n this._previewColorElement.style.backgroundColor = rgbaStyle;\n }\n\n public setHexInputValue(value: string): void {\n this._hexInputElement.value = value;\n }\n\n public setRgbaInputValue(rgba: IRGBA): void {\n this._rgbaInputRElement.value = rgba.r.toString();\n this._rgbaInputGElement.value = rgba.g.toString();\n this._rgbaInputBElement.value = rgba.b.toString();\n this._rgbaInputAElement.value = rgba.a.toString();\n }\n\n public setHsvaInputValue(hsva: IHSVA): void {\n this._hsvaInputHElement.value = hsva.h.toString();\n this._hsvaInputSElement.value = hsva.s.toString();\n this._hsvaInputVElement.value = hsva.v.toString();\n this._hsvaInputAElement.value = hsva.a.toString();\n }\n\n public updateA11y(hueValue: number, opacityValue: number): void {\n this._hueSliderThumbElement.setAttribute('aria-valuenow', hueValue.toString());\n this._hueSliderThumbElement.setAttribute('aria-valuetext', hueValue.toString());\n\n this._opacitySliderThumbElement.setAttribute('aria-valuenow', opacityValue.toString());\n this._opacitySliderThumbElement.setAttribute('aria-valuetext', opacityValue.toString());\n }\n\n public setGradientColor(value: string): void {\n this._gradientElement.style.backgroundColor = value;\n }\n\n public getHueSliderElement(): HTMLElement {\n return this._hueSliderElement;\n }\n\n public getOpacitySliderElement(): HTMLElement {\n return this._opacitySliderElement;\n }\n\n public getGradientElement(): HTMLElement {\n return this._gradientElement;\n }\n\n public setActiveValueType(type: ColorPickerValueType): void {\n this._hexValueContainerElement.style.display = 'none';\n this._rgbaValueContainerElement.style.display = 'none';\n this._hsvaValueContainerElement.style.display = 'none';\n\n switch (type) {\n case ColorPickerValueType.HEX:\n this._hexValueContainerElement.style.removeProperty('display');\n break;\n case ColorPickerValueType.RGBA:\n this._rgbaValueContainerElement.style.removeProperty('display');\n break;\n case ColorPickerValueType.HSVA:\n this._hsvaValueContainerElement.style.removeProperty('display');\n break;\n }\n }\n\n public focusValueInput(type: ColorPickerValueType): void {\n switch (type) {\n case ColorPickerValueType.HEX:\n this._hexInputElement.focus();\n this._hexInputElement.select();\n break;\n case ColorPickerValueType.RGBA:\n this._rgbaInputRElement.focus();\n this._rgbaInputRElement.select();\n break;\n case ColorPickerValueType.HSVA:\n this._hsvaInputHElement.focus();\n this._hsvaInputHElement.select();\n break;\n }\n }\n\n public setTypeClickListener(listener: (evt: MouseEvent) => void): void {\n this._typeButtonElement.addEventListener('click', listener);\n }\n\n public removeTypeClickListener(listener: (evt: MouseEvent) => void): void {\n this._typeButtonElement.removeEventListener('click', listener);\n }\n\n public setHexInputListener(type: string, listener: (evt: Event) => void): void {\n this._hexInputElement.addEventListener(type, listener);\n }\n\n public removeHexInputListener(type: string, listener: (evt: Event) => void): void {\n this._hexInputElement.removeEventListener(type, listener);\n }\n\n public getHexInputValue(): string {\n return this._hexInputElement.value;\n }\n\n public setRgbaInputListener(type: string, listener: (evt: Event) => void): void {\n this._rgbaInputRElement.addEventListener(type, listener);\n this._rgbaInputGElement.addEventListener(type, listener);\n this._rgbaInputBElement.addEventListener(type, listener);\n this._rgbaInputAElement.addEventListener(type, listener);\n }\n\n public removeRgbaInputListener(type: string, listener: (evt: Event) => void): void {\n this._rgbaInputRElement.removeEventListener(type, listener);\n this._rgbaInputGElement.removeEventListener(type, listener);\n this._rgbaInputBElement.removeEventListener(type, listener);\n this._rgbaInputAElement.removeEventListener(type, listener);\n }\n\n public getRgbaInputValue(): IRGBA {\n return {\n r: parseInt(this._rgbaInputRElement.value, 10),\n g: parseInt(this._rgbaInputGElement.value, 10),\n b: parseInt(this._rgbaInputBElement.value, 10),\n a: parseFloat(this._rgbaInputAElement.value)\n };\n }\n\n public setHsvaInputListener(type: string, listener: (evt: Event) => void): void {\n this._hsvaInputHElement.addEventListener(type, listener);\n this._hsvaInputSElement.addEventListener(type, listener);\n this._hsvaInputVElement.addEventListener(type, listener);\n this._hsvaInputAElement.addEventListener(type, listener);\n }\n\n public removeHsvaInputListener(type: string, listener: (evt: Event) => void): void {\n this._hsvaInputHElement.removeEventListener(type, listener);\n this._hsvaInputSElement.removeEventListener(type, listener);\n this._hsvaInputVElement.removeEventListener(type, listener);\n this._hsvaInputAElement.removeEventListener(type, listener);\n }\n\n public getHsvaInputValue(): IHSVA {\n return {\n h: parseInt(this._hsvaInputHElement.value, 10),\n s: parseInt(this._hsvaInputSElement.value, 10),\n v: parseInt(this._hsvaInputVElement.value, 10),\n a: parseFloat(this._hsvaInputAElement.value)\n };\n }\n\n public toggleOpacityControls(visible: boolean): void {\n if (visible) {\n this._opacitySliderElement.style.removeProperty('display');\n if (this._rgbaInputAElement.parentElement) {\n this._rgbaInputAElement.parentElement.style.removeProperty('display');\n }\n if (this._hsvaInputAElement.parentElement) {\n this._hsvaInputAElement.parentElement.style.removeProperty('display');\n }\n } else {\n this._opacitySliderElement.style.display = 'none';\n if (this._rgbaInputAElement.parentElement) {\n this._rgbaInputAElement.parentElement.style.display = 'none';\n }\n if (this._hsvaInputAElement.parentElement) {\n this._hsvaInputAElement.parentElement.style.display = 'none';\n }\n }\n }\n}\n", "import { isNumber } from '@tylertech/forge-core';\n\nimport { IRGBA, IHSVA } from './color-picker-constants';\n\n/**\n * Calcuates coordinates relative to the provided element based on absolute coordinates.\n * @param absX The x coordinate in screen space.\n * @param absY The y coordinate in screen space.\n * @param element The element to calculate the relative coordinates from.\n */\nexport function relativeCoords(absX: number, absY: number, element: HTMLElement): { x: number; y: number; height: number; width: number } {\n const bounds = element.getBoundingClientRect();\n let x = absX - bounds.left;\n let y = absY - bounds.top;\n\n if (x > bounds.width) {\n x = bounds.width;\n } else if (x < 0) {\n x = 0;\n }\n\n if (y > bounds.height) {\n y = bounds.height;\n } else if (y < 0) {\n y = 0;\n }\n\n return { x, y, height: bounds.height, width: bounds.width };\n}\n\nexport function hsvaToRgba(hsva: IHSVA): IRGBA {\n let r: number;\n let g: number;\n let b: number;\n const h = hsva.h / 60;\n const s = hsva.s / 100;\n const v = hsva.v / 100;\n\n if (s === 0) {\n r = g = b = v;\n return {\n r: Math.round(r * 255),\n g: Math.round(g * 255),\n b: Math.round(b * 255),\n a: hsva.a\n };\n }\n\n const i = Math.floor(h);\n const f = h - i;\n const p = v * (1 - s);\n const q = v * (1 - s * f);\n const t = v * (1 - s * (1 - f));\n\n switch (i) {\n case 0: r = v; g = t; b = p; break;\n case 1: r = q; g = v; b = p; break;\n case 2: r = p; g = v; b = t; break;\n case 3: r = p; g = q; b = v; break;\n case 4: r = t; g = p; b = v; break;\n default: r = v; g = p; b = q;\n }\n\n return {\n r: Math.round(r * 255),\n g: Math.round(g * 255),\n b: Math.round(b * 255),\n a: hsva.a\n };\n}\n\nexport function rgbaToHex(rgba: IRGBA): string {\n return toHex(rgba.r) + toHex(rgba.g) + toHex(rgba.b) + (Math.round(rgba.a * 255) + 0x10000).toString(16).substr(-2);\n}\n\nexport function toHex(x: number): string {\n return ('0' + x.toString(16)).slice(-2);\n}\n\nexport function hexToRgba(hex: string): IRGBA {\n const isShorthand = hex.length === 3 || hex.length === 4;\n const hexR = isShorthand ? `${hex.slice(0, 1)}${hex.slice(0, 1)}` : hex.slice(0, 2);\n const hexG = isShorthand ? `${hex.slice(1, 2)}${hex.slice(1, 2)}` : hex.slice(2, 4);\n const hexB = isShorthand ? `${hex.slice(2, 3)}${hex.slice(2, 3)}` : hex.slice(4, 6);\n const hexA = (isShorthand ? `${hex.slice(3, 4)}${hex.slice(3, 4)}` : hex.slice(6, 8)) || 'ff';\n\n return {\n r: parseInt(hexR, 16),\n g: parseInt(hexG, 16),\n b: parseInt(hexB, 16),\n a: parseFloat((parseInt(hexA, 16) / 255).toFixed(2))\n };\n}\n\nexport function formatRgba(rgba: IRGBA): string {\n return `rgba(${rgba.r}, ${rgba.g}, ${rgba.b}, ${rgba.a})`;\n}\n\nexport function formatHex(value: string, allowOpacity: boolean): string {\n let hex = value.replace(/^#/, '');\n\n if (!allowOpacity) {\n if (hex.length === 4) {\n hex = hex.substring(0, 3);\n } else if (hex.length === 8) {\n hex = hex.substring(0, 6);\n }\n }\n\n return `#${hex}`;\n}\n\nexport function rgbaToHsva(rgba: IRGBA): IHSVA {\n const r = rgba.r / 255;\n const g = rgba.g / 255;\n const b = rgba.b / 255;\n\n const max = Math.max(r, g, b);\n const min = Math.min(r, g, b);\n let h = max;\n let s = max;\n const v = max;\n\n const d = max - min;\n s = max === 0 ? 0 : d / max;\n\n if (max === min) {\n h = 0;\n } else {\n switch (max) {\n case r: h = (g - b) / d + (g < b ? 6 : 0); break;\n case g: h = (b - r) / d + 2; break;\n case b: h = (r - g) / d + 4; break;\n }\n h /= 6;\n }\n\n return {\n h: Math.round(h * 360),\n s: Math.round(s * 100),\n v: Math.round(v * 100),\n a: rgba.a\n };\n}\n\n/**\n * Determines if the provided hex color string is valid.\n * @param value The hex color string.\n */\nexport function isValidHex(value: string): boolean {\n if (!value || typeof value !== 'string') {\n return false;\n }\n\n if (value.substring(0, 1) === '#') {\n value = value.substring(1);\n }\n\n switch (value.length) {\n case 3: return /^[0-9A-F]{3}$/i.test(value);\n case 4: return /^[0-9A-F]{4}$/i.test(value);\n case 6: return /^[0-9A-F]{6}$/i.test(value);\n case 8: return /^[0-9A-F]{8}$/i.test(value);\n default: return false;\n }\n}\n\n/**\n * Determines if the provided RGBA values are valid.\n * @param value The RGBA color values.\n */\nexport function isValidRGBA(value: IRGBA): boolean {\n return isNumber(value.r) && value.r >= 0 && value.r <= 255 &&\n isNumber(value.g) && value.g >= 0 && value.g <= 255 &&\n isNumber(value.b) && value.b >= 0 && value.b <= 255 &&\n isNumber(value.a) && value.a >= 0 && value.a <= 1;\n}\n\n/**\n * Determines if the provided HSVA values are valid.\n * @param value The HSVA color values.\n */\nexport function isValidHSVA(value: IHSVA): boolean {\n return isNumber(value.h) && value.h >= 0 && value.h <= 360 &&\n isNumber(value.s) && value.s >= 0 && value.s <= 100 &&\n isNumber(value.v) && value.v >= 0 && value.v <= 100 &&\n isNumber(value.a) && value.a >= 0 && value.a <= 1;\n}\n", "import { COLOR_PICKER_CONSTANTS } from './color-picker-constants';\nimport { relativeCoords } from './color-picker-utils';\n\nexport class ColorPickerGradientSlider {\n private _xPercent: number;\n private _yPercent: number;\n private _thumbElement: HTMLElement;\n private _keydownListener: (evt: KeyboardEvent) => void;\n private _downListener: (evt: MouseEvent & TouchEvent) => void;\n private _moveListener: (evt: MouseEvent & TouchEvent) => void;\n private _upListener: (evt: MouseEvent & TouchEvent) => void;\n\n constructor(private _rootElement: HTMLElement, private _changeListener: (x: number, y: number) => void) {\n this._keydownListener = evt => this._onKeydown(evt);\n this._downListener = evt => this._onDown(evt);\n this._moveListener = evt => this._onMove(evt);\n this._upListener = evt => this._onUp(evt);\n this._initialize();\n }\n\n public destroy(): void {\n this._unlisten();\n }\n\n public setValue(saturation: number, value: number): void {\n window.requestAnimationFrame(() => {\n const bounds = this._rootElement.getBoundingClientRect();\n this._xPercent = Math.round(bounds.width * (saturation / 100));\n this._yPercent = bounds.height - Math.round(bounds.height * (value / 100));\n this._setThumbPosition(this._xPercent, this._yPercent);\n });\n }\n\n private _initialize(): void {\n this._thumbElement = this._rootElement.querySelector(COLOR_PICKER_CONSTANTS.selectors.GRADIENT_THUMB) as HTMLElement;\n this._listen();\n this._setThumbPosition(this._xPercent, this._yPercent);\n }\n\n private _listen(): void {\n this._rootElement.addEventListener('keydown', this._keydownListener);\n this._rootElement.addEventListener('mousedown', this._downListener);\n this._rootElement.addEventListener('touchstart', this._downListener);\n }\n\n private _unlisten(): void {\n this._rootElement.removeEventListener('keydown', this._keydownListener);\n this._rootElement.removeEventListener('mousedown', this._downListener);\n this._rootElement.removeEventListener('touchstart', this._downListener);\n document.removeEventListener('mousemove', this._moveListener);\n document.removeEventListener('touchmove', this._moveListener);\n document.removeEventListener('mouseup', this._upListener);\n document.removeEventListener('touchend', this._upListener);\n }\n\n private _onKeydown(evt: KeyboardEvent): void {\n const isEnterKey = evt.key === 'Enter' || evt.keyCode === 13;\n const isArrowLeftKey = evt.key === 'ArrowLeft' || evt.keyCode === 37;\n const isArrowUpKey = evt.key === 'ArrowUp' || evt.keyCode === 38;\n const isArrowRightKey = evt.key === 'ArrowRight' || evt.keyCode === 39;\n const isArrowDownKey = evt.key === 'ArrowDown' || evt.keyCode === 40;\n\n const bounds = this._rootElement.getBoundingClientRect();\n\n if (isArrowDownKey) {\n evt.preventDefault();\n this._yPercent++;\n } else if (isArrowUpKey) {\n evt.preventDefault();\n this._yPercent--;\n } else if (isArrowLeftKey) {\n evt.preventDefault();\n this._xPercent--;\n } else if (isArrowRightKey) {\n evt.preventDefault();\n this._xPercent++;\n } else if (isEnterKey) {\n evt.preventDefault();\n // TODO(kieran.nichols): Select the current color\n } else {\n return;\n }\n\n if (this._xPercent > bounds.width) {\n this._xPercent = bounds.width;\n } else if (this._xPercent < 0) {\n this._xPercent = 0;\n }\n\n if (this._yPercent > bounds.height) {\n this._yPercent = bounds.height;\n } else if (this._yPercent < 0) {\n this._yPercent = 0;\n }\n\n this._setThumbPosition(this._xPercent, this._yPercent);\n this._notify();\n }\n\n private _onDown(evt: MouseEvent & TouchEvent): void {\n evt.preventDefault();\n document.addEventListener('mousemove', this._moveListener);\n document.addEventListener('touchmove', this._moveListener);\n document.addEventListener('mouseup', this._upListener);\n document.addEventListener('touchend', this._upListener);\n this._updateThumbPosition(evt);\n }\n\n private _onMove(evt: MouseEvent & TouchEvent): void {\n evt.preventDefault();\n this._updateThumbPosition(evt);\n }\n\n private _onUp(evt: MouseEvent & TouchEvent): void {\n document.removeEventListener('mousemove', this._moveListener);\n document.removeEventListener('touchmove', this._moveListener);\n document.removeEventListener('mouseup', this._upListener);\n document.removeEventListener('touchend', this._upListener);\n this._updateThumbPosition(evt);\n this._thumbElement.focus();\n }\n\n private _updateThumbPosition(evt: MouseEvent & TouchEvent): void {\n const isMouseEvent = /^mouse/.test(evt.type);\n const x = isMouseEvent ? evt.clientX : evt.changedTouches[0].clientX;\n const y = isMouseEvent ? evt.clientY : evt.changedTouches[0].clientY;\n const coords = this._calculateSliderPercent(x, y);\n this._setThumbPosition(coords.x, coords.y);\n this._xPercent = parseInt(((coords.x / coords.width) * 100).toString(), 10);\n this._yPercent = Math.abs(parseInt(((coords.y / coords.height) * 100).toString(), 10) - 100);\n this._notify();\n }\n\n private _calculateSliderPercent(absX: number, absY: number): { x: number; y: number; width: number; height: number } {\n return relativeCoords(absX, absY, this._rootElement);\n }\n\n private _setThumbPosition(xPercent: number, yPercent: number): void {\n this._thumbElement.style.left = `${xPercent}px`;\n this._thumbElement.style.top = `${yPercent}px`;\n }\n\n private _notify(): void {\n if (typeof this._changeListener === 'function') {\n this._changeListener(this._xPercent, this._yPercent);\n }\n }\n}\n", "import { COLOR_PICKER_CONSTANTS } from './color-picker-constants';\nimport { relativeCoords } from './color-picker-utils';\n\nexport interface IColorPickerSliderOptions {\n min: number;\n max: number;\n step: number;\n change: (value: number) => void;\n}\n\nexport class ColorPickerSlider {\n private _percent = 1;\n private _min = 0;\n private _max = 1;\n private _step = 0.01;\n private _thumbElement: HTMLElement;\n private _keydownListener: (evt: KeyboardEvent) => void;\n private _downListener: (evt: MouseEvent & TouchEvent) => void;\n private _moveListener: (evt: MouseEvent & TouchEvent) => void;\n private _upListener: (evt: MouseEvent & TouchEvent) => void;\n \n constructor(private _rootElement: HTMLElement, private _changeListener: (value: number) => void) {\n this._keydownListener = evt => this._onKeydown(evt);\n this._downListener = evt => this._onDown(evt);\n this._moveListener = evt => this._onMove(evt);\n this._upListener = evt => this._onUp(evt);\n this._initialize();\n }\n\n public destroy(): void {\n this._unlisten();\n }\n\n public setValue(value: number): void {\n this._percent = value;\n this._setThumbPosition(this._percent);\n }\n\n private _initialize(): void {\n this._thumbElement = this._rootElement.querySelector(COLOR_PICKER_CONSTANTS.selectors.SLIDER_THUMB) as HTMLElement;\n this._listen();\n this._setThumbPosition(this._percent);\n }\n\n private _listen(): void {\n this._thumbElement.addEventListener('keydown', this._keydownListener);\n this._rootElement.addEventListener('mousedown', this._downListener);\n this._rootElement.addEventListener('touchstart', this._downListener);\n }\n\n private _unlisten(): void {\n this._thumbElement.removeEventListener('keydown', this._keydownListener);\n this._rootElement.removeEventListener('mousedown', this._downListener);\n this._rootElement.removeEventListener('touchstart', this._downListener);\n document.removeEventListener('mousemove', this._moveListener);\n document.removeEventListener('touchmove', this._moveListener);\n document.removeEventListener('mouseup', this._upListener);\n document.removeEventListener('touchend', this._upListener);\n }\n\n private _onKeydown(evt: KeyboardEvent): void {\n const isArrowLeftKey = evt.key === 'ArrowLeft' || evt.keyCode === 37;\n const isArrowRightKey = evt.key === 'ArrowRight' || evt.keyCode === 39;\n const isHomeKey = evt.key === 'Home' || evt.keyCode === 36;\n const isEndKey = evt.key === 'End' || evt.keyCode === 35;\n\n if (isArrowLeftKey) {\n evt.preventDefault();\n this._percent -= this._step;\n } else if (isArrowRightKey) {\n evt.preventDefault();\n this._percent += this._step;\n } else if (isHomeKey) {\n evt.preventDefault();\n this._percent = this._min;\n } else if (isEndKey) {\n evt.preventDefault();\n this._percent = this._max;\n }\n\n if (this._percent < this._min) {\n this._percent = this._min;\n } else if (this._percent > this._max) {\n this._percent = this._max;\n }\n\n this._setThumbPosition(this._percent);\n this._notify();\n }\n\n private _onDown(evt: MouseEvent & TouchEvent): void {\n evt.preventDefault();\n document.addEventListener('mousemove', this._moveListener);\n document.addEventListener('touchmove', this._moveListener);\n document.addEventListener('mouseup', this._upListener);\n document.addEventListener('touchend', this._upListener);\n this._updateThumbPosition(evt);\n }\n\n private _onMove(evt: MouseEvent & TouchEvent): void {\n evt.preventDefault();\n this._thumbElement.classList.add(COLOR_PICKER_CONSTANTS.classes.SLIDER_THUMB_ACTIVE);\n this._updateThumbPosition(evt);\n }\n\n private _onUp(evt: MouseEvent & TouchEvent): void {\n this._thumbElement.classList.remove(COLOR_PICKER_CONSTANTS.classes.SLIDER_THUMB_ACTIVE);\n document.removeEventListener('mousemove', this._moveListener);\n document.removeEventListener('touchmove', this._moveListener);\n document.removeEventListener('mouseup', this._upListener);\n document.removeEventListener('touchend', this._upListener);\n this._updateThumbPosition(evt);\n this._thumbElement.focus();\n }\n\n private _updateThumbPosition(evt: MouseEvent & TouchEvent): void {\n const x = /^mouse/.test(evt.type) ? evt.clientX : evt.changedTouches[0].clientX;\n this._percent = this._calculateSliderPercent(x);\n this._setThumbPosition(this._percent);\n this._notify();\n }\n\n private _calculateSliderPercent(absX: number): number {\n const coords = relativeCoords(absX, 0, this._rootElement);\n return parseFloat((coords.x / coords.width).toFixed(2));\n }\n\n private _setThumbPosition(percent: number): void {\n this._thumbElement.style.left = `${percent * 100}%`;\n }\n\n private _notify(): void {\n if (typeof this._changeListener === 'function') {\n this._changeListener(this._percent);\n }\n }\n}\n", "import { ICustomElementFoundation, debounce } from '@tylertech/forge-core';\nimport { IColorPickerAdapter } from './color-picker-adapter';\nimport { ColorPickerValueType, COLOR_PICKER_CONSTANTS, DEFAULT_COLOR, IColorPickerChangeEventData, IHSVA, IRGBA, ColorPickerChangeEventType, ColorPickerChangeEventSource } from './color-picker-constants';\nimport { ColorPickerGradientSlider } from './color-picker-gradient-slider';\nimport { ColorPickerSlider } from './color-picker-slider';\nimport { formatHex, formatRgba, hexToRgba, hsvaToRgba, isValidHex, isValidHSVA, isValidRGBA, rgbaToHex, rgbaToHsva } from './color-picker-utils';\n\nexport interface IColorPickerFoundation extends ICustomElementFoundation {\n value: string | null | undefined;\n rgba: IRGBA | null | undefined;\n hsva: IHSVA | null | undefined;\n opacity: number | null | undefined;\n allowOpacity: boolean;\n debounceChangeEvent: boolean;\n}\n\nexport class ColorPickerFoundation implements IColorPickerFoundation {\n private _value: string | null | undefined = null;\n private _allowOpacity = true;\n private _hex = DEFAULT_COLOR;\n private _hsva: IHSVA = { h: 0, s: 0, v: 0, a: 1 };\n private _rgba: IRGBA = { r: 0, g: 0, b: 0, a: 1 };\n private _debounceChangeEvent = false;\n private _valueType = ColorPickerValueType.HEX;\n private _gradientSlider: ColorPickerGradientSlider;\n private _hueSlider: ColorPickerSlider;\n private _opacitySlider: ColorPickerSlider;\n private _initialized = false;\n private _gradientSliderChangedListener: (x: number, y: number) => void;\n private _hueSliderChangedListener: (percent: number) => void;\n private _opacitySliderChangedListener: (percent: number) => void;\n private _typeClickListener: (evt: MouseEvent) => void;\n private _hexInputChangedListener: (evt: KeyboardEvent) => void;\n private _rgbaInputChangedListener: (evt: KeyboardEvent) => void;\n private _hsvaInputChangedListener: (evt: KeyboardEvent) => void;\n private _triggerChangeEvent: (type: ColorPickerChangeEventType, source: ColorPickerChangeEventSource) => void;\n\n constructor(private _adapter: IColorPickerAdapter) {\n this._gradientSliderChangedListener = (x, y) => this._onGradientSliderChanged(x, y);\n this._hueSliderChangedListener = value => this._onHueSliderChanged(value);\n this._opacitySliderChangedListener = value => this._onOpacitySliderChanged(value);\n this._typeClickListener = evt => this._onTypeClicked(evt);\n this._hexInputChangedListener = evt => this._onHexInputChanged();\n this._rgbaInputChangedListener = evt => this._onRgbaInputChanged();\n this._hsvaInputChangedListener = evt => this._onHsvaInputChanged();\n }\n \n public initialize(): void {\n this._initialized = true;\n this._applyChangeEventTrigger();\n this._adapter.setTypeClickListener(this._typeClickListener);\n this._adapter.setHexInputListener('input', this._hexInputChangedListener);\n this._adapter.setRgbaInputListener('input', this._rgbaInputChangedListener);\n this._adapter.setHsvaInputListener('input', this._hsvaInputChangedListener);\n this._gradientSlider = new ColorPickerGradientSlider(this._adapter.getGradientElement(), this._gradientSliderChangedListener);\n this._hueSlider = new ColorPickerSlider(this._adapter.getHueSliderElement(), this._hueSliderChangedListener);\n this._opacitySlider = new ColorPickerSlider(this._adapter.getOpacitySliderElement(), this._opacitySliderChangedListener);\n\n this._initializeOpacity();\n this._setColorFromHex();\n this._adapter.setActiveValueType(this._valueType);\n }\n\n public disconnect(): void {\n this._adapter.removeTypeClickListener(this._typeClickListener);\n this._adapter.removeHexInputListener('input', this._hexInputChangedListener);\n this._adapter.removeRgbaInputListener('input', this._hexInputChangedListener);\n this._adapter.removeHsvaInputListener('input', this._hexInputChangedListener);\n\n this._gradientSlider.destroy();\n this._hueSlider.destroy();\n this._opacitySlider.destroy();\n this._initialized = false;\n }\n\n private _applyChangeEventTrigger(): void {\n if (this._debounceChangeEvent) {\n this._triggerChangeEvent = debounce((type: ColorPickerChangeEventType, source: ColorPickerChangeEventSource) => {\n this._emitChangeEvent(type, source);\n }, COLOR_PICKER_CONSTANTS.numbers.CHANGE_EVENT_DEBOUNCE_THRESHOLD, false);\n } else {\n this._triggerChangeEvent = (type, source) => this._emitChangeEvent(type, source);\n }\n }\n\n private _initializeOpacity(): void {\n this._hsva.a = 1;\n this._adapter.toggleOpacityControls(this._allowOpacity);\n this._render();\n }\n\n private _onTypeClicked(evt: MouseEvent): void {\n if (this._valueType === ColorPickerValueType.HEX) {\n this._valueType = ColorPickerValueType.RGBA;\n } else if (this._valueType === ColorPickerValueType.RGBA) {\n this._valueType = ColorPickerValueType.HSVA;\n } else if (this._valueType === ColorPickerValueType.HSVA) {\n this._valueType = ColorPickerValueType.HEX;\n }\n\n this._adapter.setActiveValueType(this._valueType);\n this._adapter.focusValueInput(this._valueType);\n }\n\n private _onHexInputChanged(): void {\n const value = this._adapter.getHexInputValue();\n if (isValidHex(value)) {\n this.value = value;\n this._triggerChangeEvent('input', 'hex');\n }\n }\n\n private _onRgbaInputChanged(): void {\n const value = this._adapter.getRgbaInputValue();\n if (isValidRGBA(value)) {\n this.value = rgbaToHex(value);\n this._triggerChangeEvent('input', 'rgba');\n }\n }\n\n private _onHsvaInputChanged(): void {\n const value = this._adapter.getHsvaInputValue();\n if (isValidHSVA(value)) {\n this.value = rgbaToHex(hsvaToRgba(value));\n this._triggerChangeEvent('input', 'hsva');\n }\n }\n\n private _setColorFromHex(): void {\n this._rgba = hexToRgba(this._hex);\n this._hsva = rgbaToHsva(this._rgba);\n\n if (this._initialized) {\n this._gradientSlider.setValue(this._hsva.s, this._hsva.v);\n this._hueSlider.setValue(parseFloat((this._hsva.h / 360).toFixed(2)));\n this._opacitySlider.setValue(this._hsva.a);\n this._render();\n }\n }\n\n private _onGradientSliderChanged(x: number, y: number): void {\n this._hsva.s = x;\n this._hsva.v = y;\n this._syncColors();\n this._render();\n this._triggerChangeEvent('slider', 'gradient');\n }\n\n private _onHueSliderChanged(value: number): void {\n this._hsva.h = parseInt((360 * value).toString(), 10);\n this._syncColors();\n this._setGradientColor();\n this._render();\n this._triggerChangeEvent('slider', 'hue');\n }\n\n private _onOpacitySliderChanged(value: number): void {\n this._hsva.a = value;\n this._syncColors();\n this._render();\n this._triggerChangeEvent('slider', 'opacity');\n }\n\n private _setGradientColor(): void {\n const rgba = hsvaToRgba({ h: this._hsva.h, s: 100, v: 100, a: 1 });\n this._adapter.setGradientColor(`rgb(${rgba.r}, ${rgba.g}, ${rgba.b})`);\n }\n\n private _syncColors(): void {\n this._rgba = hsvaToRgba(this._hsva);\n this._hex = rgbaToHex(this._rgba);\n this._value = this._hex || null;\n }\n\n private _render(): void {\n this._setGradientColor();\n this._adapter.setPreviewColor(formatRgba(this._rgba));\n this._adapter.setHexInputValue(`#${this._hex}`);\n this._adapter.setRgbaInputValue(this._rgba);\n this._adapter.setHsvaInputValue(this._hsva);\n this._adapter.updateA11y(this._hsva.h, Math.round(this._hsva.a * 100));\n }\n\n private _emitChangeEvent(type: ColorPickerChangeEventType, source: ColorPickerChangeEventSource): void {\n const data: IColorPickerChangeEventData = {\n type,\n source,\n hex: formatHex(this._hex, false).replace(/^#/, ''),\n rgba: this._rgba,\n hsva: this._hsva\n };\n if (this._allowOpacity) {\n data.alpha = this._hsva.a;\n }\n this._adapter.emitHostEvent(COLOR_PICKER_CONSTANTS.events.CHANGE, data);\n }\n\n public get value(): string | null | undefined {\n return formatHex(this._hex, false);\n }\n public set value(value: string | null | undefined) {\n if (this._value !== value) {\n this._value = value || DEFAULT_COLOR;\n\n if (!isValidHex(this._value)) {\n throw new Error('Invalid hex value provided.');\n }\n\n this._hex = this._value.replace(/^#/, '');\n this._setColorFromHex();\n this._adapter.setHostAttribute(COLOR_PICKER_CONSTANTS.attributes.VALUE, this._value);\n }\n }\n\n public get rgba(): IRGBA | null | undefined {\n return !!this._rgba ? { ...this._rgba } : null;\n }\n public set rgba(value: IRGBA | null | undefined) {\n if (value) {\n if (isValidRGBA(value)) {\n this.value = rgbaToHex(value);\n }\n } else {\n this.value = null;\n }\n }\n\n public get hsva(): IHSVA | null | undefined {\n return !!this._hsva ? { ...this._hsva } : null;\n }\n public set hsva(value: IHSVA | null | undefined) {\n if (value) {\n if (isValidHSVA(value)) {\n this.value = rgbaToHex(hsvaToRgba(value));\n }\n } else {\n this.value = null;\n }\n }\n\n public get opacity(): number | null | undefined {\n return this._hsva ? this._hsva.a : null;\n }\n public set opacity(value: number | null | undefined) {\n if (this._hsva.a !== value) {\n if (value != null && this._allowOpacity) {\n if (value >= 0 && value <= 1) {\n this._hsva.a = value;\n this._syncColors();\n\n if (this._initialized) {\n this._opacitySlider.setValue(this._hsva.a);\n this._render();\n }\n } else {\n console.warn(`The provided opacity value (${value}) must be between 0 and 1.`);\n }\n }\n }\n }\n\n public get allowOpacity(): boolean {\n return this._allowOpacity;\n }\n public set allowOpacity(value: boolean) {\n this._allowOpacity = value;\n if (this._initialized) {\n this._initializeOpacity();\n }\n }\n\n public get debounceChangeEvent(): boolean {\n return this._debounceChangeEvent;\n }\n public set debounceChangeEvent(value: boolean) {\n if (this._debounceChangeEvent !== value) {\n this._debounceChangeEvent = value;\n if (this._initialized) {\n this._applyChangeEventTrigger();\n }\n }\n }\n}\n", "import { attachShadowTemplate, coerceBoolean, CustomElement, FoundationProperty } from '@tylertech/forge-core';\nimport { tylIconUnfoldMore } from '@tylertech/tyler-icons/standard';\nimport { BaseComponent, IBaseComponent } from '../core/base/base-component';\nimport { IconComponent, IconRegistry } from '../icon';\nimport { IconButtonComponent } from '../icon-button';\nimport { TooltipComponent } from '../tooltip';\nimport { ColorPickerAdapter } from './color-picker-adapter';\nimport { COLOR_PICKER_CONSTANTS, IColorPickerChangeEventData, IHSVA, IRGBA } from './color-picker-constants';\nimport { ColorPickerFoundation } from './color-picker-foundation';\n\nconst template = '<template><div class=\\\"forge-color-picker\\\" part=\\\"root\\\"><input type=\\\"color\\\" tabindex=\\\"-1\\\" class=\\\"forge-color-picker__input\\\" spellcheck=\\\"false\\\" autocomplete=\\\"off\\\" aria-label=\\\"Color picker value\\\" part=\\\"input\\\"><div class=\\\"forge-color-picker__container\\\" part=\\\"container\\\"><div class=\\\"forge-color-picker__gradient\\\" tabindex=\\\"0\\\" part=\\\"gradient\\\"><div class=\\\"forge-color-picker__gradient-color\\\" part=\\\"gradient-color\\\"></div><div class=\\\"forge-color-picker__gradient-thumb\\\" part=\\\"gradient-thumb\\\"></div></div><div class=\\\"forge-color-picker__control-preview\\\" part=\\\"controls-preview-container\\\"><div class=\\\"forge-color-picker__controls\\\" part=\\\"controls-container\\\"><div class=\\\"forge-color-picker__slider-control\\\" part=\\\"hue-control-container\\\"><div class=\\\"forge-color-picker__slider forge-color-picker__hue-slider\\\" part=\\\"hue-control-slider\\\"><div class=\\\"forge-color-picker__slider-thumb\\\" id=\\\"forge-color-picker-hue-thumb\\\" part=\\\"hue-control-slider-thumb\\\" tabindex=\\\"0\\\" role=\\\"slider\\\" aria-label=\\\"Change hue\\\" aria-valuemin=\\\"0\\\" aria-valuemax=\\\"360\\\" aria-valuenow=\\\"0\\\" aria-orientation=\\\"horizontal\\\" aria-valuetext=\\\"0\\\"></div></div></div><div class=\\\"forge-color-picker__slider-control\\\" part=\\\"opacity-control-container\\\"><div class=\\\"forge-color-picker__canvas\\\" part=\\\"opacity-control-canvas\\\"><div class=\\\"forge-color-picker__slider forge-color-picker__opacity-slider\\\" part=\\\"opacity-control-slider\\\"><div class=\\\"forge-color-picker__slider-thumb\\\" id=\\\"forge-color-picker-opacity-thumb\\\" part=\\\"opacity-control-slider-thumb\\\" tabindex=\\\"0\\\" role=\\\"slider\\\" aria-label=\\\"Change opacity\\\" aria-valuemin=\\\"0\\\" aria-valuemax=\\\"100\\\" aria-valuenow=\\\"0\\\" aria-orientation=\\\"horizontal\\\" aria-valuetext=\\\"0\\\"></div></div></div></div></div><div class=\\\"forge-color-picker__color-preview-container forge-color-picker__canvas\\\" part=\\\"color-preview-container\\\"><div class=\\\"forge-color-picker__color-preview\\\" part=\\\"color-preview\\\"></div></div></div><div class=\\\"forge-color-picker__value\\\" part=\\\"value-container\\\"><div class=\\\"forge-color-picker__color-types\\\" part=\\\"types-container\\\"><div class=\\\"forge-color-picker__color-hex\\\" part=\\\"hex-type-container\\\"><div part=\\\"hex-type-label-wrapper\\\"><label for=\\\"forge-color-picker-hex-input\\\" part=\\\"hex-label\\\">HEX</label></div><input type=\\\"text\\\" id=\\\"forge-color-picker-hex-input\\\" part=\\\"hex-input\\\" style=\\\"width: 88px;\\\" maxlength=\\\"9\\\" spellcheck=\\\"false\\\" autocomplete=\\\"off\\\" aria-label=\\\"HEX value\\\"></div><div class=\\\"forge-color-picker__color-rgba\\\" part=\\\"rgba-type-container\\\"><div part=\\\"rgba-type-wrapper-r\\\"><label for=\\\"forge-color-picker-rgba-r-input\\\" part=\\\"rgba-type-label-r\\\">R</label> <input type=\\\"number\\\" id=\\\"forge-color-picker-rgba-r-input\\\" part=\\\"rgba-type-input-r\\\" min=\\\"0\\\" max=\\\"255\\\" maxlength=\\\"3\\\" autocomplete=\\\"off\\\" aria-label=\\\"Red\\\"></div><div part=\\\"rgba-type-wrapper-g\\\"><label for=\\\"forge-color-picker-rgba-g-input\\\" part=\\\"rgba-type-label-g\\\">G</label> <input type=\\\"number\\\" id=\\\"forge-color-picker-rgba-g-input\\\" part=\\\"rgba-type-input-g\\\" min=\\\"0\\\" max=\\\"255\\\" maxlength=\\\"3\\\" autocomplete=\\\"off\\\" aria-label=\\\"Green\\\"></div><div part=\\\"rgba-type-wrapper-b\\\"><label for=\\\"forge-color-picker-rgba-b-input\\\" part=\\\"rgba-type-label-b\\\">B</label> <input type=\\\"number\\\" id=\\\"forge-color-picker-rgba-b-input\\\" part=\\\"rgba-type-input-b\\\" min=\\\"0\\\" max=\\\"255\\\" maxlength=\\\"3\\\" autocomplete=\\\"off\\\" aria-label=\\\"Blue\\\"></div><div part=\\\"rgba-type-wrapper-a\\\"><label for=\\\"forge-color-picker-rgba-a-input\\\" part=\\\"rgba-type-label-a\\\">A</label> <input type=\\\"number\\\" id=\\\"forge-color-picker-rgba-a-input\\\" part=\\\"rgba-type-input-a\\\" min=\\\"0\\\" max=\\\"1\\\" step=\\\"0.1\\\" maxlength=\\\"3\\\" autocomplete=\\\"off\\\" aria-label=\\\"Alpha\\\"></div></div><div class=\\\"forge-color-picker__color-hsva\\\" part=\\\"hsva-type-container\\\"><div part=\\\"hsva-type-wrapper-h\\\"><label for=\\\"forge-color-picker-hsva-h-input\\\" part=\\\"hsva-type-label-h\\\">H</label> <input type=\\\"number\\\" id=\\\"forge-color-picker-hsva-h-input\\\" part=\\\"hsva-type-input-h\\\" min=\\\"0\\\" max=\\\"360\\\" maxlength=\\\"3\\\" autocomplete=\\\"off\\\" aria-label=\\\"Hue\\\"></div><div part=\\\"hsva-type-wrapper-s\\\"><label for=\\\"forge-color-picker-hsva-s-input\\\" part=\\\"hsva-type-label-s\\\">S</label> <input type=\\\"number\\\" id=\\\"forge-color-picker-hsva-s-input\\\" part=\\\"hsva-type-input-s\\\" min=\\\"0\\\" max=\\\"100\\\" maxlength=\\\"3\\\" autocomplete=\\\"off\\\" aria-label=\\\"Saturation\\\"></div><div part=\\\"hsva-type-wrapper-v\\\"><label for=\\\"forge-color-picker-hsva-v-input\\\" part=\\\"hsva-type-label-v\\\">V</label> <input type=\\\"number\\\" id=\\\"forge-color-picker-hsva-v-input\\\" part=\\\"hsva-type-input-v\\\" min=\\\"0\\\" max=\\\"100\\\" maxlength=\\\"3\\\" autocomplete=\\\"off\\\" aria-label=\\\"Value\\\"></div><div part=\\\"hsva-type-wrapper-a\\\"><label for=\\\"forge-color-picker-hsva-a-input\\\" part=\\\"hsva-type-label-a\\\">A</label> <input type=\\\"number\\\" id=\\\"forge-color-picker-hsva-a-input\\\" part=\\\"hsva-type-input-a\\\" min=\\\"0\\\" max=\\\"1\\\" step=\\\"0.1\\\" maxlength=\\\"3\\\" autocomplete=\\\"off\\\" aria-label=\\\"Alpha\\\"></div></div></div><div class=\\\"forge-color-picker__type-button\\\" part=\\\"type-container\\\"><forge-icon-button part=\\\"type-button\\\"><button type=\\\"button\\\" id=\\\"forge-color-picker-type-button\\\" aria-labelledby=\\\"type-button-tooltip\\\" part=\\\"type-button-element\\\"><forge-icon name=\\\"unfold_more\\\" part=\\\"type-button-icon\\\"></forge-icon></button><forge-tooltip delay=\\\"500\\\" position=\\\"bottom\\\" id=\\\"type-button-tooltip\\\">Change color format</forge-tooltip></forge-icon-button></div></div></div></div></template>';\nconst styles = '.forge-icon-button{display:-webkit-inline-box;display:inline-flex;-webkit-box-pack:center;justify-content:center;-webkit-box-align:center;align-items:center;position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;border:none;outline:0;background-color:transparent;fill:currentColor;color:inherit;font-size:24px;text-decoration:none;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;width:48px;height:48px;padding:12px}.forge-icon-button forge-icon,.forge-icon-button img,.forge-icon-button svg{width:24px;height:24px}.forge-icon-button:disabled{color:rgba(0,0,0,.38);color:var(--mdc-theme-text-disabled-on-light,rgba(0,0,0,.38))}.forge-icon-button:disabled{cursor:default;pointer-events:none}.forge-icon-button__icon{display:inline-block}.forge-icon-button__icon.forge-icon-button__icon--on{display:none}.forge-icon-button--on .forge-icon-button__icon{display:none}.forge-icon-button--on .forge-icon-button__icon.forge-icon-button__icon--on{display:inline-block}@-webkit-keyframes mdc-ripple-fg-radius-in{from{-webkit-animation-timing-function:cubic-bezier(0.4,0,0.2,1);animation-timing-function:cubic-bezier(0.4,0,0.2,1);-webkit-transform:translate(var(--mdc-ripple-fg-translate-start,0)) scale(1);transform:translate(var(--mdc-ripple-fg-translate-start,0)) scale(1)}to{-webkit-transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1));transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1))}}@keyframes mdc-ripple-fg-radius-in{from{-webkit-animation-timing-function:cubic-bezier(0.4,0,0.2,1);animation-timing-function:cubic-bezier(0.4,0,0.2,1);-webkit-transform:translate(var(--mdc-ripple-fg-translate-start,0)) scale(1);transform:translate(var(--mdc-ripple-fg-translate-start,0)) scale(1)}to{-webkit-transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1));transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1))}}@-webkit-keyframes mdc-ripple-fg-opacity-in{from{-webkit-animation-timing-function:linear;animation-timing-function:linear;opacity:0}to{opacity:var(--mdc-ripple-fg-opacity, 0)}}@keyframes mdc-ripple-fg-opacity-in{from{-webkit-animation-timing-function:linear;animation-timing-function:linear;opacity:0}to{opacity:var(--mdc-ripple-fg-opacity, 0)}}@-webkit-keyframes mdc-ripple-fg-opacity-out{from{-webkit-animation-timing-function:linear;animation-timing-function:linear;opacity:var(--mdc-ripple-fg-opacity, 0)}to{opacity:0}}@keyframes mdc-ripple-fg-opacity-out{from{-webkit-animation-timing-function:linear;animation-timing-function:linear;opacity:var(--mdc-ripple-fg-opacity, 0)}to{opacity:0}}.forge-icon-button{--mdc-ripple-fg-size:0;--mdc-ripple-left:0;--mdc-ripple-top:0;--mdc-ripple-fg-scale:1;--mdc-ripple-fg-translate-end:0;--mdc-ripple-fg-translate-start:0;-webkit-tap-highlight-color:transparent;will-change:transform,opacity}.forge-icon-button::after,.forge-icon-button::before{position:absolute;border-radius:50%;opacity:0;pointer-events:none;content:\\\"\\\"}.forge-icon-button::before{-webkit-transition:opacity 15ms linear,background-color 15ms linear;transition:opacity 15ms linear,background-color 15ms linear;z-index:1;z-index:var(--mdc-ripple-z-index,1)}.forge-icon-button::after{z-index:0;z-index:var(--mdc-ripple-z-index,0)}.forge-icon-button.mdc-ripple-upgraded::before{-webkit-transform:scale(var(--mdc-ripple-fg-scale,1));transform:scale(var(--mdc-ripple-fg-scale,1))}.forge-icon-button.mdc-ripple-upgraded::after{top:0;left:0;-webkit-transform:scale(0);transform:scale(0);-webkit-transform-origin:center center;transform-origin:center center}.forge-icon-button.mdc-ripple-upgraded--unbounded::after{top:var(--mdc-ripple-top,0);left:var(--mdc-ripple-left,0)}.forge-icon-button.mdc-ripple-upgraded--foreground-activation::after{-webkit-animation:mdc-ripple-fg-radius-in 225ms forwards,mdc-ripple-fg-opacity-in 75ms forwards;animation:mdc-ripple-fg-radius-in 225ms forwards,mdc-ripple-fg-opacity-in 75ms forwards}.forge-icon-button.mdc-ripple-upgraded--foreground-deactivation::after{-webkit-animation:mdc-ripple-fg-opacity-out 150ms;animation:mdc-ripple-fg-opacity-out 150ms;-webkit-transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1));transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1))}.forge-icon-button::after,.forge-icon-button::before{top:calc(50% - 50%);left:calc(50% - 50%);width:100%;height:100%}.forge-icon-button.mdc-ripple-upgraded::after,.forge-icon-button.mdc-ripple-upgraded::before{top:var(--mdc-ripple-top,calc(50% - 50%));left:var(--mdc-ripple-left,calc(50% - 50%));width:var(--mdc-ripple-fg-size,100%);height:var(--mdc-ripple-fg-size,100%)}.forge-icon-button.mdc-ripple-upgraded::after{width:var(--mdc-ripple-fg-size,100%);height:var(--mdc-ripple-fg-size,100%)}.forge-icon-button::after,.forge-icon-button::before{background-color:#000;background-color:var(--mdc-ripple-color,var(--mdc-theme-on-surface,#000))}.forge-icon-button.mdc-ripple-surface--hover::before,.forge-icon-button:hover::before{opacity:.04;opacity:var(--mdc-ripple-hover-opacity, .04)}.forge-icon-button.mdc-ripple-upgraded--background-focused::before,.forge-icon-button:not(.mdc-ripple-upgraded):focus::before{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.12;opacity:var(--mdc-ripple-focus-opacity, .12)}.forge-icon-button:not(.mdc-ripple-upgraded)::after{-webkit-transition:opacity 150ms linear;transition:opacity 150ms linear}.forge-icon-button:not(.mdc-ripple-upgraded):active::after{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.12;opacity:var(--mdc-ripple-press-opacity, .12)}.forge-icon-button.mdc-ripple-upgraded{--mdc-ripple-fg-opacity:var(--mdc-ripple-press-opacity, 0.12)}forge-icon-button{position:relative;display:inline-block;overflow:visible}.forge-icon-button--on{color:#6200ee;color:var(--mdc-theme-primary,#6200ee)}.forge-icon-button--on::after,.forge-icon-button--on::before{background-color:#6200ee;background-color:var(--mdc-ripple-color,var(--mdc-theme-primary,#6200ee))}.forge-icon-button--on.mdc-ripple-surface--hover::before,.forge-icon-button--on:hover::before{opacity:.04;opacity:var(--mdc-ripple-hover-opacity, .04)}.forge-icon-button--on.mdc-ripple-upgraded--background-focused::before,.forge-icon-button--on:not(.mdc-ripple-upgraded):focus::before{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.12;opacity:var(--mdc-ripple-focus-opacity, .12)}.forge-icon-button--on:not(.mdc-ripple-upgraded)::after{-webkit-transition:opacity 150ms linear;transition:opacity 150ms linear}.forge-icon-button--on:not(.mdc-ripple-upgraded):active::after{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.12;opacity:var(--mdc-ripple-press-opacity, .12)}.forge-icon-button--on.mdc-ripple-upgraded{--mdc-ripple-fg-opacity:var(--mdc-ripple-press-opacity, 0.12)}.forge-icon-button--on::before{background-color:#6200ee;background-color:var(--mdc-theme-primary,#6200ee);opacity:.08}.forge-icon-button--dense{width:28px;height:28px;padding:2px;padding:0}.forge-icon-button--dense-1{width:44px;height:44px;padding:10px}.forge-icon-button--dense-2{width:40px;height:40px;padding:8px}.forge-icon-button--dense-3{width:36px;height:36px;padding:6px}.forge-icon-button--dense-4{width:32px;height:32px;padding:4px}.forge-icon-button--dense-5{width:28px;height:28px;padding:2px}.forge-icon-button--dense-6{width:24px;height:24px;padding:0}.forge-icon-button--with-badge forge-badge{z-index:1;z-index:var(--forge-z-index-surface,1);pointer-events:none;--forge-badge-max-width:32px;--forge-badge-border:1px solid transparent}.forge-icon-button--with-badge forge-badge[app-bar-context]{--forge-badge-border:2px solid var(--forge-app-bar-theme-background)}*{-webkit-box-sizing:border-box;box-sizing:border-box}.forge-color-picker{width:272px;width:var(--forge-color-picker-width,272px);position:relative;display:inline-block;overflow:hidden}.forge-color-picker__input{height:1px;opacity:0;position:absolute;width:1px}.forge-color-picker__gradient{position:relative;outline:0}.forge-color-picker__gradient-color{background:-webkit-gradient(linear,left top,left bottom,color-stop(0,rgba(0,0,0,0)),to(#000)),-webkit-gradient(linear,left top,right top,color-stop(0,#fff),to(rgba(255,255,255,0)));background:linear-gradient(to bottom,rgba(0,0,0,0) 0,#000 100%),linear-gradient(to right,#fff 0,rgba(255,255,255,0) 100%);height:152px}.forge-color-picker__gradient-thumb{border:1px solid #fff;border-radius:50%;cursor:pointer;display:inline-block;height:10px;width:10px;margin-left:-5px;margin-top:-5px;position:absolute;touch-action:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-transition:left .2s cubic-bezier(.25, .8, .25, 1) 0s,top .2s cubic-bezier(.25, .8, .25, 1) 0s;transition:left .2s cubic-bezier(.25, .8, .25, 1) 0s,top .2s cubic-bezier(.25, .8, .25, 1) 0s}.forge-color-picker__control-preview{display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;width:100%;padding:16px}.forge-color-picker__controls{-webkit-box-flex:1;flex:1;margin-right:16px}.forge-color-picker__slider{position:relative}.forge-color-picker__slider-thumb{outline:0;height:16px;width:16px;background-color:#fff;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.3);box-shadow:0 1px 2px rgba(0,0,0,.3);position:absolute;border-radius:50%;top:calc(50% - 8px);margin-left:-8px;-webkit-transition:left .4s cubic-bezier(.25, .8, .25, 1);transition:left .4s cubic-bezier(.25, .8, .25, 1)}.forge-color-picker__slider-thumb--active{-webkit-transition:none;transition:none}.forge-color-picker__slider-thumb:hover{cursor:pointer}.forge-color-picker__color-preview-container{border-radius:50%;-webkit-box-shadow:0 0 2px 0 rgba(0,0,0,.54) inset,0 0 2px 0 rgba(0,0,0,.54);box-shadow:0 0 2px 0 rgba(0,0,0,.54) inset,0 0 2px 0 rgba(0,0,0,.54);overflow:hidden}.forge-color-picker__color-preview{height:32px;width:32px;-webkit-transition:background-color .2s cubic-bezier(.25, .8, .25, 1);transition:background-color .2s cubic-bezier(.25, .8, .25, 1)}.forge-color-picker__value{display:-webkit-box;display:flex;width:100%;-webkit-box-align:center;align-items:center;padding:0 8px 16px 16px;font-size:12px}.forge-color-picker__color-types{-webkit-box-flex:1;flex:1}.forge-color-picker__color-types label{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-caption-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:.75rem;font-size:var(--mdc-typography-caption-font-size, .75rem);line-height:1.25rem;line-height:var(--mdc-typography-caption-line-height, 1.25rem);font-weight:400;font-weight:var(--mdc-typography-caption-font-weight,400);letter-spacing:.0333333333em;letter-spacing:var(--mdc-typography-caption-letter-spacing, .0333333333em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-caption-text-decoration,inherit);text-decoration:var(--mdc-typography-caption-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-caption-text-transform,inherit);color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-light,rgba(0,0,0,.54))}.forge-color-picker__color-types input{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-caption-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:.75rem;font-size:var(--mdc-typography-caption-font-size, .75rem);line-height:1.25rem;line-height:var(--mdc-typography-caption-line-height, 1.25rem);font-weight:400;font-weight:var(--mdc-typography-caption-font-weight,400);letter-spacing:.0333333333em;letter-spacing:var(--mdc-typography-caption-letter-spacing, .0333333333em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-caption-text-decoration,inherit);text-decoration:var(--mdc-typography-caption-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-caption-text-transform,inherit)}.forge-color-picker__color-types input[type=number],.forge-color-picker__color-types input[type=text]{color:#000;color:var(--mdc-theme-on-surface,#000);border-color:#e0e0e0;border-color:var(--forge-theme-border-color,#e0e0e0);background-color:transparent;padding:4px 8px;border-width:1px;border-style:solid;border-radius:4px;-webkit-box-sizing:border-box;box-sizing:border-box;outline:0;-webkit-transition:border-color .2s 0s cubic-bezier(0, 0, .2, 1),-webkit-box-shadow .2s 0s cubic-bezier(0, 0, .2, 1);transition:border-color .2s 0s cubic-bezier(0, 0, .2, 1),-webkit-box-shadow .2s 0s cubic-bezier(0, 0, .2, 1);transition:box-shadow .2s 0s cubic-bezier(0, 0, .2, 1),border-color .2s 0s cubic-bezier(0, 0, .2, 1);transition:box-shadow .2s 0s cubic-bezier(0, 0, .2, 1),border-color .2s 0s cubic-bezier(0, 0, .2, 1),-webkit-box-shadow .2s 0s cubic-bezier(0, 0, .2, 1)}.forge-color-picker__color-types input[type=number]:hover,.forge-color-picker__color-types input[type=text]:hover{border-color:rgba(0,0,0,.87);border-color:var(--mdc-theme-text-primary-on-background,rgba(0,0,0,.87))}.forge-color-picker__color-types input[type=number]:focus,.forge-color-picker__color-types input[type=text]:focus{border-color:#6200ee;border-color:var(--mdc-theme-primary,#6200ee);-webkit-box-shadow:0 0 0 1px inset #3f51b5;box-shadow:0 0 0 1px inset #3f51b5;-webkit-box-shadow:0 0 0 1px inset var(--mdc-theme-primary,#3f51b5);box-shadow:0 0 0 1px inset var(--mdc-theme-primary,#3f51b5)}.forge-color-picker__color-types input[type=number]{text-align:center;-moz-appearance:textfield}.forge-color-picker__color-types input[type=number]::-webkit-inner-spin-button,.forge-color-picker__color-types input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;appearance:none;margin:0}.forge-color-picker__color-hex{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-webkit-box-pack:center;justify-content:center;-webkit-box-align:space-between;align-items:space-between}.forge-color-picker__canvas{background-image:url(\\\"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iNnB4IiBoZWlnaHQ9IjZweCIgdmlld0JveD0iMCAwIDYgNiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj4KICAgIDwhLS0gR2VuZXJhdG9yOiBTa2V0Y2ggNTAgKDU0OTgzKSAtIGh0dHA6Ly93d3cuYm9oZW1pYW5jb2RpbmcuY29tL3NrZXRjaCAtLT4KICAgIDx0aXRsZT5Hcm91cCA5PC90aXRsZT4KICAgIDxkZXNjPkNyZWF0ZWQgd2l0aCBTa2V0Y2guPC9kZXNjPgogICAgPGRlZnM+PC9kZWZzPgogICAgPGcgaWQ9IlBhZ2UtMSIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPGcgaWQ9Ikdyb3VwLTkiPgogICAgICAgICAgICA8cmVjdCBpZD0iUmVjdGFuZ2xlLTExIiBmaWxsPSIjRTBFMEUwIiB4PSIwIiB5PSIwIiB3aWR0aD0iMyIgaGVpZ2h0PSIzIj48L3JlY3Q+CiAgICAgICAgICAgIDxyZWN0IGlkPSJSZWN0YW5nbGUtMTEtQ29weS0yIiBmaWxsPSIjRkZGRkZGIiB4PSIwIiB5PSIzIiB3aWR0aD0iMyIgaGVpZ2h0PSIzIj48L3JlY3Q+CiAgICAgICAgICAgIDxyZWN0IGlkPSJSZWN0YW5nbGUtMTEtQ29weSIgZmlsbD0iI0ZGRkZGRiIgeD0iMyIgeT0iMCIgd2lkdGg9IjMiIGhlaWdodD0iMyI+PC9yZWN0PgogICAgICAgICAgICA8cmVjdCBpZD0iUmVjdGFuZ2xlLTExLUNvcHktMyIgZmlsbD0iI0UwRTBFMCIgeD0iMyIgeT0iMyIgd2lkdGg9IjMiIGhlaWdodD0iMyI+PC9yZWN0PgogICAgICAgIDwvZz4KICAgIDwvZz4KPC9zdmc+\\\")}.forge-color-picker__hue-slider{height:8px;background:-webkit-gradient(linear,left top,right top,color-stop(0,red),color-stop(16%,#ff0),color-stop(33%,#0f0),color-stop(50%,#0ff),color-stop(67%,#00f),color-stop(84%,#f0f),to(#ff0004));background:linear-gradient(to right,red 0,#ff0 16%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 84%,#ff0004 100%)}.forge-color-picker__opacity-slider{height:8px;margin-top:16px;background:-webkit-gradient(linear,left top,right top,from(rgba(255,0,0,0)),to(red));background:linear-gradient(to right,rgba(255,0,0,0) 0,red 100%)}.forge-color-picker__color-hsva,.forge-color-picker__color-rgba{display:-webkit-box;display:flex}.forge-color-picker__color-hsva div,.forge-color-picker__color-rgba div{margin-right:4px}.forge-color-picker__color-hsva label,.forge-color-picker__color-rgba label{display:block;text-align:center}.forge-color-picker__color-hsva input,.forge-color-picker__color-rgba input{width:44px}:host{display:inline-block}:host([hidden]){display:none}';\nexport interface IColorPickerComponent extends IBaseComponent {\n value: string | null | undefined;\n rgba: IRGBA | null | undefined;\n hsva: IHSVA | null | undefined;\n opacity: number | null | undefined;\n allowOpacity: boolean;\n debounceChangeEvent: boolean;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'forge-color-picker': IColorPickerComponent;\n }\n\n interface HTMLElementEventMap {\n 'forge-color-picker-change': CustomEvent<IColorPickerChangeEventData>;\n }\n}\n\n/**\n * The web component class behind the `<forge-color-picker>` custom element.\n * \n * @tag forge-color-picker\n */\n@CustomElement({\n name: COLOR_PICKER_CONSTANTS.elementName,\n dependencies: [\n IconButtonComponent,\n TooltipComponent,\n IconComponent\n ]\n})\nexport class ColorPickerComponent extends BaseComponent implements IColorPickerComponent {\n public static get observedAttributes(): string[] {\n return [\n COLOR_PICKER_CONSTANTS.attributes.VALUE,\n COLOR_PICKER_CONSTANTS.attributes.ALLOW_OPACITY,\n COLOR_PICKER_CONSTANTS.attributes.DEBOUNCE_CHANGE_EVENT\n ];\n }\n\n private _foundation: ColorPickerFoundation;\n\n constructor() {\n super();\n IconRegistry.define(tylIconUnfoldMore);\n attachShadowTemplate(this, template, styles);\n this._foundation = new ColorPickerFoundation(new ColorPickerAdapter(this));\n }\n\n public connectedCallback(): void {\n this._foundation.initialize();\n }\n\n public disconnectedCallback(): void {\n this._foundation.disconnect();\n }\n\n public attributeChangedCallback(name: string, oldValue: string, newValue: string): void {\n switch (name) {\n case COLOR_PICKER_CONSTANTS.attributes.VALUE:\n this.value = newValue;\n break;\n case COLOR_PICKER_CONSTANTS.attributes.ALLOW_OPACITY:\n this.allowOpacity = coerceBoolean(newValue);\n break;\n case COLOR_PICKER_CONSTANTS.attributes.DEBOUNCE_CHANGE_EVENT:\n this.debounceChangeEvent = coerceBoolean(newValue);\n break;\n }\n }\n\n /** Gets/sets the value using hex format only. */\n @FoundationProperty()\n public declare value: string | null | undefined;\n\n /** Gets/sets the value using rgba format. */\n @FoundationProperty()\n public declare rgba: IRGBA | null | undefined;\n\n /** Gets/sets the value using hsva format. */\n @FoundationProperty()\n public declare hsva: IHSVA | null | undefined;\n\n /** Gets/sets the opacity value, if `allowOpacity` is true. */\n @FoundationProperty()\n public declare opacity: number | null | undefined;\n\n /** Gets/sets whether opacity is displayed and allowed be to changed. */\n @FoundationProperty()\n public declare allowOpacity: boolean;\n\n /** Gets/sets whether change event has a debounce applied to avoid successive updates. Defaults to `false`. */\n @FoundationProperty()\n public declare debounceChangeEvent: boolean;\n}\n", "import { defineCustomElement } from '@tylertech/forge-core';\n\nimport { ColorPickerComponent } from './color-picker';\n\nexport * from './color-picker-adapter';\nexport * from './color-picker-constants';\nexport * from './color-picker-foundation';\nexport * from './color-picker';\n\nexport function defineColorPickerComponent(): void {\n defineCustomElement(ColorPickerComponent);\n}\n"],
5
+ "mappings": "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",
6
+ "names": ["elementName", "COMPONENT_NAME_PREFIX", "attributes", "classes", "selectors", "events", "numbers", "COLOR_PICKER_CONSTANTS", "DEFAULT_COLOR", "ColorPickerValueType", "ColorPickerAdapter", "BaseAdapter", "component", "getShadowElement", "COLOR_PICKER_CONSTANTS", "rgbaStyle", "value", "rgba", "hsva", "hueValue", "opacityValue", "type", "listener", "visible", "relativeCoords", "absX", "absY", "element", "bounds", "x", "y", "hsvaToRgba", "hsva", "r", "g", "b", "h", "s", "v", "i", "f", "p", "q", "t", "rgbaToHex", "rgba", "toHex", "hexToRgba", "hex", "isShorthand", "hexR", "hexG", "hexB", "hexA", "formatRgba", "formatHex", "value", "allowOpacity", "rgbaToHsva", "max", "min", "d", "isValidHex", "isValidRGBA", "isNumber", "isValidHSVA", "ColorPickerGradientSlider", "_rootElement", "_changeListener", "evt", "saturation", "value", "bounds", "COLOR_PICKER_CONSTANTS", "isEnterKey", "isArrowLeftKey", "isArrowUpKey", "isArrowRightKey", "isArrowDownKey", "isMouseEvent", "x", "y", "coords", "absX", "absY", "relativeCoords", "xPercent", "yPercent", "ColorPickerSlider", "_rootElement", "_changeListener", "evt", "value", "COLOR_PICKER_CONSTANTS", "isArrowLeftKey", "isArrowRightKey", "isHomeKey", "isEndKey", "x", "absX", "coords", "relativeCoords", "percent", "ColorPickerFoundation", "_adapter", "DEFAULT_COLOR", "x", "y", "value", "evt", "ColorPickerGradientSlider", "ColorPickerSlider", "debounce", "type", "source", "COLOR_PICKER_CONSTANTS", "isValidHex", "isValidRGBA", "rgbaToHex", "isValidHSVA", "hsvaToRgba", "hexToRgba", "rgbaToHsva", "rgba", "formatRgba", "data", "formatHex", "__spreadValues", "template", "styles", "ColorPickerComponent", "BaseComponent", "IconRegistry", "tylIconUnfoldMore", "attachShadowTemplate", "ColorPickerFoundation", "ColorPickerAdapter", "COLOR_PICKER_CONSTANTS", "name", "oldValue", "newValue", "coerceBoolean", "__decorateClass", "FoundationProperty", "CustomElement", "IconButtonComponent", "TooltipComponent", "IconComponent", "defineColorPickerComponent", "defineCustomElement", "ColorPickerComponent"]
7
+ }
@@ -0,0 +1,7 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2023 Tyler Technologies, Inc.
4
+ * License: Apache-2.0
5
+ */
6
+ import{a as T}from"./chunk.XI3MJSIS.js";import{c as L}from"./chunk.LXPFG7MW.js";import{a as D}from"./chunk.ALIYGJXA.js";import{a as c,d as H}from"./chunk.JLLHDJSO.js";import{a as C}from"./chunk.LEVFMI2Q.js";import{a as w}from"./chunk.MXEKIEJA.js";import{a as s}from"./chunk.NVUMRW44.js";import{a as S}from"./chunk.BKL2BAYW.js";import{a as x,b as B}from"./chunk.DXN7ZOH3.js";import{a as k,e as y,f as g}from"./chunk.MVTBJPO2.js";import{i as E,r as h,t as l}from"./chunk.K7FPXAFS.js";import{k as d}from"./chunk.J2M2MXP2.js";import{a as v,b as _,d as a}from"./chunk.M3QDAYD2.js";var p=`${B}bottom-sheet`,A={DRAGGING:"forge-bottom-sheet--dragging",FULLSCREEN:"forge-bottom-sheet--fullscreen",OPEN:"forge-bottom-sheet--open",SCROLLABLE:"forge-bottom-sheet--scrollable"},O={BACKDROP_CLOSE:"backdrop-close",ESCAPE_CLOSE:"escape-close",FULLSCREEN:"fullscreen",INITIAL_FOCUS:`${p}-focus`,OPEN:`${p}-open`,SHOW_BACKDROP:"show-backdrop"},N={BACKDROP:c.elementName,CONTAINER:".forge-bottom-sheet",CONTENT_BODY:"[forge-bottom-sheet-body]",INITIAL_FOCUS:`[${O.INITIAL_FOCUS}]`,HOST:`[${p}-host]`},P={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:A,selectors:N,attributes:O,events:P};var m=class extends S{constructor(e){super(e);this._backdropElement=g(e,o.selectors.BACKDROP),this._containerElement=g(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(){E(this._component)}registerTransitionEndHandler(e){this._containerElement.addEventListener("transitionend",e)}deregisterTransitionEndHandler(e){this._containerElement.removeEventListener("transitionend",e)}setBodyListener(e,i,r){document.body.addEventListener(e,i,r)}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=h(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=[w.elementName,D.elementName,L.elementName,T.elementName];Array.from(this._component.querySelectorAll(e.join(","))).filter(r=>typeof r.layout=="function").forEach(r=>r.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(h(this._component,o.selectors.CONTENT_BODY,!1));return e.length?e[0]:null}};var b=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 r=C(t);if(this._adapter.isScrollable()&&this._adapter.isContentChild(r[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 r=this._fullscreen?i:{y:Math.max(i.y,this._dragContext.height)};(!this._lastPosition||r.y!==this._lastPosition.y)&&this._adapter.emitHostEvent(o.events.DRAGGED,r,!0,!0)&&(this._lastPosition=_(v({},r),{clientY:e}),this._adapter.setContainerHeight(r.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-icon-button{display:-webkit-inline-box;display:inline-flex;-webkit-box-pack:center;justify-content:center;-webkit-box-align:center;align-items:center;position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;border:none;outline:0;background-color:transparent;fill:currentColor;color:inherit;font-size:24px;text-decoration:none;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;width:48px;height:48px;padding:12px}.forge-icon-button forge-icon,.forge-icon-button img,.forge-icon-button svg{width:24px;height:24px}.forge-icon-button:disabled{color:rgba(0,0,0,.38);color:var(--mdc-theme-text-disabled-on-light,rgba(0,0,0,.38))}.forge-icon-button:disabled{cursor:default;pointer-events:none}.forge-icon-button__icon{display:inline-block}.forge-icon-button__icon.forge-icon-button__icon--on{display:none}.forge-icon-button--on .forge-icon-button__icon{display:none}.forge-icon-button--on .forge-icon-button__icon.forge-icon-button__icon--on{display:inline-block}@-webkit-keyframes mdc-ripple-fg-radius-in{from{-webkit-animation-timing-function:cubic-bezier(0.4,0,0.2,1);animation-timing-function:cubic-bezier(0.4,0,0.2,1);-webkit-transform:translate(var(--mdc-ripple-fg-translate-start,0)) scale(1);transform:translate(var(--mdc-ripple-fg-translate-start,0)) scale(1)}to{-webkit-transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1));transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1))}}@keyframes mdc-ripple-fg-radius-in{from{-webkit-animation-timing-function:cubic-bezier(0.4,0,0.2,1);animation-timing-function:cubic-bezier(0.4,0,0.2,1);-webkit-transform:translate(var(--mdc-ripple-fg-translate-start,0)) scale(1);transform:translate(var(--mdc-ripple-fg-translate-start,0)) scale(1)}to{-webkit-transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1));transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1))}}@-webkit-keyframes mdc-ripple-fg-opacity-in{from{-webkit-animation-timing-function:linear;animation-timing-function:linear;opacity:0}to{opacity:var(--mdc-ripple-fg-opacity, 0)}}@keyframes mdc-ripple-fg-opacity-in{from{-webkit-animation-timing-function:linear;animation-timing-function:linear;opacity:0}to{opacity:var(--mdc-ripple-fg-opacity, 0)}}@-webkit-keyframes mdc-ripple-fg-opacity-out{from{-webkit-animation-timing-function:linear;animation-timing-function:linear;opacity:var(--mdc-ripple-fg-opacity, 0)}to{opacity:0}}@keyframes mdc-ripple-fg-opacity-out{from{-webkit-animation-timing-function:linear;animation-timing-function:linear;opacity:var(--mdc-ripple-fg-opacity, 0)}to{opacity:0}}.forge-icon-button{--mdc-ripple-fg-size:0;--mdc-ripple-left:0;--mdc-ripple-top:0;--mdc-ripple-fg-scale:1;--mdc-ripple-fg-translate-end:0;--mdc-ripple-fg-translate-start:0;-webkit-tap-highlight-color:transparent;will-change:transform,opacity}.forge-icon-button::after,.forge-icon-button::before{position:absolute;border-radius:50%;opacity:0;pointer-events:none;content:""}.forge-icon-button::before{-webkit-transition:opacity 15ms linear,background-color 15ms linear;transition:opacity 15ms linear,background-color 15ms linear;z-index:1;z-index:var(--mdc-ripple-z-index,1)}.forge-icon-button::after{z-index:0;z-index:var(--mdc-ripple-z-index,0)}.forge-icon-button.mdc-ripple-upgraded::before{-webkit-transform:scale(var(--mdc-ripple-fg-scale,1));transform:scale(var(--mdc-ripple-fg-scale,1))}.forge-icon-button.mdc-ripple-upgraded::after{top:0;left:0;-webkit-transform:scale(0);transform:scale(0);-webkit-transform-origin:center center;transform-origin:center center}.forge-icon-button.mdc-ripple-upgraded--unbounded::after{top:var(--mdc-ripple-top,0);left:var(--mdc-ripple-left,0)}.forge-icon-button.mdc-ripple-upgraded--foreground-activation::after{-webkit-animation:mdc-ripple-fg-radius-in 225ms forwards,mdc-ripple-fg-opacity-in 75ms forwards;animation:mdc-ripple-fg-radius-in 225ms forwards,mdc-ripple-fg-opacity-in 75ms forwards}.forge-icon-button.mdc-ripple-upgraded--foreground-deactivation::after{-webkit-animation:mdc-ripple-fg-opacity-out 150ms;animation:mdc-ripple-fg-opacity-out 150ms;-webkit-transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1));transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1))}.forge-icon-button::after,.forge-icon-button::before{top:calc(50% - 50%);left:calc(50% - 50%);width:100%;height:100%}.forge-icon-button.mdc-ripple-upgraded::after,.forge-icon-button.mdc-ripple-upgraded::before{top:var(--mdc-ripple-top,calc(50% - 50%));left:var(--mdc-ripple-left,calc(50% - 50%));width:var(--mdc-ripple-fg-size,100%);height:var(--mdc-ripple-fg-size,100%)}.forge-icon-button.mdc-ripple-upgraded::after{width:var(--mdc-ripple-fg-size,100%);height:var(--mdc-ripple-fg-size,100%)}.forge-icon-button::after,.forge-icon-button::before{background-color:#000;background-color:var(--mdc-ripple-color,var(--mdc-theme-on-surface,#000))}.forge-icon-button.mdc-ripple-surface--hover::before,.forge-icon-button:hover::before{opacity:.04;opacity:var(--mdc-ripple-hover-opacity, .04)}.forge-icon-button.mdc-ripple-upgraded--background-focused::before,.forge-icon-button:not(.mdc-ripple-upgraded):focus::before{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.12;opacity:var(--mdc-ripple-focus-opacity, .12)}.forge-icon-button:not(.mdc-ripple-upgraded)::after{-webkit-transition:opacity 150ms linear;transition:opacity 150ms linear}.forge-icon-button:not(.mdc-ripple-upgraded):active::after{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.12;opacity:var(--mdc-ripple-press-opacity, .12)}.forge-icon-button.mdc-ripple-upgraded{--mdc-ripple-fg-opacity:var(--mdc-ripple-press-opacity, 0.12)}forge-icon-button{position:relative;display:inline-block;overflow:visible}.forge-icon-button--on{color:#6200ee;color:var(--mdc-theme-primary,#6200ee)}.forge-icon-button--on::after,.forge-icon-button--on::before{background-color:#6200ee;background-color:var(--mdc-ripple-color,var(--mdc-theme-primary,#6200ee))}.forge-icon-button--on.mdc-ripple-surface--hover::before,.forge-icon-button--on:hover::before{opacity:.04;opacity:var(--mdc-ripple-hover-opacity, .04)}.forge-icon-button--on.mdc-ripple-upgraded--background-focused::before,.forge-icon-button--on:not(.mdc-ripple-upgraded):focus::before{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.12;opacity:var(--mdc-ripple-focus-opacity, .12)}.forge-icon-button--on:not(.mdc-ripple-upgraded)::after{-webkit-transition:opacity 150ms linear;transition:opacity 150ms linear}.forge-icon-button--on:not(.mdc-ripple-upgraded):active::after{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.12;opacity:var(--mdc-ripple-press-opacity, .12)}.forge-icon-button--on.mdc-ripple-upgraded{--mdc-ripple-fg-opacity:var(--mdc-ripple-press-opacity, 0.12)}.forge-icon-button--on::before{background-color:#6200ee;background-color:var(--mdc-theme-primary,#6200ee);opacity:.08}.forge-icon-button--dense{width:28px;height:28px;padding:2px;padding:0}.forge-icon-button--dense-1{width:44px;height:44px;padding:10px}.forge-icon-button--dense-2{width:40px;height:40px;padding:8px}.forge-icon-button--dense-3{width:36px;height:36px;padding:6px}.forge-icon-button--dense-4{width:32px;height:32px;padding:4px}.forge-icon-button--dense-5{width:28px;height:28px;padding:2px}.forge-icon-button--dense-6{width:24px;height:24px;padding:0}.forge-icon-button--with-badge forge-badge{z-index:1;z-index:var(--forge-z-index-surface,1);pointer-events:none;--forge-badge-max-width:32px;--forge-badge-border:1px solid transparent}.forge-icon-button--with-badge forge-badge[app-bar-context]{--forge-badge-border:2px solid var(--forge-app-bar-theme-background)}.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=class extends HTMLElement{constructor(){super();y(this,I,R),this._foundation=new b(new m(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,r){switch(e){case o.attributes.BACKDROP_CLOSE:this.backdropClose=d(r);break;case o.attributes.ESCAPE_CLOSE:this.escapeClose=d(r);break;case o.attributes.OPEN:this.open=d(r);break;case o.attributes.FULLSCREEN:this.fullscreen=d(r);break;case o.attributes.SHOW_BACKDROP:this.showBackdrop=d(r);break}}};a([s()],n.prototype,"backdropClose",2),a([s()],n.prototype,"escapeClose",2),a([s()],n.prototype,"open",2),a([s()],n.prototype,"fullscreen",2),a([s()],n.prototype,"showBackdrop",2),a([s()],n.prototype,"openCallback",2),a([s()],n.prototype,"closeCallback",2),a([s()],n.prototype,"beforeCloseCallback",2),n=a([x({name:o.elementName,dependencies:[H]})],n);function ve(){k(n)}export{o as a,m as b,b as c,n as d,ve as e};
7
+ //# sourceMappingURL=chunk.CDGZYUQS.js.map