@tylertech/forge 2.5.0 → 2.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (406) hide show
  1. package/custom-elements.json +114521 -0
  2. package/dist/esm/accordion/index.js +4 -4
  3. package/dist/esm/app-bar/help-button/index.js +14 -14
  4. package/dist/esm/app-bar/index.js +24 -24
  5. package/dist/esm/app-bar/menu-button/index.js +5 -5
  6. package/dist/esm/app-bar/notification-button/index.js +6 -6
  7. package/dist/esm/app-bar/profile-button/index.js +10 -10
  8. package/dist/esm/app-bar/search/index.js +3 -3
  9. package/dist/esm/autocomplete/index.js +16 -16
  10. package/dist/esm/avatar/index.js +1 -1
  11. package/dist/esm/backdrop/index.js +1 -1
  12. package/dist/esm/badge/index.js +1 -1
  13. package/dist/esm/banner/index.js +5 -5
  14. package/dist/esm/bottom-sheet/index.js +8 -8
  15. package/dist/esm/busy-indicator/index.js +6 -6
  16. package/dist/esm/button/index.js +2 -2
  17. package/dist/esm/button-toggle/button-toggle/index.js +3 -3
  18. package/dist/esm/button-toggle/button-toggle-group/index.js +3 -3
  19. package/dist/esm/button-toggle/index.js +4 -4
  20. package/dist/esm/calendar/calendar-dropdown/index.js +3 -3
  21. package/dist/esm/calendar/calendar-menu/index.js +1 -1
  22. package/dist/esm/calendar/index.js +9 -9
  23. package/dist/esm/card/index.js +1 -1
  24. package/dist/esm/checkbox/index.js +2 -2
  25. package/dist/esm/chip-field/index.js +6 -6
  26. package/dist/esm/chips/chip/index.js +4 -4
  27. package/dist/esm/chips/chip-set/index.js +4 -4
  28. package/dist/esm/chips/index.js +5 -5
  29. package/dist/esm/chunks/{chunk.K7P3WRAY.js → chunk.2MBI5DLT.js} +6 -6
  30. package/dist/esm/chunks/{chunk.K7P3WRAY.js.map → chunk.2MBI5DLT.js.map} +2 -2
  31. package/dist/esm/chunks/{chunk.HRZBANYY.js → chunk.2WBHHTUM.js} +2 -2
  32. package/dist/esm/chunks/{chunk.HRZBANYY.js.map → chunk.2WBHHTUM.js.map} +2 -2
  33. package/dist/esm/chunks/{chunk.WXFCZJJI.js → chunk.3EHQ3YHJ.js} +1 -1
  34. package/dist/esm/chunks/{chunk.WXFCZJJI.js.map → chunk.3EHQ3YHJ.js.map} +2 -2
  35. package/dist/esm/chunks/{chunk.R5RVCPM2.js → chunk.3QXCVTCP.js} +2 -2
  36. package/dist/esm/chunks/{chunk.R5RVCPM2.js.map → chunk.3QXCVTCP.js.map} +0 -0
  37. package/dist/esm/chunks/{chunk.NFUWLTHW.js → chunk.46BED43J.js} +3 -3
  38. package/dist/esm/chunks/{chunk.NFUWLTHW.js.map → chunk.46BED43J.js.map} +2 -2
  39. package/dist/esm/chunks/{chunk.VTXXZ5KT.js → chunk.4PF7WRP4.js} +2 -2
  40. package/dist/esm/chunks/{chunk.VTXXZ5KT.js.map → chunk.4PF7WRP4.js.map} +2 -2
  41. package/dist/esm/chunks/{chunk.KZ2QNQK2.js → chunk.4WLVFWKI.js} +2 -2
  42. package/dist/esm/chunks/{chunk.KZ2QNQK2.js.map → chunk.4WLVFWKI.js.map} +0 -0
  43. package/dist/esm/chunks/{chunk.C2MR3RDF.js → chunk.56BNM7F2.js} +1 -1
  44. package/dist/esm/chunks/{chunk.C2MR3RDF.js.map → chunk.56BNM7F2.js.map} +2 -2
  45. package/dist/esm/chunks/{chunk.F2TZX24O.js → chunk.5H65ASFE.js} +74 -74
  46. package/dist/esm/chunks/{chunk.F2TZX24O.js.map → chunk.5H65ASFE.js.map} +0 -0
  47. package/dist/esm/chunks/{chunk.3GRDFAFV.js → chunk.5OYAJ36F.js} +2 -2
  48. package/dist/esm/chunks/{chunk.3GRDFAFV.js.map → chunk.5OYAJ36F.js.map} +0 -0
  49. package/dist/esm/chunks/{chunk.4UKSUUTX.js → chunk.5U6ZT6MC.js} +2 -2
  50. package/dist/esm/chunks/{chunk.4UKSUUTX.js.map → chunk.5U6ZT6MC.js.map} +2 -2
  51. package/dist/esm/chunks/{chunk.ANNBOFGK.js → chunk.65GHMPX2.js} +2 -2
  52. package/dist/esm/chunks/{chunk.ANNBOFGK.js.map → chunk.65GHMPX2.js.map} +2 -2
  53. package/dist/esm/chunks/{chunk.LCVWXB3K.js → chunk.67B6JDOJ.js} +3 -3
  54. package/dist/esm/chunks/{chunk.LCVWXB3K.js.map → chunk.67B6JDOJ.js.map} +2 -2
  55. package/dist/esm/chunks/{chunk.EL6B2ODN.js → chunk.6ZBFCE2A.js} +1 -1
  56. package/dist/esm/chunks/{chunk.EL6B2ODN.js.map → chunk.6ZBFCE2A.js.map} +2 -2
  57. package/dist/esm/chunks/{chunk.VAPJ75PS.js → chunk.7FWTBD6Y.js} +2 -2
  58. package/dist/esm/chunks/{chunk.VAPJ75PS.js.map → chunk.7FWTBD6Y.js.map} +0 -0
  59. package/dist/esm/chunks/{chunk.KCK3G74Y.js → chunk.7UAH67PT.js} +2 -2
  60. package/dist/esm/chunks/{chunk.KCK3G74Y.js.map → chunk.7UAH67PT.js.map} +2 -2
  61. package/dist/esm/chunks/{chunk.VDKKTHAJ.js → chunk.ANME7BKM.js} +1 -1
  62. package/dist/esm/chunks/{chunk.VDKKTHAJ.js.map → chunk.ANME7BKM.js.map} +2 -2
  63. package/dist/esm/chunks/{chunk.O62N7AHR.js → chunk.BEAJZPWS.js} +2 -2
  64. package/dist/esm/chunks/{chunk.O62N7AHR.js.map → chunk.BEAJZPWS.js.map} +0 -0
  65. package/dist/esm/chunks/{chunk.BVGIWAUP.js → chunk.BVGJFMEG.js} +7 -7
  66. package/dist/esm/chunks/{chunk.BVGIWAUP.js.map → chunk.BVGJFMEG.js.map} +2 -2
  67. package/dist/esm/chunks/{chunk.R4UKTXEK.js → chunk.C73AZRT4.js} +4 -4
  68. package/dist/esm/chunks/{chunk.R4UKTXEK.js.map → chunk.C73AZRT4.js.map} +2 -2
  69. package/dist/esm/chunks/{chunk.APUL33GR.js → chunk.CLEUHAZ6.js} +2 -2
  70. package/dist/esm/chunks/{chunk.APUL33GR.js.map → chunk.CLEUHAZ6.js.map} +2 -2
  71. package/dist/esm/chunks/{chunk.SSXNS4NR.js → chunk.CMXAORYF.js} +5 -5
  72. package/dist/esm/chunks/{chunk.SSXNS4NR.js.map → chunk.CMXAORYF.js.map} +2 -2
  73. package/dist/esm/chunks/{chunk.U35QQZVK.js → chunk.D33KLIFD.js} +1 -1
  74. package/dist/esm/chunks/{chunk.U35QQZVK.js.map → chunk.D33KLIFD.js.map} +2 -2
  75. package/dist/esm/chunks/{chunk.5EEEKOOK.js → chunk.DLF5JAQO.js} +1 -1
  76. package/dist/esm/chunks/{chunk.5EEEKOOK.js.map → chunk.DLF5JAQO.js.map} +2 -2
  77. package/dist/esm/chunks/{chunk.ZUM5YLB2.js → chunk.E26BROOG.js} +1 -1
  78. package/dist/esm/chunks/{chunk.ZUM5YLB2.js.map → chunk.E26BROOG.js.map} +2 -2
  79. package/dist/esm/chunks/{chunk.XN65LPA3.js → chunk.EBC2HGO3.js} +3 -3
  80. package/dist/esm/chunks/chunk.EBC2HGO3.js.map +7 -0
  81. package/dist/esm/chunks/{chunk.YCW56AVX.js → chunk.FJJVIMZ2.js} +1 -1
  82. package/dist/esm/chunks/{chunk.YCW56AVX.js.map → chunk.FJJVIMZ2.js.map} +2 -2
  83. package/dist/esm/chunks/{chunk.HHHMDDTU.js → chunk.FZ6KICMD.js} +1 -1
  84. package/dist/esm/chunks/{chunk.HHHMDDTU.js.map → chunk.FZ6KICMD.js.map} +2 -2
  85. package/dist/esm/chunks/{chunk.XPC7GINT.js → chunk.GHZ75UPO.js} +3 -3
  86. package/dist/esm/chunks/{chunk.XPC7GINT.js.map → chunk.GHZ75UPO.js.map} +2 -2
  87. package/dist/esm/chunks/{chunk.SJZ54RE3.js → chunk.GL72QT42.js} +1 -1
  88. package/dist/esm/chunks/{chunk.SJZ54RE3.js.map → chunk.GL72QT42.js.map} +2 -2
  89. package/dist/esm/chunks/{chunk.PCYIY5OY.js → chunk.GNAIKBO6.js} +2 -2
  90. package/dist/esm/chunks/{chunk.PCYIY5OY.js.map → chunk.GNAIKBO6.js.map} +2 -2
  91. package/dist/esm/chunks/{chunk.G6FY472A.js → chunk.GWNR3UUX.js} +2 -2
  92. package/dist/esm/chunks/{chunk.G6FY472A.js.map → chunk.GWNR3UUX.js.map} +2 -2
  93. package/dist/esm/chunks/{chunk.2NUAEZY7.js → chunk.GXTNND2M.js} +1 -1
  94. package/dist/esm/chunks/{chunk.2NUAEZY7.js.map → chunk.GXTNND2M.js.map} +2 -2
  95. package/dist/esm/chunks/{chunk.YJ5X3WZ4.js → chunk.HASAPJMX.js} +1 -1
  96. package/dist/esm/chunks/{chunk.YJ5X3WZ4.js.map → chunk.HASAPJMX.js.map} +2 -2
  97. package/dist/esm/chunks/{chunk.EWQENJ4W.js → chunk.HMM7PGGZ.js} +2 -2
  98. package/dist/esm/chunks/{chunk.EWQENJ4W.js.map → chunk.HMM7PGGZ.js.map} +2 -2
  99. package/dist/esm/chunks/{chunk.P7SAJ6M7.js → chunk.I6PJGNJS.js} +2 -2
  100. package/dist/esm/chunks/{chunk.P7SAJ6M7.js.map → chunk.I6PJGNJS.js.map} +2 -2
  101. package/dist/esm/chunks/{chunk.3ZKORL4I.js → chunk.I7BQUB7Z.js} +2 -2
  102. package/dist/esm/chunks/chunk.I7BQUB7Z.js.map +7 -0
  103. package/dist/esm/chunks/{chunk.XY3ZHN7Y.js → chunk.IBED5TWL.js} +1 -1
  104. package/dist/esm/chunks/{chunk.XY3ZHN7Y.js.map → chunk.IBED5TWL.js.map} +2 -2
  105. package/dist/esm/chunks/{chunk.4FHBJXB7.js → chunk.IGBDDH3J.js} +6 -6
  106. package/dist/esm/chunks/{chunk.4FHBJXB7.js.map → chunk.IGBDDH3J.js.map} +0 -0
  107. package/dist/esm/chunks/{chunk.N3ZPWKJ5.js → chunk.IJW2YKP3.js} +12 -12
  108. package/dist/esm/chunks/{chunk.N3ZPWKJ5.js.map → chunk.IJW2YKP3.js.map} +2 -2
  109. package/dist/esm/chunks/{chunk.ID2ITG5T.js → chunk.ITQ55IPH.js} +4 -4
  110. package/dist/esm/chunks/{chunk.ID2ITG5T.js.map → chunk.ITQ55IPH.js.map} +2 -2
  111. package/dist/esm/chunks/{chunk.IBH5GL7A.js → chunk.IUNON3UL.js} +2 -2
  112. package/dist/esm/chunks/{chunk.IBH5GL7A.js.map → chunk.IUNON3UL.js.map} +2 -2
  113. package/dist/esm/chunks/{chunk.CLQS7CFC.js → chunk.J5NUYQ4D.js} +6 -6
  114. package/dist/esm/chunks/{chunk.CLQS7CFC.js.map → chunk.J5NUYQ4D.js.map} +0 -0
  115. package/dist/esm/chunks/{chunk.5E6UZZKY.js → chunk.JC2PZ4TS.js} +7 -7
  116. package/dist/esm/chunks/{chunk.5E6UZZKY.js.map → chunk.JC2PZ4TS.js.map} +2 -2
  117. package/dist/esm/chunks/{chunk.L4N2DKAS.js → chunk.JUXKYUD4.js} +8 -8
  118. package/dist/esm/chunks/{chunk.L4N2DKAS.js.map → chunk.JUXKYUD4.js.map} +2 -2
  119. package/dist/esm/chunks/{chunk.6V463G4I.js → chunk.KCVJDJ6K.js} +1 -1
  120. package/dist/esm/chunks/{chunk.6V463G4I.js.map → chunk.KCVJDJ6K.js.map} +2 -2
  121. package/dist/esm/chunks/{chunk.YMWBTMB6.js → chunk.KNR5DXE4.js} +2 -2
  122. package/dist/esm/chunks/{chunk.YMWBTMB6.js.map → chunk.KNR5DXE4.js.map} +2 -2
  123. package/dist/esm/chunks/{chunk.S6QD4UJN.js → chunk.L344BPCW.js} +1 -1
  124. package/dist/esm/chunks/{chunk.S6QD4UJN.js.map → chunk.L344BPCW.js.map} +2 -2
  125. package/dist/esm/chunks/{chunk.ZAAM3GTQ.js → chunk.L4OUV7W6.js} +5 -5
  126. package/dist/esm/chunks/{chunk.ZAAM3GTQ.js.map → chunk.L4OUV7W6.js.map} +2 -2
  127. package/dist/esm/chunks/{chunk.PXXLO4HJ.js → chunk.LHWZ4KZU.js} +3 -3
  128. package/dist/esm/chunks/{chunk.PXXLO4HJ.js.map → chunk.LHWZ4KZU.js.map} +2 -2
  129. package/dist/esm/chunks/{chunk.PQ5LOH7W.js → chunk.LK2DN5KX.js} +4 -4
  130. package/dist/esm/chunks/{chunk.PQ5LOH7W.js.map → chunk.LK2DN5KX.js.map} +2 -2
  131. package/dist/esm/chunks/{chunk.7G2S3DCM.js → chunk.LX2HDAIF.js} +2 -2
  132. package/dist/esm/chunks/{chunk.7G2S3DCM.js.map → chunk.LX2HDAIF.js.map} +2 -2
  133. package/dist/esm/chunks/{chunk.YDPSV74L.js → chunk.M3O5VPDD.js} +3 -3
  134. package/dist/esm/chunks/{chunk.YDPSV74L.js.map → chunk.M3O5VPDD.js.map} +0 -0
  135. package/dist/esm/chunks/{chunk.CKVCNPLI.js → chunk.MBZLA635.js} +12 -12
  136. package/dist/esm/chunks/{chunk.CKVCNPLI.js.map → chunk.MBZLA635.js.map} +2 -2
  137. package/dist/esm/chunks/{chunk.JB2PM7FT.js → chunk.MF3IZXQG.js} +1 -1
  138. package/dist/esm/chunks/{chunk.JB2PM7FT.js.map → chunk.MF3IZXQG.js.map} +2 -2
  139. package/dist/esm/chunks/{chunk.EL74HZRY.js → chunk.MUP3NY6M.js} +9 -9
  140. package/dist/esm/chunks/{chunk.EL74HZRY.js.map → chunk.MUP3NY6M.js.map} +2 -2
  141. package/dist/esm/chunks/{chunk.2F6PST3N.js → chunk.OXS2O7RG.js} +1 -1
  142. package/dist/esm/chunks/{chunk.2F6PST3N.js.map → chunk.OXS2O7RG.js.map} +2 -2
  143. package/dist/esm/chunks/{chunk.U2X7YAXC.js → chunk.PKZ43JNW.js} +4 -4
  144. package/dist/esm/chunks/{chunk.U2X7YAXC.js.map → chunk.PKZ43JNW.js.map} +2 -2
  145. package/dist/esm/chunks/{chunk.WAJDLUSQ.js → chunk.QHHYCB7N.js} +1 -1
  146. package/dist/esm/chunks/{chunk.WAJDLUSQ.js.map → chunk.QHHYCB7N.js.map} +2 -2
  147. package/dist/esm/chunks/{chunk.AHMBGV4N.js → chunk.QWW6A7AF.js} +6 -6
  148. package/dist/esm/chunks/{chunk.AHMBGV4N.js.map → chunk.QWW6A7AF.js.map} +2 -2
  149. package/dist/esm/chunks/{chunk.OYO6NUZY.js → chunk.QXZZ2MTF.js} +1 -1
  150. package/dist/esm/chunks/{chunk.OYO6NUZY.js.map → chunk.QXZZ2MTF.js.map} +2 -2
  151. package/dist/esm/chunks/{chunk.SSFSLBBM.js → chunk.QYWAZCBX.js} +2 -2
  152. package/dist/esm/chunks/chunk.QYWAZCBX.js.map +7 -0
  153. package/dist/esm/chunks/{chunk.Y2TDQIA4.js → chunk.RD4RIFOZ.js} +1 -1
  154. package/dist/esm/chunks/{chunk.Y2TDQIA4.js.map → chunk.RD4RIFOZ.js.map} +2 -2
  155. package/dist/esm/chunks/{chunk.EJHMX24S.js → chunk.RL7ZFLMG.js} +6 -6
  156. package/dist/esm/chunks/{chunk.EJHMX24S.js.map → chunk.RL7ZFLMG.js.map} +2 -2
  157. package/dist/esm/chunks/{chunk.AHBDISRG.js → chunk.S3UVF647.js} +2 -2
  158. package/dist/esm/chunks/{chunk.AHBDISRG.js.map → chunk.S3UVF647.js.map} +2 -2
  159. package/dist/esm/chunks/{chunk.RWCC6E4O.js → chunk.THKWQXBJ.js} +1 -1
  160. package/dist/esm/chunks/{chunk.RWCC6E4O.js.map → chunk.THKWQXBJ.js.map} +2 -2
  161. package/dist/esm/chunks/{chunk.2TEHKM2X.js → chunk.TIUNGGBF.js} +3 -3
  162. package/dist/esm/chunks/{chunk.2TEHKM2X.js.map → chunk.TIUNGGBF.js.map} +0 -0
  163. package/dist/esm/chunks/{chunk.PSHHY3ER.js → chunk.TM46MNYN.js} +4 -4
  164. package/dist/esm/chunks/{chunk.PSHHY3ER.js.map → chunk.TM46MNYN.js.map} +2 -2
  165. package/dist/esm/chunks/{chunk.7XGNGXLR.js → chunk.TYU4RLZG.js} +1 -1
  166. package/dist/esm/chunks/{chunk.7XGNGXLR.js.map → chunk.TYU4RLZG.js.map} +2 -2
  167. package/dist/esm/chunks/{chunk.QFPOG3VH.js → chunk.U37G47LH.js} +7 -7
  168. package/dist/esm/chunks/{chunk.QFPOG3VH.js.map → chunk.U37G47LH.js.map} +2 -2
  169. package/dist/esm/chunks/{chunk.HZML57TK.js → chunk.U5ECVIX5.js} +5 -5
  170. package/dist/esm/chunks/{chunk.HZML57TK.js.map → chunk.U5ECVIX5.js.map} +2 -2
  171. package/dist/esm/chunks/{chunk.DJX5CEYP.js → chunk.UPW5HUKB.js} +5 -5
  172. package/dist/esm/chunks/{chunk.DJX5CEYP.js.map → chunk.UPW5HUKB.js.map} +2 -2
  173. package/dist/esm/chunks/{chunk.ISR3SND2.js → chunk.UQ3QTUUB.js} +2 -2
  174. package/dist/esm/chunks/{chunk.ISR3SND2.js.map → chunk.UQ3QTUUB.js.map} +2 -2
  175. package/dist/esm/chunks/{chunk.JVQP6BJ3.js → chunk.V2ELLBDP.js} +1 -1
  176. package/dist/esm/chunks/{chunk.JVQP6BJ3.js.map → chunk.V2ELLBDP.js.map} +2 -2
  177. package/dist/esm/chunks/{chunk.2LQMHAC7.js → chunk.V6Q2SM6Y.js} +1 -1
  178. package/dist/esm/chunks/{chunk.2LQMHAC7.js.map → chunk.V6Q2SM6Y.js.map} +2 -2
  179. package/dist/esm/chunks/{chunk.WVVWDQLQ.js → chunk.VXAPRFMK.js} +4 -4
  180. package/dist/esm/chunks/{chunk.WVVWDQLQ.js.map → chunk.VXAPRFMK.js.map} +2 -2
  181. package/dist/esm/chunks/{chunk.NF2CS4ZM.js → chunk.VXVE7KEM.js} +4 -4
  182. package/dist/esm/chunks/{chunk.NF2CS4ZM.js.map → chunk.VXVE7KEM.js.map} +2 -2
  183. package/dist/esm/chunks/{chunk.P7NOYP4O.js → chunk.WDD2GTIH.js} +1 -1
  184. package/dist/esm/chunks/{chunk.P7NOYP4O.js.map → chunk.WDD2GTIH.js.map} +2 -2
  185. package/dist/esm/chunks/{chunk.RNPIV3BY.js → chunk.WNVZQDNS.js} +1 -1
  186. package/dist/esm/chunks/{chunk.RNPIV3BY.js.map → chunk.WNVZQDNS.js.map} +2 -2
  187. package/dist/esm/chunks/{chunk.3MO6XU44.js → chunk.WSH4S3GM.js} +1 -1
  188. package/dist/esm/chunks/{chunk.3MO6XU44.js.map → chunk.WSH4S3GM.js.map} +2 -2
  189. package/dist/esm/chunks/{chunk.MIGASQA3.js → chunk.XHMNHBZD.js} +2 -2
  190. package/dist/esm/chunks/{chunk.MIGASQA3.js.map → chunk.XHMNHBZD.js.map} +2 -2
  191. package/dist/esm/chunks/{chunk.DB7ZQBES.js → chunk.YL2NAVJW.js} +1 -1
  192. package/dist/esm/chunks/{chunk.DB7ZQBES.js.map → chunk.YL2NAVJW.js.map} +2 -2
  193. package/dist/esm/chunks/{chunk.EXKNFD5S.js → chunk.ZLF2G3YT.js} +11 -11
  194. package/dist/esm/chunks/{chunk.EXKNFD5S.js.map → chunk.ZLF2G3YT.js.map} +2 -2
  195. package/dist/esm/chunks/{chunk.EKIW7VYG.js → chunk.ZXIDTDRC.js} +1 -1
  196. package/dist/esm/chunks/{chunk.EKIW7VYG.js.map → chunk.ZXIDTDRC.js.map} +2 -2
  197. package/dist/esm/circular-progress/index.js +1 -1
  198. package/dist/esm/color-picker/index.js +5 -5
  199. package/dist/esm/date-picker/index.js +12 -12
  200. package/dist/esm/date-range-picker/index.js +12 -12
  201. package/dist/esm/dialog/index.js +8 -8
  202. package/dist/esm/divider/index.js +1 -1
  203. package/dist/esm/drawer/drawer/index.js +1 -1
  204. package/dist/esm/drawer/index.js +4 -4
  205. package/dist/esm/drawer/mini-drawer/index.js +1 -1
  206. package/dist/esm/drawer/modal-drawer/index.js +2 -2
  207. package/dist/esm/expansion-panel/index.js +3 -3
  208. package/dist/esm/file-picker/index.js +3 -3
  209. package/dist/esm/floating-action-button/index.js +2 -2
  210. package/dist/esm/icon/index.js +1 -1
  211. package/dist/esm/icon-button/index.js +3 -3
  212. package/dist/esm/index.js +84 -84
  213. package/dist/esm/inline-message/index.js +1 -1
  214. package/dist/esm/keyboard-shortcut/index.js +1 -1
  215. package/dist/esm/label-value/index.js +1 -1
  216. package/dist/esm/linear-progress/index.js +1 -1
  217. package/dist/esm/list/index.js +3 -3
  218. package/dist/esm/list/list/index.js +3 -3
  219. package/dist/esm/list/list-item/index.js +2 -2
  220. package/dist/esm/list-dropdown/index.js +8 -8
  221. package/dist/esm/menu/index.js +11 -11
  222. package/dist/esm/open-icon/index.js +2 -2
  223. package/dist/esm/page-state/index.js +1 -1
  224. package/dist/esm/paginator/index.js +21 -21
  225. package/dist/esm/popup/index.js +1 -1
  226. package/dist/esm/product-icon/index.js +1 -1
  227. package/dist/esm/profile-card/index.js +5 -5
  228. package/dist/esm/quantity-field/index.js +4 -4
  229. package/dist/esm/radio/index.js +2 -2
  230. package/dist/esm/ripple/index.js +1 -1
  231. package/dist/esm/scaffold/index.js +1 -1
  232. package/dist/esm/select/core/index.js +12 -12
  233. package/dist/esm/select/index.js +19 -19
  234. package/dist/esm/select/option/index.js +1 -1
  235. package/dist/esm/select/option-group/index.js +1 -1
  236. package/dist/esm/select/select/index.js +17 -17
  237. package/dist/esm/select/select-dropdown/index.js +17 -17
  238. package/dist/esm/skeleton/index.js +1 -1
  239. package/dist/esm/slider/index.js +1 -1
  240. package/dist/esm/stepper/index.js +4 -4
  241. package/dist/esm/stepper/step/index.js +3 -3
  242. package/dist/esm/stepper/stepper/index.js +4 -4
  243. package/dist/esm/switch/index.js +1 -1
  244. package/dist/esm/table/index.js +7 -7
  245. package/dist/esm/tabs/index.js +6 -6
  246. package/dist/esm/tabs/tab/index.js +3 -3
  247. package/dist/esm/tabs/tab-bar/index.js +5 -5
  248. package/dist/esm/text-field/index.js +1 -1
  249. package/dist/esm/time-picker/index.js +16 -16
  250. package/dist/esm/toast/index.js +5 -5
  251. package/dist/esm/toolbar/index.js +1 -1
  252. package/dist/esm/tooltip/index.js +1 -1
  253. package/dist/esm/view-switcher/index.js +2 -2
  254. package/dist/esm/view-switcher/view/index.js +1 -1
  255. package/esm/accordion/accordion.d.ts +2 -0
  256. package/esm/accordion/accordion.js +2 -0
  257. package/esm/app-bar/app-bar.d.ts +5 -1
  258. package/esm/app-bar/app-bar.js +5 -1
  259. package/esm/app-bar/help-button/app-bar-help-button.d.ts +5 -0
  260. package/esm/app-bar/help-button/app-bar-help-button.js +5 -0
  261. package/esm/app-bar/menu-button/app-bar-menu-button.d.ts +5 -0
  262. package/esm/app-bar/menu-button/app-bar-menu-button.js +5 -0
  263. package/esm/app-bar/notification-button/app-bar-notification-button.d.ts +5 -0
  264. package/esm/app-bar/notification-button/app-bar-notification-button.js +5 -0
  265. package/esm/app-bar/profile-button/app-bar-profile-button.d.ts +5 -0
  266. package/esm/app-bar/profile-button/app-bar-profile-button.js +5 -0
  267. package/esm/app-bar/search/app-bar-search.d.ts +26 -0
  268. package/esm/app-bar/search/app-bar-search.js +26 -0
  269. package/esm/autocomplete/autocomplete.d.ts +2 -0
  270. package/esm/autocomplete/autocomplete.js +2 -0
  271. package/esm/avatar/avatar.d.ts +2 -0
  272. package/esm/avatar/avatar.js +2 -0
  273. package/esm/backdrop/backdrop.d.ts +2 -0
  274. package/esm/backdrop/backdrop.js +2 -0
  275. package/esm/badge/badge.d.ts +5 -0
  276. package/esm/badge/badge.js +5 -0
  277. package/esm/banner/banner.d.ts +2 -0
  278. package/esm/banner/banner.js +2 -0
  279. package/esm/bottom-sheet/bottom-sheet.d.ts +5 -0
  280. package/esm/bottom-sheet/bottom-sheet.js +5 -0
  281. package/esm/busy-indicator/busy-indicator.d.ts +5 -1
  282. package/esm/busy-indicator/busy-indicator.js +5 -1
  283. package/esm/button/button.d.ts +2 -0
  284. package/esm/button/button.js +2 -0
  285. package/esm/button-toggle/button-toggle/button-toggle.d.ts +5 -0
  286. package/esm/button-toggle/button-toggle/button-toggle.js +5 -0
  287. package/esm/button-toggle/button-toggle-group/button-toggle-group.d.ts +5 -0
  288. package/esm/button-toggle/button-toggle-group/button-toggle-group.js +5 -0
  289. package/esm/calendar/calendar-menu/calendar-menu.d.ts +6 -0
  290. package/esm/calendar/calendar-menu/calendar-menu.js +6 -0
  291. package/esm/calendar/calendar.d.ts +5 -0
  292. package/esm/calendar/calendar.js +5 -0
  293. package/esm/card/card.d.ts +5 -1
  294. package/esm/card/card.js +5 -1
  295. package/esm/checkbox/checkbox.d.ts +2 -0
  296. package/esm/checkbox/checkbox.js +2 -0
  297. package/esm/chip-field/chip-field.d.ts +5 -0
  298. package/esm/chip-field/chip-field.js +5 -0
  299. package/esm/chips/chip/chip.d.ts +2 -0
  300. package/esm/chips/chip/chip.js +2 -0
  301. package/esm/chips/chip-set/chip-set.d.ts +5 -0
  302. package/esm/chips/chip-set/chip-set.js +5 -0
  303. package/esm/circular-progress/circular-progress.d.ts +5 -0
  304. package/esm/circular-progress/circular-progress.js +5 -0
  305. package/esm/color-picker/color-picker.d.ts +5 -0
  306. package/esm/color-picker/color-picker.js +5 -0
  307. package/esm/date-picker/date-picker.d.ts +5 -1
  308. package/esm/date-picker/date-picker.js +5 -1
  309. package/esm/date-range-picker/date-range-picker.d.ts +5 -1
  310. package/esm/date-range-picker/date-range-picker.js +5 -1
  311. package/esm/dialog/dialog.d.ts +5 -0
  312. package/esm/dialog/dialog.js +5 -0
  313. package/esm/divider/divider.d.ts +2 -0
  314. package/esm/divider/divider.js +2 -0
  315. package/esm/drawer/drawer/drawer.d.ts +5 -0
  316. package/esm/drawer/drawer/drawer.js +5 -0
  317. package/esm/drawer/mini-drawer/mini-drawer.d.ts +5 -0
  318. package/esm/drawer/mini-drawer/mini-drawer.js +5 -0
  319. package/esm/drawer/modal-drawer/modal-drawer.d.ts +5 -0
  320. package/esm/drawer/modal-drawer/modal-drawer.js +5 -0
  321. package/esm/expansion-panel/expansion-panel.d.ts +2 -0
  322. package/esm/expansion-panel/expansion-panel.js +2 -0
  323. package/esm/file-picker/file-picker.d.ts +5 -0
  324. package/esm/file-picker/file-picker.js +5 -0
  325. package/esm/floating-action-button/floating-action-button.d.ts +5 -1
  326. package/esm/floating-action-button/floating-action-button.js +5 -1
  327. package/esm/icon/icon.d.ts +5 -0
  328. package/esm/icon/icon.js +5 -0
  329. package/esm/icon-button/icon-button.d.ts +2 -0
  330. package/esm/icon-button/icon-button.js +2 -0
  331. package/esm/inline-message/inline-message.d.ts +5 -0
  332. package/esm/inline-message/inline-message.js +5 -0
  333. package/esm/keyboard-shortcut/keyboard-shortcut.d.ts +5 -0
  334. package/esm/keyboard-shortcut/keyboard-shortcut.js +5 -0
  335. package/esm/label-value/label-value.d.ts +5 -0
  336. package/esm/label-value/label-value.js +5 -0
  337. package/esm/linear-progress/linear-progress.d.ts +5 -0
  338. package/esm/linear-progress/linear-progress.js +5 -0
  339. package/esm/list/list/list.d.ts +2 -0
  340. package/esm/list/list/list.js +2 -0
  341. package/esm/list/list-item/list-item.d.ts +5 -1
  342. package/esm/list/list-item/list-item.js +5 -1
  343. package/esm/menu/menu.d.ts +5 -0
  344. package/esm/menu/menu.js +5 -0
  345. package/esm/open-icon/open-icon.d.ts +5 -0
  346. package/esm/open-icon/open-icon.js +5 -0
  347. package/esm/page-state/page-state.d.ts +5 -0
  348. package/esm/page-state/page-state.js +5 -0
  349. package/esm/paginator/paginator.d.ts +2 -0
  350. package/esm/paginator/paginator.js +2 -0
  351. package/esm/popup/popup.d.ts +5 -0
  352. package/esm/popup/popup.js +5 -0
  353. package/esm/product-icon/product-icon.d.ts +5 -0
  354. package/esm/product-icon/product-icon.js +5 -0
  355. package/esm/profile-card/profile-card.d.ts +5 -0
  356. package/esm/profile-card/profile-card.js +5 -0
  357. package/esm/quantity-field/quantity-field.d.ts +5 -0
  358. package/esm/quantity-field/quantity-field.js +5 -0
  359. package/esm/radio/radio.d.ts +2 -0
  360. package/esm/radio/radio.js +2 -0
  361. package/esm/ripple/ripple.d.ts +5 -0
  362. package/esm/ripple/ripple.js +5 -0
  363. package/esm/scaffold/scaffold.d.ts +2 -0
  364. package/esm/scaffold/scaffold.js +2 -0
  365. package/esm/select/option/option.d.ts +2 -0
  366. package/esm/select/option/option.js +2 -0
  367. package/esm/select/option-group/option-group.d.ts +2 -0
  368. package/esm/select/option-group/option-group.js +2 -0
  369. package/esm/select/select/select.d.ts +2 -0
  370. package/esm/select/select/select.js +2 -0
  371. package/esm/select/select-dropdown/select-dropdown.d.ts +5 -0
  372. package/esm/select/select-dropdown/select-dropdown.js +5 -0
  373. package/esm/skeleton/skeleton.d.ts +5 -0
  374. package/esm/skeleton/skeleton.js +5 -0
  375. package/esm/slider/slider.d.ts +2 -0
  376. package/esm/slider/slider.js +2 -0
  377. package/esm/stepper/step/step.d.ts +5 -0
  378. package/esm/stepper/step/step.js +5 -0
  379. package/esm/stepper/stepper/stepper.d.ts +5 -0
  380. package/esm/stepper/stepper/stepper.js +5 -0
  381. package/esm/switch/switch.d.ts +2 -0
  382. package/esm/switch/switch.js +2 -0
  383. package/esm/table/table.d.ts +3 -1
  384. package/esm/table/table.js +3 -1
  385. package/esm/tabs/tab/tab.d.ts +5 -0
  386. package/esm/tabs/tab/tab.js +5 -0
  387. package/esm/tabs/tab-bar/tab-bar.d.ts +2 -0
  388. package/esm/tabs/tab-bar/tab-bar.js +2 -0
  389. package/esm/text-field/text-field.d.ts +5 -0
  390. package/esm/text-field/text-field.js +5 -0
  391. package/esm/time-picker/time-picker.d.ts +5 -0
  392. package/esm/time-picker/time-picker.js +5 -0
  393. package/esm/toast/toast.d.ts +2 -0
  394. package/esm/toast/toast.js +2 -0
  395. package/esm/toolbar/toolbar.d.ts +5 -0
  396. package/esm/toolbar/toolbar.js +5 -0
  397. package/esm/tooltip/tooltip.d.ts +5 -1
  398. package/esm/tooltip/tooltip.js +5 -1
  399. package/esm/view-switcher/view/view.d.ts +5 -0
  400. package/esm/view-switcher/view/view.js +5 -0
  401. package/esm/view-switcher/view-switcher.d.ts +5 -0
  402. package/esm/view-switcher/view-switcher.js +5 -0
  403. package/package.json +3 -2
  404. package/dist/esm/chunks/chunk.3ZKORL4I.js.map +0 -7
  405. package/dist/esm/chunks/chunk.SSFSLBBM.js.map +0 -7
  406. package/dist/esm/chunks/chunk.XN65LPA3.js.map +0 -7
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/button-toggle/button-toggle-group/button-toggle-group-constants.ts", "../../src/button-toggle/button-toggle-group/button-toggle-group-adapter.ts", "../../src/button-toggle/button-toggle-group/button-toggle-group-foundation.ts", "../../src/button-toggle/button-toggle-group/button-toggle-group.ts", "../../src/button-toggle/button-toggle-group/index.ts"],
4
- "sourcesContent": ["import { COMPONENT_NAME_PREFIX } from '../../constants';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}button-toggle-group`;\n\nconst attributes = {\n VALUE: 'value',\n MULTIPLE: 'multiple',\n MANDATORY: 'mandatory',\n VERTICAL: 'vertical',\n STRETCH: 'stretch',\n DISABLED: 'disabled',\n DENSE: 'dense'\n};\n\nconst classes = {\n VERTICAL: 'forge-button-toggle-group--vertical',\n STRETCH: 'forge-button-toggle-group--stretch'\n};\n\nconst selectors = {\n ROOT: '.forge-button-toggle-group'\n};\n\nconst events = {\n CHANGE: `${elementName}-change`\n};\n\nexport const BUTTON_TOGGLE_GROUP_CONSTANTS = {\n elementName,\n attributes,\n classes,\n selectors,\n events\n};\n\nexport type IButtonToggleGroupChangeEventData<T> = T;\n\nexport interface IButtonToggleOption {\n label?: string;\n icon?: string;\n value: any;\n leadingIcon?: string;\n trailingIcon?: string;\n}\n", "import { getShadowElement, removeAllChildren } from '@tylertech/forge-core';\nimport { ICON_CLASS_NAME } from '../../constants';\nimport { BaseAdapter, IBaseAdapter } from '../../core/base/base-adapter';\nimport { IButtonToggleComponent } from '../button-toggle/button-toggle';\nimport { BUTTON_TOGGLE_CONSTANTS } from '../button-toggle/button-toggle-constants';\nimport { IButtonToggleGroupComponent } from './button-toggle-group';\nimport { BUTTON_TOGGLE_GROUP_CONSTANTS, IButtonToggleOption } from './button-toggle-group-constants';\n\nexport interface IButtonToggleGroupAdapter extends IBaseAdapter {\n addListener(type: string, listener: (evt: Event) => void): void;\n removeListener(type: string, listener: (evt: Event) => void): void;\n addSlotChangeListener(listener: (evt: Event) => void): void;\n removeSlotChangeListener(listener: (evt: Event) => void): void;\n deselect(selectedToggle: IButtonToggleComponent): void;\n applyAdjacentSelections(isVertical: boolean): void;\n setVertical(isVertical: boolean): void;\n setStretch(value: boolean): void;\n setDense(value: boolean): void;\n setDisabled(value: boolean): void;\n getSelectedValues(): any[];\n applyValues(values: any[]): void;\n createOptions(options: IButtonToggleOption[]): void;\n}\n\nexport class ButtonToggleGroupAdapter extends BaseAdapter<IButtonToggleGroupComponent> implements IButtonToggleGroupAdapter {\n private _rootElement: HTMLElement;\n private _slotElement: HTMLSlotElement;\n\n constructor(component: IButtonToggleGroupComponent) {\n super(component);\n this._rootElement = getShadowElement(component, BUTTON_TOGGLE_GROUP_CONSTANTS.selectors.ROOT);\n this._slotElement = this._rootElement.querySelector('slot') as HTMLSlotElement;\n }\n\n public addListener(type: string, listener: (evt: Event) => void): void {\n this._rootElement.addEventListener(type, listener);\n }\n\n public removeListener(type: string, listener: (evt: Event) => void): void {\n this._rootElement.removeEventListener(type, listener);\n }\n\n public addSlotChangeListener(listener: EventListener): void {\n this._slotElement.addEventListener('slotchange', listener);\n }\n public removeSlotChangeListener(listener: EventListener): void {\n this._slotElement.addEventListener('slotchange', listener);\n }\n\n public deselect(selectedToggle: IButtonToggleComponent): void {\n const toggles = this._getButtonToggleElements();\n toggles.filter(t => t !== selectedToggle).forEach(t => t.selected = false);\n }\n\n public applyAdjacentSelections(isVertical: boolean): void {\n const toggles = this._getButtonToggleElements();\n for (let i = toggles.length - 1; i > 0; i--) {\n toggles[i].removeAttribute(BUTTON_TOGGLE_CONSTANTS.attributes.SELECTED_ADJACENT);\n toggles[i].removeAttribute(BUTTON_TOGGLE_CONSTANTS.attributes.SELECTED_ADJACENT_VERTICAL);\n if (toggles[i].selected && toggles[i - 1].selected) {\n const attr = isVertical ? BUTTON_TOGGLE_CONSTANTS.attributes.SELECTED_ADJACENT_VERTICAL : BUTTON_TOGGLE_CONSTANTS.attributes.SELECTED_ADJACENT;\n toggles[i].setAttribute(attr, '');\n }\n }\n }\n\n public setVertical(isVertical: boolean): void {\n if (isVertical) {\n this._rootElement.classList.add(BUTTON_TOGGLE_GROUP_CONSTANTS.classes.VERTICAL);\n } else {\n this._rootElement.classList.remove(BUTTON_TOGGLE_GROUP_CONSTANTS.classes.VERTICAL);\n }\n }\n\n public setStretch(value: boolean): void {\n if (value) {\n this._rootElement.classList.add(BUTTON_TOGGLE_GROUP_CONSTANTS.classes.STRETCH);\n } else {\n this._rootElement.classList.remove(BUTTON_TOGGLE_GROUP_CONSTANTS.classes.STRETCH);\n }\n\n const toggles = this._getButtonToggleElements();\n toggles.forEach(toggle => {\n if (value) {\n toggle.setAttribute('stretch', '');\n } else {\n toggle.removeAttribute('stretch');\n }\n });\n }\n\n public setDense(value: boolean): void {\n const toggles = this._getButtonToggleElements();\n toggles.forEach(t => t.dense = value);\n }\n\n public setDisabled(value: boolean): void {\n const toggles = this._getButtonToggleElements();\n toggles.forEach(t => t.disabled = value);\n }\n\n public getSelectedValues(): any[] {\n const toggles = this._getButtonToggleElements();\n return toggles.filter(t => t.selected).map(t => t.value);\n }\n\n public applyValues(values: any[]): void {\n const toggles = this._getButtonToggleElements();\n toggles.forEach(t => t.selected = values.indexOf(t.value) >= 0);\n }\n\n public createOptions(options: IButtonToggleOption[]): void {\n removeAllChildren(this._component);\n options.forEach(o => {\n this._component.appendChild(this._createButtonToggle(o));\n });\n }\n\n private _createButtonToggle(option: IButtonToggleOption): IButtonToggleComponent {\n const buttonToggle = document.createElement(BUTTON_TOGGLE_CONSTANTS.elementName) as IButtonToggleComponent;\n buttonToggle.value = option.value;\n\n if (option.label) {\n buttonToggle.textContent = option.label;\n } else if (option.icon) {\n const icon = document.createElement('i');\n icon.textContent = option.icon;\n icon.classList.add(ICON_CLASS_NAME);\n icon.setAttribute('aria-hidden', 'true');\n buttonToggle.appendChild(icon);\n }\n\n if (option.leadingIcon) {\n const leadingIcon = document.createElement('i');\n leadingIcon.slot = 'leading';\n leadingIcon.textContent = option.leadingIcon;\n leadingIcon.classList.add(ICON_CLASS_NAME);\n leadingIcon.setAttribute('aria-hidden', 'true');\n buttonToggle.appendChild(leadingIcon);\n }\n\n if (option.trailingIcon) {\n const trailingIcon = document.createElement('i');\n trailingIcon.slot = 'trailing';\n trailingIcon.textContent = option.trailingIcon;\n trailingIcon.classList.add(ICON_CLASS_NAME);\n trailingIcon.setAttribute('aria-hidden', 'true');\n buttonToggle.appendChild(trailingIcon);\n }\n\n return buttonToggle;\n }\n\n private _getButtonToggleElements(): IButtonToggleComponent[] {\n return Array.from(this._component.querySelectorAll(BUTTON_TOGGLE_CONSTANTS.elementName));\n }\n}\n", "import { ICustomElementFoundation } from '@tylertech/forge-core';\nimport { IButtonToggleComponent } from '../button-toggle/button-toggle';\nimport { BUTTON_TOGGLE_CONSTANTS, IButtonToggleSelectEventData } from '../button-toggle/button-toggle-constants';\nimport { IButtonToggleGroupAdapter } from './button-toggle-group-adapter';\nimport { BUTTON_TOGGLE_GROUP_CONSTANTS, IButtonToggleOption } from './button-toggle-group-constants';\n\nexport interface IButtonToggleGroupFoundation extends ICustomElementFoundation {\n value: any;\n multiple: boolean;\n stretch: boolean;\n mandatory: boolean;\n vertical: boolean;\n dense: boolean;\n disabled: boolean;\n options: IButtonToggleOption[];\n}\n\nexport class ButtonToggleGroupFoundation implements IButtonToggleGroupFoundation {\n private _isInitialized = false;\n private _multiple = false;\n private _mandatory = false;\n private _vertical = false;\n private _stretch = false;\n private _dense = false;\n private _disabled = false;\n private _options: IButtonToggleOption[] = [];\n private _values: any[] = [];\n private _originalValue: any;\n private _selectListener: (evt: CustomEvent<IButtonToggleSelectEventData>) => void;\n private _slotListener: () => void;\n\n constructor(private _adapter: IButtonToggleGroupAdapter) {\n this._selectListener = evt => this._onSelect(evt);\n this._slotListener = () => this._synchronize();\n }\n\n public initialize(): void {\n if (this._options && this._options.length) {\n this._applyOptions(false);\n }\n\n this._adapter.addListener(BUTTON_TOGGLE_CONSTANTS.events.SELECT, this._selectListener);\n this._adapter.addSlotChangeListener(this._slotListener);\n this._adapter.setVertical(this._vertical);\n this._adapter.setStretch(this._stretch);\n this._adapter.setDense(this._dense);\n this._adapter.setDisabled(this._disabled);\n this._adapter.applyAdjacentSelections(this._vertical);\n this._isInitialized = true;\n }\n\n public disconnect(): void {\n this._isInitialized = false;\n this._adapter.removeListener(BUTTON_TOGGLE_CONSTANTS.events.SELECT, this._selectListener);\n this._adapter.removeSlotChangeListener(this._slotListener);\n }\n\n private _synchronize(): void {\n if (!this._multiple) {\n const selectedValues = this._adapter.getSelectedValues().concat(this._values);\n this.value = selectedValues.length ? selectedValues[selectedValues.length - 1] : null;\n } else {\n const selectedValues = new Set(this._adapter.getSelectedValues().concat(this._values));\n this._applyValue(Array.from(selectedValues));\n }\n }\n\n private _onSelect(evt: CustomEvent<IButtonToggleSelectEventData>): void {\n const target = evt.target as IButtonToggleComponent;\n\n // When in mandatory mode we need to ensure at least one element is selected. If there are no selections\n // then we need to reselect the target toggle because it was deselected\n if (this._mandatory) {\n const values = this._adapter.getSelectedValues();\n if (!values.length) {\n target.selected = true;\n return;\n }\n }\n\n // When not in multiple mode, we deselect all toggles, except for the one that was just changed\n if (!this._multiple) {\n this._adapter.deselect(target);\n }\n\n this._adapter.applyAdjacentSelections(this._vertical);\n this._adapter.emitHostEvent(BUTTON_TOGGLE_GROUP_CONSTANTS.events.CHANGE, this._getValue());\n }\n\n private _getValue(): any {\n const selections = this._adapter.getSelectedValues();\n return this._multiple ? Array.from(new Set(selections)) : selections.slice(0, 1)[0] || null;\n }\n\n private _applyValue(value: any): void {\n let values = value instanceof Array ? value : [value];\n if (!this._multiple && values.length > 1) {\n values = values[0];\n }\n this._values = values;\n this._adapter.applyValues(values);\n if (this._multiple) {\n this._adapter.applyAdjacentSelections(this._vertical);\n }\n }\n\n private _applyOptions(init = true): void {\n if (this._options) {\n this._adapter.createOptions(this._options);\n\n if (init) {\n this._adapter.setStretch(this._stretch);\n this._adapter.setDense(this._dense);\n this._adapter.setDisabled(this._disabled);\n this._adapter.applyAdjacentSelections(this._vertical);\n }\n }\n }\n\n public get value(): any {\n if (!this._isInitialized) {\n return this._originalValue;\n }\n return this._getValue();\n }\n public set value(value: any) {\n this._originalValue = value;\n this._applyValue(value);\n }\n\n public get multiple(): boolean {\n return this._multiple;\n }\n public set multiple(value: boolean) {\n if (this._multiple !== value) {\n this._multiple = value;\n this._adapter.setHostAttribute(BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.MULTIPLE, this._multiple as any);\n }\n }\n\n public get mandatory(): boolean {\n return this._mandatory;\n }\n public set mandatory(value: boolean) {\n if (this._mandatory !== value) {\n this._mandatory = value;\n if (this._mandatory) {\n this._adapter.setHostAttribute(BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.MANDATORY);\n } else {\n this._adapter.removeHostAttribute(BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.MANDATORY);\n }\n }\n }\n\n public get vertical(): boolean {\n return this._vertical;\n }\n public set vertical(value: boolean) {\n if (this._vertical !== value) {\n this._vertical = value;\n this._adapter.setVertical(this._vertical);\n this._adapter.applyAdjacentSelections(this._vertical);\n if (this._vertical) {\n this._adapter.setHostAttribute(BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.VERTICAL);\n } else {\n this._adapter.removeHostAttribute(BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.VERTICAL);\n }\n }\n }\n\n public get stretch(): boolean {\n return this._stretch;\n }\n public set stretch(value: boolean) {\n if (this._stretch !== value) {\n this._stretch = value;\n this._adapter.setStretch(this._stretch);\n if (this._stretch) {\n this._adapter.setHostAttribute(BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.STRETCH);\n } else {\n this._adapter.removeHostAttribute(BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.STRETCH);\n }\n }\n }\n\n public get dense(): boolean {\n return this._dense;\n }\n public set dense(value: boolean) {\n if (this._dense !== value) {\n this._dense = value;\n this._adapter.setDense(this._dense);\n if (this._dense) {\n this._adapter.setHostAttribute(BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.DENSE);\n } else {\n this._adapter.removeHostAttribute(BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.DENSE);\n }\n }\n }\n\n public get disabled(): boolean {\n return this._disabled;\n }\n public set disabled(value: boolean) {\n if (this._disabled !== value) {\n this._disabled = value;\n this._adapter.setDisabled(this._disabled);\n if (this._disabled) {\n this._adapter.setHostAttribute(BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.DISABLED);\n } else {\n this._adapter.removeHostAttribute(BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.DISABLED);\n }\n }\n }\n\n public get options(): IButtonToggleOption[] {\n return this._options.map(o => ({ ...o }));\n }\n public set options(value: IButtonToggleOption[]) {\n this._options = value.map(o => ({ ...o }));\n if (this._isInitialized) {\n this._applyOptions();\n }\n }\n}\n", "import { attachShadowTemplate, coerceBoolean, CustomElement, FoundationProperty } from '@tylertech/forge-core';\nimport { BaseComponent, IBaseComponent } from '../../core/base/base-component';\nimport { ButtonToggleComponent } from '../button-toggle/button-toggle';\nimport { ButtonToggleGroupAdapter } from './button-toggle-group-adapter';\nimport { BUTTON_TOGGLE_GROUP_CONSTANTS, IButtonToggleOption } from './button-toggle-group-constants';\nimport { ButtonToggleGroupFoundation } from './button-toggle-group-foundation';\n\nconst template = '<template><div class=\\\"forge-button-toggle-group\\\" role=\\\"group\\\" aria-label=\\\"Button group\\\" part=\\\"root\\\"><slot></slot></div></template>';\nconst styles = '.forge-button-toggle-group{display:-webkit-box;display:flex}.forge-button-toggle-group ::slotted(:not(:last-child)){--forge-button-toggle-border-right-width:0;--forge-button-toggle-border-top-left-radius:0;--forge-button-toggle-border-bottom-left-radius:0;--forge-button-toggle-border-top-right-radius:0;--forge-button-toggle-border-bottom-right-radius:0}.forge-button-toggle-group ::slotted(:first-child){--forge-button-toggle-border-top-left-radius:4px;--forge-button-toggle-border-bottom-left-radius:4px}.forge-button-toggle-group ::slotted(:last-child){--forge-button-toggle-border-top-left-radius:0;--forge-button-toggle-border-bottom-left-radius:0;--forge-button-toggle-border-top-right-radius:4px;--forge-button-toggle-border-bottom-right-radius:4px}.forge-button-toggle-group--vertical{-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column}.forge-button-toggle-group--vertical ::slotted(:not(:last-child)){--forge-button-toggle-border-right-width:1px;--forge-button-toggle-border-bottom-width:0;--forge-button-toggle-border-top-left-radius:0;--forge-button-toggle-border-bottom-left-radius:0;--forge-button-toggle-border-top-right-radius:0;--forge-button-toggle-border-bottom-right-radius:0}.forge-button-toggle-group--vertical ::slotted(:first-child){--forge-button-toggle-border-top-left-radius:4px;--forge-button-toggle-border-top-right-radius:4px}.forge-button-toggle-group--vertical ::slotted(:last-child){--forge-button-toggle-border-top-left-radius:0;--forge-button-toggle-border-top-right-radius:0;--forge-button-toggle-border-bottom-left-radius:4px;--forge-button-toggle-border-bottom-right-radius:4px}.forge-button-toggle-group ::slotted(:only-child){--forge-button-toggle-border-top-left-radius:4px;--forge-button-toggle-border-bottom-left-radius:4px;--forge-button-toggle-border-top-right-radius:4px;--forge-button-toggle-border-bottom-right-radius:4px}.forge-button-toggle-group--stretch{width:100%}:host{display:block}:host([hidden]){display:none}';\n\nexport interface IButtonToggleGroupComponent extends IBaseComponent {\n value: any;\n multiple: boolean;\n stretch: boolean;\n mandatory: boolean;\n vertical: boolean;\n disabled: boolean;\n dense: boolean;\n options: IButtonToggleOption[];\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'forge-button-toggle-group': IButtonToggleGroupComponent;\n }\n}\n\n@CustomElement({\n name: BUTTON_TOGGLE_GROUP_CONSTANTS.elementName,\n dependencies: [ButtonToggleComponent]\n})\nexport class ButtonToggleGroupComponent extends BaseComponent implements IButtonToggleGroupComponent {\n public static get observedAttributes(): string[] {\n return [\n BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.VALUE,\n BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.MULTIPLE,\n BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.MANDATORY,\n BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.VERTICAL,\n BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.STRETCH,\n BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.DISABLED,\n BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.DENSE\n ];\n }\n\n private _foundation: ButtonToggleGroupFoundation;\n\n constructor() {\n super();\n attachShadowTemplate(this, template, styles);\n this._foundation = new ButtonToggleGroupFoundation(new ButtonToggleGroupAdapter(this));\n }\n\n public initializedCallback(): void {\n this._foundation.initialize();\n }\n\n public disconnectedCallback(): void {\n this._foundation.disconnect();\n }\n\n public attributeChangedCallback(name: string, oldValue: string, newValue: string): void {\n switch (name) {\n case BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.VALUE:\n this.value = newValue;\n break;\n case BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.MULTIPLE:\n this.multiple = coerceBoolean(newValue);\n break;\n case BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.MANDATORY:\n this.mandatory = coerceBoolean(newValue);\n break;\n case BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.VERTICAL:\n this.vertical = coerceBoolean(newValue);\n break;\n case BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.STRETCH:\n this.stretch = coerceBoolean(newValue);\n break;\n case BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.DENSE:\n this.dense = coerceBoolean(newValue);\n break;\n case BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.DISABLED:\n this.disabled = coerceBoolean(newValue);\n break;\n }\n }\n\n @FoundationProperty()\n public value: any;\n\n @FoundationProperty()\n public multiple: boolean;\n\n @FoundationProperty()\n public mandatory: boolean;\n\n @FoundationProperty()\n public vertical: boolean;\n\n @FoundationProperty()\n public stretch: boolean;\n\n @FoundationProperty()\n public dense: boolean;\n\n @FoundationProperty()\n public disabled: boolean;\n\n @FoundationProperty()\n public options: IButtonToggleOption[];\n}\n", "import { defineCustomElement } from '@tylertech/forge-core';\n\nimport { ButtonToggleGroupComponent } from './button-toggle-group';\n\nexport * from './button-toggle-group-adapter';\nexport * from './button-toggle-group-constants';\nexport * from './button-toggle-group-foundation';\nexport * from './button-toggle-group';\n\nexport function defineButtonToggleGroupComponent(): void {\n defineCustomElement(ButtonToggleGroupComponent);\n}\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["import { COMPONENT_NAME_PREFIX } from '../../constants';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}button-toggle-group`;\n\nconst attributes = {\n VALUE: 'value',\n MULTIPLE: 'multiple',\n MANDATORY: 'mandatory',\n VERTICAL: 'vertical',\n STRETCH: 'stretch',\n DISABLED: 'disabled',\n DENSE: 'dense'\n};\n\nconst classes = {\n VERTICAL: 'forge-button-toggle-group--vertical',\n STRETCH: 'forge-button-toggle-group--stretch'\n};\n\nconst selectors = {\n ROOT: '.forge-button-toggle-group'\n};\n\nconst events = {\n CHANGE: `${elementName}-change`\n};\n\nexport const BUTTON_TOGGLE_GROUP_CONSTANTS = {\n elementName,\n attributes,\n classes,\n selectors,\n events\n};\n\nexport type IButtonToggleGroupChangeEventData<T> = T;\n\nexport interface IButtonToggleOption {\n label?: string;\n icon?: string;\n value: any;\n leadingIcon?: string;\n trailingIcon?: string;\n}\n", "import { getShadowElement, removeAllChildren } from '@tylertech/forge-core';\nimport { ICON_CLASS_NAME } from '../../constants';\nimport { BaseAdapter, IBaseAdapter } from '../../core/base/base-adapter';\nimport { IButtonToggleComponent } from '../button-toggle/button-toggle';\nimport { BUTTON_TOGGLE_CONSTANTS } from '../button-toggle/button-toggle-constants';\nimport { IButtonToggleGroupComponent } from './button-toggle-group';\nimport { BUTTON_TOGGLE_GROUP_CONSTANTS, IButtonToggleOption } from './button-toggle-group-constants';\n\nexport interface IButtonToggleGroupAdapter extends IBaseAdapter {\n addListener(type: string, listener: (evt: Event) => void): void;\n removeListener(type: string, listener: (evt: Event) => void): void;\n addSlotChangeListener(listener: (evt: Event) => void): void;\n removeSlotChangeListener(listener: (evt: Event) => void): void;\n deselect(selectedToggle: IButtonToggleComponent): void;\n applyAdjacentSelections(isVertical: boolean): void;\n setVertical(isVertical: boolean): void;\n setStretch(value: boolean): void;\n setDense(value: boolean): void;\n setDisabled(value: boolean): void;\n getSelectedValues(): any[];\n applyValues(values: any[]): void;\n createOptions(options: IButtonToggleOption[]): void;\n}\n\nexport class ButtonToggleGroupAdapter extends BaseAdapter<IButtonToggleGroupComponent> implements IButtonToggleGroupAdapter {\n private _rootElement: HTMLElement;\n private _slotElement: HTMLSlotElement;\n\n constructor(component: IButtonToggleGroupComponent) {\n super(component);\n this._rootElement = getShadowElement(component, BUTTON_TOGGLE_GROUP_CONSTANTS.selectors.ROOT);\n this._slotElement = this._rootElement.querySelector('slot') as HTMLSlotElement;\n }\n\n public addListener(type: string, listener: (evt: Event) => void): void {\n this._rootElement.addEventListener(type, listener);\n }\n\n public removeListener(type: string, listener: (evt: Event) => void): void {\n this._rootElement.removeEventListener(type, listener);\n }\n\n public addSlotChangeListener(listener: EventListener): void {\n this._slotElement.addEventListener('slotchange', listener);\n }\n public removeSlotChangeListener(listener: EventListener): void {\n this._slotElement.addEventListener('slotchange', listener);\n }\n\n public deselect(selectedToggle: IButtonToggleComponent): void {\n const toggles = this._getButtonToggleElements();\n toggles.filter(t => t !== selectedToggle).forEach(t => t.selected = false);\n }\n\n public applyAdjacentSelections(isVertical: boolean): void {\n const toggles = this._getButtonToggleElements();\n for (let i = toggles.length - 1; i > 0; i--) {\n toggles[i].removeAttribute(BUTTON_TOGGLE_CONSTANTS.attributes.SELECTED_ADJACENT);\n toggles[i].removeAttribute(BUTTON_TOGGLE_CONSTANTS.attributes.SELECTED_ADJACENT_VERTICAL);\n if (toggles[i].selected && toggles[i - 1].selected) {\n const attr = isVertical ? BUTTON_TOGGLE_CONSTANTS.attributes.SELECTED_ADJACENT_VERTICAL : BUTTON_TOGGLE_CONSTANTS.attributes.SELECTED_ADJACENT;\n toggles[i].setAttribute(attr, '');\n }\n }\n }\n\n public setVertical(isVertical: boolean): void {\n if (isVertical) {\n this._rootElement.classList.add(BUTTON_TOGGLE_GROUP_CONSTANTS.classes.VERTICAL);\n } else {\n this._rootElement.classList.remove(BUTTON_TOGGLE_GROUP_CONSTANTS.classes.VERTICAL);\n }\n }\n\n public setStretch(value: boolean): void {\n if (value) {\n this._rootElement.classList.add(BUTTON_TOGGLE_GROUP_CONSTANTS.classes.STRETCH);\n } else {\n this._rootElement.classList.remove(BUTTON_TOGGLE_GROUP_CONSTANTS.classes.STRETCH);\n }\n\n const toggles = this._getButtonToggleElements();\n toggles.forEach(toggle => {\n if (value) {\n toggle.setAttribute('stretch', '');\n } else {\n toggle.removeAttribute('stretch');\n }\n });\n }\n\n public setDense(value: boolean): void {\n const toggles = this._getButtonToggleElements();\n toggles.forEach(t => t.dense = value);\n }\n\n public setDisabled(value: boolean): void {\n const toggles = this._getButtonToggleElements();\n toggles.forEach(t => t.disabled = value);\n }\n\n public getSelectedValues(): any[] {\n const toggles = this._getButtonToggleElements();\n return toggles.filter(t => t.selected).map(t => t.value);\n }\n\n public applyValues(values: any[]): void {\n const toggles = this._getButtonToggleElements();\n toggles.forEach(t => t.selected = values.indexOf(t.value) >= 0);\n }\n\n public createOptions(options: IButtonToggleOption[]): void {\n removeAllChildren(this._component);\n options.forEach(o => {\n this._component.appendChild(this._createButtonToggle(o));\n });\n }\n\n private _createButtonToggle(option: IButtonToggleOption): IButtonToggleComponent {\n const buttonToggle = document.createElement(BUTTON_TOGGLE_CONSTANTS.elementName) as IButtonToggleComponent;\n buttonToggle.value = option.value;\n\n if (option.label) {\n buttonToggle.textContent = option.label;\n } else if (option.icon) {\n const icon = document.createElement('i');\n icon.textContent = option.icon;\n icon.classList.add(ICON_CLASS_NAME);\n icon.setAttribute('aria-hidden', 'true');\n buttonToggle.appendChild(icon);\n }\n\n if (option.leadingIcon) {\n const leadingIcon = document.createElement('i');\n leadingIcon.slot = 'leading';\n leadingIcon.textContent = option.leadingIcon;\n leadingIcon.classList.add(ICON_CLASS_NAME);\n leadingIcon.setAttribute('aria-hidden', 'true');\n buttonToggle.appendChild(leadingIcon);\n }\n\n if (option.trailingIcon) {\n const trailingIcon = document.createElement('i');\n trailingIcon.slot = 'trailing';\n trailingIcon.textContent = option.trailingIcon;\n trailingIcon.classList.add(ICON_CLASS_NAME);\n trailingIcon.setAttribute('aria-hidden', 'true');\n buttonToggle.appendChild(trailingIcon);\n }\n\n return buttonToggle;\n }\n\n private _getButtonToggleElements(): IButtonToggleComponent[] {\n return Array.from(this._component.querySelectorAll(BUTTON_TOGGLE_CONSTANTS.elementName));\n }\n}\n", "import { ICustomElementFoundation } from '@tylertech/forge-core';\nimport { IButtonToggleComponent } from '../button-toggle/button-toggle';\nimport { BUTTON_TOGGLE_CONSTANTS, IButtonToggleSelectEventData } from '../button-toggle/button-toggle-constants';\nimport { IButtonToggleGroupAdapter } from './button-toggle-group-adapter';\nimport { BUTTON_TOGGLE_GROUP_CONSTANTS, IButtonToggleOption } from './button-toggle-group-constants';\n\nexport interface IButtonToggleGroupFoundation extends ICustomElementFoundation {\n value: any;\n multiple: boolean;\n stretch: boolean;\n mandatory: boolean;\n vertical: boolean;\n dense: boolean;\n disabled: boolean;\n options: IButtonToggleOption[];\n}\n\nexport class ButtonToggleGroupFoundation implements IButtonToggleGroupFoundation {\n private _isInitialized = false;\n private _multiple = false;\n private _mandatory = false;\n private _vertical = false;\n private _stretch = false;\n private _dense = false;\n private _disabled = false;\n private _options: IButtonToggleOption[] = [];\n private _values: any[] = [];\n private _originalValue: any;\n private _selectListener: (evt: CustomEvent<IButtonToggleSelectEventData>) => void;\n private _slotListener: () => void;\n\n constructor(private _adapter: IButtonToggleGroupAdapter) {\n this._selectListener = evt => this._onSelect(evt);\n this._slotListener = () => this._synchronize();\n }\n\n public initialize(): void {\n if (this._options && this._options.length) {\n this._applyOptions(false);\n }\n\n this._adapter.addListener(BUTTON_TOGGLE_CONSTANTS.events.SELECT, this._selectListener);\n this._adapter.addSlotChangeListener(this._slotListener);\n this._adapter.setVertical(this._vertical);\n this._adapter.setStretch(this._stretch);\n this._adapter.setDense(this._dense);\n this._adapter.setDisabled(this._disabled);\n this._adapter.applyAdjacentSelections(this._vertical);\n this._isInitialized = true;\n }\n\n public disconnect(): void {\n this._isInitialized = false;\n this._adapter.removeListener(BUTTON_TOGGLE_CONSTANTS.events.SELECT, this._selectListener);\n this._adapter.removeSlotChangeListener(this._slotListener);\n }\n\n private _synchronize(): void {\n if (!this._multiple) {\n const selectedValues = this._adapter.getSelectedValues().concat(this._values);\n this.value = selectedValues.length ? selectedValues[selectedValues.length - 1] : null;\n } else {\n const selectedValues = new Set(this._adapter.getSelectedValues().concat(this._values));\n this._applyValue(Array.from(selectedValues));\n }\n }\n\n private _onSelect(evt: CustomEvent<IButtonToggleSelectEventData>): void {\n const target = evt.target as IButtonToggleComponent;\n\n // When in mandatory mode we need to ensure at least one element is selected. If there are no selections\n // then we need to reselect the target toggle because it was deselected\n if (this._mandatory) {\n const values = this._adapter.getSelectedValues();\n if (!values.length) {\n target.selected = true;\n return;\n }\n }\n\n // When not in multiple mode, we deselect all toggles, except for the one that was just changed\n if (!this._multiple) {\n this._adapter.deselect(target);\n }\n\n this._adapter.applyAdjacentSelections(this._vertical);\n this._adapter.emitHostEvent(BUTTON_TOGGLE_GROUP_CONSTANTS.events.CHANGE, this._getValue());\n }\n\n private _getValue(): any {\n const selections = this._adapter.getSelectedValues();\n return this._multiple ? Array.from(new Set(selections)) : selections.slice(0, 1)[0] || null;\n }\n\n private _applyValue(value: any): void {\n let values = value instanceof Array ? value : [value];\n if (!this._multiple && values.length > 1) {\n values = values[0];\n }\n this._values = values;\n this._adapter.applyValues(values);\n if (this._multiple) {\n this._adapter.applyAdjacentSelections(this._vertical);\n }\n }\n\n private _applyOptions(init = true): void {\n if (this._options) {\n this._adapter.createOptions(this._options);\n\n if (init) {\n this._adapter.setStretch(this._stretch);\n this._adapter.setDense(this._dense);\n this._adapter.setDisabled(this._disabled);\n this._adapter.applyAdjacentSelections(this._vertical);\n }\n }\n }\n\n public get value(): any {\n if (!this._isInitialized) {\n return this._originalValue;\n }\n return this._getValue();\n }\n public set value(value: any) {\n this._originalValue = value;\n this._applyValue(value);\n }\n\n public get multiple(): boolean {\n return this._multiple;\n }\n public set multiple(value: boolean) {\n if (this._multiple !== value) {\n this._multiple = value;\n this._adapter.setHostAttribute(BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.MULTIPLE, this._multiple as any);\n }\n }\n\n public get mandatory(): boolean {\n return this._mandatory;\n }\n public set mandatory(value: boolean) {\n if (this._mandatory !== value) {\n this._mandatory = value;\n if (this._mandatory) {\n this._adapter.setHostAttribute(BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.MANDATORY);\n } else {\n this._adapter.removeHostAttribute(BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.MANDATORY);\n }\n }\n }\n\n public get vertical(): boolean {\n return this._vertical;\n }\n public set vertical(value: boolean) {\n if (this._vertical !== value) {\n this._vertical = value;\n this._adapter.setVertical(this._vertical);\n this._adapter.applyAdjacentSelections(this._vertical);\n if (this._vertical) {\n this._adapter.setHostAttribute(BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.VERTICAL);\n } else {\n this._adapter.removeHostAttribute(BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.VERTICAL);\n }\n }\n }\n\n public get stretch(): boolean {\n return this._stretch;\n }\n public set stretch(value: boolean) {\n if (this._stretch !== value) {\n this._stretch = value;\n this._adapter.setStretch(this._stretch);\n if (this._stretch) {\n this._adapter.setHostAttribute(BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.STRETCH);\n } else {\n this._adapter.removeHostAttribute(BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.STRETCH);\n }\n }\n }\n\n public get dense(): boolean {\n return this._dense;\n }\n public set dense(value: boolean) {\n if (this._dense !== value) {\n this._dense = value;\n this._adapter.setDense(this._dense);\n if (this._dense) {\n this._adapter.setHostAttribute(BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.DENSE);\n } else {\n this._adapter.removeHostAttribute(BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.DENSE);\n }\n }\n }\n\n public get disabled(): boolean {\n return this._disabled;\n }\n public set disabled(value: boolean) {\n if (this._disabled !== value) {\n this._disabled = value;\n this._adapter.setDisabled(this._disabled);\n if (this._disabled) {\n this._adapter.setHostAttribute(BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.DISABLED);\n } else {\n this._adapter.removeHostAttribute(BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.DISABLED);\n }\n }\n }\n\n public get options(): IButtonToggleOption[] {\n return this._options.map(o => ({ ...o }));\n }\n public set options(value: IButtonToggleOption[]) {\n this._options = value.map(o => ({ ...o }));\n if (this._isInitialized) {\n this._applyOptions();\n }\n }\n}\n", "import { attachShadowTemplate, coerceBoolean, CustomElement, FoundationProperty } from '@tylertech/forge-core';\nimport { BaseComponent, IBaseComponent } from '../../core/base/base-component';\nimport { ButtonToggleComponent } from '../button-toggle/button-toggle';\nimport { ButtonToggleGroupAdapter } from './button-toggle-group-adapter';\nimport { BUTTON_TOGGLE_GROUP_CONSTANTS, IButtonToggleOption } from './button-toggle-group-constants';\nimport { ButtonToggleGroupFoundation } from './button-toggle-group-foundation';\n\nconst template = '<template><div class=\\\"forge-button-toggle-group\\\" role=\\\"group\\\" aria-label=\\\"Button group\\\" part=\\\"root\\\"><slot></slot></div></template>';\nconst styles = '.forge-button-toggle-group{display:-webkit-box;display:flex}.forge-button-toggle-group ::slotted(:not(:last-child)){--forge-button-toggle-border-right-width:0;--forge-button-toggle-border-top-left-radius:0;--forge-button-toggle-border-bottom-left-radius:0;--forge-button-toggle-border-top-right-radius:0;--forge-button-toggle-border-bottom-right-radius:0}.forge-button-toggle-group ::slotted(:first-child){--forge-button-toggle-border-top-left-radius:4px;--forge-button-toggle-border-bottom-left-radius:4px}.forge-button-toggle-group ::slotted(:last-child){--forge-button-toggle-border-top-left-radius:0;--forge-button-toggle-border-bottom-left-radius:0;--forge-button-toggle-border-top-right-radius:4px;--forge-button-toggle-border-bottom-right-radius:4px}.forge-button-toggle-group--vertical{-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column}.forge-button-toggle-group--vertical ::slotted(:not(:last-child)){--forge-button-toggle-border-right-width:1px;--forge-button-toggle-border-bottom-width:0;--forge-button-toggle-border-top-left-radius:0;--forge-button-toggle-border-bottom-left-radius:0;--forge-button-toggle-border-top-right-radius:0;--forge-button-toggle-border-bottom-right-radius:0}.forge-button-toggle-group--vertical ::slotted(:first-child){--forge-button-toggle-border-top-left-radius:4px;--forge-button-toggle-border-top-right-radius:4px}.forge-button-toggle-group--vertical ::slotted(:last-child){--forge-button-toggle-border-top-left-radius:0;--forge-button-toggle-border-top-right-radius:0;--forge-button-toggle-border-bottom-left-radius:4px;--forge-button-toggle-border-bottom-right-radius:4px}.forge-button-toggle-group ::slotted(:only-child){--forge-button-toggle-border-top-left-radius:4px;--forge-button-toggle-border-bottom-left-radius:4px;--forge-button-toggle-border-top-right-radius:4px;--forge-button-toggle-border-bottom-right-radius:4px}.forge-button-toggle-group--stretch{width:100%}:host{display:block}:host([hidden]){display:none}';\n\nexport interface IButtonToggleGroupComponent extends IBaseComponent {\n value: any;\n multiple: boolean;\n stretch: boolean;\n mandatory: boolean;\n vertical: boolean;\n disabled: boolean;\n dense: boolean;\n options: IButtonToggleOption[];\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'forge-button-toggle-group': IButtonToggleGroupComponent;\n }\n}\n\n/**\n * The web component class behind the `<forge-button-toggle-group>` custom element.\n * \n * @tag forge-button-toggle-group\n */\n@CustomElement({\n name: BUTTON_TOGGLE_GROUP_CONSTANTS.elementName,\n dependencies: [ButtonToggleComponent]\n})\nexport class ButtonToggleGroupComponent extends BaseComponent implements IButtonToggleGroupComponent {\n public static get observedAttributes(): string[] {\n return [\n BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.VALUE,\n BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.MULTIPLE,\n BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.MANDATORY,\n BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.VERTICAL,\n BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.STRETCH,\n BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.DISABLED,\n BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.DENSE\n ];\n }\n\n private _foundation: ButtonToggleGroupFoundation;\n\n constructor() {\n super();\n attachShadowTemplate(this, template, styles);\n this._foundation = new ButtonToggleGroupFoundation(new ButtonToggleGroupAdapter(this));\n }\n\n public initializedCallback(): void {\n this._foundation.initialize();\n }\n\n public disconnectedCallback(): void {\n this._foundation.disconnect();\n }\n\n public attributeChangedCallback(name: string, oldValue: string, newValue: string): void {\n switch (name) {\n case BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.VALUE:\n this.value = newValue;\n break;\n case BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.MULTIPLE:\n this.multiple = coerceBoolean(newValue);\n break;\n case BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.MANDATORY:\n this.mandatory = coerceBoolean(newValue);\n break;\n case BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.VERTICAL:\n this.vertical = coerceBoolean(newValue);\n break;\n case BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.STRETCH:\n this.stretch = coerceBoolean(newValue);\n break;\n case BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.DENSE:\n this.dense = coerceBoolean(newValue);\n break;\n case BUTTON_TOGGLE_GROUP_CONSTANTS.attributes.DISABLED:\n this.disabled = coerceBoolean(newValue);\n break;\n }\n }\n\n @FoundationProperty()\n public value: any;\n\n @FoundationProperty()\n public multiple: boolean;\n\n @FoundationProperty()\n public mandatory: boolean;\n\n @FoundationProperty()\n public vertical: boolean;\n\n @FoundationProperty()\n public stretch: boolean;\n\n @FoundationProperty()\n public dense: boolean;\n\n @FoundationProperty()\n public disabled: boolean;\n\n @FoundationProperty()\n public options: IButtonToggleOption[];\n}\n", "import { defineCustomElement } from '@tylertech/forge-core';\n\nimport { ButtonToggleGroupComponent } from './button-toggle-group';\n\nexport * from './button-toggle-group-adapter';\nexport * from './button-toggle-group-constants';\nexport * from './button-toggle-group-foundation';\nexport * from './button-toggle-group';\n\nexport function defineButtonToggleGroupComponent(): void {\n defineCustomElement(ButtonToggleGroupComponent);\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,IAAM,cAA2C,GAAG;AAEpD,IAAM,aAAa;AAAA,EACjB,OAAO;AAAA,EACP,UAAU;AAAA,EACV,WAAW;AAAA,EACX,UAAU;AAAA,EACV,SAAS;AAAA,EACT,UAAU;AAAA,EACV,OAAO;AACT;AAEA,IAAM,UAAU;AAAA,EACd,UAAU;AAAA,EACV,SAAS;AACX;AAEA,IAAM,YAAY;AAAA,EAChB,MAAM;AACR;AAEA,IAAM,SAAS;AAAA,EACb,QAAQ,GAAG;AACb;AAEO,IAAM,gCAAgC;AAAA,EAC3C;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;;;ACTO,IAAM,2BAAN,cAAuC,YAA8E;AAAA,EAI1H,YAAY,WAAwC;AAClD,UAAM,SAAS;AACf,SAAK,eAAe,iBAAiB,WAAW,8BAA8B,UAAU,IAAI;AAC5F,SAAK,eAAe,KAAK,aAAa,cAAc,MAAM;AAAA,EAC5D;AAAA,EAEA,AAAO,YAAY,MAAc,UAAsC;AACrE,SAAK,aAAa,iBAAiB,MAAM,QAAQ;AAAA,EACnD;AAAA,EAEA,AAAO,eAAe,MAAc,UAAsC;AACxE,SAAK,aAAa,oBAAoB,MAAM,QAAQ;AAAA,EACtD;AAAA,EAEA,AAAO,sBAAsB,UAA+B;AAC1D,SAAK,aAAa,iBAAiB,cAAc,QAAQ;AAAA,EAC3D;AAAA,EACA,AAAO,yBAAyB,UAA+B;AAC7D,SAAK,aAAa,iBAAiB,cAAc,QAAQ;AAAA,EAC3D;AAAA,EAEA,AAAO,SAAS,gBAA8C;AAC5D,UAAM,UAAU,KAAK,yBAAyB;AAC9C,YAAQ,OAAO,OAAK,MAAM,cAAc,EAAE,QAAQ,OAAK,EAAE,WAAW,KAAK;AAAA,EAC3E;AAAA,EAEA,AAAO,wBAAwB,YAA2B;AACxD,UAAM,UAAU,KAAK,yBAAyB;AAC9C,aAAS,IAAI,QAAQ,SAAS,GAAG,IAAI,GAAG,KAAK;AAC3C,cAAQ,GAAG,gBAAgB,wBAAwB,WAAW,iBAAiB;AAC/E,cAAQ,GAAG,gBAAgB,wBAAwB,WAAW,0BAA0B;AACxF,UAAI,QAAQ,GAAG,YAAY,QAAQ,IAAI,GAAG,UAAU;AAClD,cAAM,OAAO,aAAa,wBAAwB,WAAW,6BAA6B,wBAAwB,WAAW;AAC7H,gBAAQ,GAAG,aAAa,MAAM,EAAE;AAAA,MAClC;AAAA,IACF;AAAA,EACF;AAAA,EAEA,AAAO,YAAY,YAA2B;AAC5C,QAAI,YAAY;AACd,WAAK,aAAa,UAAU,IAAI,8BAA8B,QAAQ,QAAQ;AAAA,IAChF,OAAO;AACL,WAAK,aAAa,UAAU,OAAO,8BAA8B,QAAQ,QAAQ;AAAA,IACnF;AAAA,EACF;AAAA,EAEA,AAAO,WAAW,OAAsB;AACtC,QAAI,OAAO;AACT,WAAK,aAAa,UAAU,IAAI,8BAA8B,QAAQ,OAAO;AAAA,IAC/E,OAAO;AACL,WAAK,aAAa,UAAU,OAAO,8BAA8B,QAAQ,OAAO;AAAA,IAClF;AAEA,UAAM,UAAU,KAAK,yBAAyB;AAC9C,YAAQ,QAAQ,YAAU;AACxB,UAAI,OAAO;AACT,eAAO,aAAa,WAAW,EAAE;AAAA,MACnC,OAAO;AACL,eAAO,gBAAgB,SAAS;AAAA,MAClC;AAAA,IACF,CAAC;AAAA,EACH;AAAA,EAEA,AAAO,SAAS,OAAsB;AACpC,UAAM,UAAU,KAAK,yBAAyB;AAC9C,YAAQ,QAAQ,OAAK,EAAE,QAAQ,KAAK;AAAA,EACtC;AAAA,EAEA,AAAO,YAAY,OAAsB;AACvC,UAAM,UAAU,KAAK,yBAAyB;AAC9C,YAAQ,QAAQ,OAAK,EAAE,WAAW,KAAK;AAAA,EACzC;AAAA,EAEA,AAAO,oBAA2B;AAChC,UAAM,UAAU,KAAK,yBAAyB;AAC9C,WAAO,QAAQ,OAAO,OAAK,EAAE,QAAQ,EAAE,IAAI,OAAK,EAAE,KAAK;AAAA,EACzD;AAAA,EAEA,AAAO,YAAY,QAAqB;AACtC,UAAM,UAAU,KAAK,yBAAyB;AAC9C,YAAQ,QAAQ,OAAK,EAAE,WAAW,OAAO,QAAQ,EAAE,KAAK,KAAK,CAAC;AAAA,EAChE;AAAA,EAEA,AAAO,cAAc,SAAsC;AACzD,sBAAkB,KAAK,UAAU;AACjC,YAAQ,QAAQ,OAAK;AACnB,WAAK,WAAW,YAAY,KAAK,oBAAoB,CAAC,CAAC;AAAA,IACzD,CAAC;AAAA,EACH;AAAA,EAEA,AAAQ,oBAAoB,QAAqD;AAC/E,UAAM,eAAe,SAAS,cAAc,wBAAwB,WAAW;AAC/E,iBAAa,QAAQ,OAAO;AAE5B,QAAI,OAAO,OAAO;AAChB,mBAAa,cAAc,OAAO;AAAA,IACpC,WAAW,OAAO,MAAM;AACtB,YAAM,OAAO,SAAS,cAAc,GAAG;AACvC,WAAK,cAAc,OAAO;AAC1B,WAAK,UAAU,IAAI,eAAe;AAClC,WAAK,aAAa,eAAe,MAAM;AACvC,mBAAa,YAAY,IAAI;AAAA,IAC/B;AAEA,QAAI,OAAO,aAAa;AACtB,YAAM,cAAc,SAAS,cAAc,GAAG;AAC9C,kBAAY,OAAO;AACnB,kBAAY,cAAc,OAAO;AACjC,kBAAY,UAAU,IAAI,eAAe;AACzC,kBAAY,aAAa,eAAe,MAAM;AAC9C,mBAAa,YAAY,WAAW;AAAA,IACtC;AAEA,QAAI,OAAO,cAAc;AACvB,YAAM,eAAe,SAAS,cAAc,GAAG;AAC/C,mBAAa,OAAO;AACpB,mBAAa,cAAc,OAAO;AAClC,mBAAa,UAAU,IAAI,eAAe;AAC1C,mBAAa,aAAa,eAAe,MAAM;AAC/C,mBAAa,YAAY,YAAY;AAAA,IACvC;AAEA,WAAO;AAAA,EACT;AAAA,EAEA,AAAQ,2BAAqD;AAC3D,WAAO,MAAM,KAAK,KAAK,WAAW,iBAAiB,wBAAwB,WAAW,CAAC;AAAA,EACzF;AACF;;;AC3IO,IAAM,8BAAN,MAA0E;AAAA,EAc/E,YAAoB,UAAqC;AAArC;AAbpB,SAAQ,iBAAiB;AACzB,SAAQ,YAAY;AACpB,SAAQ,aAAa;AACrB,SAAQ,YAAY;AACpB,SAAQ,WAAW;AACnB,SAAQ,SAAS;AACjB,SAAQ,YAAY;AACpB,SAAQ,WAAkC,CAAC;AAC3C,SAAQ,UAAiB,CAAC;AAMxB,SAAK,kBAAkB,SAAO,KAAK,UAAU,GAAG;AAChD,SAAK,gBAAgB,MAAM,KAAK,aAAa;AAAA,EAC/C;AAAA,EAEA,AAAO,aAAmB;AACxB,QAAI,KAAK,YAAY,KAAK,SAAS,QAAQ;AACzC,WAAK,cAAc,KAAK;AAAA,IAC1B;AAEA,SAAK,SAAS,YAAY,wBAAwB,OAAO,QAAQ,KAAK,eAAe;AACrF,SAAK,SAAS,sBAAsB,KAAK,aAAa;AACtD,SAAK,SAAS,YAAY,KAAK,SAAS;AACxC,SAAK,SAAS,WAAW,KAAK,QAAQ;AACtC,SAAK,SAAS,SAAS,KAAK,MAAM;AAClC,SAAK,SAAS,YAAY,KAAK,SAAS;AACxC,SAAK,SAAS,wBAAwB,KAAK,SAAS;AACpD,SAAK,iBAAiB;AAAA,EACxB;AAAA,EAEA,AAAO,aAAmB;AACxB,SAAK,iBAAiB;AACtB,SAAK,SAAS,eAAe,wBAAwB,OAAO,QAAQ,KAAK,eAAe;AACxF,SAAK,SAAS,yBAAyB,KAAK,aAAa;AAAA,EAC3D;AAAA,EAEA,AAAQ,eAAqB;AAC3B,QAAI,CAAC,KAAK,WAAW;AACnB,YAAM,iBAAiB,KAAK,SAAS,kBAAkB,EAAE,OAAO,KAAK,OAAO;AAC5E,WAAK,QAAQ,eAAe,SAAS,eAAe,eAAe,SAAS,KAAK;AAAA,IACnF,OAAO;AACL,YAAM,iBAAiB,IAAI,IAAI,KAAK,SAAS,kBAAkB,EAAE,OAAO,KAAK,OAAO,CAAC;AACrF,WAAK,YAAY,MAAM,KAAK,cAAc,CAAC;AAAA,IAC7C;AAAA,EACF;AAAA,EAEA,AAAQ,UAAU,KAAsD;AACtE,UAAM,SAAS,IAAI;AAInB,QAAI,KAAK,YAAY;AACnB,YAAM,SAAS,KAAK,SAAS,kBAAkB;AAC/C,UAAI,CAAC,OAAO,QAAQ;AAClB,eAAO,WAAW;AAClB;AAAA,MACF;AAAA,IACF;AAGA,QAAI,CAAC,KAAK,WAAW;AACnB,WAAK,SAAS,SAAS,MAAM;AAAA,IAC/B;AAEA,SAAK,SAAS,wBAAwB,KAAK,SAAS;AACpD,SAAK,SAAS,cAAc,8BAA8B,OAAO,QAAQ,KAAK,UAAU,CAAC;AAAA,EAC3F;AAAA,EAEA,AAAQ,YAAiB;AACvB,UAAM,aAAa,KAAK,SAAS,kBAAkB;AACnD,WAAO,KAAK,YAAY,MAAM,KAAK,IAAI,IAAI,UAAU,CAAC,IAAI,WAAW,MAAM,GAAG,CAAC,EAAE,MAAM;AAAA,EACzF;AAAA,EAEA,AAAQ,YAAY,OAAkB;AACpC,QAAI,SAAS,iBAAiB,QAAQ,QAAQ,CAAC,KAAK;AACpD,QAAI,CAAC,KAAK,aAAa,OAAO,SAAS,GAAG;AACxC,eAAS,OAAO;AAAA,IAClB;AACA,SAAK,UAAU;AACf,SAAK,SAAS,YAAY,MAAM;AAChC,QAAI,KAAK,WAAW;AAClB,WAAK,SAAS,wBAAwB,KAAK,SAAS;AAAA,IACtD;AAAA,EACF;AAAA,EAEA,AAAQ,cAAc,OAAO,MAAY;AACvC,QAAI,KAAK,UAAU;AACjB,WAAK,SAAS,cAAc,KAAK,QAAQ;AAEzC,UAAI,MAAM;AACR,aAAK,SAAS,WAAW,KAAK,QAAQ;AACtC,aAAK,SAAS,SAAS,KAAK,MAAM;AAClC,aAAK,SAAS,YAAY,KAAK,SAAS;AACxC,aAAK,SAAS,wBAAwB,KAAK,SAAS;AAAA,MACtD;AAAA,IACF;AAAA,EACF;AAAA,EAEA,IAAW,QAAa;AACtB,QAAI,CAAC,KAAK,gBAAgB;AACxB,aAAO,KAAK;AAAA,IACd;AACA,WAAO,KAAK,UAAU;AAAA,EACxB;AAAA,EACA,IAAW,MAAM,OAAY;AAC3B,SAAK,iBAAiB;AACtB,SAAK,YAAY,KAAK;AAAA,EACxB;AAAA,EAEA,IAAW,WAAoB;AAC7B,WAAO,KAAK;AAAA,EACd;AAAA,EACA,IAAW,SAAS,OAAgB;AAClC,QAAI,KAAK,cAAc,OAAO;AAC5B,WAAK,YAAY;AACjB,WAAK,SAAS,iBAAiB,8BAA8B,WAAW,UAAU,KAAK,SAAgB;AAAA,IACzG;AAAA,EACF;AAAA,EAEA,IAAW,YAAqB;AAC9B,WAAO,KAAK;AAAA,EACd;AAAA,EACA,IAAW,UAAU,OAAgB;AACnC,QAAI,KAAK,eAAe,OAAO;AAC7B,WAAK,aAAa;AAClB,UAAI,KAAK,YAAY;AACnB,aAAK,SAAS,iBAAiB,8BAA8B,WAAW,SAAS;AAAA,MACnF,OAAO;AACL,aAAK,SAAS,oBAAoB,8BAA8B,WAAW,SAAS;AAAA,MACtF;AAAA,IACF;AAAA,EACF;AAAA,EAEA,IAAW,WAAoB;AAC7B,WAAO,KAAK;AAAA,EACd;AAAA,EACA,IAAW,SAAS,OAAgB;AAClC,QAAI,KAAK,cAAc,OAAO;AAC5B,WAAK,YAAY;AACjB,WAAK,SAAS,YAAY,KAAK,SAAS;AACxC,WAAK,SAAS,wBAAwB,KAAK,SAAS;AACpD,UAAI,KAAK,WAAW;AAClB,aAAK,SAAS,iBAAiB,8BAA8B,WAAW,QAAQ;AAAA,MAClF,OAAO;AACL,aAAK,SAAS,oBAAoB,8BAA8B,WAAW,QAAQ;AAAA,MACrF;AAAA,IACF;AAAA,EACF;AAAA,EAEA,IAAW,UAAmB;AAC5B,WAAO,KAAK;AAAA,EACd;AAAA,EACA,IAAW,QAAQ,OAAgB;AACjC,QAAI,KAAK,aAAa,OAAO;AAC3B,WAAK,WAAW;AAChB,WAAK,SAAS,WAAW,KAAK,QAAQ;AACtC,UAAI,KAAK,UAAU;AACjB,aAAK,SAAS,iBAAiB,8BAA8B,WAAW,OAAO;AAAA,MACjF,OAAO;AACL,aAAK,SAAS,oBAAoB,8BAA8B,WAAW,OAAO;AAAA,MACpF;AAAA,IACF;AAAA,EACF;AAAA,EAEA,IAAW,QAAiB;AAC1B,WAAO,KAAK;AAAA,EACd;AAAA,EACA,IAAW,MAAM,OAAgB;AAC/B,QAAI,KAAK,WAAW,OAAO;AACzB,WAAK,SAAS;AACd,WAAK,SAAS,SAAS,KAAK,MAAM;AAClC,UAAI,KAAK,QAAQ;AACf,aAAK,SAAS,iBAAiB,8BAA8B,WAAW,KAAK;AAAA,MAC/E,OAAO;AACL,aAAK,SAAS,oBAAoB,8BAA8B,WAAW,KAAK;AAAA,MAClF;AAAA,IACF;AAAA,EACF;AAAA,EAEA,IAAW,WAAoB;AAC7B,WAAO,KAAK;AAAA,EACd;AAAA,EACA,IAAW,SAAS,OAAgB;AAClC,QAAI,KAAK,cAAc,OAAO;AAC5B,WAAK,YAAY;AACjB,WAAK,SAAS,YAAY,KAAK,SAAS;AACxC,UAAI,KAAK,WAAW;AAClB,aAAK,SAAS,iBAAiB,8BAA8B,WAAW,QAAQ;AAAA,MAClF,OAAO;AACL,aAAK,SAAS,oBAAoB,8BAA8B,WAAW,QAAQ;AAAA,MACrF;AAAA,IACF;AAAA,EACF;AAAA,EAEA,IAAW,UAAiC;AAC1C,WAAO,KAAK,SAAS,IAAI,OAAM,mBAAK,EAAI;AAAA,EAC1C;AAAA,EACA,IAAW,QAAQ,OAA8B;AAC/C,SAAK,WAAW,MAAM,IAAI,OAAM,mBAAK,EAAI;AACzC,QAAI,KAAK,gBAAgB;AACvB,WAAK,cAAc;AAAA,IACrB;AAAA,EACF;AACF;;;ACzNA,IAAM,WAAW;AACjB,IAAM,SAAS;AA4BR,IAAM,6BAAN,cAAyC,cAAqD;AAAA,EAenG,cAAc;AACZ,UAAM;AACN,yBAAqB,MAAM,UAAU,MAAM;AAC3C,SAAK,cAAc,IAAI,4BAA4B,IAAI,yBAAyB,IAAI,CAAC;AAAA,EACvF;AAAA,EAlBA,WAAkB,qBAA+B;AAC/C,WAAO;AAAA,MACL,8BAA8B,WAAW;AAAA,MACzC,8BAA8B,WAAW;AAAA,MACzC,8BAA8B,WAAW;AAAA,MACzC,8BAA8B,WAAW;AAAA,MACzC,8BAA8B,WAAW;AAAA,MACzC,8BAA8B,WAAW;AAAA,MACzC,8BAA8B,WAAW;AAAA,IAC3C;AAAA,EACF;AAAA,EAUA,AAAO,sBAA4B;AACjC,SAAK,YAAY,WAAW;AAAA,EAC9B;AAAA,EAEA,AAAO,uBAA6B;AAClC,SAAK,YAAY,WAAW;AAAA,EAC9B;AAAA,EAEA,AAAO,yBAAyB,MAAc,UAAkB,UAAwB;AACtF,YAAQ;AAAA,WACD,8BAA8B,WAAW;AAC5C,aAAK,QAAQ;AACb;AAAA,WACG,8BAA8B,WAAW;AAC5C,aAAK,WAAW,cAAc,QAAQ;AACtC;AAAA,WACG,8BAA8B,WAAW;AAC5C,aAAK,YAAY,cAAc,QAAQ;AACvC;AAAA,WACG,8BAA8B,WAAW;AAC5C,aAAK,WAAW,cAAc,QAAQ;AACtC;AAAA,WACG,8BAA8B,WAAW;AAC5C,aAAK,UAAU,cAAc,QAAQ;AACrC;AAAA,WACG,8BAA8B,WAAW;AAC5C,aAAK,QAAQ,cAAc,QAAQ;AACnC;AAAA,WACG,8BAA8B,WAAW;AAC5C,aAAK,WAAW,cAAc,QAAQ;AACtC;AAAA;AAAA,EAEN;AAyBF;AAtBS;AAAA,EADP,AAAC,mBAAmB;AAAA,GACb,AAxDI,2BAwDJ;AAGA;AAAA,EADP,AAAC,mBAAmB;AAAA,GACb,AA3DI,2BA2DJ;AAGA;AAAA,EADP,AAAC,mBAAmB;AAAA,GACb,AA9DI,2BA8DJ;AAGA;AAAA,EADP,AAAC,mBAAmB;AAAA,GACb,AAjEI,2BAiEJ;AAGA;AAAA,EADP,AAAC,mBAAmB;AAAA,GACb,AApEI,2BAoEJ;AAGA;AAAA,EADP,AAAC,mBAAmB;AAAA,GACb,AAvEI,2BAuEJ;AAGA;AAAA,EADP,AAAC,mBAAmB;AAAA,GACb,AA1EI,2BA0EJ;AAGA;AAAA,EADP,AAAC,mBAAmB;AAAA,GACb,AA7EI,2BA6EJ;AA7EI,6BAAN;AAAA,EAJP,AAAC,cAAc;AAAA,IACb,MAAM,8BAA8B;AAAA,IACpC,cAAc,CAAC,qBAAqB;AAAA,EACtC,CAAC;AAAA,GACY;;;AC3BN,4CAAkD;AACvD,sBAAoB,0BAA0B;AAChD;",
6
6
  "names": []
7
7
  }
@@ -5,7 +5,7 @@
5
5
  */
6
6
  import {
7
7
  ForgeRipple
8
- } from "./chunk.C2MR3RDF.js";
8
+ } from "./chunk.56BNM7F2.js";
9
9
  import {
10
10
  BaseAdapter
11
11
  } from "./chunk.KZATVOA6.js";
@@ -655,4 +655,4 @@ export {
655
655
  ListItemComponent,
656
656
  defineListItemComponent
657
657
  };
658
- //# sourceMappingURL=chunk.G6FY472A.js.map
658
+ //# sourceMappingURL=chunk.GWNR3UUX.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/list/list/list-constants.ts", "../../src/list/list-item/list-item-constants.ts", "../../src/list/list-item/list-item-adapter.ts", "../../src/list/list-item/list-item-foundation.ts", "../../src/list/list-item/list-item.ts", "../../src/list/list-item/index.ts"],
4
- "sourcesContent": ["import { COMPONENT_NAME_PREFIX } from '../../constants';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}list`;\n\nconst attributes = {\n STATIC: 'static',\n DENSE: 'dense',\n PROPAGATE_CLICK: 'propagate-click',\n INDENTED: 'indented',\n SELECTED_VALUE: 'selected-value'\n};\n\nconst selectors = {\n FOCUSABLE_LIST_ITEMS: '.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled)'\n};\n\nexport const LIST_CONSTANTS = {\n elementName,\n attributes,\n selectors\n};\n", "import { COMPONENT_NAME_PREFIX } from '../../constants';\nimport { IListItemComponent } from './list-item';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}list-item`;\n\nconst attributes = {\n STATIC: 'static',\n TWO_LINE: 'two-line',\n THREE_LINE: 'three-line',\n ACTIVE: 'active',\n SELECTED: 'selected',\n VALUE: 'value',\n HREF: 'href',\n TARGET: 'target',\n RIPPLE: 'ripple',\n DISABLED: 'disabled',\n DENSE: 'dense',\n PROPAGATE_CLICK: 'propagate-click',\n INDENTED: 'indented',\n WRAP: 'wrap',\n DRAWER_CONTEXT: 'forge-drawer-context',\n IGNORE: 'forge-ignore'\n};\n\nconst classes = {\n LIST_ITEM: 'forge-list-item',\n STATIC: 'forge-list-item--static',\n TEXT: 'forge-list-item__text',\n TWO_LINE: 'forge-list-item--two-line',\n THREE_LINE: 'forge-list-item--three-line',\n ACTIVE: 'forge-list-item--active',\n ACTIVATED: 'forge-list-item--activated',\n SELECTED: 'forge-list-item--selected',\n DISABLED: 'forge-list-item--disabled',\n DENSE: 'forge-list-item--dense',\n INDENTED: 'forge-list-item--indented',\n WRAP: 'forge-list-item--wrap'\n};\n\nconst selectors = {\n LIST_ITEM: `.${classes.LIST_ITEM}`,\n DEFAULT_SLOT: `.${classes.TEXT} > slot`,\n CHECKBOX_RADIO_SELECTOR: 'input[type=checkbox]:not(:disabled):not([forge-ignore]),input[type=radio]:not(:disabled):not([forge-ignore])'\n};\n\nconst events = {\n SELECT: `${elementName}-select`\n};\n\nconst roles = {\n LINK: 'link',\n LIST_ITEM: 'listitem'\n};\n\nexport const LIST_ITEM_CONSTANTS = {\n elementName,\n attributes,\n classes,\n selectors,\n events,\n roles\n};\n\nexport interface IListItemSelectEventData {\n value: any;\n listItem: IListItemComponent;\n}\n", "import { addClass, getShadowElement, removeClass, requireParent, isDeepEqual, toggleClass } from '@tylertech/forge-core';\nimport { BaseAdapter, IBaseAdapter } from '../../core/base/base-adapter';\nimport { IListComponent } from '../list/list';\nimport { LIST_CONSTANTS } from '../list/list-constants';\nimport { IListItemComponent } from './list-item';\nimport { LIST_ITEM_CONSTANTS } from './list-item-constants';\nimport { ForgeRipple } from '../../ripple';\n\nexport interface IListItemAdapter extends IBaseAdapter {\n initializeAccessibility(): void;\n getListItem(): IListItemComponent;\n addListener(type: string, listener: (evt: Event) => void, options?: AddEventListenerOptions): void;\n removeListener(type: string, listener: (evt: Event) => void): void;\n createRipple(): any;\n setStatic(value: boolean): void;\n setTwoLine(value: boolean): void;\n setThreeLine(value: boolean): void;\n getLineCount(): number;\n setActive(value: boolean): void;\n setSelected(value: boolean): void;\n tryToggleCheckboxRadio(value?: boolean): void;\n setFocus(): void;\n hasFocus(): boolean;\n setRole(role: string): void;\n setDisabled(disabled: boolean): void;\n setDense(dense: boolean): void;\n setIndented(indented: boolean): void;\n setWrap(value: boolean): void;\n trySelect(value: unknown): void;\n}\n\nexport class ListItemAdapter extends BaseAdapter<IListItemComponent> implements IListItemAdapter {\n private _listItemElement: HTMLElement;\n private _defaultSlot: HTMLSlotElement;\n\n constructor(component: IListItemComponent) {\n super(component);\n this._initialize();\n }\n\n private _initialize(): void {\n this._listItemElement = getShadowElement(this._component, LIST_ITEM_CONSTANTS.selectors.LIST_ITEM);\n this._defaultSlot = getShadowElement(this._component, LIST_ITEM_CONSTANTS.selectors.DEFAULT_SLOT) as HTMLSlotElement;\n }\n \n public initializeAccessibility(): void {\n if (!this._component.hasAttribute('role')) {\n this._component.setAttribute('role', 'listitem');\n }\n }\n\n public getListItem(): IListItemComponent {\n return this._component;\n }\n\n /**\n * Adds an event listener to the `<forge-list-item>` host element.\n * @param {string} type The event type.\n * @param {Function} listener The event callback.\n */\n public addListener(type: string, listener: (evt: Event) => void, options?: AddEventListenerOptions): void {\n this._listItemElement.addEventListener(type, listener, options);\n }\n\n /**\n * Removes an event listener from the `<forge-list-item>` host element.\n * @param {string} type The event type.\n * @param {Function} listener The event callback.\n */\n public removeListener(type: string, listener: (evt: Event) => void): void {\n this._listItemElement.removeEventListener(type, listener);\n }\n\n /**\n * Creates a ripple instance on the list item.\n * @returns {ForgeRipple}\n */\n public createRipple(): any {\n return new ForgeRipple(this._listItemElement);\n }\n\n /**\n * Toggles the static state of this list item.\n * @param {boolean} value The static state.\n */\n public setStatic(value: boolean): void {\n if (value) {\n this._listItemElement.tabIndex = -1;\n addClass(LIST_ITEM_CONSTANTS.classes.STATIC, this._listItemElement);\n } else {\n this._listItemElement.tabIndex = 0;\n removeClass(LIST_ITEM_CONSTANTS.classes.STATIC, this._listItemElement);\n }\n }\n\n /**\n * Sets this list item as a two-line list item.\n * @param {boolean} value The two-line state.\n */\n public setTwoLine(value: boolean): void {\n if (value) {\n addClass(LIST_ITEM_CONSTANTS.classes.TWO_LINE, this._listItemElement);\n } else {\n removeClass(LIST_ITEM_CONSTANTS.classes.TWO_LINE, this._listItemElement);\n }\n }\n\n /**\n * Sets this list item as a three-line list item.\n * @param {boolean} value The three-line state.\n */\n public setThreeLine(value: boolean): void {\n if (value) {\n addClass(LIST_ITEM_CONSTANTS.classes.THREE_LINE, this._listItemElement);\n } else {\n removeClass(LIST_ITEM_CONSTANTS.classes.THREE_LINE, this._listItemElement);\n }\n }\n\n /**\n * Determines how many lines the list item is displaying.\n */\n public getLineCount(): number {\n return this._defaultSlot.assignedNodes().filter(e => e.nodeType === Node.ELEMENT_NODE).length; // assignedElements does not exist in the polyfilled version so filtering nodes instead\n }\n\n /**\n * Toggles the active class of the list item.\n * @param {boolean} value The active state.\n */\n public setActive(value: boolean): void {\n if (value) {\n addClass(LIST_ITEM_CONSTANTS.classes.ACTIVE, this._listItemElement);\n } else {\n removeClass(LIST_ITEM_CONSTANTS.classes.ACTIVE, this._listItemElement);\n }\n }\n\n /**\n * Toggles the selected class of the list item.\n * @param {boolean} value The active state.\n */\n public setSelected(value: boolean): void {\n if (value) {\n addClass(LIST_ITEM_CONSTANTS.classes.SELECTED, this._listItemElement);\n // We are treating selected and activated as the same state, and mdc-states hooks right into --activated\n // addClass(LIST_ITEM_CONSTANTS.classes.ACTIVATED, this._listItemElement);\n } else {\n removeClass(LIST_ITEM_CONSTANTS.classes.SELECTED, this._listItemElement);\n // removeClass(LIST_ITEM_CONSTANTS.classes.ACTIVATED, this._listItemElement);\n }\n }\n\n /**\n * Attemps to toggle a checkbox or radio button within the list item if it can find one.\n */\n public tryToggleCheckboxRadio(value?: boolean): void {\n const checkable = this._component.querySelector(LIST_ITEM_CONSTANTS.selectors.CHECKBOX_RADIO_SELECTOR) as HTMLInputElement;\n if (checkable) {\n const force = typeof value === 'boolean';\n const currentState = checkable.checked;\n \n // Check if we are just toggling or forcing to a specific checked state\n checkable.checked = force ? value as boolean : !checkable.checked;\n\n if (!force || currentState !== value) {\n checkable.dispatchEvent(new Event('change', { bubbles: true }));\n }\n }\n }\n\n /** Attempts to set focus to this list item. */\n public setFocus(): void {\n this._listItemElement.focus();\n }\n\n /** Returns whether the component has focus or not. */\n public hasFocus(): boolean {\n return document.activeElement === this._component || !!this._component.shadowRoot?.activeElement;\n }\n\n /**\n * Sets the role on the list item element.\n * @param role The role.\n */\n public setRole(role: string): void {\n this._listItemElement.setAttribute('role', role);\n }\n\n public setDisabled(disabled: boolean): void {\n toggleClass(this._listItemElement, disabled, LIST_ITEM_CONSTANTS.classes.DISABLED);\n }\n\n public setDense(dense: boolean): void {\n toggleClass(this._listItemElement, dense, LIST_ITEM_CONSTANTS.classes.DENSE);\n }\n\n public setIndented(indented: boolean): void {\n toggleClass(this._listItemElement, indented, LIST_ITEM_CONSTANTS.classes.INDENTED);\n }\n\n public setWrap(value: boolean): void {\n toggleClass(this._listItemElement, value, LIST_ITEM_CONSTANTS.classes.WRAP);\n }\n\n public trySelect(value: unknown): void {\n const list = requireParent<IListComponent>(this._component, LIST_CONSTANTS.elementName);\n if (!list || list.selectedValue === undefined) {\n return;\n }\n\n const listValues = list.selectedValue instanceof Array ? list.selectedValue : [list.selectedValue];\n if (listValues.some(v => isDeepEqual(v, value))) {\n this.setSelected(true);\n }\n }\n}\n", "import { ICustomElementFoundation, matchesSelectors } from '@tylertech/forge-core';\nimport { ForgeRipple } from '../../ripple';\nimport { IListItemAdapter } from './list-item-adapter';\nimport { LIST_ITEM_CONSTANTS, IListItemSelectEventData } from './list-item-constants';\n\nexport interface IListItemFoundation extends ICustomElementFoundation {\n static: boolean;\n twoLine: boolean;\n threeLine: boolean;\n active: boolean;\n selected: boolean;\n value: any;\n href: string;\n target: string;\n ripple: boolean;\n disabled: boolean;\n dense: boolean;\n wrap: boolean;\n setFocus(): void;\n}\n\n/**\n * The foundation class behind the `<forge-list-item>` component.\n */\nexport class ListItemFoundation implements IListItemFoundation {\n private _ripple = true;\n private _rippleInstance: ForgeRipple;\n private _static = false;\n private _twoLine = false;\n private _threeLine = false;\n private _active = false;\n private _selected = false;\n private _value: any;\n private _href: string;\n private _target: string;\n private _disabled = false;\n private _dense = false;\n private _propagateClick = true;\n private _indented = false;\n private _wrap = false;\n private _clickListener: (evt: MouseEvent) => void;\n private _mouseDownListener: (evt: MouseEvent) => void;\n private _keydownListener: (evt: KeyboardEvent) => void;\n\n constructor(private _adapter: IListItemAdapter) {\n this._clickListener = (evt: MouseEvent) => this._onClick(evt);\n this._mouseDownListener = (evt: MouseEvent) => this._onMouseDown(evt);\n this._keydownListener = (evt: KeyboardEvent) => this._onKeydown(evt);\n }\n\n public initialize(): void {\n this._adapter.initializeAccessibility();\n this._setRipple();\n this._adapter.setStatic(this._static);\n this._adapter.setDense(this._dense);\n this._adapter.setDisabled(this._disabled);\n this._adapter.setIndented(this._indented);\n this._adapter.setWrap(this._wrap);\n\n if (!this._static) {\n this._adapter.addListener('click', this._clickListener);\n this._adapter.addListener('mousedown', this._mouseDownListener, { passive: false, capture: true });\n this._adapter.addListener('keydown', this._keydownListener);\n }\n\n if (this._threeLine) {\n this._adapter.setThreeLine(this._threeLine);\n } else if (this.twoLine) {\n this._adapter.setTwoLine(this._twoLine);\n }\n\n this._adapter.trySelect(this._value);\n }\n\n public disconnect(): void {\n if (this._rippleInstance) {\n this._rippleInstance.destroy();\n this._rippleInstance = undefined as any;\n }\n }\n\n private _onMouseDown(evt: MouseEvent): void {\n if (this._adapter.hasFocus() || !this._propagateClick) {\n evt.preventDefault();\n }\n }\n\n private _onKeydown(evt: KeyboardEvent): void {\n if (evt.key === 'Enter' || evt.key === ' ') {\n if (evt.key === ' ') {\n evt.preventDefault();\n }\n this._select(evt.target as HTMLElement);\n }\n }\n\n /**\n * Handles clicking a list item.\n * @param evt\n */\n private _onClick(evt: MouseEvent): void {\n this._select(evt.target as HTMLElement);\n }\n\n private _select(targetElement: HTMLElement): void {\n const ignoreElement = targetElement?.hasAttribute(LIST_ITEM_CONSTANTS.attributes.IGNORE);\n if (this._static || this._disabled || ignoreElement) {\n return;\n }\n\n if (!this._adapter.hasFocus() && this._propagateClick) {\n this.setFocus();\n }\n\n if (this._href) {\n if (this._target) {\n window.open(this._href, this._target);\n } else {\n document.location.href = this._href;\n }\n return;\n }\n\n // If the target was not a checkbox or radio button, attempt to find one and toggle its checked state\n if (!matchesSelectors(targetElement, LIST_ITEM_CONSTANTS.selectors.CHECKBOX_RADIO_SELECTOR)) {\n this._adapter.tryToggleCheckboxRadio();\n }\n\n const data: IListItemSelectEventData = {\n value: this._value,\n listItem: this._adapter.getListItem()\n };\n this._adapter.emitHostEvent(LIST_ITEM_CONSTANTS.events.SELECT, data);\n }\n\n /** Gets/sets whether the list item has a ripple or not. */\n public get ripple(): boolean {\n return this._ripple;\n }\n public set ripple(value: boolean) {\n if (this._ripple !== value) {\n // We don't attach ripples to static items\n if (value && this._static) {\n return;\n }\n this._ripple = value;\n this._setRipple();\n\n this._adapter.setHostAttribute(LIST_ITEM_CONSTANTS.attributes.RIPPLE, String(this._ripple));\n }\n }\n\n /** Gets/sets whether the static state of this list item. */\n public get static(): boolean {\n return this._static;\n }\n public set static(value: boolean) {\n if (this._static !== value) {\n this._static = value;\n this._adapter.setStatic(this._static);\n\n // Ensure we either add or remove the ripple\n this._setRipple();\n\n // Toggle the click listener\n if (this._static) {\n this._adapter.removeListener('click', this._clickListener);\n } else {\n this._adapter.addListener('click', this._clickListener);\n }\n\n if (this._static) {\n this._adapter.setHostAttribute(LIST_ITEM_CONSTANTS.attributes.STATIC);\n } else {\n this._adapter.removeHostAttribute(LIST_ITEM_CONSTANTS.attributes.STATIC);\n }\n }\n }\n\n /** Gets/sets whether the list item displays two lines of text. */\n public get twoLine(): boolean {\n return this._twoLine;\n }\n public set twoLine(value: boolean) {\n if (this._twoLine !== value) {\n this._twoLine = value;\n this._adapter.setTwoLine(this._twoLine);\n\n if (this._twoLine) {\n this._adapter.setHostAttribute(LIST_ITEM_CONSTANTS.attributes.TWO_LINE);\n } else {\n this._adapter.removeHostAttribute(LIST_ITEM_CONSTANTS.attributes.TWO_LINE);\n }\n }\n }\n\n /** Gets/sets whether the list item displays two lines of text. */\n public get threeLine(): boolean {\n return this._threeLine;\n }\n public set threeLine(value: boolean) {\n if (this._threeLine !== value) {\n this._threeLine = value;\n\n if (this._threeLine) {\n this._adapter.setHostAttribute(LIST_ITEM_CONSTANTS.attributes.THREE_LINE);\n } else {\n this._adapter.removeHostAttribute(LIST_ITEM_CONSTANTS.attributes.THREE_LINE);\n }\n\n if (this._threeLine) {\n this._twoLine = false;\n }\n\n this._adapter.setTwoLine(this._twoLine);\n this._adapter.setThreeLine(this._threeLine);\n }\n }\n\n /** Gets/sets whether the list item is active or not. */\n public get active(): boolean {\n return this._active;\n }\n public set active(value: boolean) {\n if (this._active !== value) {\n this._active = value;\n this._adapter.setActive(this._active);\n if (this._active) {\n this._adapter.setHostAttribute(LIST_ITEM_CONSTANTS.attributes.ACTIVE);\n } else {\n this._adapter.removeHostAttribute(LIST_ITEM_CONSTANTS.attributes.ACTIVE);\n }\n }\n }\n\n /** Gets/sets whether the list item is selected or not. */\n public get selected(): boolean {\n return this._selected;\n }\n public set selected(value: boolean) {\n if (this._selected !== value) {\n this._selected = value;\n this._adapter.setSelected(this._selected);\n this._adapter.tryToggleCheckboxRadio(this._selected);\n this._adapter.toggleHostAttribute(LIST_ITEM_CONSTANTS.attributes.SELECTED, this._selected);\n }\n }\n\n /** Gets/sets the unique value for this list item. */\n public get value(): any {\n return this._value;\n }\n public set value(value: any) {\n this._value = value;\n this._adapter.trySelect(this._value);\n }\n\n /** Gets/sets the href link that this list item will send the browser to when clicked. */\n public get href(): string {\n return this._href;\n }\n public set href(value: string) {\n if (this._href !== value) {\n this._href = value;\n if (this._href) {\n this._adapter.setRole(LIST_ITEM_CONSTANTS.roles.LINK);\n } else {\n this._adapter.setRole(LIST_ITEM_CONSTANTS.roles.LIST_ITEM);\n }\n this._adapter.setHostAttribute(LIST_ITEM_CONSTANTS.attributes.HREF, this._href);\n }\n }\n\n /** Gets/sets the href link target. */\n public get target(): string {\n return this._target;\n }\n public set target(value: string) {\n this._target = value;\n }\n\n /** Gets/sets the disabled state. */\n public get disabled(): boolean {\n return this._disabled;\n }\n public set disabled(value: boolean) {\n if (this._disabled !== value) {\n this._disabled = value;\n this._adapter.setDisabled(this._disabled);\n this._adapter.toggleHostAttribute(LIST_ITEM_CONSTANTS.attributes.DISABLED, this._disabled);\n }\n }\n\n /** Gets/sets the dense state. */\n public get dense(): boolean {\n return this._dense;\n }\n public set dense(value: boolean) {\n if (this._dense !== value) {\n this._dense = value;\n this._adapter.setDense(this._dense);\n this._adapter.toggleHostAttribute(LIST_ITEM_CONSTANTS.attributes.DENSE, this._dense);\n }\n }\n\n /** Gets/sets the dense state. */\n public get propagateClick(): boolean {\n return this._propagateClick;\n }\n public set propagateClick(value: boolean) {\n if (this._propagateClick !== value) {\n this._propagateClick = value;\n this._adapter.setHostAttribute(LIST_ITEM_CONSTANTS.attributes.PROPAGATE_CLICK, '' + !!this._propagateClick);\n }\n }\n\n public get indented(): boolean {\n return this._indented;\n }\n public set indented(value: boolean) {\n if (this._indented !== value) {\n this._indented = value;\n this._adapter.setIndented(this._indented);\n this._adapter.toggleHostAttribute(LIST_ITEM_CONSTANTS.attributes.INDENTED, this._indented);\n }\n }\n\n public get wrap(): boolean {\n return this._wrap;\n }\n public set wrap(value: boolean) {\n if (this._wrap !== value) {\n this._wrap = value;\n this._adapter.setWrap(this._wrap);\n this._adapter.toggleHostAttribute(LIST_ITEM_CONSTANTS.attributes.WRAP, this._wrap);\n }\n }\n\n private _setRipple(): void {\n if (this._ripple && !this._static && !this._rippleInstance) {\n this._rippleInstance = this._adapter.createRipple();\n } else if ((!this._ripple || this._static) && this._rippleInstance) {\n this._rippleInstance.destroy();\n this._rippleInstance = undefined as any;\n }\n }\n\n /**\n * Sets focus to this list item.\n */\n public setFocus(): void {\n this._adapter.setFocus();\n }\n}\n", "import { CustomElement, attachShadowTemplate, requireParent, elementParents, coerceBoolean, FoundationProperty } from '@tylertech/forge-core';\nimport { ListItemAdapter } from './list-item-adapter';\nimport { ListItemFoundation } from './list-item-foundation';\nimport { IListItemSelectEventData, LIST_ITEM_CONSTANTS } from './list-item-constants';\nimport { LIST_CONSTANTS } from '../list/list-constants';\nimport { IListComponent } from '../list';\nimport { BaseComponent, IBaseComponent } from '../../core/base/base-component';\n\nconst defaultTemplate = '<template><div class=\\\"forge-list-item\\\" tabindex=\\\"0\\\" part=\\\"root\\\"><slot name=\\\"leading\\\"></slot><slot name=\\\"avatar\\\"></slot><div class=\\\"forge-list-item__text\\\" part=\\\"text-container\\\"><slot></slot><slot name=\\\"title\\\"></slot><slot name=\\\"subtitle\\\"></slot><slot name=\\\"tertiary-title\\\"></slot><slot></slot></div><slot name=\\\"trailing\\\"></slot></div></template>';\nconst styles = '@-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}}.mdc-ripple-surface{--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;position:relative;outline:0;overflow:hidden}.mdc-ripple-surface::after,.mdc-ripple-surface::before{position:absolute;border-radius:50%;opacity:0;pointer-events:none;content:\\\"\\\"}.mdc-ripple-surface::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)}.mdc-ripple-surface::after{z-index:0;z-index:var(--mdc-ripple-z-index,0)}.mdc-ripple-surface.mdc-ripple-upgraded::before{-webkit-transform:scale(var(--mdc-ripple-fg-scale,1));transform:scale(var(--mdc-ripple-fg-scale,1))}.mdc-ripple-surface.mdc-ripple-upgraded::after{top:0;left:0;-webkit-transform:scale(0);transform:scale(0);-webkit-transform-origin:center center;transform-origin:center center}.mdc-ripple-surface.mdc-ripple-upgraded--unbounded::after{top:var(--mdc-ripple-top,0);left:var(--mdc-ripple-left,0)}.mdc-ripple-surface.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}.mdc-ripple-surface.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))}.mdc-ripple-surface::after,.mdc-ripple-surface::before{top:calc(50% - 100%);left:calc(50% - 100%);width:200%;height:200%}.mdc-ripple-surface.mdc-ripple-upgraded::after{width:var(--mdc-ripple-fg-size,100%);height:var(--mdc-ripple-fg-size,100%)}.mdc-ripple-surface[data-mdc-ripple-is-unbounded],.mdc-ripple-upgraded--unbounded{overflow:visible}.mdc-ripple-surface[data-mdc-ripple-is-unbounded]::after,.mdc-ripple-surface[data-mdc-ripple-is-unbounded]::before,.mdc-ripple-upgraded--unbounded::after,.mdc-ripple-upgraded--unbounded::before{top:calc(50% - 50%);left:calc(50% - 50%);width:100%;height:100%}.mdc-ripple-surface[data-mdc-ripple-is-unbounded].mdc-ripple-upgraded::after,.mdc-ripple-surface[data-mdc-ripple-is-unbounded].mdc-ripple-upgraded::before,.mdc-ripple-upgraded--unbounded.mdc-ripple-upgraded::after,.mdc-ripple-upgraded--unbounded.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%)}.mdc-ripple-surface[data-mdc-ripple-is-unbounded].mdc-ripple-upgraded::after,.mdc-ripple-upgraded--unbounded.mdc-ripple-upgraded::after{width:var(--mdc-ripple-fg-size,100%);height:var(--mdc-ripple-fg-size,100%)}.mdc-ripple-surface::after,.mdc-ripple-surface::before{background-color:#000;background-color:var(--mdc-ripple-color,#000)}.mdc-ripple-surface.mdc-ripple-surface--hover::before,.mdc-ripple-surface:hover::before{opacity:.04;opacity:var(--mdc-ripple-hover-opacity, .04)}.mdc-ripple-surface.mdc-ripple-upgraded--background-focused::before,.mdc-ripple-surface:not(.mdc-ripple-upgraded):focus::before{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.12;opacity:var(--mdc-ripple-focus-opacity, .12)}.mdc-ripple-surface:not(.mdc-ripple-upgraded)::after{-webkit-transition:opacity 150ms linear;transition:opacity 150ms linear}.mdc-ripple-surface:not(.mdc-ripple-upgraded):active::after{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.12;opacity:var(--mdc-ripple-press-opacity, .12)}.mdc-ripple-surface.mdc-ripple-upgraded{--mdc-ripple-fg-opacity:var(--mdc-ripple-press-opacity, 0.12)}.mdc-ripple-surface::after,.mdc-ripple-surface::before{--mdc-ripple-color:var(--mdc-theme-on-surface)}.forge-list-item{min-height:auto;min-height:var(--forge-list-item-min-height,auto);max-height:auto;max-height:var(--forge-list-item-max-height,auto);height:48px;height:var(--forge-list-item-height,48px);padding:0 16px;padding:var(--forge-list-item-padding,0 16px);margin-left:0;margin-left:var(--forge-list-item-indent,0);-webkit-box-align:center;align-items:center;-webkit-box-align:var(--forge-list-item-align-items,center);align-items:var(--forge-list-item-align-items,center);position:relative;display:-webkit-box;display:flex;-webkit-box-pack:start;justify-content:flex-start;overflow:hidden}.forge-list-item:focus{outline:0}.forge-list-item ::slotted([slot=leading]),.forge-list-item ::slotted([slot=trailing]){font-size:1.5rem}.forge-list-item ::slotted([slot=leading]){color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54));margin-left:0;margin-left:var(--forge-list-item-leading-margin-left,0);margin-right:32px;margin-right:var(--forge-list-item-leading-margin-right,32px);display:-webkit-inline-box;display:inline-flex;flex-shrink:0;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;fill:currentColor}.forge-list-item ::slotted([slot=trailing]){color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54))}.forge-list-item ::slotted([slot=avatar]){color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54));margin-left:0;margin-left:var(--forge-list-item-leading-margin-left,0);margin-right:32px;margin-right:var(--forge-list-item-leading-margin-right,32px);display:-webkit-inline-box;display:inline-flex;flex-shrink:0;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;fill:currentColor;margin-left:0;margin-right:16px;min-width:40px;min-height:40px;border-radius:50%;display:inline-flex;background-color:rgba(0,0,0,.54);background-color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54));color:#fff;color:var(--mdc-theme-on-primary,#fff)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item{--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-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item::after,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item::before{position:absolute;border-radius:50%;opacity:0;pointer-events:none;content:\\\"\\\"}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item::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-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item::after{z-index:0;z-index:var(--mdc-ripple-z-index,0)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item.mdc-ripple-upgraded::before{-webkit-transform:scale(var(--mdc-ripple-fg-scale,1));transform:scale(var(--mdc-ripple-fg-scale,1))}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item.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-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item.mdc-ripple-upgraded--unbounded::after{top:var(--mdc-ripple-top,0);left:var(--mdc-ripple-left,0)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item.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-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item.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-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item::after,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item::before{top:calc(50% - 100%);left:calc(50% - 100%);width:200%;height:200%}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item.mdc-ripple-upgraded::after{width:var(--mdc-ripple-fg-size,100%);height:var(--mdc-ripple-fg-size,100%)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item::after,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item::before{background-color:#000;background-color:var(--mdc-ripple-color,var(--mdc-theme-on-surface,#000))}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item.mdc-ripple-surface--hover::before,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item:hover::before{opacity:.04;opacity:var(--mdc-ripple-hover-opacity, .04)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item.mdc-ripple-upgraded--background-focused::before,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item:not(.mdc-ripple-upgraded):focus::before{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.12;opacity:var(--mdc-ripple-focus-opacity, .12)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item:not(.mdc-ripple-upgraded)::after{-webkit-transition:opacity 150ms linear;transition:opacity 150ms linear}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item:not(.mdc-ripple-upgraded):active::after{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.12;opacity:var(--mdc-ripple-press-opacity, .12)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item.mdc-ripple-upgraded{--mdc-ripple-fg-opacity:var(--mdc-ripple-press-opacity, 0.12)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--activated::before{opacity:.12;opacity:var(--mdc-ripple-activated-opacity, .12)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--activated::after,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--activated::before{background-color:#3f51b5;background-color:var(--mdc-ripple-color,var(--mdc-theme-primary,#3f51b5))}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--activated.mdc-ripple-surface--hover::before,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--activated:hover::before{opacity:.16;opacity:var(--mdc-ripple-hover-opacity, .16)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--activated.mdc-ripple-upgraded--background-focused::before,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--activated:not(.mdc-ripple-upgraded):focus::before{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.24;opacity:var(--mdc-ripple-focus-opacity, .24)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--activated:not(.mdc-ripple-upgraded)::after{-webkit-transition:opacity 150ms linear;transition:opacity 150ms linear}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--activated:not(.mdc-ripple-upgraded):active::after{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.24;opacity:var(--mdc-ripple-press-opacity, .24)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--activated.mdc-ripple-upgraded{--mdc-ripple-fg-opacity:var(--mdc-ripple-press-opacity, 0.24)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--selected::before{opacity:.08;opacity:var(--mdc-ripple-selected-opacity, .08)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--selected::after,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--selected::before{background-color:#3f51b5;background-color:var(--mdc-ripple-color,var(--mdc-theme-primary,#3f51b5))}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--selected.mdc-ripple-surface--hover::before,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--selected:hover::before{opacity:.12;opacity:var(--mdc-ripple-hover-opacity, .12)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--selected.mdc-ripple-upgraded--background-focused::before,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--selected:not(.mdc-ripple-upgraded):focus::before{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.2;opacity:var(--mdc-ripple-focus-opacity, .2)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--selected:not(.mdc-ripple-upgraded)::after{-webkit-transition:opacity 150ms linear;transition:opacity 150ms linear}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--selected:not(.mdc-ripple-upgraded):active::after{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.2;opacity:var(--mdc-ripple-press-opacity, .2)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--selected.mdc-ripple-upgraded{--mdc-ripple-fg-opacity:var(--mdc-ripple-press-opacity, 0.2)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--selected:focus:hover.mdc-ripple-upgraded--background-focused:not(.mdc-ripple-upgraded--foreground-activation)::before{opacity:.28}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--active:not(.forge-list-item--selected):not(.forge-list-item--activated):not(.mdc-ripple-upgraded--foreground-activation)::before,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item:focus:not(.forge-list-item--selected):not(.forge-list-item--activated):not(.mdc-ripple-upgraded--foreground-activation)::before{opacity:.12}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--active:not(.forge-list-item--selected):not(.forge-list-item--activated):not(.mdc-ripple-upgraded--foreground-activation):hover::before,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item:focus:not(.forge-list-item--selected):not(.forge-list-item--activated):not(.mdc-ripple-upgraded--foreground-activation):hover::before{opacity:.16}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--active:not(.forge-list-item--selected):not(.forge-list-item--activated):not(.mdc-ripple-upgraded--foreground-activation)::after,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--active:not(.forge-list-item--selected):not(.forge-list-item--activated):not(.mdc-ripple-upgraded--foreground-activation)::before,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item:focus:not(.forge-list-item--selected):not(.forge-list-item--activated):not(.mdc-ripple-upgraded--foreground-activation)::after,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item:focus:not(.forge-list-item--selected):not(.forge-list-item--activated):not(.mdc-ripple-upgraded--foreground-activation)::before{background-color:#000;background-color:var(--mdc-theme-on-surface,#000)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--active:focus.forge-list-item--selected.forge-list-item--activated:not(.mdc-ripple-upgraded--foreground-activation)::before{opacity:.24}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--active:focus.forge-list-item--selected.forge-list-item--activated:not(.mdc-ripple-upgraded--foreground-activation):hover::before{opacity:.28}.forge-list-item--wrap .forge-list-item__text{text-overflow:clip;white-space:normal}.forge-list-item__text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden;width:100%}.forge-list-item ::slotted([slot=title]){text-overflow:ellipsis;white-space:nowrap;overflow:hidden;display:block}.forge-list-item ::slotted([slot=subtitle]),.forge-list-item ::slotted([slot=tertiary-title]){-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-body2-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:.875rem;font-size:var(--mdc-typography-body2-font-size, .875rem);line-height:1.25rem;line-height:var(--mdc-typography-body2-line-height, 1.25rem);font-weight:400;font-weight:var(--mdc-typography-body2-font-weight,400);letter-spacing:.0178571429em;letter-spacing:var(--mdc-typography-body2-letter-spacing, .0178571429em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-body2-text-decoration,inherit);text-decoration:var(--mdc-typography-body2-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-body2-text-transform,inherit);text-overflow:ellipsis;white-space:nowrap;overflow:hidden;color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54));display:block}.forge-list-item ::slotted([slot=subtitle])::before,.forge-list-item ::slotted([slot=tertiary-title])::before{display:inline-block;width:0;height:20;content:\\\"\\\";vertical-align:0}.forge-list-item--two-line{height:72px;height:var(--forge-list-item-height,72px)}.forge-list-item--three-line{height:88px;height:var(--forge-list-item-height,88px)}.forge-list-item--dense{height:32px;height:var(--forge-list-item-height,32px)}.forge-list-item--dense ::slotted([slot=leading]),.forge-list-item--dense ::slotted([slot=trailing]){font-size:1.25rem}.forge-list-item--dense ::slotted([slot=leading]){margin-right:12px;margin-right:var(--forge-list-item-leading-margin-right,12px)}.forge-list-item--dense ::slotted(.forge-list-item__title){-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-body2-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:.875rem;font-size:var(--mdc-typography-body2-font-size, .875rem);line-height:1.25rem;line-height:var(--mdc-typography-body2-line-height, 1.25rem);font-weight:400;font-weight:var(--mdc-typography-body2-font-weight,400);letter-spacing:.0178571429em;letter-spacing:var(--mdc-typography-body2-letter-spacing, .0178571429em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-body2-text-decoration,inherit);text-decoration:var(--mdc-typography-body2-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-body2-text-transform,inherit)}.forge-list-item--indented{margin-left:56px;margin-left:var(--forge-list-item-indent,56px)}.forge-list-item--active.forge-list-item--activated:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item::before,.forge-list-item--active.forge-list-item--selected:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item::before{opacity:.2}.forge-list-item--active.forge-list-item--activated:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item:hover::before,.forge-list-item--active.forge-list-item--selected:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item:hover::before{opacity:.24}.forge-list-item--activated,.forge-list-item--selected{color:#3f51b5;color:var(--mdc-theme-primary,#3f51b5)}.forge-list-item--activated .forge-list-item__text .forge-list-item__subtitle,.forge-list-item--activated .forge-list-item__text ::slotted(.forge-list-item__subtitle),.forge-list-item--selected .forge-list-item__text .forge-list-item__subtitle,.forge-list-item--selected .forge-list-item__text ::slotted(.forge-list-item__subtitle){color:#3f51b5;color:var(--mdc-theme-primary,#3f51b5);opacity:.87}.forge-list-item--activated .forge-list-item__text .forge-list-item__tertiary-title,.forge-list-item--activated .forge-list-item__text ::slotted(.forge-list-item__tertiary-title),.forge-list-item--selected .forge-list-item__text .forge-list-item__tertiary-title,.forge-list-item--selected .forge-list-item__text ::slotted(.forge-list-item__tertiary-title){color:#3f51b5;color:var(--mdc-theme-primary,#3f51b5);opacity:.87}.forge-list-item--activated ::slotted([slot=leading]),.forge-list-item--activated ::slotted([slot=trailing]),.forge-list-item--selected ::slotted([slot=leading]),.forge-list-item--selected ::slotted([slot=trailing]){color:#3f51b5;color:var(--mdc-theme-primary,#3f51b5)}.forge-list-item--activated ::slotted([slot=avatar].forge-list-item__avatar-icon),.forge-list-item--selected ::slotted([slot=avatar].forge-list-item__avatar-icon){background-color:rgba(0,0,0,.12);background-color:var(--mdc-theme-text-disabled-on-background,rgba(0,0,0,.12));color:#000;color:var(--mdc-theme-on-surface,#000)}.forge-list-item--disabled{cursor:not-allowed;cursor:var(--forge-list-item-cursor,not-allowed);color:rgba(0,0,0,.38);color:var(--mdc-theme-text-disabled-on-light,rgba(0,0,0,.38))}.forge-list-item--disabled ::slotted([slot=leading]),.forge-list-item--disabled ::slotted([slot=trailing]){cursor:not-allowed;cursor:var(--forge-list-item-cursor,not-allowed);color:rgba(0,0,0,.38);color:var(--mdc-theme-text-disabled-on-light,rgba(0,0,0,.38))}.forge-list-item[role=link]{cursor:pointer}:host{display:block;contain:content}:host([hidden]){display:none}:host([forge-drawer-context=true]) .forge-list-item{margin:8px;margin:var(--forge-list-item-margin,8px);padding:0 8px;padding:var(--forge-list-item-padding,0 8px);border-radius:4px;border-radius:var(--forge-list-item-border-radius,4px);cursor:pointer;cursor:var(--forge-list-item-cursor,pointer);font-size:.875rem;font-weight:500;height:40px}:host([forge-drawer-context=true]) .forge-list-item--static{cursor:initial}:host([forge-drawer-context=true]) .forge-list-item--indented{margin-left:64px;margin-left:var(--forge-list-item-indent,64px)}:host([forge-drawer-context=true]) .forge-list-item--two-line{height:64px}:host([forge-drawer-context=true]) .forge-list-item--three-line{height:80px}:host([forge-drawer-context=true]) .forge-list-item:first-child{margin-top:4px;margin-bottom:4px}:host([forge-drawer-context=true]) .forge-list-item--dense{height:32px;height:var(--forge-list-item-height,32px)}:host([forge-drawer-context=true]) .forge-list-item--dense ::slotted([slot=leading]),:host([forge-drawer-context=true]) .forge-list-item--dense ::slotted([slot=trailing]){font-size:1.25rem}:host([forge-drawer-context=true]) .forge-list-item--dense .forge-list-item__text{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-body2-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:.875rem;font-size:var(--mdc-typography-body2-font-size, .875rem);line-height:1.25rem;line-height:var(--mdc-typography-body2-line-height, 1.25rem);font-weight:400;font-weight:var(--mdc-typography-body2-font-weight,400);letter-spacing:.0178571429em;letter-spacing:var(--mdc-typography-body2-letter-spacing, .0178571429em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-body2-text-decoration,inherit);text-decoration:var(--mdc-typography-body2-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-body2-text-transform,inherit)}:host([forge-drawer-context=true]) .forge-list-item--disabled{cursor:not-allowed;cursor:var(--forge-list-item-cursor,not-allowed)}:host([dense]){-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-body2-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:.875rem;font-size:var(--mdc-typography-body2-font-size, .875rem);line-height:1.25rem;line-height:var(--mdc-typography-body2-line-height, 1.25rem);font-weight:400;font-weight:var(--mdc-typography-body2-font-weight,400);letter-spacing:.0178571429em;letter-spacing:var(--mdc-typography-body2-letter-spacing, .0178571429em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-body2-text-decoration,inherit);text-decoration:var(--mdc-typography-body2-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-body2-text-transform,inherit)}';\n\nexport interface IListItemComponent extends IBaseComponent {\n static: boolean;\n twoLine: boolean;\n threeLine: boolean;\n active: boolean;\n selected: boolean;\n value: any;\n href: string;\n target: string;\n ripple: boolean;\n disabled: boolean;\n dense: boolean;\n propagateClick: boolean;\n indented: boolean;\n wrap: boolean;\n focus(): void;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'forge-list-item': IListItemComponent;\n }\n\n interface HTMLElementEventMap {\n 'forge-list-item-select': CustomEvent<IListItemSelectEventData>;\n }\n}\n\n/** The custom element class behind the `<forge-list-item>` element. */\n@CustomElement({\n name: LIST_ITEM_CONSTANTS.elementName\n})\nexport class ListItemComponent extends BaseComponent implements IListItemComponent {\n public static get observedAttributes(): string[] {\n return [\n LIST_ITEM_CONSTANTS.attributes.STATIC,\n LIST_ITEM_CONSTANTS.attributes.TWO_LINE,\n LIST_ITEM_CONSTANTS.attributes.THREE_LINE,\n LIST_ITEM_CONSTANTS.attributes.ACTIVE,\n LIST_ITEM_CONSTANTS.attributes.SELECTED,\n LIST_ITEM_CONSTANTS.attributes.VALUE,\n LIST_ITEM_CONSTANTS.attributes.HREF,\n LIST_ITEM_CONSTANTS.attributes.TARGET,\n LIST_ITEM_CONSTANTS.attributes.RIPPLE,\n LIST_ITEM_CONSTANTS.attributes.DISABLED,\n LIST_ITEM_CONSTANTS.attributes.DENSE,\n LIST_ITEM_CONSTANTS.attributes.PROPAGATE_CLICK,\n LIST_ITEM_CONSTANTS.attributes.INDENTED,\n LIST_ITEM_CONSTANTS.attributes.WRAP\n ];\n }\n\n private _foundation: ListItemFoundation;\n\n constructor() {\n super();\n attachShadowTemplate(this, defaultTemplate, styles);\n this._foundation = new ListItemFoundation(new ListItemAdapter(this));\n }\n\n public initializedCallback(): void {\n // To simulate the :host-context() selector for Firefox until they implement it, we need to determine if the\n // list item is within a drawer for auto-styling the list item when included within a drawer. Check to see if\n // any of the parents of this element are a drawer.\n if (!this.hasAttribute(LIST_ITEM_CONSTANTS.attributes.DRAWER_CONTEXT) && elementParents(this).some(el => ['forge-drawer', 'forge-modal-drawer', 'forge-mini-drawer'].includes(el.tagName.toLowerCase()))) {\n this.setAttribute(LIST_ITEM_CONSTANTS.attributes.DRAWER_CONTEXT, 'true');\n }\n\n const list = requireParent<IListComponent>(this, LIST_CONSTANTS.elementName);\n if (list) {\n this._inheritParentListProps(list);\n }\n\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 LIST_ITEM_CONSTANTS.attributes.STATIC:\n this.static = coerceBoolean(newValue);\n break;\n case LIST_ITEM_CONSTANTS.attributes.TWO_LINE:\n this.twoLine = coerceBoolean(newValue);\n break;\n case LIST_ITEM_CONSTANTS.attributes.THREE_LINE:\n this.threeLine = coerceBoolean(newValue);\n break;\n case LIST_ITEM_CONSTANTS.attributes.ACTIVE:\n this.active = coerceBoolean(newValue);\n break;\n case LIST_ITEM_CONSTANTS.attributes.SELECTED:\n this.selected = coerceBoolean(newValue);\n break;\n case LIST_ITEM_CONSTANTS.attributes.VALUE:\n this.value = newValue;\n break;\n case LIST_ITEM_CONSTANTS.attributes.HREF:\n this.href = newValue;\n break;\n case LIST_ITEM_CONSTANTS.attributes.TARGET:\n this.target = newValue;\n break;\n case LIST_ITEM_CONSTANTS.attributes.RIPPLE:\n this.ripple = coerceBoolean(newValue);\n break;\n case LIST_ITEM_CONSTANTS.attributes.DISABLED:\n this.disabled = coerceBoolean(newValue);\n break;\n case LIST_ITEM_CONSTANTS.attributes.DENSE:\n this.dense = coerceBoolean(newValue);\n break;\n case LIST_ITEM_CONSTANTS.attributes.PROPAGATE_CLICK:\n this.propagateClick = coerceBoolean(newValue);\n break;\n case LIST_ITEM_CONSTANTS.attributes.INDENTED:\n this.indented = coerceBoolean(newValue);\n break;\n case LIST_ITEM_CONSTANTS.attributes.WRAP:\n this.wrap = coerceBoolean(newValue);\n break;\n }\n }\n\n private _inheritParentListProps(list: IListComponent): void {\n if (list.hasAttribute(LIST_CONSTANTS.attributes.STATIC)) {\n this.static = true;\n }\n if (list.hasAttribute(LIST_CONSTANTS.attributes.DENSE)) {\n this.dense = true;\n }\n if (list.getAttribute(LIST_CONSTANTS.attributes.PROPAGATE_CLICK) === 'false') {\n this.propagateClick = false;\n }\n if (list.hasAttribute(LIST_CONSTANTS.attributes.INDENTED)) {\n this.indented = true;\n }\n }\n\n /** Gets/sets whether the static state of this list item. */\n @FoundationProperty()\n public static: boolean;\n\n /** Gets/sets whether the list item displays two lines of text. */\n @FoundationProperty()\n public twoLine: boolean;\n\n /** Gets/sets whether the list item displays three lines of text. */\n @FoundationProperty()\n public threeLine: boolean;\n\n /** Gets/sets whether the list item is active or not. */\n @FoundationProperty()\n public active: boolean;\n\n /** Gets/sets whether the list item is selected or not. */\n @FoundationProperty()\n public selected: boolean;\n\n /** Gets/sets list item value. */\n @FoundationProperty()\n public value: any;\n\n /** Gets/sets the href link that this list item will send the browser to when clicked. */\n @FoundationProperty()\n public href: string;\n\n /** Gets/sets the href link target. Only pertains when `href` is also used. */\n @FoundationProperty()\n public target: string;\n\n /** Gets/sets whether the list item has a ripple or not. */\n @FoundationProperty()\n public ripple: boolean;\n\n /** Gets/sets whether the list item is disabled or not. */\n @FoundationProperty()\n public disabled: boolean;\n\n /** Gets/sets whether the list item is using dense styles or not. */\n @FoundationProperty()\n public dense: boolean;\n\n /** Gets/sets whether the list item allows mousedown events through to the underlying list item element. Default is true. */\n @FoundationProperty()\n public propagateClick: boolean;\n\n /** Gets/sets whether the list item is indented or not. Default is false. */\n @FoundationProperty()\n public indented: boolean;\n\n /** Gets/sets whether the list item content is wrapped or not. Default is true. */\n @FoundationProperty()\n public wrap: boolean;\n\n /** Sets focus to this list item. */\n public override focus(): void {\n this._foundation.setFocus();\n }\n}\n", "import { defineCustomElement } from '@tylertech/forge-core';\nimport { ListItemComponent } from './list-item';\n\nexport * from './list-item-adapter';\nexport * from './list-item-constants';\nexport * from './list-item-foundation';\nexport * from './list-item';\n\nexport function defineListItemComponent(): void {\n defineCustomElement(ListItemComponent);\n}\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["import { COMPONENT_NAME_PREFIX } from '../../constants';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}list`;\n\nconst attributes = {\n STATIC: 'static',\n DENSE: 'dense',\n PROPAGATE_CLICK: 'propagate-click',\n INDENTED: 'indented',\n SELECTED_VALUE: 'selected-value'\n};\n\nconst selectors = {\n FOCUSABLE_LIST_ITEMS: '.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled)'\n};\n\nexport const LIST_CONSTANTS = {\n elementName,\n attributes,\n selectors\n};\n", "import { COMPONENT_NAME_PREFIX } from '../../constants';\nimport { IListItemComponent } from './list-item';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}list-item`;\n\nconst attributes = {\n STATIC: 'static',\n TWO_LINE: 'two-line',\n THREE_LINE: 'three-line',\n ACTIVE: 'active',\n SELECTED: 'selected',\n VALUE: 'value',\n HREF: 'href',\n TARGET: 'target',\n RIPPLE: 'ripple',\n DISABLED: 'disabled',\n DENSE: 'dense',\n PROPAGATE_CLICK: 'propagate-click',\n INDENTED: 'indented',\n WRAP: 'wrap',\n DRAWER_CONTEXT: 'forge-drawer-context',\n IGNORE: 'forge-ignore'\n};\n\nconst classes = {\n LIST_ITEM: 'forge-list-item',\n STATIC: 'forge-list-item--static',\n TEXT: 'forge-list-item__text',\n TWO_LINE: 'forge-list-item--two-line',\n THREE_LINE: 'forge-list-item--three-line',\n ACTIVE: 'forge-list-item--active',\n ACTIVATED: 'forge-list-item--activated',\n SELECTED: 'forge-list-item--selected',\n DISABLED: 'forge-list-item--disabled',\n DENSE: 'forge-list-item--dense',\n INDENTED: 'forge-list-item--indented',\n WRAP: 'forge-list-item--wrap'\n};\n\nconst selectors = {\n LIST_ITEM: `.${classes.LIST_ITEM}`,\n DEFAULT_SLOT: `.${classes.TEXT} > slot`,\n CHECKBOX_RADIO_SELECTOR: 'input[type=checkbox]:not(:disabled):not([forge-ignore]),input[type=radio]:not(:disabled):not([forge-ignore])'\n};\n\nconst events = {\n SELECT: `${elementName}-select`\n};\n\nconst roles = {\n LINK: 'link',\n LIST_ITEM: 'listitem'\n};\n\nexport const LIST_ITEM_CONSTANTS = {\n elementName,\n attributes,\n classes,\n selectors,\n events,\n roles\n};\n\nexport interface IListItemSelectEventData {\n value: any;\n listItem: IListItemComponent;\n}\n", "import { addClass, getShadowElement, removeClass, requireParent, isDeepEqual, toggleClass } from '@tylertech/forge-core';\nimport { BaseAdapter, IBaseAdapter } from '../../core/base/base-adapter';\nimport { IListComponent } from '../list/list';\nimport { LIST_CONSTANTS } from '../list/list-constants';\nimport { IListItemComponent } from './list-item';\nimport { LIST_ITEM_CONSTANTS } from './list-item-constants';\nimport { ForgeRipple } from '../../ripple';\n\nexport interface IListItemAdapter extends IBaseAdapter {\n initializeAccessibility(): void;\n getListItem(): IListItemComponent;\n addListener(type: string, listener: (evt: Event) => void, options?: AddEventListenerOptions): void;\n removeListener(type: string, listener: (evt: Event) => void): void;\n createRipple(): any;\n setStatic(value: boolean): void;\n setTwoLine(value: boolean): void;\n setThreeLine(value: boolean): void;\n getLineCount(): number;\n setActive(value: boolean): void;\n setSelected(value: boolean): void;\n tryToggleCheckboxRadio(value?: boolean): void;\n setFocus(): void;\n hasFocus(): boolean;\n setRole(role: string): void;\n setDisabled(disabled: boolean): void;\n setDense(dense: boolean): void;\n setIndented(indented: boolean): void;\n setWrap(value: boolean): void;\n trySelect(value: unknown): void;\n}\n\nexport class ListItemAdapter extends BaseAdapter<IListItemComponent> implements IListItemAdapter {\n private _listItemElement: HTMLElement;\n private _defaultSlot: HTMLSlotElement;\n\n constructor(component: IListItemComponent) {\n super(component);\n this._initialize();\n }\n\n private _initialize(): void {\n this._listItemElement = getShadowElement(this._component, LIST_ITEM_CONSTANTS.selectors.LIST_ITEM);\n this._defaultSlot = getShadowElement(this._component, LIST_ITEM_CONSTANTS.selectors.DEFAULT_SLOT) as HTMLSlotElement;\n }\n \n public initializeAccessibility(): void {\n if (!this._component.hasAttribute('role')) {\n this._component.setAttribute('role', 'listitem');\n }\n }\n\n public getListItem(): IListItemComponent {\n return this._component;\n }\n\n /**\n * Adds an event listener to the `<forge-list-item>` host element.\n * @param {string} type The event type.\n * @param {Function} listener The event callback.\n */\n public addListener(type: string, listener: (evt: Event) => void, options?: AddEventListenerOptions): void {\n this._listItemElement.addEventListener(type, listener, options);\n }\n\n /**\n * Removes an event listener from the `<forge-list-item>` host element.\n * @param {string} type The event type.\n * @param {Function} listener The event callback.\n */\n public removeListener(type: string, listener: (evt: Event) => void): void {\n this._listItemElement.removeEventListener(type, listener);\n }\n\n /**\n * Creates a ripple instance on the list item.\n * @returns {ForgeRipple}\n */\n public createRipple(): any {\n return new ForgeRipple(this._listItemElement);\n }\n\n /**\n * Toggles the static state of this list item.\n * @param {boolean} value The static state.\n */\n public setStatic(value: boolean): void {\n if (value) {\n this._listItemElement.tabIndex = -1;\n addClass(LIST_ITEM_CONSTANTS.classes.STATIC, this._listItemElement);\n } else {\n this._listItemElement.tabIndex = 0;\n removeClass(LIST_ITEM_CONSTANTS.classes.STATIC, this._listItemElement);\n }\n }\n\n /**\n * Sets this list item as a two-line list item.\n * @param {boolean} value The two-line state.\n */\n public setTwoLine(value: boolean): void {\n if (value) {\n addClass(LIST_ITEM_CONSTANTS.classes.TWO_LINE, this._listItemElement);\n } else {\n removeClass(LIST_ITEM_CONSTANTS.classes.TWO_LINE, this._listItemElement);\n }\n }\n\n /**\n * Sets this list item as a three-line list item.\n * @param {boolean} value The three-line state.\n */\n public setThreeLine(value: boolean): void {\n if (value) {\n addClass(LIST_ITEM_CONSTANTS.classes.THREE_LINE, this._listItemElement);\n } else {\n removeClass(LIST_ITEM_CONSTANTS.classes.THREE_LINE, this._listItemElement);\n }\n }\n\n /**\n * Determines how many lines the list item is displaying.\n */\n public getLineCount(): number {\n return this._defaultSlot.assignedNodes().filter(e => e.nodeType === Node.ELEMENT_NODE).length; // assignedElements does not exist in the polyfilled version so filtering nodes instead\n }\n\n /**\n * Toggles the active class of the list item.\n * @param {boolean} value The active state.\n */\n public setActive(value: boolean): void {\n if (value) {\n addClass(LIST_ITEM_CONSTANTS.classes.ACTIVE, this._listItemElement);\n } else {\n removeClass(LIST_ITEM_CONSTANTS.classes.ACTIVE, this._listItemElement);\n }\n }\n\n /**\n * Toggles the selected class of the list item.\n * @param {boolean} value The active state.\n */\n public setSelected(value: boolean): void {\n if (value) {\n addClass(LIST_ITEM_CONSTANTS.classes.SELECTED, this._listItemElement);\n // We are treating selected and activated as the same state, and mdc-states hooks right into --activated\n // addClass(LIST_ITEM_CONSTANTS.classes.ACTIVATED, this._listItemElement);\n } else {\n removeClass(LIST_ITEM_CONSTANTS.classes.SELECTED, this._listItemElement);\n // removeClass(LIST_ITEM_CONSTANTS.classes.ACTIVATED, this._listItemElement);\n }\n }\n\n /**\n * Attemps to toggle a checkbox or radio button within the list item if it can find one.\n */\n public tryToggleCheckboxRadio(value?: boolean): void {\n const checkable = this._component.querySelector(LIST_ITEM_CONSTANTS.selectors.CHECKBOX_RADIO_SELECTOR) as HTMLInputElement;\n if (checkable) {\n const force = typeof value === 'boolean';\n const currentState = checkable.checked;\n \n // Check if we are just toggling or forcing to a specific checked state\n checkable.checked = force ? value as boolean : !checkable.checked;\n\n if (!force || currentState !== value) {\n checkable.dispatchEvent(new Event('change', { bubbles: true }));\n }\n }\n }\n\n /** Attempts to set focus to this list item. */\n public setFocus(): void {\n this._listItemElement.focus();\n }\n\n /** Returns whether the component has focus or not. */\n public hasFocus(): boolean {\n return document.activeElement === this._component || !!this._component.shadowRoot?.activeElement;\n }\n\n /**\n * Sets the role on the list item element.\n * @param role The role.\n */\n public setRole(role: string): void {\n this._listItemElement.setAttribute('role', role);\n }\n\n public setDisabled(disabled: boolean): void {\n toggleClass(this._listItemElement, disabled, LIST_ITEM_CONSTANTS.classes.DISABLED);\n }\n\n public setDense(dense: boolean): void {\n toggleClass(this._listItemElement, dense, LIST_ITEM_CONSTANTS.classes.DENSE);\n }\n\n public setIndented(indented: boolean): void {\n toggleClass(this._listItemElement, indented, LIST_ITEM_CONSTANTS.classes.INDENTED);\n }\n\n public setWrap(value: boolean): void {\n toggleClass(this._listItemElement, value, LIST_ITEM_CONSTANTS.classes.WRAP);\n }\n\n public trySelect(value: unknown): void {\n const list = requireParent<IListComponent>(this._component, LIST_CONSTANTS.elementName);\n if (!list || list.selectedValue === undefined) {\n return;\n }\n\n const listValues = list.selectedValue instanceof Array ? list.selectedValue : [list.selectedValue];\n if (listValues.some(v => isDeepEqual(v, value))) {\n this.setSelected(true);\n }\n }\n}\n", "import { ICustomElementFoundation, matchesSelectors } from '@tylertech/forge-core';\nimport { ForgeRipple } from '../../ripple';\nimport { IListItemAdapter } from './list-item-adapter';\nimport { LIST_ITEM_CONSTANTS, IListItemSelectEventData } from './list-item-constants';\n\nexport interface IListItemFoundation extends ICustomElementFoundation {\n static: boolean;\n twoLine: boolean;\n threeLine: boolean;\n active: boolean;\n selected: boolean;\n value: any;\n href: string;\n target: string;\n ripple: boolean;\n disabled: boolean;\n dense: boolean;\n wrap: boolean;\n setFocus(): void;\n}\n\n/**\n * The foundation class behind the `<forge-list-item>` component.\n */\nexport class ListItemFoundation implements IListItemFoundation {\n private _ripple = true;\n private _rippleInstance: ForgeRipple;\n private _static = false;\n private _twoLine = false;\n private _threeLine = false;\n private _active = false;\n private _selected = false;\n private _value: any;\n private _href: string;\n private _target: string;\n private _disabled = false;\n private _dense = false;\n private _propagateClick = true;\n private _indented = false;\n private _wrap = false;\n private _clickListener: (evt: MouseEvent) => void;\n private _mouseDownListener: (evt: MouseEvent) => void;\n private _keydownListener: (evt: KeyboardEvent) => void;\n\n constructor(private _adapter: IListItemAdapter) {\n this._clickListener = (evt: MouseEvent) => this._onClick(evt);\n this._mouseDownListener = (evt: MouseEvent) => this._onMouseDown(evt);\n this._keydownListener = (evt: KeyboardEvent) => this._onKeydown(evt);\n }\n\n public initialize(): void {\n this._adapter.initializeAccessibility();\n this._setRipple();\n this._adapter.setStatic(this._static);\n this._adapter.setDense(this._dense);\n this._adapter.setDisabled(this._disabled);\n this._adapter.setIndented(this._indented);\n this._adapter.setWrap(this._wrap);\n\n if (!this._static) {\n this._adapter.addListener('click', this._clickListener);\n this._adapter.addListener('mousedown', this._mouseDownListener, { passive: false, capture: true });\n this._adapter.addListener('keydown', this._keydownListener);\n }\n\n if (this._threeLine) {\n this._adapter.setThreeLine(this._threeLine);\n } else if (this.twoLine) {\n this._adapter.setTwoLine(this._twoLine);\n }\n\n this._adapter.trySelect(this._value);\n }\n\n public disconnect(): void {\n if (this._rippleInstance) {\n this._rippleInstance.destroy();\n this._rippleInstance = undefined as any;\n }\n }\n\n private _onMouseDown(evt: MouseEvent): void {\n if (this._adapter.hasFocus() || !this._propagateClick) {\n evt.preventDefault();\n }\n }\n\n private _onKeydown(evt: KeyboardEvent): void {\n if (evt.key === 'Enter' || evt.key === ' ') {\n if (evt.key === ' ') {\n evt.preventDefault();\n }\n this._select(evt.target as HTMLElement);\n }\n }\n\n /**\n * Handles clicking a list item.\n * @param evt\n */\n private _onClick(evt: MouseEvent): void {\n this._select(evt.target as HTMLElement);\n }\n\n private _select(targetElement: HTMLElement): void {\n const ignoreElement = targetElement?.hasAttribute(LIST_ITEM_CONSTANTS.attributes.IGNORE);\n if (this._static || this._disabled || ignoreElement) {\n return;\n }\n\n if (!this._adapter.hasFocus() && this._propagateClick) {\n this.setFocus();\n }\n\n if (this._href) {\n if (this._target) {\n window.open(this._href, this._target);\n } else {\n document.location.href = this._href;\n }\n return;\n }\n\n // If the target was not a checkbox or radio button, attempt to find one and toggle its checked state\n if (!matchesSelectors(targetElement, LIST_ITEM_CONSTANTS.selectors.CHECKBOX_RADIO_SELECTOR)) {\n this._adapter.tryToggleCheckboxRadio();\n }\n\n const data: IListItemSelectEventData = {\n value: this._value,\n listItem: this._adapter.getListItem()\n };\n this._adapter.emitHostEvent(LIST_ITEM_CONSTANTS.events.SELECT, data);\n }\n\n /** Gets/sets whether the list item has a ripple or not. */\n public get ripple(): boolean {\n return this._ripple;\n }\n public set ripple(value: boolean) {\n if (this._ripple !== value) {\n // We don't attach ripples to static items\n if (value && this._static) {\n return;\n }\n this._ripple = value;\n this._setRipple();\n\n this._adapter.setHostAttribute(LIST_ITEM_CONSTANTS.attributes.RIPPLE, String(this._ripple));\n }\n }\n\n /** Gets/sets whether the static state of this list item. */\n public get static(): boolean {\n return this._static;\n }\n public set static(value: boolean) {\n if (this._static !== value) {\n this._static = value;\n this._adapter.setStatic(this._static);\n\n // Ensure we either add or remove the ripple\n this._setRipple();\n\n // Toggle the click listener\n if (this._static) {\n this._adapter.removeListener('click', this._clickListener);\n } else {\n this._adapter.addListener('click', this._clickListener);\n }\n\n if (this._static) {\n this._adapter.setHostAttribute(LIST_ITEM_CONSTANTS.attributes.STATIC);\n } else {\n this._adapter.removeHostAttribute(LIST_ITEM_CONSTANTS.attributes.STATIC);\n }\n }\n }\n\n /** Gets/sets whether the list item displays two lines of text. */\n public get twoLine(): boolean {\n return this._twoLine;\n }\n public set twoLine(value: boolean) {\n if (this._twoLine !== value) {\n this._twoLine = value;\n this._adapter.setTwoLine(this._twoLine);\n\n if (this._twoLine) {\n this._adapter.setHostAttribute(LIST_ITEM_CONSTANTS.attributes.TWO_LINE);\n } else {\n this._adapter.removeHostAttribute(LIST_ITEM_CONSTANTS.attributes.TWO_LINE);\n }\n }\n }\n\n /** Gets/sets whether the list item displays two lines of text. */\n public get threeLine(): boolean {\n return this._threeLine;\n }\n public set threeLine(value: boolean) {\n if (this._threeLine !== value) {\n this._threeLine = value;\n\n if (this._threeLine) {\n this._adapter.setHostAttribute(LIST_ITEM_CONSTANTS.attributes.THREE_LINE);\n } else {\n this._adapter.removeHostAttribute(LIST_ITEM_CONSTANTS.attributes.THREE_LINE);\n }\n\n if (this._threeLine) {\n this._twoLine = false;\n }\n\n this._adapter.setTwoLine(this._twoLine);\n this._adapter.setThreeLine(this._threeLine);\n }\n }\n\n /** Gets/sets whether the list item is active or not. */\n public get active(): boolean {\n return this._active;\n }\n public set active(value: boolean) {\n if (this._active !== value) {\n this._active = value;\n this._adapter.setActive(this._active);\n if (this._active) {\n this._adapter.setHostAttribute(LIST_ITEM_CONSTANTS.attributes.ACTIVE);\n } else {\n this._adapter.removeHostAttribute(LIST_ITEM_CONSTANTS.attributes.ACTIVE);\n }\n }\n }\n\n /** Gets/sets whether the list item is selected or not. */\n public get selected(): boolean {\n return this._selected;\n }\n public set selected(value: boolean) {\n if (this._selected !== value) {\n this._selected = value;\n this._adapter.setSelected(this._selected);\n this._adapter.tryToggleCheckboxRadio(this._selected);\n this._adapter.toggleHostAttribute(LIST_ITEM_CONSTANTS.attributes.SELECTED, this._selected);\n }\n }\n\n /** Gets/sets the unique value for this list item. */\n public get value(): any {\n return this._value;\n }\n public set value(value: any) {\n this._value = value;\n this._adapter.trySelect(this._value);\n }\n\n /** Gets/sets the href link that this list item will send the browser to when clicked. */\n public get href(): string {\n return this._href;\n }\n public set href(value: string) {\n if (this._href !== value) {\n this._href = value;\n if (this._href) {\n this._adapter.setRole(LIST_ITEM_CONSTANTS.roles.LINK);\n } else {\n this._adapter.setRole(LIST_ITEM_CONSTANTS.roles.LIST_ITEM);\n }\n this._adapter.setHostAttribute(LIST_ITEM_CONSTANTS.attributes.HREF, this._href);\n }\n }\n\n /** Gets/sets the href link target. */\n public get target(): string {\n return this._target;\n }\n public set target(value: string) {\n this._target = value;\n }\n\n /** Gets/sets the disabled state. */\n public get disabled(): boolean {\n return this._disabled;\n }\n public set disabled(value: boolean) {\n if (this._disabled !== value) {\n this._disabled = value;\n this._adapter.setDisabled(this._disabled);\n this._adapter.toggleHostAttribute(LIST_ITEM_CONSTANTS.attributes.DISABLED, this._disabled);\n }\n }\n\n /** Gets/sets the dense state. */\n public get dense(): boolean {\n return this._dense;\n }\n public set dense(value: boolean) {\n if (this._dense !== value) {\n this._dense = value;\n this._adapter.setDense(this._dense);\n this._adapter.toggleHostAttribute(LIST_ITEM_CONSTANTS.attributes.DENSE, this._dense);\n }\n }\n\n /** Gets/sets the dense state. */\n public get propagateClick(): boolean {\n return this._propagateClick;\n }\n public set propagateClick(value: boolean) {\n if (this._propagateClick !== value) {\n this._propagateClick = value;\n this._adapter.setHostAttribute(LIST_ITEM_CONSTANTS.attributes.PROPAGATE_CLICK, '' + !!this._propagateClick);\n }\n }\n\n public get indented(): boolean {\n return this._indented;\n }\n public set indented(value: boolean) {\n if (this._indented !== value) {\n this._indented = value;\n this._adapter.setIndented(this._indented);\n this._adapter.toggleHostAttribute(LIST_ITEM_CONSTANTS.attributes.INDENTED, this._indented);\n }\n }\n\n public get wrap(): boolean {\n return this._wrap;\n }\n public set wrap(value: boolean) {\n if (this._wrap !== value) {\n this._wrap = value;\n this._adapter.setWrap(this._wrap);\n this._adapter.toggleHostAttribute(LIST_ITEM_CONSTANTS.attributes.WRAP, this._wrap);\n }\n }\n\n private _setRipple(): void {\n if (this._ripple && !this._static && !this._rippleInstance) {\n this._rippleInstance = this._adapter.createRipple();\n } else if ((!this._ripple || this._static) && this._rippleInstance) {\n this._rippleInstance.destroy();\n this._rippleInstance = undefined as any;\n }\n }\n\n /**\n * Sets focus to this list item.\n */\n public setFocus(): void {\n this._adapter.setFocus();\n }\n}\n", "import { CustomElement, attachShadowTemplate, requireParent, elementParents, coerceBoolean, FoundationProperty } from '@tylertech/forge-core';\nimport { ListItemAdapter } from './list-item-adapter';\nimport { ListItemFoundation } from './list-item-foundation';\nimport { IListItemSelectEventData, LIST_ITEM_CONSTANTS } from './list-item-constants';\nimport { LIST_CONSTANTS } from '../list/list-constants';\nimport { IListComponent } from '../list';\nimport { BaseComponent, IBaseComponent } from '../../core/base/base-component';\n\nconst defaultTemplate = '<template><div class=\\\"forge-list-item\\\" tabindex=\\\"0\\\" part=\\\"root\\\"><slot name=\\\"leading\\\"></slot><slot name=\\\"avatar\\\"></slot><div class=\\\"forge-list-item__text\\\" part=\\\"text-container\\\"><slot></slot><slot name=\\\"title\\\"></slot><slot name=\\\"subtitle\\\"></slot><slot name=\\\"tertiary-title\\\"></slot><slot></slot></div><slot name=\\\"trailing\\\"></slot></div></template>';\nconst styles = '@-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}}.mdc-ripple-surface{--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;position:relative;outline:0;overflow:hidden}.mdc-ripple-surface::after,.mdc-ripple-surface::before{position:absolute;border-radius:50%;opacity:0;pointer-events:none;content:\\\"\\\"}.mdc-ripple-surface::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)}.mdc-ripple-surface::after{z-index:0;z-index:var(--mdc-ripple-z-index,0)}.mdc-ripple-surface.mdc-ripple-upgraded::before{-webkit-transform:scale(var(--mdc-ripple-fg-scale,1));transform:scale(var(--mdc-ripple-fg-scale,1))}.mdc-ripple-surface.mdc-ripple-upgraded::after{top:0;left:0;-webkit-transform:scale(0);transform:scale(0);-webkit-transform-origin:center center;transform-origin:center center}.mdc-ripple-surface.mdc-ripple-upgraded--unbounded::after{top:var(--mdc-ripple-top,0);left:var(--mdc-ripple-left,0)}.mdc-ripple-surface.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}.mdc-ripple-surface.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))}.mdc-ripple-surface::after,.mdc-ripple-surface::before{top:calc(50% - 100%);left:calc(50% - 100%);width:200%;height:200%}.mdc-ripple-surface.mdc-ripple-upgraded::after{width:var(--mdc-ripple-fg-size,100%);height:var(--mdc-ripple-fg-size,100%)}.mdc-ripple-surface[data-mdc-ripple-is-unbounded],.mdc-ripple-upgraded--unbounded{overflow:visible}.mdc-ripple-surface[data-mdc-ripple-is-unbounded]::after,.mdc-ripple-surface[data-mdc-ripple-is-unbounded]::before,.mdc-ripple-upgraded--unbounded::after,.mdc-ripple-upgraded--unbounded::before{top:calc(50% - 50%);left:calc(50% - 50%);width:100%;height:100%}.mdc-ripple-surface[data-mdc-ripple-is-unbounded].mdc-ripple-upgraded::after,.mdc-ripple-surface[data-mdc-ripple-is-unbounded].mdc-ripple-upgraded::before,.mdc-ripple-upgraded--unbounded.mdc-ripple-upgraded::after,.mdc-ripple-upgraded--unbounded.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%)}.mdc-ripple-surface[data-mdc-ripple-is-unbounded].mdc-ripple-upgraded::after,.mdc-ripple-upgraded--unbounded.mdc-ripple-upgraded::after{width:var(--mdc-ripple-fg-size,100%);height:var(--mdc-ripple-fg-size,100%)}.mdc-ripple-surface::after,.mdc-ripple-surface::before{background-color:#000;background-color:var(--mdc-ripple-color,#000)}.mdc-ripple-surface.mdc-ripple-surface--hover::before,.mdc-ripple-surface:hover::before{opacity:.04;opacity:var(--mdc-ripple-hover-opacity, .04)}.mdc-ripple-surface.mdc-ripple-upgraded--background-focused::before,.mdc-ripple-surface:not(.mdc-ripple-upgraded):focus::before{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.12;opacity:var(--mdc-ripple-focus-opacity, .12)}.mdc-ripple-surface:not(.mdc-ripple-upgraded)::after{-webkit-transition:opacity 150ms linear;transition:opacity 150ms linear}.mdc-ripple-surface:not(.mdc-ripple-upgraded):active::after{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.12;opacity:var(--mdc-ripple-press-opacity, .12)}.mdc-ripple-surface.mdc-ripple-upgraded{--mdc-ripple-fg-opacity:var(--mdc-ripple-press-opacity, 0.12)}.mdc-ripple-surface::after,.mdc-ripple-surface::before{--mdc-ripple-color:var(--mdc-theme-on-surface)}.forge-list-item{min-height:auto;min-height:var(--forge-list-item-min-height,auto);max-height:auto;max-height:var(--forge-list-item-max-height,auto);height:48px;height:var(--forge-list-item-height,48px);padding:0 16px;padding:var(--forge-list-item-padding,0 16px);margin-left:0;margin-left:var(--forge-list-item-indent,0);-webkit-box-align:center;align-items:center;-webkit-box-align:var(--forge-list-item-align-items,center);align-items:var(--forge-list-item-align-items,center);position:relative;display:-webkit-box;display:flex;-webkit-box-pack:start;justify-content:flex-start;overflow:hidden}.forge-list-item:focus{outline:0}.forge-list-item ::slotted([slot=leading]),.forge-list-item ::slotted([slot=trailing]){font-size:1.5rem}.forge-list-item ::slotted([slot=leading]){color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54));margin-left:0;margin-left:var(--forge-list-item-leading-margin-left,0);margin-right:32px;margin-right:var(--forge-list-item-leading-margin-right,32px);display:-webkit-inline-box;display:inline-flex;flex-shrink:0;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;fill:currentColor}.forge-list-item ::slotted([slot=trailing]){color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54))}.forge-list-item ::slotted([slot=avatar]){color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54));margin-left:0;margin-left:var(--forge-list-item-leading-margin-left,0);margin-right:32px;margin-right:var(--forge-list-item-leading-margin-right,32px);display:-webkit-inline-box;display:inline-flex;flex-shrink:0;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;fill:currentColor;margin-left:0;margin-right:16px;min-width:40px;min-height:40px;border-radius:50%;display:inline-flex;background-color:rgba(0,0,0,.54);background-color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54));color:#fff;color:var(--mdc-theme-on-primary,#fff)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item{--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-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item::after,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item::before{position:absolute;border-radius:50%;opacity:0;pointer-events:none;content:\\\"\\\"}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item::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-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item::after{z-index:0;z-index:var(--mdc-ripple-z-index,0)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item.mdc-ripple-upgraded::before{-webkit-transform:scale(var(--mdc-ripple-fg-scale,1));transform:scale(var(--mdc-ripple-fg-scale,1))}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item.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-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item.mdc-ripple-upgraded--unbounded::after{top:var(--mdc-ripple-top,0);left:var(--mdc-ripple-left,0)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item.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-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item.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-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item::after,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item::before{top:calc(50% - 100%);left:calc(50% - 100%);width:200%;height:200%}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item.mdc-ripple-upgraded::after{width:var(--mdc-ripple-fg-size,100%);height:var(--mdc-ripple-fg-size,100%)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item::after,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item::before{background-color:#000;background-color:var(--mdc-ripple-color,var(--mdc-theme-on-surface,#000))}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item.mdc-ripple-surface--hover::before,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item:hover::before{opacity:.04;opacity:var(--mdc-ripple-hover-opacity, .04)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item.mdc-ripple-upgraded--background-focused::before,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item:not(.mdc-ripple-upgraded):focus::before{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.12;opacity:var(--mdc-ripple-focus-opacity, .12)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item:not(.mdc-ripple-upgraded)::after{-webkit-transition:opacity 150ms linear;transition:opacity 150ms linear}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item:not(.mdc-ripple-upgraded):active::after{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.12;opacity:var(--mdc-ripple-press-opacity, .12)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item.mdc-ripple-upgraded{--mdc-ripple-fg-opacity:var(--mdc-ripple-press-opacity, 0.12)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--activated::before{opacity:.12;opacity:var(--mdc-ripple-activated-opacity, .12)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--activated::after,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--activated::before{background-color:#3f51b5;background-color:var(--mdc-ripple-color,var(--mdc-theme-primary,#3f51b5))}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--activated.mdc-ripple-surface--hover::before,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--activated:hover::before{opacity:.16;opacity:var(--mdc-ripple-hover-opacity, .16)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--activated.mdc-ripple-upgraded--background-focused::before,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--activated:not(.mdc-ripple-upgraded):focus::before{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.24;opacity:var(--mdc-ripple-focus-opacity, .24)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--activated:not(.mdc-ripple-upgraded)::after{-webkit-transition:opacity 150ms linear;transition:opacity 150ms linear}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--activated:not(.mdc-ripple-upgraded):active::after{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.24;opacity:var(--mdc-ripple-press-opacity, .24)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--activated.mdc-ripple-upgraded{--mdc-ripple-fg-opacity:var(--mdc-ripple-press-opacity, 0.24)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--selected::before{opacity:.08;opacity:var(--mdc-ripple-selected-opacity, .08)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--selected::after,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--selected::before{background-color:#3f51b5;background-color:var(--mdc-ripple-color,var(--mdc-theme-primary,#3f51b5))}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--selected.mdc-ripple-surface--hover::before,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--selected:hover::before{opacity:.12;opacity:var(--mdc-ripple-hover-opacity, .12)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--selected.mdc-ripple-upgraded--background-focused::before,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--selected:not(.mdc-ripple-upgraded):focus::before{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.2;opacity:var(--mdc-ripple-focus-opacity, .2)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--selected:not(.mdc-ripple-upgraded)::after{-webkit-transition:opacity 150ms linear;transition:opacity 150ms linear}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--selected:not(.mdc-ripple-upgraded):active::after{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.2;opacity:var(--mdc-ripple-press-opacity, .2)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--selected.mdc-ripple-upgraded{--mdc-ripple-fg-opacity:var(--mdc-ripple-press-opacity, 0.2)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--selected:focus:hover.mdc-ripple-upgraded--background-focused:not(.mdc-ripple-upgraded--foreground-activation)::before{opacity:.28}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--active:not(.forge-list-item--selected):not(.forge-list-item--activated):not(.mdc-ripple-upgraded--foreground-activation)::before,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item:focus:not(.forge-list-item--selected):not(.forge-list-item--activated):not(.mdc-ripple-upgraded--foreground-activation)::before{opacity:.12}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--active:not(.forge-list-item--selected):not(.forge-list-item--activated):not(.mdc-ripple-upgraded--foreground-activation):hover::before,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item:focus:not(.forge-list-item--selected):not(.forge-list-item--activated):not(.mdc-ripple-upgraded--foreground-activation):hover::before{opacity:.16}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--active:not(.forge-list-item--selected):not(.forge-list-item--activated):not(.mdc-ripple-upgraded--foreground-activation)::after,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--active:not(.forge-list-item--selected):not(.forge-list-item--activated):not(.mdc-ripple-upgraded--foreground-activation)::before,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item:focus:not(.forge-list-item--selected):not(.forge-list-item--activated):not(.mdc-ripple-upgraded--foreground-activation)::after,.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item:focus:not(.forge-list-item--selected):not(.forge-list-item--activated):not(.mdc-ripple-upgraded--foreground-activation)::before{background-color:#000;background-color:var(--mdc-theme-on-surface,#000)}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--active:focus.forge-list-item--selected.forge-list-item--activated:not(.mdc-ripple-upgraded--foreground-activation)::before{opacity:.24}.forge-list-item:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item--active:focus.forge-list-item--selected.forge-list-item--activated:not(.mdc-ripple-upgraded--foreground-activation):hover::before{opacity:.28}.forge-list-item--wrap .forge-list-item__text{text-overflow:clip;white-space:normal}.forge-list-item__text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden;width:100%}.forge-list-item ::slotted([slot=title]){text-overflow:ellipsis;white-space:nowrap;overflow:hidden;display:block}.forge-list-item ::slotted([slot=subtitle]),.forge-list-item ::slotted([slot=tertiary-title]){-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-body2-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:.875rem;font-size:var(--mdc-typography-body2-font-size, .875rem);line-height:1.25rem;line-height:var(--mdc-typography-body2-line-height, 1.25rem);font-weight:400;font-weight:var(--mdc-typography-body2-font-weight,400);letter-spacing:.0178571429em;letter-spacing:var(--mdc-typography-body2-letter-spacing, .0178571429em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-body2-text-decoration,inherit);text-decoration:var(--mdc-typography-body2-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-body2-text-transform,inherit);text-overflow:ellipsis;white-space:nowrap;overflow:hidden;color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54));display:block}.forge-list-item ::slotted([slot=subtitle])::before,.forge-list-item ::slotted([slot=tertiary-title])::before{display:inline-block;width:0;height:20;content:\\\"\\\";vertical-align:0}.forge-list-item--two-line{height:72px;height:var(--forge-list-item-height,72px)}.forge-list-item--three-line{height:88px;height:var(--forge-list-item-height,88px)}.forge-list-item--dense{height:32px;height:var(--forge-list-item-height,32px)}.forge-list-item--dense ::slotted([slot=leading]),.forge-list-item--dense ::slotted([slot=trailing]){font-size:1.25rem}.forge-list-item--dense ::slotted([slot=leading]){margin-right:12px;margin-right:var(--forge-list-item-leading-margin-right,12px)}.forge-list-item--dense ::slotted(.forge-list-item__title){-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-body2-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:.875rem;font-size:var(--mdc-typography-body2-font-size, .875rem);line-height:1.25rem;line-height:var(--mdc-typography-body2-line-height, 1.25rem);font-weight:400;font-weight:var(--mdc-typography-body2-font-weight,400);letter-spacing:.0178571429em;letter-spacing:var(--mdc-typography-body2-letter-spacing, .0178571429em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-body2-text-decoration,inherit);text-decoration:var(--mdc-typography-body2-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-body2-text-transform,inherit)}.forge-list-item--indented{margin-left:56px;margin-left:var(--forge-list-item-indent,56px)}.forge-list-item--active.forge-list-item--activated:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item::before,.forge-list-item--active.forge-list-item--selected:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item::before{opacity:.2}.forge-list-item--active.forge-list-item--activated:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item:hover::before,.forge-list-item--active.forge-list-item--selected:not(.forge-list-item--static):not(.forge-list-item--disabled).forge-list-item:hover::before{opacity:.24}.forge-list-item--activated,.forge-list-item--selected{color:#3f51b5;color:var(--mdc-theme-primary,#3f51b5)}.forge-list-item--activated .forge-list-item__text .forge-list-item__subtitle,.forge-list-item--activated .forge-list-item__text ::slotted(.forge-list-item__subtitle),.forge-list-item--selected .forge-list-item__text .forge-list-item__subtitle,.forge-list-item--selected .forge-list-item__text ::slotted(.forge-list-item__subtitle){color:#3f51b5;color:var(--mdc-theme-primary,#3f51b5);opacity:.87}.forge-list-item--activated .forge-list-item__text .forge-list-item__tertiary-title,.forge-list-item--activated .forge-list-item__text ::slotted(.forge-list-item__tertiary-title),.forge-list-item--selected .forge-list-item__text .forge-list-item__tertiary-title,.forge-list-item--selected .forge-list-item__text ::slotted(.forge-list-item__tertiary-title){color:#3f51b5;color:var(--mdc-theme-primary,#3f51b5);opacity:.87}.forge-list-item--activated ::slotted([slot=leading]),.forge-list-item--activated ::slotted([slot=trailing]),.forge-list-item--selected ::slotted([slot=leading]),.forge-list-item--selected ::slotted([slot=trailing]){color:#3f51b5;color:var(--mdc-theme-primary,#3f51b5)}.forge-list-item--activated ::slotted([slot=avatar].forge-list-item__avatar-icon),.forge-list-item--selected ::slotted([slot=avatar].forge-list-item__avatar-icon){background-color:rgba(0,0,0,.12);background-color:var(--mdc-theme-text-disabled-on-background,rgba(0,0,0,.12));color:#000;color:var(--mdc-theme-on-surface,#000)}.forge-list-item--disabled{cursor:not-allowed;cursor:var(--forge-list-item-cursor,not-allowed);color:rgba(0,0,0,.38);color:var(--mdc-theme-text-disabled-on-light,rgba(0,0,0,.38))}.forge-list-item--disabled ::slotted([slot=leading]),.forge-list-item--disabled ::slotted([slot=trailing]){cursor:not-allowed;cursor:var(--forge-list-item-cursor,not-allowed);color:rgba(0,0,0,.38);color:var(--mdc-theme-text-disabled-on-light,rgba(0,0,0,.38))}.forge-list-item[role=link]{cursor:pointer}:host{display:block;contain:content}:host([hidden]){display:none}:host([forge-drawer-context=true]) .forge-list-item{margin:8px;margin:var(--forge-list-item-margin,8px);padding:0 8px;padding:var(--forge-list-item-padding,0 8px);border-radius:4px;border-radius:var(--forge-list-item-border-radius,4px);cursor:pointer;cursor:var(--forge-list-item-cursor,pointer);font-size:.875rem;font-weight:500;height:40px}:host([forge-drawer-context=true]) .forge-list-item--static{cursor:initial}:host([forge-drawer-context=true]) .forge-list-item--indented{margin-left:64px;margin-left:var(--forge-list-item-indent,64px)}:host([forge-drawer-context=true]) .forge-list-item--two-line{height:64px}:host([forge-drawer-context=true]) .forge-list-item--three-line{height:80px}:host([forge-drawer-context=true]) .forge-list-item:first-child{margin-top:4px;margin-bottom:4px}:host([forge-drawer-context=true]) .forge-list-item--dense{height:32px;height:var(--forge-list-item-height,32px)}:host([forge-drawer-context=true]) .forge-list-item--dense ::slotted([slot=leading]),:host([forge-drawer-context=true]) .forge-list-item--dense ::slotted([slot=trailing]){font-size:1.25rem}:host([forge-drawer-context=true]) .forge-list-item--dense .forge-list-item__text{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-body2-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:.875rem;font-size:var(--mdc-typography-body2-font-size, .875rem);line-height:1.25rem;line-height:var(--mdc-typography-body2-line-height, 1.25rem);font-weight:400;font-weight:var(--mdc-typography-body2-font-weight,400);letter-spacing:.0178571429em;letter-spacing:var(--mdc-typography-body2-letter-spacing, .0178571429em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-body2-text-decoration,inherit);text-decoration:var(--mdc-typography-body2-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-body2-text-transform,inherit)}:host([forge-drawer-context=true]) .forge-list-item--disabled{cursor:not-allowed;cursor:var(--forge-list-item-cursor,not-allowed)}:host([dense]){-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-body2-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:.875rem;font-size:var(--mdc-typography-body2-font-size, .875rem);line-height:1.25rem;line-height:var(--mdc-typography-body2-line-height, 1.25rem);font-weight:400;font-weight:var(--mdc-typography-body2-font-weight,400);letter-spacing:.0178571429em;letter-spacing:var(--mdc-typography-body2-letter-spacing, .0178571429em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-body2-text-decoration,inherit);text-decoration:var(--mdc-typography-body2-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-body2-text-transform,inherit)}';\n\nexport interface IListItemComponent extends IBaseComponent {\n static: boolean;\n twoLine: boolean;\n threeLine: boolean;\n active: boolean;\n selected: boolean;\n value: any;\n href: string;\n target: string;\n ripple: boolean;\n disabled: boolean;\n dense: boolean;\n propagateClick: boolean;\n indented: boolean;\n wrap: boolean;\n focus(): void;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'forge-list-item': IListItemComponent;\n }\n\n interface HTMLElementEventMap {\n 'forge-list-item-select': CustomEvent<IListItemSelectEventData>;\n }\n}\n\n/**\n * The custom element class behind the `<forge-list-item>` element.\n * \n * @tag forge-list-item\n */\n@CustomElement({\n name: LIST_ITEM_CONSTANTS.elementName\n})\nexport class ListItemComponent extends BaseComponent implements IListItemComponent {\n public static get observedAttributes(): string[] {\n return [\n LIST_ITEM_CONSTANTS.attributes.STATIC,\n LIST_ITEM_CONSTANTS.attributes.TWO_LINE,\n LIST_ITEM_CONSTANTS.attributes.THREE_LINE,\n LIST_ITEM_CONSTANTS.attributes.ACTIVE,\n LIST_ITEM_CONSTANTS.attributes.SELECTED,\n LIST_ITEM_CONSTANTS.attributes.VALUE,\n LIST_ITEM_CONSTANTS.attributes.HREF,\n LIST_ITEM_CONSTANTS.attributes.TARGET,\n LIST_ITEM_CONSTANTS.attributes.RIPPLE,\n LIST_ITEM_CONSTANTS.attributes.DISABLED,\n LIST_ITEM_CONSTANTS.attributes.DENSE,\n LIST_ITEM_CONSTANTS.attributes.PROPAGATE_CLICK,\n LIST_ITEM_CONSTANTS.attributes.INDENTED,\n LIST_ITEM_CONSTANTS.attributes.WRAP\n ];\n }\n\n private _foundation: ListItemFoundation;\n\n constructor() {\n super();\n attachShadowTemplate(this, defaultTemplate, styles);\n this._foundation = new ListItemFoundation(new ListItemAdapter(this));\n }\n\n public initializedCallback(): void {\n // To simulate the :host-context() selector for Firefox until they implement it, we need to determine if the\n // list item is within a drawer for auto-styling the list item when included within a drawer. Check to see if\n // any of the parents of this element are a drawer.\n if (!this.hasAttribute(LIST_ITEM_CONSTANTS.attributes.DRAWER_CONTEXT) && elementParents(this).some(el => ['forge-drawer', 'forge-modal-drawer', 'forge-mini-drawer'].includes(el.tagName.toLowerCase()))) {\n this.setAttribute(LIST_ITEM_CONSTANTS.attributes.DRAWER_CONTEXT, 'true');\n }\n\n const list = requireParent<IListComponent>(this, LIST_CONSTANTS.elementName);\n if (list) {\n this._inheritParentListProps(list);\n }\n\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 LIST_ITEM_CONSTANTS.attributes.STATIC:\n this.static = coerceBoolean(newValue);\n break;\n case LIST_ITEM_CONSTANTS.attributes.TWO_LINE:\n this.twoLine = coerceBoolean(newValue);\n break;\n case LIST_ITEM_CONSTANTS.attributes.THREE_LINE:\n this.threeLine = coerceBoolean(newValue);\n break;\n case LIST_ITEM_CONSTANTS.attributes.ACTIVE:\n this.active = coerceBoolean(newValue);\n break;\n case LIST_ITEM_CONSTANTS.attributes.SELECTED:\n this.selected = coerceBoolean(newValue);\n break;\n case LIST_ITEM_CONSTANTS.attributes.VALUE:\n this.value = newValue;\n break;\n case LIST_ITEM_CONSTANTS.attributes.HREF:\n this.href = newValue;\n break;\n case LIST_ITEM_CONSTANTS.attributes.TARGET:\n this.target = newValue;\n break;\n case LIST_ITEM_CONSTANTS.attributes.RIPPLE:\n this.ripple = coerceBoolean(newValue);\n break;\n case LIST_ITEM_CONSTANTS.attributes.DISABLED:\n this.disabled = coerceBoolean(newValue);\n break;\n case LIST_ITEM_CONSTANTS.attributes.DENSE:\n this.dense = coerceBoolean(newValue);\n break;\n case LIST_ITEM_CONSTANTS.attributes.PROPAGATE_CLICK:\n this.propagateClick = coerceBoolean(newValue);\n break;\n case LIST_ITEM_CONSTANTS.attributes.INDENTED:\n this.indented = coerceBoolean(newValue);\n break;\n case LIST_ITEM_CONSTANTS.attributes.WRAP:\n this.wrap = coerceBoolean(newValue);\n break;\n }\n }\n\n private _inheritParentListProps(list: IListComponent): void {\n if (list.hasAttribute(LIST_CONSTANTS.attributes.STATIC)) {\n this.static = true;\n }\n if (list.hasAttribute(LIST_CONSTANTS.attributes.DENSE)) {\n this.dense = true;\n }\n if (list.getAttribute(LIST_CONSTANTS.attributes.PROPAGATE_CLICK) === 'false') {\n this.propagateClick = false;\n }\n if (list.hasAttribute(LIST_CONSTANTS.attributes.INDENTED)) {\n this.indented = true;\n }\n }\n\n /** Gets/sets whether the static state of this list item. */\n @FoundationProperty()\n public static: boolean;\n\n /** Gets/sets whether the list item displays two lines of text. */\n @FoundationProperty()\n public twoLine: boolean;\n\n /** Gets/sets whether the list item displays three lines of text. */\n @FoundationProperty()\n public threeLine: boolean;\n\n /** Gets/sets whether the list item is active or not. */\n @FoundationProperty()\n public active: boolean;\n\n /** Gets/sets whether the list item is selected or not. */\n @FoundationProperty()\n public selected: boolean;\n\n /** Gets/sets list item value. */\n @FoundationProperty()\n public value: any;\n\n /** Gets/sets the href link that this list item will send the browser to when clicked. */\n @FoundationProperty()\n public href: string;\n\n /** Gets/sets the href link target. Only pertains when `href` is also used. */\n @FoundationProperty()\n public target: string;\n\n /** Gets/sets whether the list item has a ripple or not. */\n @FoundationProperty()\n public ripple: boolean;\n\n /** Gets/sets whether the list item is disabled or not. */\n @FoundationProperty()\n public disabled: boolean;\n\n /** Gets/sets whether the list item is using dense styles or not. */\n @FoundationProperty()\n public dense: boolean;\n\n /** Gets/sets whether the list item allows mousedown events through to the underlying list item element. Default is true. */\n @FoundationProperty()\n public propagateClick: boolean;\n\n /** Gets/sets whether the list item is indented or not. Default is false. */\n @FoundationProperty()\n public indented: boolean;\n\n /** Gets/sets whether the list item content is wrapped or not. Default is true. */\n @FoundationProperty()\n public wrap: boolean;\n\n /** Sets focus to this list item. */\n public override focus(): void {\n this._foundation.setFocus();\n }\n}\n", "import { defineCustomElement } from '@tylertech/forge-core';\nimport { ListItemComponent } from './list-item';\n\nexport * from './list-item-adapter';\nexport * from './list-item-constants';\nexport * from './list-item-foundation';\nexport * from './list-item';\n\nexport function defineListItemComponent(): void {\n defineCustomElement(ListItemComponent);\n}\n"],
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }
@@ -218,4 +218,4 @@ export {
218
218
  BackdropComponent,
219
219
  defineBackdropComponent
220
220
  };
221
- //# sourceMappingURL=chunk.2NUAEZY7.js.map
221
+ //# sourceMappingURL=chunk.GXTNND2M.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/backdrop/backdrop-constants.ts", "../../src/backdrop/backdrop-adapter.ts", "../../src/backdrop/backdrop-foundation.ts", "../../src/backdrop/backdrop.ts", "../../src/backdrop/index.ts"],
4
- "sourcesContent": ["import { COMPONENT_NAME_PREFIX } from '../constants';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}backdrop`;\n\nconst selectors = {\n CONTAINER: '.forge-backdrop'\n};\n\nconst numbers = {\n OPACITY: 0.54,\n DELAY: 0,\n TRANSITION_DURATION: 150\n};\n\nconst attributes = {\n DELAY: 'delay',\n MAX_OPACITY: 'max-opacity',\n APPEARANCE: 'appearance',\n FIXED: 'fixed'\n};\n\nconst events = {\n BACKDROP_CLICK: `${elementName}-click`\n};\n\nexport const BACKDROP_CONSTANTS = {\n elementName,\n selectors,\n numbers,\n attributes,\n events\n};\n\nexport type BackdropAppearance = 'light' | 'dark' | undefined;\n", "import { getShadowElement } from '@tylertech/forge-core';\nimport { BaseAdapter, IBaseAdapter } from '../core/base/base-adapter';\nimport { IBackdropComponent } from './backdrop';\nimport { BACKDROP_CONSTANTS } from './backdrop-constants';\n\nexport interface IBackdropAdapter extends IBaseAdapter {\n setBackdropOpacity: (opacity: number) => void;\n addBackdropEventListener: (type: string, listener: (evt: Event) => void) => void;\n removeBackdropEventListener: (type: string, listener: (evt: Event) => void) => void;\n}\n\n/**\n * Provides facilities for interacting with the internal DOM of `BackdropComponent`.\n */\nexport class BackdropAdapter extends BaseAdapter<IBackdropComponent> implements IBackdropAdapter {\n private _backdropElement: HTMLElement;\n\n constructor(component: IBackdropComponent) {\n super(component);\n this._backdropElement = getShadowElement(component, BACKDROP_CONSTANTS.selectors.CONTAINER);\n }\n\n /**\n * Sets the backdrop element opacity.\n * @param opacity The opacity amount.\n */\n public setBackdropOpacity(opacity: number): void {\n this._backdropElement.style.opacity = opacity.toString();\n }\n\n /**\n * Adds a click event to the backdrop container element.\n * @param type The event type.\n * @param listener The event listener.\n */\n public addBackdropEventListener(type: string, listener: (evt: Event) => void): void {\n this._backdropElement.addEventListener('click', listener);\n }\n\n /**\n * Removes a click event from the backdrop container element.\n * @param type The event type.\n * @param listener The event listener.\n */\n public removeBackdropEventListener(type: string, listener: (evt: Event) => void): void {\n this._backdropElement.removeEventListener('click', listener);\n }\n}\n", "import { ICustomElementFoundation } from '@tylertech/forge-core';\nimport { IBackdropAdapter } from './backdrop-adapter';\nimport { BackdropAppearance, BACKDROP_CONSTANTS } from './backdrop-constants';\n\n\nexport interface IBackdropFoundation extends ICustomElementFoundation {\n fadeOut(): Promise<void>;\n fadeIn(): Promise<void>;\n appearance: BackdropAppearance;\n}\n\nexport class BackdropFoundation implements IBackdropFoundation {\n private _delay: number = BACKDROP_CONSTANTS.numbers.DELAY;\n private _maxOpacity: number = BACKDROP_CONSTANTS.numbers.OPACITY;\n private _appearance: BackdropAppearance;\n\n constructor(private _adapter: IBackdropAdapter) {\n this._adapter.addBackdropEventListener('click', this._onClick.bind(this));\n }\n\n public initialize(): void {\n this._adapter.setBackdropOpacity(0);\n this._applyAppearance();\n this._adapter.setHostAttribute(BACKDROP_CONSTANTS.attributes.DELAY, this._delay.toString());\n this.fadeIn();\n }\n\n /**\n * Starts the fade-out animation to animate the backdrop to 0% opacity.\n */\n public fadeOut(): Promise<void> {\n return new Promise<void>(resolve => {\n this._adapter.setBackdropOpacity(0);\n setTimeout(() => resolve(), BACKDROP_CONSTANTS.numbers.TRANSITION_DURATION);\n });\n }\n\n /**\n * Starts the fade-in animation to animate the backdrop to max opacity.\n */\n public fadeIn(): Promise<void> {\n return new Promise<void>(resolve => {\n setTimeout(() => {\n this._adapter.setBackdropOpacity(this._maxOpacity);\n setTimeout(() => resolve(), BACKDROP_CONSTANTS.numbers.TRANSITION_DURATION);\n }, this.delay);\n });\n }\n\n private _onClick(evt: Event): void {\n evt.stopPropagation();\n this._adapter.emitHostEvent(BACKDROP_CONSTANTS.events.BACKDROP_CLICK, undefined, true, true);\n }\n\n public disconnect(): void {\n this._adapter.removeBackdropEventListener('click', this._onClick);\n }\n\n private _applyAppearance(): void {\n if (this._appearance) {\n this._adapter.setHostAttribute(BACKDROP_CONSTANTS.attributes.APPEARANCE, String(this._appearance));\n } else {\n this._adapter.removeHostAttribute(BACKDROP_CONSTANTS.attributes.APPEARANCE);\n }\n }\n\n public set delay(value: number) {\n if (this._delay !== value) {\n this._delay = value;\n this._adapter.setHostAttribute(BACKDROP_CONSTANTS.attributes.DELAY, this._delay.toString());\n }\n }\n public get delay(): number {\n return this._delay;\n }\n\n public set maxOpacity(value: number) {\n if (this._maxOpacity !== value) {\n this._maxOpacity = value;\n this._adapter.setHostAttribute(BACKDROP_CONSTANTS.attributes.MAX_OPACITY, this._maxOpacity.toString());\n }\n }\n public get maxOpacity(): number {\n return this._maxOpacity;\n }\n\n public get appearance(): BackdropAppearance {\n return this._appearance;\n }\n public set appearance(value: BackdropAppearance) {\n if (this._appearance !== value) {\n this._appearance = value;\n this._applyAppearance();\n }\n }\n}\n", "import { attachShadowTemplate, CustomElement, FoundationProperty } from '@tylertech/forge-core';\nimport { BaseComponent, IBaseComponent } from '../core/base/base-component';\nimport { BackdropAdapter } from './backdrop-adapter';\nimport { BackdropAppearance, BACKDROP_CONSTANTS } from './backdrop-constants';\nimport { BackdropFoundation } from './backdrop-foundation';\n\nconst template = '<template><div class=\\\"forge-backdrop\\\" part=\\\"root\\\"></div></template>';\nconst styles = '.forge-backdrop{z-index:7;z-index:var(--forge-z-index-backdrop,7);background-color:rgba(0,0,0,.54);background-color:var(--forge-backdrop-theme-background,rgba(0,0,0,.54));position:absolute;top:0;bottom:0;left:0;right:0;display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;-webkit-transition:opacity 150ms 0s cubic-bezier(0, 0, .2, 1);transition:opacity 150ms 0s cubic-bezier(0, 0, .2, 1);opacity:0}:host{display:block}:host([hidden]){display:none}:host([fixed]) .forge-backdrop{position:fixed}:host([appearance=light]){--forge-backdrop-theme-background:rgba(255, 255, 255, 0.54)}:host([appearance=dark]){--forge-backdrop-theme-background:rgba(0, 0, 0, 0.54)}';\n\nexport interface IBackdropComponent extends IBaseComponent {\n delay: number;\n maxOpacity: number;\n appearance: BackdropAppearance;\n fadeOut(): Promise<void>;\n fadeIn(): Promise<void>;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'forge-backdrop': IBackdropComponent;\n }\n\n interface HTMLElementEventMap {\n 'forge-backdrop-click': CustomEvent<void>;\n }\n}\n\n/**\n * A web component that renders a backdrop covering its parent container with a semi-opaque element.\n */\n@CustomElement({\n name: BACKDROP_CONSTANTS.elementName\n})\nexport class BackdropComponent extends BaseComponent {\n public static get observedAttributes(): string[] {\n return [\n BACKDROP_CONSTANTS.attributes.DELAY,\n BACKDROP_CONSTANTS.attributes.MAX_OPACITY\n ];\n }\n\n protected _foundation: BackdropFoundation;\n\n constructor() {\n super();\n attachShadowTemplate(this, template, styles);\n this._foundation = new BackdropFoundation(new BackdropAdapter(this));\n }\n\n public connectedCallback(): void {\n if (this.hasAttribute(BACKDROP_CONSTANTS.attributes.DELAY) && this.getAttribute(BACKDROP_CONSTANTS.attributes.DELAY)) {\n const inDelay = Number(this.getAttribute(BACKDROP_CONSTANTS.attributes.DELAY));\n this.delay = inDelay >= 0 ? inDelay : BACKDROP_CONSTANTS.numbers.DELAY;\n }\n\n if (this.hasAttribute(BACKDROP_CONSTANTS.attributes.MAX_OPACITY)) {\n const inMaxOpacity = Number(this.getAttribute(BACKDROP_CONSTANTS.attributes.MAX_OPACITY));\n this.maxOpacity = inMaxOpacity >= 0 && inMaxOpacity <= 1 ? inMaxOpacity : BACKDROP_CONSTANTS.numbers.OPACITY;\n }\n\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 BACKDROP_CONSTANTS.attributes.DELAY:\n const delayValue = Number(newValue);\n this.delay = delayValue >= 0 ? delayValue : BACKDROP_CONSTANTS.numbers.DELAY;\n break;\n case BACKDROP_CONSTANTS.attributes.MAX_OPACITY:\n const opacityValue = Number(newValue);\n this.maxOpacity = opacityValue >= 0 && opacityValue <= 1 ? opacityValue : BACKDROP_CONSTANTS.numbers.OPACITY;\n break;\n case BACKDROP_CONSTANTS.attributes.APPEARANCE:\n this.appearance = newValue as BackdropAppearance;\n break;\n }\n }\n\n /**\n * The time in milliseconds to delay the fade in animation of the opacity.\n * Note: The element will start with 0% opacity when the component is rendered.\n */\n @FoundationProperty()\n public delay: number;\n\n /** Controls whether the theme defaults to light vs dark compatibility. */\n @FoundationProperty()\n public appearance: BackdropAppearance;\n\n /** The max opacity to fade the element to. This defines how opaque the backdrop is when visible. */\n @FoundationProperty()\n public maxOpacity: number;\n\n /**\n * Starts the fade-out animation to animate the backdrop to 0% opacity.\n */\n public fadeOut(): Promise<void> {\n return this._foundation.fadeOut();\n }\n\n /**\n * Starts the fade-in animation to animate the backdrop to max opacity.\n */\n public fadeIn(): Promise<void> {\n return this._foundation.fadeIn();\n }\n}\n", "import { defineCustomElement } from '@tylertech/forge-core';\n\nimport { BackdropComponent } from './backdrop';\n\nexport * from './backdrop-adapter';\nexport * from './backdrop-constants';\nexport * from './backdrop-foundation';\nexport * from './backdrop';\n\nexport function defineBackdropComponent(): void {\n defineCustomElement(BackdropComponent);\n}\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["import { COMPONENT_NAME_PREFIX } from '../constants';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}backdrop`;\n\nconst selectors = {\n CONTAINER: '.forge-backdrop'\n};\n\nconst numbers = {\n OPACITY: 0.54,\n DELAY: 0,\n TRANSITION_DURATION: 150\n};\n\nconst attributes = {\n DELAY: 'delay',\n MAX_OPACITY: 'max-opacity',\n APPEARANCE: 'appearance',\n FIXED: 'fixed'\n};\n\nconst events = {\n BACKDROP_CLICK: `${elementName}-click`\n};\n\nexport const BACKDROP_CONSTANTS = {\n elementName,\n selectors,\n numbers,\n attributes,\n events\n};\n\nexport type BackdropAppearance = 'light' | 'dark' | undefined;\n", "import { getShadowElement } from '@tylertech/forge-core';\nimport { BaseAdapter, IBaseAdapter } from '../core/base/base-adapter';\nimport { IBackdropComponent } from './backdrop';\nimport { BACKDROP_CONSTANTS } from './backdrop-constants';\n\nexport interface IBackdropAdapter extends IBaseAdapter {\n setBackdropOpacity: (opacity: number) => void;\n addBackdropEventListener: (type: string, listener: (evt: Event) => void) => void;\n removeBackdropEventListener: (type: string, listener: (evt: Event) => void) => void;\n}\n\n/**\n * Provides facilities for interacting with the internal DOM of `BackdropComponent`.\n */\nexport class BackdropAdapter extends BaseAdapter<IBackdropComponent> implements IBackdropAdapter {\n private _backdropElement: HTMLElement;\n\n constructor(component: IBackdropComponent) {\n super(component);\n this._backdropElement = getShadowElement(component, BACKDROP_CONSTANTS.selectors.CONTAINER);\n }\n\n /**\n * Sets the backdrop element opacity.\n * @param opacity The opacity amount.\n */\n public setBackdropOpacity(opacity: number): void {\n this._backdropElement.style.opacity = opacity.toString();\n }\n\n /**\n * Adds a click event to the backdrop container element.\n * @param type The event type.\n * @param listener The event listener.\n */\n public addBackdropEventListener(type: string, listener: (evt: Event) => void): void {\n this._backdropElement.addEventListener('click', listener);\n }\n\n /**\n * Removes a click event from the backdrop container element.\n * @param type The event type.\n * @param listener The event listener.\n */\n public removeBackdropEventListener(type: string, listener: (evt: Event) => void): void {\n this._backdropElement.removeEventListener('click', listener);\n }\n}\n", "import { ICustomElementFoundation } from '@tylertech/forge-core';\nimport { IBackdropAdapter } from './backdrop-adapter';\nimport { BackdropAppearance, BACKDROP_CONSTANTS } from './backdrop-constants';\n\n\nexport interface IBackdropFoundation extends ICustomElementFoundation {\n fadeOut(): Promise<void>;\n fadeIn(): Promise<void>;\n appearance: BackdropAppearance;\n}\n\nexport class BackdropFoundation implements IBackdropFoundation {\n private _delay: number = BACKDROP_CONSTANTS.numbers.DELAY;\n private _maxOpacity: number = BACKDROP_CONSTANTS.numbers.OPACITY;\n private _appearance: BackdropAppearance;\n\n constructor(private _adapter: IBackdropAdapter) {\n this._adapter.addBackdropEventListener('click', this._onClick.bind(this));\n }\n\n public initialize(): void {\n this._adapter.setBackdropOpacity(0);\n this._applyAppearance();\n this._adapter.setHostAttribute(BACKDROP_CONSTANTS.attributes.DELAY, this._delay.toString());\n this.fadeIn();\n }\n\n /**\n * Starts the fade-out animation to animate the backdrop to 0% opacity.\n */\n public fadeOut(): Promise<void> {\n return new Promise<void>(resolve => {\n this._adapter.setBackdropOpacity(0);\n setTimeout(() => resolve(), BACKDROP_CONSTANTS.numbers.TRANSITION_DURATION);\n });\n }\n\n /**\n * Starts the fade-in animation to animate the backdrop to max opacity.\n */\n public fadeIn(): Promise<void> {\n return new Promise<void>(resolve => {\n setTimeout(() => {\n this._adapter.setBackdropOpacity(this._maxOpacity);\n setTimeout(() => resolve(), BACKDROP_CONSTANTS.numbers.TRANSITION_DURATION);\n }, this.delay);\n });\n }\n\n private _onClick(evt: Event): void {\n evt.stopPropagation();\n this._adapter.emitHostEvent(BACKDROP_CONSTANTS.events.BACKDROP_CLICK, undefined, true, true);\n }\n\n public disconnect(): void {\n this._adapter.removeBackdropEventListener('click', this._onClick);\n }\n\n private _applyAppearance(): void {\n if (this._appearance) {\n this._adapter.setHostAttribute(BACKDROP_CONSTANTS.attributes.APPEARANCE, String(this._appearance));\n } else {\n this._adapter.removeHostAttribute(BACKDROP_CONSTANTS.attributes.APPEARANCE);\n }\n }\n\n public set delay(value: number) {\n if (this._delay !== value) {\n this._delay = value;\n this._adapter.setHostAttribute(BACKDROP_CONSTANTS.attributes.DELAY, this._delay.toString());\n }\n }\n public get delay(): number {\n return this._delay;\n }\n\n public set maxOpacity(value: number) {\n if (this._maxOpacity !== value) {\n this._maxOpacity = value;\n this._adapter.setHostAttribute(BACKDROP_CONSTANTS.attributes.MAX_OPACITY, this._maxOpacity.toString());\n }\n }\n public get maxOpacity(): number {\n return this._maxOpacity;\n }\n\n public get appearance(): BackdropAppearance {\n return this._appearance;\n }\n public set appearance(value: BackdropAppearance) {\n if (this._appearance !== value) {\n this._appearance = value;\n this._applyAppearance();\n }\n }\n}\n", "import { attachShadowTemplate, CustomElement, FoundationProperty } from '@tylertech/forge-core';\nimport { BaseComponent, IBaseComponent } from '../core/base/base-component';\nimport { BackdropAdapter } from './backdrop-adapter';\nimport { BackdropAppearance, BACKDROP_CONSTANTS } from './backdrop-constants';\nimport { BackdropFoundation } from './backdrop-foundation';\n\nconst template = '<template><div class=\\\"forge-backdrop\\\" part=\\\"root\\\"></div></template>';\nconst styles = '.forge-backdrop{z-index:7;z-index:var(--forge-z-index-backdrop,7);background-color:rgba(0,0,0,.54);background-color:var(--forge-backdrop-theme-background,rgba(0,0,0,.54));position:absolute;top:0;bottom:0;left:0;right:0;display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;-webkit-transition:opacity 150ms 0s cubic-bezier(0, 0, .2, 1);transition:opacity 150ms 0s cubic-bezier(0, 0, .2, 1);opacity:0}:host{display:block}:host([hidden]){display:none}:host([fixed]) .forge-backdrop{position:fixed}:host([appearance=light]){--forge-backdrop-theme-background:rgba(255, 255, 255, 0.54)}:host([appearance=dark]){--forge-backdrop-theme-background:rgba(0, 0, 0, 0.54)}';\n\nexport interface IBackdropComponent extends IBaseComponent {\n delay: number;\n maxOpacity: number;\n appearance: BackdropAppearance;\n fadeOut(): Promise<void>;\n fadeIn(): Promise<void>;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'forge-backdrop': IBackdropComponent;\n }\n\n interface HTMLElementEventMap {\n 'forge-backdrop-click': CustomEvent<void>;\n }\n}\n\n/**\n * A web component that renders a backdrop covering its parent container with a semi-opaque element.\n * \n * @tag forge-backdrop\n */\n@CustomElement({\n name: BACKDROP_CONSTANTS.elementName\n})\nexport class BackdropComponent extends BaseComponent {\n public static get observedAttributes(): string[] {\n return [\n BACKDROP_CONSTANTS.attributes.DELAY,\n BACKDROP_CONSTANTS.attributes.MAX_OPACITY\n ];\n }\n\n protected _foundation: BackdropFoundation;\n\n constructor() {\n super();\n attachShadowTemplate(this, template, styles);\n this._foundation = new BackdropFoundation(new BackdropAdapter(this));\n }\n\n public connectedCallback(): void {\n if (this.hasAttribute(BACKDROP_CONSTANTS.attributes.DELAY) && this.getAttribute(BACKDROP_CONSTANTS.attributes.DELAY)) {\n const inDelay = Number(this.getAttribute(BACKDROP_CONSTANTS.attributes.DELAY));\n this.delay = inDelay >= 0 ? inDelay : BACKDROP_CONSTANTS.numbers.DELAY;\n }\n\n if (this.hasAttribute(BACKDROP_CONSTANTS.attributes.MAX_OPACITY)) {\n const inMaxOpacity = Number(this.getAttribute(BACKDROP_CONSTANTS.attributes.MAX_OPACITY));\n this.maxOpacity = inMaxOpacity >= 0 && inMaxOpacity <= 1 ? inMaxOpacity : BACKDROP_CONSTANTS.numbers.OPACITY;\n }\n\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 BACKDROP_CONSTANTS.attributes.DELAY:\n const delayValue = Number(newValue);\n this.delay = delayValue >= 0 ? delayValue : BACKDROP_CONSTANTS.numbers.DELAY;\n break;\n case BACKDROP_CONSTANTS.attributes.MAX_OPACITY:\n const opacityValue = Number(newValue);\n this.maxOpacity = opacityValue >= 0 && opacityValue <= 1 ? opacityValue : BACKDROP_CONSTANTS.numbers.OPACITY;\n break;\n case BACKDROP_CONSTANTS.attributes.APPEARANCE:\n this.appearance = newValue as BackdropAppearance;\n break;\n }\n }\n\n /**\n * The time in milliseconds to delay the fade in animation of the opacity.\n * Note: The element will start with 0% opacity when the component is rendered.\n */\n @FoundationProperty()\n public delay: number;\n\n /** Controls whether the theme defaults to light vs dark compatibility. */\n @FoundationProperty()\n public appearance: BackdropAppearance;\n\n /** The max opacity to fade the element to. This defines how opaque the backdrop is when visible. */\n @FoundationProperty()\n public maxOpacity: number;\n\n /**\n * Starts the fade-out animation to animate the backdrop to 0% opacity.\n */\n public fadeOut(): Promise<void> {\n return this._foundation.fadeOut();\n }\n\n /**\n * Starts the fade-in animation to animate the backdrop to max opacity.\n */\n public fadeIn(): Promise<void> {\n return this._foundation.fadeIn();\n }\n}\n", "import { defineCustomElement } from '@tylertech/forge-core';\n\nimport { BackdropComponent } from './backdrop';\n\nexport * from './backdrop-adapter';\nexport * from './backdrop-constants';\nexport * from './backdrop-foundation';\nexport * from './backdrop';\n\nexport function defineBackdropComponent(): void {\n defineCustomElement(BackdropComponent);\n}\n"],
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }
@@ -107,4 +107,4 @@ export {
107
107
  ToolbarComponent,
108
108
  defineToolbarComponent
109
109
  };
110
- //# sourceMappingURL=chunk.YJ5X3WZ4.js.map
110
+ //# sourceMappingURL=chunk.HASAPJMX.js.map