@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/checkbox/checkbox-constants.ts", "../../src/checkbox/checkbox-foundation.ts", "../../src/checkbox/checkbox-adapter.ts", "../../src/checkbox/checkbox.ts", "../../src/checkbox/checkbox-component-delegate.ts", "../../src/checkbox/index.ts"],
4
- "sourcesContent": ["import { COMPONENT_NAME_PREFIX } from '../constants';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}checkbox`;\n\nconst classes = {\n CONTAINER: 'forge-checkbox-container',\n ROOT: 'mdc-checkbox',\n CHECKBOX: 'mdc-checkbox',\n CHECKBOX_DENSE: 'forge-checkbox--dense',\n ANIM_CHECKED_INDETERMINATE: 'mdc-checkbox--anim-checked-indeterminate',\n ANIM_CHECKED_UNCHECKED: 'mdc-checkbox--anim-checked-unchecked',\n ANIM_INDETERMINATE_CHECKED: 'mdc-checkbox--anim-indeterminate-checked',\n ANIM_INDETERMINATE_UNCHECKED: 'mdc-checkbox--anim-indeterminate-unchecked',\n ANIM_UNCHECKED_CHECKED: 'mdc-checkbox--anim-unchecked-checked',\n ANIM_UNCHECKED_INDETERMINATE: 'mdc-checkbox--anim-unchecked-indeterminate',\n BACKGROUND: 'mdc-checkbox__background',\n CHECKMARK: 'mdc-checkbox__checkmark',\n CHECKMARK_PATH: 'mdc-checkbox__checkmark-path',\n DISABLED: 'mdc-checkbox--disabled',\n WRAPPER_DISABLED: 'forge-checkbox-wrapper--disabled',\n MIXEDMARK: 'mdc-checkbox__mixedmark',\n SELECTED: 'mdc-checkbox--selected',\n UPGRADED: 'mdc-checkbox--upgraded',\n CHECKED: 'forge-checkbox--checked',\n INDETERMINATE: 'forge-checkbox--indeterminate',\n FOCUSED: 'forge-checkbox--focused',\n ENABLED: 'forge-checkbox--enabled'\n};\n\nconst selectors = {\n INPUT: 'input',\n LABEL: 'label',\n ROOT: `.${classes.ROOT}`,\n WRAPPER: '.forge-checkbox-wrapper'\n};\n\nconst attributes = {\n DENSE: 'dense',\n CHECKED: 'checked',\n SLOT: 'slot',\n DISABLED: 'disabled',\n INDETERMINATE: 'indeterminate'\n};\n\nexport const strings = {\n ARIA_CHECKED_ATTR: 'aria-checked',\n ARIA_CHECKED_INDETERMINATE_VALUE: 'mixed',\n DATA_INDETERMINATE_ATTR: 'data-indeterminate',\n NATIVE_CONTROL_SELECTOR: '.mdc-checkbox__native-control',\n TRANSITION_STATE_CHECKED: 'checked',\n TRANSITION_STATE_INDETERMINATE: 'indeterminate',\n TRANSITION_STATE_INIT: 'init',\n TRANSITION_STATE_UNCHECKED: 'unchecked'\n};\n\nconst CB_PROTO_PROPS = ['checked', 'indeterminate', 'disabled'];\n\nexport const numbers = {\n ANIM_END_LATCH_MS: 250\n};\n\nexport const CHECKBOX_CONSTANTS = {\n elementName,\n classes,\n selectors,\n attributes,\n strings,\n CB_PROTO_PROPS,\n numbers\n};\n", "import { ICustomElementFoundation } from '@tylertech/forge-core';\n\nimport { ICheckboxAdapter } from './checkbox-adapter';\nimport { CHECKBOX_CONSTANTS } from './checkbox-constants';\n\nexport interface ICheckboxFoundation extends ICustomElementFoundation {\n dense: boolean;\n}\n\nexport class CheckboxFoundation implements ICheckboxFoundation {\n private _dense = false;\n private _currentCheckState = CHECKBOX_CONSTANTS.strings.TRANSITION_STATE_INIT;\n private _currentAnimationClass = '';\n private _animEndLatchTimer = 0;\n private _enableAnimationEndHandler = false;\n\n private _handleChange!: () => void;\n private _inputAttributeChangedListener: (name: string, value: string) => void;\n private _handleAnimationEnd: () => void;\n\n constructor(private _adapter: ICheckboxAdapter) {}\n\n public disconnect(): void {\n this._adapter.unlisten('change', this._handleChange);\n this._adapter.disconnect();\n this._adapter.uninstallPropertyChangeHooks();\n this._adapter.unlisten('animationend', this._handleAnimationEnd);\n }\n\n public connect(): void {\n this._adapter.initialize();\n this._currentCheckState = this._determineCheckState();\n this._setDense(this.dense);\n this._updateAriaChecked();\n this._inputAttributeChangedListener = (name, value) => this._handleInputAttributeChange();\n this._adapter.setInputAttributeObserver((name, value) => this._inputAttributeChangedListener(name, value));\n\n this._handleChange = () => this._handleInputChange();\n this._adapter.listen('change', this._handleChange);\n this._adapter.installPropertyChangeHooks(() => {\n this._handleInputChange();\n });\n this._handleAnimationEnd = () => this.handleAnimationEnd();\n this._adapter.listen('animationend', this._handleAnimationEnd, true);\n\n this._handleInputChange();\n }\n\n public get dense(): boolean {\n return this._dense;\n }\n\n public set dense(value: boolean) {\n if (this._dense !== value) {\n this._dense = value;\n this._setDense(value);\n }\n }\n\n public handleAnimationEnd(): void {\n if (!this._enableAnimationEndHandler) {\n return;\n }\n\n const handler: TimerHandler = () => {\n this._adapter.removeRootClass(this._currentAnimationClass);\n this._enableAnimationEndHandler = false;\n };\n\n clearTimeout(this._animEndLatchTimer);\n this._animEndLatchTimer = setTimeout(handler, CHECKBOX_CONSTANTS.numbers.ANIM_END_LATCH_MS);\n }\n\n private _setDense(value: boolean): void {\n this._adapter.setDense(value);\n }\n\n private _determineCheckState(): string {\n const { TRANSITION_STATE_INDETERMINATE, TRANSITION_STATE_CHECKED, TRANSITION_STATE_UNCHECKED } = CHECKBOX_CONSTANTS.strings;\n\n if (this._adapter.isIndeterminate()) {\n return TRANSITION_STATE_INDETERMINATE;\n }\n\n return this._adapter.isChecked() ? TRANSITION_STATE_CHECKED : TRANSITION_STATE_UNCHECKED;\n }\n\n private _updateAriaChecked(): void {\n const { ARIA_CHECKED_INDETERMINATE_VALUE, ARIA_CHECKED_ATTR } = CHECKBOX_CONSTANTS.strings;\n // Ensure aria-checked is set to mixed if checkbox is in indeterminate state.\n if (this._adapter.isIndeterminate()) {\n this._adapter.setNativeAttribute(ARIA_CHECKED_ATTR, ARIA_CHECKED_INDETERMINATE_VALUE);\n this._adapter.setRootClass(CHECKBOX_CONSTANTS.classes.INDETERMINATE);\n if (!this._adapter.isChecked()) {\n this._adapter.removeRootClass(CHECKBOX_CONSTANTS.classes.CHECKED);\n }\n } else {\n // The on/off state does not need to keep track of aria-checked, since\n // the screenreader uses the checked property on the checkbox element.\n this._adapter.removeNativeAttribute(ARIA_CHECKED_ATTR);\n this._adapter.removeRootClass(CHECKBOX_CONSTANTS.classes.INDETERMINATE);\n }\n }\n\n private _handleInputChange(): void {\n this._handleInputAttributeChange();\n this._updateCheckboxStateClasses();\n this._transitionCheckState();\n }\n\n private _transitionCheckState(): void {\n if (!this._adapter.isAttachedToDOM()) {\n return;\n }\n const oldState = this._currentCheckState;\n const newState = this._determineCheckState();\n\n if (oldState === newState) {\n return;\n }\n\n this._updateAriaChecked();\n\n const { TRANSITION_STATE_UNCHECKED } = CHECKBOX_CONSTANTS.strings;\n const { SELECTED } = CHECKBOX_CONSTANTS.classes;\n if (newState === TRANSITION_STATE_UNCHECKED) {\n this._adapter.removeRootClass(SELECTED);\n } else {\n this._adapter.setRootClass(SELECTED);\n }\n\n // Check to ensure that there isn't a previously existing animation class, in case for example\n // the user interacted with the checkbox before the animation was finished.\n if (this._currentAnimationClass.length > 0) {\n clearTimeout(this._animEndLatchTimer);\n this._adapter.forceLayout();\n this._adapter.removeRootClass(this._currentAnimationClass);\n }\n // Check to ensure that there isn't a previously existing animation class, in case for example\n // the user interacted with the checkbox before the animation was finished.\n if (this._currentAnimationClass.length > 0) {\n clearTimeout(this._animEndLatchTimer);\n this._adapter.forceLayout();\n this._adapter.removeRootClass(this._currentAnimationClass);\n }\n\n this._currentAnimationClass = this._getTransitionAnimationClass(oldState, newState);\n this._currentCheckState = newState;\n\n // Check for parentNode so that animations are only run when the element is attached\n // to the DOM.\n if (this._adapter.isAttachedToDOM() && this._currentAnimationClass.length > 0) {\n this._adapter.setRootClass(this._currentAnimationClass);\n this._enableAnimationEndHandler = true;\n }\n\n this._adapter.forceLayout();\n }\n\n private _handleInputAttributeChange(): void {\n if (this._adapter.isDisabled()) {\n this._adapter.setRootClass(CHECKBOX_CONSTANTS.classes.DISABLED);\n this._adapter.setWrapperClass(CHECKBOX_CONSTANTS.classes.WRAPPER_DISABLED);\n this._adapter.removeRootClass(CHECKBOX_CONSTANTS.classes.ENABLED);\n } else {\n this._adapter.removeRootClass(CHECKBOX_CONSTANTS.classes.DISABLED);\n this._adapter.removeWrapperClass(CHECKBOX_CONSTANTS.classes.WRAPPER_DISABLED);\n this._adapter.setRootClass(CHECKBOX_CONSTANTS.classes.ENABLED);\n }\n\n this._updateCheckboxStateClasses();\n }\n\n private _getTransitionAnimationClass(oldState: string, newState: string): string {\n const { TRANSITION_STATE_CHECKED, TRANSITION_STATE_UNCHECKED } = CHECKBOX_CONSTANTS.strings;\n\n const {\n ANIM_UNCHECKED_CHECKED,\n ANIM_UNCHECKED_INDETERMINATE,\n ANIM_CHECKED_UNCHECKED,\n ANIM_CHECKED_INDETERMINATE,\n ANIM_INDETERMINATE_CHECKED,\n ANIM_INDETERMINATE_UNCHECKED\n } = CHECKBOX_CONSTANTS.classes;\n\n switch (oldState) {\n case TRANSITION_STATE_UNCHECKED:\n return newState === TRANSITION_STATE_CHECKED ? ANIM_UNCHECKED_CHECKED : ANIM_UNCHECKED_INDETERMINATE;\n case TRANSITION_STATE_CHECKED:\n return newState === TRANSITION_STATE_UNCHECKED ? ANIM_CHECKED_UNCHECKED : ANIM_CHECKED_INDETERMINATE;\n default:\n // TRANSITION_STATE_INDETERMINATE\n // Handles TRANSITION_STATE_INIT\n return newState === TRANSITION_STATE_CHECKED ? ANIM_INDETERMINATE_CHECKED : ANIM_INDETERMINATE_UNCHECKED;\n }\n }\n\n private _updateCheckboxStateClasses(): void {\n // Since we can't use the ::slotted():checked ~ selector, simulating the same functionality with classes\n if (this._adapter.isChecked()) {\n this._adapter.setRootClass(CHECKBOX_CONSTANTS.classes.CHECKED);\n } else {\n this._adapter.removeRootClass(CHECKBOX_CONSTANTS.classes.CHECKED);\n }\n\n if (this._adapter.isIndeterminate()) {\n this._adapter.setRootClass(CHECKBOX_CONSTANTS.classes.INDETERMINATE);\n this._adapter.removeRootClass(CHECKBOX_CONSTANTS.classes.CHECKED);\n } else {\n this._adapter.removeRootClass(CHECKBOX_CONSTANTS.classes.INDETERMINATE);\n }\n }\n}\n", "import { addClass, getShadowElement, removeClass } from '@tylertech/forge-core';\nimport { BaseAdapter, IBaseAdapter } from '../core/base/base-adapter';\nimport { ForgeRipple, ForgeRippleAdapter, ForgeRippleCapableSurface, ForgeRippleFoundation } from '../ripple';\nimport { ICheckboxComponent } from './checkbox';\nimport { CHECKBOX_CONSTANTS } from './checkbox-constants';\n\ntype PropertyDescriptorGetter = (() => unknown) | undefined;\n\nexport interface ICheckboxAdapter extends IBaseAdapter {\n forceLayout(): void;\n isAttachedToDOM(): boolean;\n isDisabled(): boolean;\n isChecked(): boolean;\n isIndeterminate(): boolean;\n setRootClass(classes: string | string[]): void;\n removeRootClass(classes: string | string[]): void;\n setWrapperClass(classes: string | string[]): void;\n removeWrapperClass(classes: string | string[]): void;\n setDense(value: boolean): void;\n initialize(): void;\n disconnect(): void;\n // Sets attributes on the native checkbox element\n setNativeAttribute(qualifiedName: string, value: string): void;\n removeNativeAttribute(qualifiedName: string): void;\n listen(qualifiedName: string, callback: () => void, onRoot?: boolean): void;\n unlisten(qualifiedName: string, callback: () => void, onRoot?: boolean): void;\n installPropertyChangeHooks(callback: () => void): void;\n uninstallPropertyChangeHooks(): void;\n setInputAttributeObserver(listener: (name: string, value: string) => void): void;\n}\n\nexport class CheckboxAdapter extends BaseAdapter<ICheckboxComponent> implements ICheckboxAdapter, ForgeRippleCapableSurface {\n private _wrapperElement: HTMLElement;\n private _rootElement: HTMLElement;\n private _inputElement: HTMLInputElement;\n private _labelElement: HTMLLabelElement;\n private _inputFocusHandler: () => void;\n private _inputBlurHandler: () => void;\n private _inputMutationObserver: MutationObserver;\n private _rippleInstance: ForgeRipple;\n\n constructor(component: ICheckboxComponent) {\n super(component);\n }\n\n // ForgeRippleCapableSurface\n public get root(): Element {\n return this._rootElement;\n }\n\n public get unbounded(): boolean | undefined {\n return true;\n }\n\n public get disabled(): boolean | undefined {\n return this.isDisabled();\n }\n\n public initialize(): void {\n this._configureElements();\n this._attachInternalInputListeners();\n this._rippleInstance = this._createRipple();\n\n requestAnimationFrame(() => {\n if (this._rippleInstance) {\n this._rippleInstance.layout();\n }\n });\n }\n\n public setDense(value: boolean | undefined): void {\n if (value) {\n this._setHostAttribute(CHECKBOX_CONSTANTS.attributes.DENSE);\n this.setRootClass(CHECKBOX_CONSTANTS.classes.CHECKBOX_DENSE);\n } else {\n this._removeHostAttribute(CHECKBOX_CONSTANTS.attributes.DENSE);\n this.removeRootClass(CHECKBOX_CONSTANTS.classes.CHECKBOX_DENSE);\n }\n }\n\n public forceLayout(): void {\n this._rippleInstance.layout();\n }\n\n public isAttachedToDOM(): boolean {\n return Boolean(this._component.parentNode);\n }\n\n private _configureElements(): void {\n this._inputElement = this._component.querySelector(CHECKBOX_CONSTANTS.selectors.INPUT) as HTMLInputElement;\n this._wrapperElement = getShadowElement(this._component, CHECKBOX_CONSTANTS.selectors.WRAPPER);\n this._rootElement = getShadowElement(this._component, CHECKBOX_CONSTANTS.selectors.ROOT);\n this._labelElement = this._component.querySelector(CHECKBOX_CONSTANTS.selectors.LABEL) as HTMLLabelElement;\n\n if (this._labelElement) {\n this._labelElement.setAttribute(CHECKBOX_CONSTANTS.attributes.SLOT, CHECKBOX_CONSTANTS.selectors.LABEL);\n }\n if (this._inputElement) {\n this._inputElement.setAttribute(CHECKBOX_CONSTANTS.attributes.SLOT, CHECKBOX_CONSTANTS.selectors.INPUT);\n }\n addClass(CHECKBOX_CONSTANTS.classes.UPGRADED, this._rootElement);\n }\n\n private _setHostAttribute(name: string, value = ''): void {\n this._component.setAttribute(name, value);\n }\n\n private _removeHostAttribute(name: string): void {\n this._component.removeAttribute(name);\n }\n\n public disconnect(): void {\n if (this._labelElement) {\n this._labelElement.removeAttribute(CHECKBOX_CONSTANTS.attributes.SLOT);\n }\n\n if (this._inputElement) {\n this._inputElement.removeAttribute(CHECKBOX_CONSTANTS.attributes.SLOT);\n }\n\n if (this._inputMutationObserver) {\n this._inputMutationObserver.disconnect();\n }\n\n this._detachInternalInputListeners();\n\n if (this._rippleInstance) {\n this._rippleInstance.destroy();\n }\n }\n\n public setRootClass(classes: string | string[]): void {\n if (this._rootElement) {\n addClass(classes, this._rootElement);\n }\n }\n\n public removeRootClass(classes: string | string[]): void {\n if (this._rootElement) {\n removeClass(classes, this._rootElement);\n }\n }\n\n public setWrapperClass(classes: string | string[]): void {\n if (this._wrapperElement) {\n addClass(classes, this._wrapperElement);\n }\n }\n\n public removeWrapperClass(classes: string | string[]): void {\n if (this._wrapperElement) {\n removeClass(classes, this._wrapperElement);\n }\n }\n\n public setNativeAttribute(qualifiedName: string, value: string): void {\n this._inputElement.setAttribute(qualifiedName, value);\n }\n\n public isDisabled(): boolean {\n return this._inputElement.disabled;\n }\n\n public isChecked(): boolean {\n return this._inputElement && this._inputElement.checked;\n }\n public isIndeterminate(): boolean {\n return this._inputElement && this._inputElement.indeterminate;\n }\n\n public removeNativeAttribute(qualifiedName: string): void {\n this._inputElement.removeAttribute(qualifiedName);\n }\n\n public installPropertyChangeHooks(callback: () => void): void {\n const nativeCb = this._inputElement;\n const cbProto = Object.getPrototypeOf(nativeCb);\n\n CHECKBOX_CONSTANTS.CB_PROTO_PROPS.forEach(controlState => {\n const desc = Object.getOwnPropertyDescriptor(cbProto, controlState);\n // We have to check for this descriptor, since some browsers (Safari) don't support its return.\n // See: https://bugs.webkit.org/show_bug.cgi?id=49739\n if (!this._validDescriptor(desc)) {\n return;\n }\n\n // Type cast is needed for compatibility with Closure Compiler.\n const nativeGetter = (desc as { get: PropertyDescriptorGetter }).get;\n\n if (desc) {\n const nativeCbDesc = {\n configurable: desc.configurable,\n enumerable: desc.enumerable,\n get: nativeGetter,\n set: (state: boolean) => {\n desc.set?.call(nativeCb, state);\n callback();\n }\n };\n Object.defineProperty(nativeCb, controlState, nativeCbDesc);\n }\n });\n }\n\n public listen(qualifiedName: string, callback: () => void, onRoot = false): void {\n if (onRoot) {\n this._rootElement.addEventListener(qualifiedName, callback);\n } else {\n this._inputElement.addEventListener(qualifiedName, callback);\n }\n }\n\n public unlisten(qualifiedName: string, callback: () => void, onRoot = false): void {\n if (!this._inputElement) {\n return;\n }\n\n if (onRoot) {\n this._rootElement.removeEventListener(qualifiedName, callback);\n } else {\n this._inputElement.removeEventListener(qualifiedName, callback);\n }\n }\n\n public uninstallPropertyChangeHooks(): void {\n if (!this._inputElement) {\n return;\n }\n\n const nativeCb = this._inputElement;\n const cbProto = Object.getPrototypeOf(nativeCb);\n\n CHECKBOX_CONSTANTS.CB_PROTO_PROPS.forEach(controlState => {\n const desc = Object.getOwnPropertyDescriptor(cbProto, controlState);\n if (!this._validDescriptor(desc)) {\n return;\n }\n Object.defineProperty(nativeCb, controlState, desc);\n });\n }\n\n public setInputAttributeObserver(listener: (name: string, value: string) => void): void {\n this._inputMutationObserver = new MutationObserver(mutations => {\n for (const mutation of mutations) {\n if (mutation.attributeName) {\n listener(mutation.attributeName, this._inputElement.getAttribute(mutation.attributeName) as string);\n }\n }\n });\n this._inputMutationObserver.observe(this._inputElement, {\n attributes: true,\n attributeFilter: ['disabled', 'checked']\n });\n }\n\n private _validDescriptor(inputPropDesc: PropertyDescriptor | undefined): inputPropDesc is PropertyDescriptor {\n return !!inputPropDesc && typeof inputPropDesc.set === 'function';\n }\n\n private _attachInternalInputListeners(): void {\n this._inputFocusHandler = () => this._handleInputFocusListener();\n this._inputBlurHandler = () => this._handleInputBlurListener();\n this._inputElement.addEventListener('focus', this._inputFocusHandler);\n this._inputElement.addEventListener('blur', this._inputBlurHandler);\n }\n\n private _detachInternalInputListeners(): void {\n removeEventListener('focus', this._inputFocusHandler);\n removeEventListener('blur', this._inputBlurHandler);\n }\n\n private _handleInputFocusListener(): void {\n addClass(CHECKBOX_CONSTANTS.classes.FOCUSED, this._rootElement);\n }\n\n private _handleInputBlurListener(): void {\n removeClass(CHECKBOX_CONSTANTS.classes.FOCUSED, this._rootElement);\n }\n\n private _createRipple(): ForgeRipple {\n const adapter: ForgeRippleAdapter = {\n ...ForgeRipple.createAdapter(this),\n deregisterInteractionHandler: (evtType, handler) => this._inputElement.removeEventListener(evtType, handler, { passive: true } as AddEventListenerOptions),\n isSurfaceActive: () => this._inputElement.matches(':active'),\n isUnbounded: () => Boolean(this.unbounded),\n registerInteractionHandler: (evtType, handler) => this._inputElement.addEventListener(evtType, handler, { passive: true }),\n isSurfaceDisabled: () => this._inputElement.disabled,\n addClass: (className: string) => addClass(className, this._rootElement),\n removeClass: (className: string) => removeClass(className, this._rootElement),\n updateCssVariable: (varName: string, value: string | null) => this._rootElement.style.setProperty(varName, value)\n };\n const ripple = new ForgeRipple(this._rootElement, new ForgeRippleFoundation(adapter));\n return ripple;\n }\n}\n", "import { CustomElement, attachShadowTemplate, coerceBoolean, FoundationProperty } from '@tylertech/forge-core';\nimport { CHECKBOX_CONSTANTS } from './checkbox-constants';\nimport { CheckboxFoundation } from './checkbox-foundation';\nimport { CheckboxAdapter } from './checkbox-adapter';\nimport { BaseComponent, IBaseComponent } from '../core/base/base-component';\n\nconst template = '<template><div class=\\\"forge-checkbox-wrapper forge-form-field\\\" part=\\\"root\\\"><div class=\\\"mdc-checkbox\\\" part=\\\"container\\\"><slot name=\\\"input\\\"></slot><div class=\\\"mdc-checkbox__background\\\" part=\\\"background\\\"><svg class=\\\"mdc-checkbox__checkmark\\\" viewBox=\\\"0 0 24 24\\\" part=\\\"checkmark-svg\\\"><path class=\\\"mdc-checkbox__checkmark-path\\\" fill=\\\"none\\\" d=\\\"M1.73,12.91 8.1,19.28 22.79,4.59\\\" part=\\\"checkmark-path\\\"></path></svg><div class=\\\"mdc-checkbox__mixedmark\\\" part=\\\"mixedmark\\\"></div></div><div class=\\\"mdc-checkbox__ripple\\\" part=\\\"ripple-container\\\"></div></div><slot name=\\\"label\\\"></slot></div></template>';\nconst styles = '.mdc-checkbox{padding:calc((40px - 18px)/ 2);padding:calc((var(--mdc-checkbox-ripple-size,40px) - 18px)/ 2);margin:calc((40px - 40px)/ 2);margin:calc((var(--mdc-checkbox-ripple-size,40px) - var(--mdc-checkbox-ripple-size,40px))/ 2)}.mdc-checkbox .mdc-checkbox__ripple::after,.mdc-checkbox .mdc-checkbox__ripple::before{background-color:#000;background-color:var(--mdc-ripple-color,var(--mdc-theme-on-surface,#000))}.mdc-checkbox.mdc-ripple-surface--hover .mdc-checkbox__ripple::before,.mdc-checkbox:hover .mdc-checkbox__ripple::before{opacity:.04;opacity:var(--mdc-ripple-hover-opacity, .04)}.mdc-checkbox.mdc-ripple-upgraded--background-focused .mdc-checkbox__ripple::before,.mdc-checkbox:not(.mdc-ripple-upgraded):focus .mdc-checkbox__ripple::before{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.12;opacity:var(--mdc-ripple-focus-opacity, .12)}.mdc-checkbox:not(.mdc-ripple-upgraded) .mdc-checkbox__ripple::after{-webkit-transition:opacity 150ms linear;transition:opacity 150ms linear}.mdc-checkbox:not(.mdc-ripple-upgraded):active .mdc-checkbox__ripple::after{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.12;opacity:var(--mdc-ripple-press-opacity, .12)}.mdc-checkbox.mdc-ripple-upgraded{--mdc-ripple-fg-opacity:var(--mdc-ripple-press-opacity, 0.12)}.mdc-checkbox.mdc-checkbox--selected .mdc-checkbox__ripple::after,.mdc-checkbox.mdc-checkbox--selected .mdc-checkbox__ripple::before{background-color:#3d5afe;background-color:var(--forge-theme-tertiary,#3d5afe)}.mdc-checkbox.mdc-checkbox--selected.mdc-ripple-surface--hover .mdc-checkbox__ripple::before,.mdc-checkbox.mdc-checkbox--selected:hover .mdc-checkbox__ripple::before{opacity:.04;opacity:var(--mdc-ripple-hover-opacity, .04)}.mdc-checkbox.mdc-checkbox--selected.mdc-ripple-upgraded--background-focused .mdc-checkbox__ripple::before,.mdc-checkbox.mdc-checkbox--selected:not(.mdc-ripple-upgraded):focus .mdc-checkbox__ripple::before{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.12;opacity:var(--mdc-ripple-focus-opacity, .12)}.mdc-checkbox.mdc-checkbox--selected:not(.mdc-ripple-upgraded) .mdc-checkbox__ripple::after{-webkit-transition:opacity 150ms linear;transition:opacity 150ms linear}.mdc-checkbox.mdc-checkbox--selected:not(.mdc-ripple-upgraded):active .mdc-checkbox__ripple::after{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.12;opacity:var(--mdc-ripple-press-opacity, .12)}.mdc-checkbox.mdc-checkbox--selected.mdc-ripple-upgraded{--mdc-ripple-fg-opacity:var(--mdc-ripple-press-opacity, 0.12)}.mdc-checkbox.mdc-ripple-upgraded--background-focused.mdc-checkbox--selected .mdc-checkbox__ripple::after,.mdc-checkbox.mdc-ripple-upgraded--background-focused.mdc-checkbox--selected .mdc-checkbox__ripple::before{background-color:#3d5afe;background-color:var(--forge-theme-tertiary,#3d5afe)}.mdc-checkbox .mdc-checkbox__background{top:calc((40px - 18px)/ 2);top:calc((var(--mdc-checkbox-ripple-size,40px) - 18px)/ 2);left:calc((40px - 18px)/ 2);left:calc((var(--mdc-checkbox-ripple-size,40px) - 18px)/ 2)}.mdc-checkbox ::slotted(input[type=checkbox]){top:calc((40px - 40px)/ 2);top:calc((var(--mdc-checkbox-ripple-size,40px) - var(--mdc-checkbox-ripple-size,40px))/ 2);right:calc((40px - 40px)/ 2);right:calc((var(--mdc-checkbox-ripple-size,40px) - var(--mdc-checkbox-ripple-size,40px))/ 2);left:calc((40px - 40px)/ 2);left:calc((var(--mdc-checkbox-ripple-size,40px) - var(--mdc-checkbox-ripple-size,40px))/ 2);width:40px;width:var(--mdc-checkbox-ripple-size,40px);height:40px;height:var(--mdc-checkbox-ripple-size,40px)}.mdc-checkbox.forge-checkbox--enabled:not(.forge-checkbox--checked):not(.forge-checkbox--indeterminate) .mdc-checkbox__background{border-color:#000;border-color:var(--mdc-theme-text-secondary-on-background,#000);background-color:transparent}.mdc-checkbox.forge-checkbox--enabled.forge-checkbox--checked .mdc-checkbox__background,.mdc-checkbox.forge-checkbox--enabled.forge-checkbox--indeterminate .mdc-checkbox__background{border-color:#3d5afe;border-color:var(--mdc-checkbox-checked-color,var(--forge-theme-tertiary,#3d5afe));background-color:#3d5afe;background-color:var(--mdc-checkbox-checked-color,var(--forge-theme-tertiary,#3d5afe))}@-webkit-keyframes mdc-checkbox-fade-in-background-FF000000FF3D5AFE00000000FF3D5AFE{0%{border-color:#000;border-color:var(--mdc-theme-text-secondary-on-background,#000);background-color:transparent}50%{border-color:#3d5afe;border-color:var(--mdc-checkbox-checked-color,var(--forge-theme-tertiary,#3d5afe));background-color:#3d5afe;background-color:var(--mdc-checkbox-checked-color,var(--forge-theme-tertiary,#3d5afe))}}@keyframes mdc-checkbox-fade-in-background-FF000000FF3D5AFE00000000FF3D5AFE{0%{border-color:#000;border-color:var(--mdc-theme-text-secondary-on-background,#000);background-color:transparent}50%{border-color:#3d5afe;border-color:var(--mdc-checkbox-checked-color,var(--forge-theme-tertiary,#3d5afe));background-color:#3d5afe;background-color:var(--mdc-checkbox-checked-color,var(--forge-theme-tertiary,#3d5afe))}}@-webkit-keyframes mdc-checkbox-fade-out-background-FF000000FF3D5AFE00000000FF3D5AFE{0%,80%{border-color:#3d5afe;border-color:var(--mdc-checkbox-checked-color,var(--forge-theme-tertiary,#3d5afe));background-color:#3d5afe;background-color:var(--mdc-checkbox-checked-color,var(--forge-theme-tertiary,#3d5afe))}100%{border-color:#000;border-color:var(--mdc-theme-text-secondary-on-background,#000);background-color:transparent}}@keyframes mdc-checkbox-fade-out-background-FF000000FF3D5AFE00000000FF3D5AFE{0%,80%{border-color:#3d5afe;border-color:var(--mdc-checkbox-checked-color,var(--forge-theme-tertiary,#3d5afe));background-color:#3d5afe;background-color:var(--mdc-checkbox-checked-color,var(--forge-theme-tertiary,#3d5afe))}100%{border-color:#000;border-color:var(--mdc-theme-text-secondary-on-background,#000);background-color:transparent}}.mdc-checkbox.mdc-checkbox--anim-unchecked-checked.forge-checkbox--enabled .mdc-checkbox__background,.mdc-checkbox.mdc-checkbox--anim-unchecked-indeterminate.forge-checkbox--enabled .mdc-checkbox__background{-webkit-animation-name:mdc-checkbox-fade-in-background-FF000000FF3D5AFE00000000FF3D5AFE;animation-name:mdc-checkbox-fade-in-background-FF000000FF3D5AFE00000000FF3D5AFE}.mdc-checkbox.mdc-checkbox--anim-checked-unchecked.forge-checkbox--enabled .mdc-checkbox__background,.mdc-checkbox.mdc-checkbox--anim-indeterminate-unchecked.forge-checkbox--enabled .mdc-checkbox__background{-webkit-animation-name:mdc-checkbox-fade-out-background-FF000000FF3D5AFE00000000FF3D5AFE;animation-name:mdc-checkbox-fade-out-background-FF000000FF3D5AFE00000000FF3D5AFE}.mdc-checkbox.mdc-checkbox--disabled:not(.forge-checkbox--checked):not(.forge-checkbox--indeterminate) .mdc-checkbox__background{border-color:#000;border-color:var(--forge-theme-form-field-icon-disabled-on-background,#000);background-color:transparent}.mdc-checkbox.mdc-checkbox--disabled.forge-checkbox--checked .mdc-checkbox__background,.mdc-checkbox.mdc-checkbox--disabled.forge-checkbox--indeterminate .mdc-checkbox__background{border-color:transparent;background-color:#000;background-color:var(--forge-theme-form-field-icon-disabled-on-background,#000)}.mdc-checkbox.forge-checkbox--enabled .mdc-checkbox__background .mdc-checkbox__checkmark{color:rgba(255,255,255,.87);color:var(--mdc-theme-text-primary-on-dark,rgba(255,255,255,.87))}.mdc-checkbox.forge-checkbox--enabled .mdc-checkbox__background .mdc-checkbox__mixedmark{border-color:rgba(255,255,255,.87);border-color:var(--mdc-theme-text-primary-on-dark,rgba(255,255,255,.87))}.mdc-checkbox.mdc-checkbox--disabled .mdc-checkbox__background .mdc-checkbox__checkmark{color:rgba(255,255,255,.87);color:var(--mdc-theme-text-primary-on-dark,rgba(255,255,255,.87))}.mdc-checkbox.mdc-checkbox--disabled .mdc-checkbox__background .mdc-checkbox__mixedmark{border-color:rgba(255,255,255,.87);border-color:var(--mdc-theme-text-primary-on-dark,rgba(255,255,255,.87))}@-webkit-keyframes mdc-checkbox-unchecked-checked-checkmark-path{0%,50%{stroke-dashoffset:29.7833385}50%{-webkit-animation-timing-function:cubic-bezier(0,0,0.2,1);animation-timing-function:cubic-bezier(0,0,0.2,1)}100%{stroke-dashoffset:0}}@keyframes mdc-checkbox-unchecked-checked-checkmark-path{0%,50%{stroke-dashoffset:29.7833385}50%{-webkit-animation-timing-function:cubic-bezier(0,0,0.2,1);animation-timing-function:cubic-bezier(0,0,0.2,1)}100%{stroke-dashoffset:0}}@-webkit-keyframes mdc-checkbox-unchecked-indeterminate-mixedmark{0%,68.2%{-webkit-transform:scaleX(0);transform:scaleX(0)}68.2%{-webkit-animation-timing-function:cubic-bezier(0,0,0,1);animation-timing-function:cubic-bezier(0,0,0,1)}100%{-webkit-transform:scaleX(1);transform:scaleX(1)}}@keyframes mdc-checkbox-unchecked-indeterminate-mixedmark{0%,68.2%{-webkit-transform:scaleX(0);transform:scaleX(0)}68.2%{-webkit-animation-timing-function:cubic-bezier(0,0,0,1);animation-timing-function:cubic-bezier(0,0,0,1)}100%{-webkit-transform:scaleX(1);transform:scaleX(1)}}@-webkit-keyframes mdc-checkbox-checked-unchecked-checkmark-path{from{-webkit-animation-timing-function:cubic-bezier(0.4,0,1,1);animation-timing-function:cubic-bezier(0.4,0,1,1);opacity:1;stroke-dashoffset:0}to{opacity:0;stroke-dashoffset:-29.7833385}}@keyframes mdc-checkbox-checked-unchecked-checkmark-path{from{-webkit-animation-timing-function:cubic-bezier(0.4,0,1,1);animation-timing-function:cubic-bezier(0.4,0,1,1);opacity:1;stroke-dashoffset:0}to{opacity:0;stroke-dashoffset:-29.7833385}}@-webkit-keyframes mdc-checkbox-checked-indeterminate-checkmark{from{-webkit-animation-timing-function:cubic-bezier(0,0,0.2,1);animation-timing-function:cubic-bezier(0,0,0.2,1);-webkit-transform:rotate(0);transform:rotate(0);opacity:1}to{-webkit-transform:rotate(45deg);transform:rotate(45deg);opacity:0}}@keyframes mdc-checkbox-checked-indeterminate-checkmark{from{-webkit-animation-timing-function:cubic-bezier(0,0,0.2,1);animation-timing-function:cubic-bezier(0,0,0.2,1);-webkit-transform:rotate(0);transform:rotate(0);opacity:1}to{-webkit-transform:rotate(45deg);transform:rotate(45deg);opacity:0}}@-webkit-keyframes mdc-checkbox-indeterminate-checked-checkmark{from{-webkit-animation-timing-function:cubic-bezier(0.14,0,0,1);animation-timing-function:cubic-bezier(0.14,0,0,1);-webkit-transform:rotate(45deg);transform:rotate(45deg);opacity:0}to{-webkit-transform:rotate(360deg);transform:rotate(360deg);opacity:1}}@keyframes mdc-checkbox-indeterminate-checked-checkmark{from{-webkit-animation-timing-function:cubic-bezier(0.14,0,0,1);animation-timing-function:cubic-bezier(0.14,0,0,1);-webkit-transform:rotate(45deg);transform:rotate(45deg);opacity:0}to{-webkit-transform:rotate(360deg);transform:rotate(360deg);opacity:1}}@-webkit-keyframes mdc-checkbox-checked-indeterminate-mixedmark{from{-webkit-animation-timing-function:mdc-animation-deceleration-curve-timing-function;animation-timing-function:mdc-animation-deceleration-curve-timing-function;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);opacity:0}to{-webkit-transform:rotate(0);transform:rotate(0);opacity:1}}@keyframes mdc-checkbox-checked-indeterminate-mixedmark{from{-webkit-animation-timing-function:mdc-animation-deceleration-curve-timing-function;animation-timing-function:mdc-animation-deceleration-curve-timing-function;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);opacity:0}to{-webkit-transform:rotate(0);transform:rotate(0);opacity:1}}@-webkit-keyframes mdc-checkbox-indeterminate-checked-mixedmark{from{-webkit-animation-timing-function:cubic-bezier(0.14,0,0,1);animation-timing-function:cubic-bezier(0.14,0,0,1);-webkit-transform:rotate(0);transform:rotate(0);opacity:1}to{-webkit-transform:rotate(315deg);transform:rotate(315deg);opacity:0}}@keyframes mdc-checkbox-indeterminate-checked-mixedmark{from{-webkit-animation-timing-function:cubic-bezier(0.14,0,0,1);animation-timing-function:cubic-bezier(0.14,0,0,1);-webkit-transform:rotate(0);transform:rotate(0);opacity:1}to{-webkit-transform:rotate(315deg);transform:rotate(315deg);opacity:0}}@-webkit-keyframes mdc-checkbox-indeterminate-unchecked-mixedmark{0%{-webkit-animation-timing-function:linear;animation-timing-function:linear;-webkit-transform:scaleX(1);transform:scaleX(1);opacity:1}100%,32.8%{-webkit-transform:scaleX(0);transform:scaleX(0);opacity:0}}@keyframes mdc-checkbox-indeterminate-unchecked-mixedmark{0%{-webkit-animation-timing-function:linear;animation-timing-function:linear;-webkit-transform:scaleX(1);transform:scaleX(1);opacity:1}100%,32.8%{-webkit-transform:scaleX(0);transform:scaleX(0);opacity:0}}.mdc-checkbox{display:inline-block;position:relative;-webkit-box-flex:0;flex:0 0 18px;-webkit-box-sizing:content-box;box-sizing:content-box;width:18px;height:18px;line-height:0;white-space:nowrap;cursor:pointer;vertical-align:bottom}.mdc-checkbox--disabled{cursor:default;pointer-events:none}.mdc-checkbox__background{display:-webkit-inline-box;display:inline-flex;position:absolute;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;-webkit-box-sizing:border-box;box-sizing:border-box;width:18px;height:18px;border:2px solid currentColor;border-radius:2px;background-color:transparent;pointer-events:none;will-change:background-color,border-color;-webkit-transition:background-color 90ms 0s cubic-bezier(.4, 0, .6, 1),border-color 90ms 0s cubic-bezier(.4, 0, .6, 1);transition:background-color 90ms 0s cubic-bezier(.4, 0, .6, 1),border-color 90ms 0s cubic-bezier(.4, 0, .6, 1)}.mdc-checkbox__checkmark{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;opacity:0;-webkit-transition:opacity 180ms 0s cubic-bezier(.4, 0, .6, 1);transition:opacity 180ms 0s cubic-bezier(.4, 0, .6, 1)}.mdc-checkbox--upgraded .mdc-checkbox__checkmark{opacity:1}.mdc-checkbox__checkmark-path{-webkit-transition:stroke-dashoffset 180ms 0s cubic-bezier(.4, 0, .6, 1);transition:stroke-dashoffset 180ms 0s cubic-bezier(.4, 0, .6, 1);stroke:currentColor;stroke-width:3.12px;stroke-dashoffset:29.7833385;stroke-dasharray:29.7833385}.mdc-checkbox__mixedmark{width:100%;height:0;-webkit-transform:scaleX(0) rotate(0);transform:scaleX(0) rotate(0);border-width:1px;border-style:solid;opacity:0;-webkit-transition:opacity 90ms 0s cubic-bezier(.4, 0, .6, 1),-webkit-transform 90ms 0s cubic-bezier(.4, 0, .6, 1);transition:opacity 90ms 0s cubic-bezier(.4, 0, .6, 1),-webkit-transform 90ms 0s cubic-bezier(.4, 0, .6, 1);transition:opacity 90ms 0s cubic-bezier(.4, 0, .6, 1),transform 90ms 0s cubic-bezier(.4, 0, .6, 1);transition:opacity 90ms 0s cubic-bezier(.4, 0, .6, 1),transform 90ms 0s cubic-bezier(.4, 0, .6, 1),-webkit-transform 90ms 0s cubic-bezier(.4, 0, .6, 1)}.mdc-checkbox--anim-checked-unchecked .mdc-checkbox__background,.mdc-checkbox--anim-indeterminate-unchecked .mdc-checkbox__background,.mdc-checkbox--anim-unchecked-checked .mdc-checkbox__background,.mdc-checkbox--anim-unchecked-indeterminate .mdc-checkbox__background{-webkit-animation-duration:180ms;animation-duration:180ms;-webkit-animation-timing-function:linear;animation-timing-function:linear}.mdc-checkbox--anim-unchecked-checked .mdc-checkbox__checkmark-path{-webkit-animation:mdc-checkbox-unchecked-checked-checkmark-path 180ms linear 0s;animation:mdc-checkbox-unchecked-checked-checkmark-path 180ms linear 0s;-webkit-transition:none;transition:none}.mdc-checkbox--anim-unchecked-indeterminate .mdc-checkbox__mixedmark{-webkit-animation:mdc-checkbox-unchecked-indeterminate-mixedmark 90ms linear 0s;animation:mdc-checkbox-unchecked-indeterminate-mixedmark 90ms linear 0s;-webkit-transition:none;transition:none}.mdc-checkbox--anim-checked-unchecked .mdc-checkbox__checkmark-path{-webkit-animation:mdc-checkbox-checked-unchecked-checkmark-path 90ms linear 0s;animation:mdc-checkbox-checked-unchecked-checkmark-path 90ms linear 0s;-webkit-transition:none;transition:none}.mdc-checkbox--anim-checked-indeterminate .mdc-checkbox__checkmark{-webkit-animation:mdc-checkbox-checked-indeterminate-checkmark 90ms linear 0s;animation:mdc-checkbox-checked-indeterminate-checkmark 90ms linear 0s;-webkit-transition:none;transition:none}.mdc-checkbox--anim-checked-indeterminate .mdc-checkbox__mixedmark{-webkit-animation:mdc-checkbox-checked-indeterminate-mixedmark 90ms linear 0s;animation:mdc-checkbox-checked-indeterminate-mixedmark 90ms linear 0s;-webkit-transition:none;transition:none}.mdc-checkbox--anim-indeterminate-checked .mdc-checkbox__checkmark{-webkit-animation:mdc-checkbox-indeterminate-checked-checkmark .5s linear 0s;animation:mdc-checkbox-indeterminate-checked-checkmark .5s linear 0s;-webkit-transition:none;transition:none}.mdc-checkbox--anim-indeterminate-checked .mdc-checkbox__mixedmark{-webkit-animation:mdc-checkbox-indeterminate-checked-mixedmark .5s linear 0s;animation:mdc-checkbox-indeterminate-checked-mixedmark .5s linear 0s;-webkit-transition:none;transition:none}.mdc-checkbox--anim-indeterminate-unchecked .mdc-checkbox__mixedmark{-webkit-animation:mdc-checkbox-indeterminate-unchecked-mixedmark .3s linear 0s;animation:mdc-checkbox-indeterminate-unchecked-mixedmark .3s linear 0s;-webkit-transition:none;transition:none}.forge-checkbox--checked .mdc-checkbox__background,.forge-checkbox--indeterminate .mdc-checkbox__background{-webkit-transition:border-color 90ms 0s cubic-bezier(0, 0, .2, 1),background-color 90ms 0s cubic-bezier(0, 0, .2, 1);transition:border-color 90ms 0s cubic-bezier(0, 0, .2, 1),background-color 90ms 0s cubic-bezier(0, 0, .2, 1)}.forge-checkbox--checked .mdc-checkbox__background .mdc-checkbox__checkmark-path,.forge-checkbox--indeterminate .mdc-checkbox__background .mdc-checkbox__checkmark-path{stroke-dashoffset:0}::slotted(input[type=checkbox]){position:absolute;margin:0;padding:0;opacity:0;cursor:inherit}.forge-checkbox--disabled ::slotted(input[type=checkbox]){cursor:default;pointer-events:none}.forge-checkbox--checked .mdc-checkbox__background .mdc-checkbox__checkmark{-webkit-transition:opacity 180ms 0s cubic-bezier(0, 0, .2, 1),-webkit-transform 180ms 0s cubic-bezier(0, 0, .2, 1);transition:opacity 180ms 0s cubic-bezier(0, 0, .2, 1),-webkit-transform 180ms 0s cubic-bezier(0, 0, .2, 1);transition:opacity 180ms 0s cubic-bezier(0, 0, .2, 1),transform 180ms 0s cubic-bezier(0, 0, .2, 1);transition:opacity 180ms 0s cubic-bezier(0, 0, .2, 1),transform 180ms 0s cubic-bezier(0, 0, .2, 1),-webkit-transform 180ms 0s cubic-bezier(0, 0, .2, 1);opacity:1}.forge-checkbox--checked .mdc-checkbox__background .mdc-checkbox__mixedmark{-webkit-transform:scaleX(1) rotate(-45deg);transform:scaleX(1) rotate(-45deg)}.forge-checkbox--indeterminate .mdc-checkbox__background .mdc-checkbox__checkmark{-webkit-transform:rotate(45deg);transform:rotate(45deg);opacity:0;-webkit-transition:opacity 90ms 0s cubic-bezier(.4, 0, .6, 1),-webkit-transform 90ms 0s cubic-bezier(.4, 0, .6, 1);transition:opacity 90ms 0s cubic-bezier(.4, 0, .6, 1),-webkit-transform 90ms 0s cubic-bezier(.4, 0, .6, 1);transition:opacity 90ms 0s cubic-bezier(.4, 0, .6, 1),transform 90ms 0s cubic-bezier(.4, 0, .6, 1);transition:opacity 90ms 0s cubic-bezier(.4, 0, .6, 1),transform 90ms 0s cubic-bezier(.4, 0, .6, 1),-webkit-transform 90ms 0s cubic-bezier(.4, 0, .6, 1)}.forge-checkbox--indeterminate .mdc-checkbox__background .mdc-checkbox__mixedmark{-webkit-transform:scaleX(1) rotate(0);transform:scaleX(1) rotate(0);opacity:1}.mdc-checkbox.mdc-checkbox--upgraded .mdc-checkbox__background,.mdc-checkbox.mdc-checkbox--upgraded .mdc-checkbox__checkmark,.mdc-checkbox.mdc-checkbox--upgraded .mdc-checkbox__checkmark-path,.mdc-checkbox.mdc-checkbox--upgraded .mdc-checkbox__mixedmark{-webkit-transition:none;transition:none}@-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-checkbox{--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}.mdc-checkbox .mdc-checkbox__ripple::after,.mdc-checkbox .mdc-checkbox__ripple::before{position:absolute;border-radius:50%;opacity:0;pointer-events:none;content:\\\"\\\"}.mdc-checkbox .mdc-checkbox__ripple::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-checkbox .mdc-checkbox__ripple::after{z-index:0;z-index:var(--mdc-ripple-z-index,0)}.mdc-checkbox.mdc-ripple-upgraded .mdc-checkbox__ripple::before{-webkit-transform:scale(var(--mdc-ripple-fg-scale,1));transform:scale(var(--mdc-ripple-fg-scale,1))}.mdc-checkbox.mdc-ripple-upgraded .mdc-checkbox__ripple::after{top:0;left:0;-webkit-transform:scale(0);transform:scale(0);-webkit-transform-origin:center center;transform-origin:center center}.mdc-checkbox.mdc-ripple-upgraded--unbounded .mdc-checkbox__ripple::after{top:var(--mdc-ripple-top,0);left:var(--mdc-ripple-left,0)}.mdc-checkbox.mdc-ripple-upgraded--foreground-activation .mdc-checkbox__ripple::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-checkbox.mdc-ripple-upgraded--foreground-deactivation .mdc-checkbox__ripple::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-checkbox .mdc-checkbox__ripple::after,.mdc-checkbox .mdc-checkbox__ripple::before{top:calc(50% - 50%);left:calc(50% - 50%);width:100%;height:100%}.mdc-checkbox.mdc-ripple-upgraded .mdc-checkbox__ripple::after,.mdc-checkbox.mdc-ripple-upgraded .mdc-checkbox__ripple::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-checkbox.mdc-ripple-upgraded .mdc-checkbox__ripple::after{width:var(--mdc-ripple-fg-size,100%);height:var(--mdc-ripple-fg-size,100%)}.mdc-checkbox{z-index:0}.mdc-checkbox .mdc-checkbox__ripple::after,.mdc-checkbox .mdc-checkbox__ripple::before{z-index:-1;z-index:var(--mdc-ripple-z-index,-1)}.mdc-checkbox__ripple{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.forge-checkbox--dense{padding:calc((28px - 18px)/ 2);padding:calc((var(--mdc-checkbox-ripple-size,28px) - 18px)/ 2);margin:calc((28px - 28px)/ 2);margin:calc((var(--mdc-checkbox-ripple-size,28px) - var(--mdc-checkbox-ripple-size,28px))/ 2)}.forge-checkbox--dense .mdc-checkbox__background{top:calc((28px - 18px)/ 2);top:calc((var(--mdc-checkbox-ripple-size,28px) - 18px)/ 2);left:calc((28px - 18px)/ 2);left:calc((var(--mdc-checkbox-ripple-size,28px) - 18px)/ 2)}.forge-checkbox--dense ::slotted(input[type=checkbox]){top:calc((28px - 28px)/ 2);top:calc((var(--mdc-checkbox-ripple-size,28px) - var(--mdc-checkbox-ripple-size,28px))/ 2);right:calc((28px - 28px)/ 2);right:calc((var(--mdc-checkbox-ripple-size,28px) - var(--mdc-checkbox-ripple-size,28px))/ 2);left:calc((28px - 28px)/ 2);left:calc((var(--mdc-checkbox-ripple-size,28px) - var(--mdc-checkbox-ripple-size,28px))/ 2);width:28px;width:var(--mdc-checkbox-ripple-size,28px);height:28px;height:var(--mdc-checkbox-ripple-size,28px)}.forge-checkbox-wrapper--disabled{cursor:not-allowed}.forge-checkbox-wrapper--disabled ::slotted(label){cursor:not-allowed}.mdc-checkbox--disabled+::slotted(label){color:rgba(0,0,0,.38);color:var(--forge-theme-label-disabled-on-background,rgba(0,0,0,.38))}.forge-form-field{-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);color:rgba(0,0,0,.87);color:var(--mdc-theme-text-primary-on-background,rgba(0,0,0,.87));display:-webkit-inline-box;display:inline-flex;-webkit-box-align:center;align-items:center;vertical-align:middle}.forge-form-field ::slotted([slot=label]){-webkit-box-ordinal-group:1;order:0;margin-right:auto;padding-left:4px}.forge-form-field forge-switch~::slotted([slot=label]){padding-left:8px}.forge-form-field--align-end ::slotted([slot=label]){-webkit-box-ordinal-group:0;order:-1;margin-left:auto;padding-right:4px}:host{display:inline-block}:host([hidden]){display:none}';\n\nexport interface ICheckboxComponent extends IBaseComponent {\n dense: boolean;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'forge-checkbox': ICheckboxComponent;\n }\n}\n\n/**\n * The custom element class behind the `<forge-checkbox>` element.\n */\n@CustomElement({\n name: CHECKBOX_CONSTANTS.elementName\n})\nexport class CheckboxComponent extends BaseComponent implements ICheckboxComponent {\n public static get observedAttributes(): string[] {\n return [CHECKBOX_CONSTANTS.attributes.DENSE];\n }\n\n private _foundation: CheckboxFoundation;\n\n constructor() {\n super();\n attachShadowTemplate(this, template, styles);\n this._foundation = new CheckboxFoundation(new CheckboxAdapter(this));\n }\n\n public async connectedCallback(): Promise<void> {\n await this._ensureInputElement();\n this._foundation.connect();\n }\n\n public attributeChangedCallback(name: string, oldValue: string, newValue: string): void {\n switch (name) {\n case CHECKBOX_CONSTANTS.attributes.DENSE:\n this.dense = coerceBoolean(newValue);\n break;\n }\n }\n\n public disconnectedCallback(): void {\n this._foundation.disconnect();\n }\n\n /** Gets or sets whether or not the checkbox is dense */\n @FoundationProperty()\n public dense: boolean;\n\n private async _ensureInputElement(): Promise<Element> {\n // Not using core function ensureChild because it was not selecting the input properly\n return new Promise<Element>(resolve => {\n const element = this.querySelector('input');\n if (element) {\n resolve(element);\n }\n\n const observer = new MutationObserver(changes => {\n const hasAddedNodes = changes.reduce((prev, curr) => prev + curr.addedNodes.length, 0) > 0;\n if (hasAddedNodes) {\n const foundElement = this.querySelector('input');\n if (foundElement) {\n observer.disconnect();\n resolve(foundElement);\n }\n }\n });\n observer.observe(this, { childList: true, subtree: true });\n });\n }\n}\n", "import { FormFieldComponentDelegate, IFormFieldComponentDelegateOptions } from '../core';\nimport { IBaseComponentDelegateConfig } from '../core/delegates/base-component-delegate';\nimport { ICheckboxComponent } from './checkbox';\nimport { CHECKBOX_CONSTANTS } from './checkbox-constants';\n\nexport type CheckboxComponentDelegateProps = Partial<ICheckboxComponent>;\nexport interface ICheckboxComponentDelegateOptions extends IFormFieldComponentDelegateOptions {\n id?: string;\n label?: string;\n checked?: boolean;\n}\nexport interface ICheckboxComponentDelegateConfig extends IBaseComponentDelegateConfig<ICheckboxComponent, ICheckboxComponentDelegateOptions> {}\n\nexport class CheckboxComponentDelegate extends FormFieldComponentDelegate<ICheckboxComponent, ICheckboxComponentDelegateOptions> {\n private _inputElement: HTMLInputElement;\n private _labelElement?: HTMLLabelElement;\n\n constructor(config?: ICheckboxComponentDelegateConfig) {\n super(config);\n }\n\n public get value(): boolean {\n return this.checked;\n }\n public set value(value: boolean) {\n this.checked = value;\n }\n\n public get checked(): boolean {\n return this._inputElement.checked;\n }\n public set checked(value: boolean) {\n this._inputElement.checked = value;\n }\n\n public get disabled(): boolean {\n return this._inputElement.disabled;\n }\n public set disabled(value: boolean) {\n this._inputElement.disabled = value;\n }\n\n public get inputElement(): HTMLInputElement {\n return this._inputElement;\n }\n\n public get labelElement(): HTMLLabelElement | undefined {\n return this._labelElement;\n }\n\n public onChange(listener: (value: boolean) => void): void {\n this._inputElement.addEventListener('change', evt => listener((evt.target as HTMLInputElement).checked));\n }\n\n public onFocus(listener: (evt: Event) => void): void {\n this._inputElement.addEventListener('focus', evt => listener(evt));\n }\n\n public onBlur(listener: (evt: Event) => void): void {\n this._inputElement.addEventListener('blur', evt => listener(evt));\n }\n\n public setLabel(text: string | null): void {\n if (text) {\n if (this._labelElement) {\n this._labelElement.textContent = text;\n } else {\n this._createLabel(text);\n }\n } else if (this._labelElement) {\n this._element.removeChild(this._labelElement);\n this._labelElement = undefined;\n }\n }\n\n protected _build(): ICheckboxComponent {\n const checkbox = document.createElement(CHECKBOX_CONSTANTS.elementName);\n this._inputElement = this._buildInputElement();\n checkbox.appendChild(this._inputElement);\n return checkbox;\n }\n\n protected override _configure(): void {\n if (typeof this._config.options?.label === 'string') {\n this._createLabel(this._config.options.label);\n }\n }\n\n private _createLabel(text: string): void {\n this._labelElement = document.createElement('label');\n this._labelElement.textContent = text;\n if (this._config.options?.id) {\n this._labelElement.setAttribute('for', this._config.options.id);\n }\n this._element.appendChild(this._labelElement);\n }\n\n private _buildInputElement(): HTMLInputElement {\n const inputElement = document.createElement('input');\n inputElement.type = 'checkbox';\n\n if (this._config.options?.checked !== undefined) {\n inputElement.checked = this._config.options.checked;\n }\n if (this._config.options?.id) {\n inputElement.id = this._config.options.id;\n }\n\n return inputElement;\n }\n}\n", "import { defineCustomElement } from '@tylertech/forge-core';\n\nimport { CheckboxComponent } from './checkbox';\n\nexport * from './checkbox-constants';\nexport * from './checkbox-adapter';\nexport * from './checkbox-foundation';\nexport * from './checkbox';\nexport * from './checkbox-component-delegate';\n\nexport function defineCheckboxComponent(): void {\n defineCustomElement(CheckboxComponent);\n}\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,IAAM,cAA2C,GAAG;AAEpD,IAAM,UAAU;AAAA,EACd,WAAW;AAAA,EACX,MAAM;AAAA,EACN,UAAU;AAAA,EACV,gBAAgB;AAAA,EAChB,4BAA4B;AAAA,EAC5B,wBAAwB;AAAA,EACxB,4BAA4B;AAAA,EAC5B,8BAA8B;AAAA,EAC9B,wBAAwB;AAAA,EACxB,8BAA8B;AAAA,EAC9B,YAAY;AAAA,EACZ,WAAW;AAAA,EACX,gBAAgB;AAAA,EAChB,UAAU;AAAA,EACV,kBAAkB;AAAA,EAClB,WAAW;AAAA,EACX,UAAU;AAAA,EACV,UAAU;AAAA,EACV,SAAS;AAAA,EACT,eAAe;AAAA,EACf,SAAS;AAAA,EACT,SAAS;AACX;AAEA,IAAM,YAAY;AAAA,EAChB,OAAO;AAAA,EACP,OAAO;AAAA,EACP,MAAM,IAAI,QAAQ;AAAA,EAClB,SAAS;AACX;AAEA,IAAM,aAAa;AAAA,EACjB,OAAO;AAAA,EACP,SAAS;AAAA,EACT,MAAM;AAAA,EACN,UAAU;AAAA,EACV,eAAe;AACjB;AAEO,IAAM,UAAU;AAAA,EACrB,mBAAmB;AAAA,EACnB,kCAAkC;AAAA,EAClC,yBAAyB;AAAA,EACzB,yBAAyB;AAAA,EACzB,0BAA0B;AAAA,EAC1B,gCAAgC;AAAA,EAChC,uBAAuB;AAAA,EACvB,4BAA4B;AAC9B;AAEA,IAAM,iBAAiB,CAAC,WAAW,iBAAiB,UAAU;AAEvD,IAAM,UAAU;AAAA,EACrB,mBAAmB;AACrB;AAEO,IAAM,qBAAqB;AAAA,EAChC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;;;AC5DO,IAAM,qBAAN,MAAwD;AAAA,EAW7D,YAAoB,UAA4B;AAA5B;AAVpB,SAAQ,SAAS;AACjB,SAAQ,qBAAqB,mBAAmB,QAAQ;AACxD,SAAQ,yBAAyB;AACjC,SAAQ,qBAAqB;AAC7B,SAAQ,6BAA6B;AAAA,EAMY;AAAA,EAEjD,AAAO,aAAmB;AACxB,SAAK,SAAS,SAAS,UAAU,KAAK,aAAa;AACnD,SAAK,SAAS,WAAW;AACzB,SAAK,SAAS,6BAA6B;AAC3C,SAAK,SAAS,SAAS,gBAAgB,KAAK,mBAAmB;AAAA,EACjE;AAAA,EAEA,AAAO,UAAgB;AACrB,SAAK,SAAS,WAAW;AACzB,SAAK,qBAAqB,KAAK,qBAAqB;AACpD,SAAK,UAAU,KAAK,KAAK;AACzB,SAAK,mBAAmB;AACxB,SAAK,iCAAiC,CAAC,MAAM,UAAU,KAAK,4BAA4B;AACxF,SAAK,SAAS,0BAA0B,CAAC,MAAM,UAAU,KAAK,+BAA+B,MAAM,KAAK,CAAC;AAEzG,SAAK,gBAAgB,MAAM,KAAK,mBAAmB;AACnD,SAAK,SAAS,OAAO,UAAU,KAAK,aAAa;AACjD,SAAK,SAAS,2BAA2B,MAAM;AAC7C,WAAK,mBAAmB;AAAA,IAC1B,CAAC;AACD,SAAK,sBAAsB,MAAM,KAAK,mBAAmB;AACzD,SAAK,SAAS,OAAO,gBAAgB,KAAK,qBAAqB,IAAI;AAEnE,SAAK,mBAAmB;AAAA,EAC1B;AAAA,EAEA,IAAW,QAAiB;AAC1B,WAAO,KAAK;AAAA,EACd;AAAA,EAEA,IAAW,MAAM,OAAgB;AAC/B,QAAI,KAAK,WAAW,OAAO;AACzB,WAAK,SAAS;AACd,WAAK,UAAU,KAAK;AAAA,IACtB;AAAA,EACF;AAAA,EAEA,AAAO,qBAA2B;AAChC,QAAI,CAAC,KAAK,4BAA4B;AACpC;AAAA,IACF;AAEA,UAAM,UAAwB,MAAM;AAClC,WAAK,SAAS,gBAAgB,KAAK,sBAAsB;AACzD,WAAK,6BAA6B;AAAA,IACpC;AAEA,iBAAa,KAAK,kBAAkB;AACpC,SAAK,qBAAqB,WAAW,SAAS,mBAAmB,QAAQ,iBAAiB;AAAA,EAC5F;AAAA,EAEA,AAAQ,UAAU,OAAsB;AACtC,SAAK,SAAS,SAAS,KAAK;AAAA,EAC9B;AAAA,EAEA,AAAQ,uBAA+B;AACrC,UAAM,EAAE,gCAAgC,0BAA0B,+BAA+B,mBAAmB;AAEpH,QAAI,KAAK,SAAS,gBAAgB,GAAG;AACnC,aAAO;AAAA,IACT;AAEA,WAAO,KAAK,SAAS,UAAU,IAAI,2BAA2B;AAAA,EAChE;AAAA,EAEA,AAAQ,qBAA2B;AACjC,UAAM,EAAE,kCAAkC,sBAAsB,mBAAmB;AAEnF,QAAI,KAAK,SAAS,gBAAgB,GAAG;AACnC,WAAK,SAAS,mBAAmB,mBAAmB,gCAAgC;AACpF,WAAK,SAAS,aAAa,mBAAmB,QAAQ,aAAa;AACnE,UAAI,CAAC,KAAK,SAAS,UAAU,GAAG;AAC9B,aAAK,SAAS,gBAAgB,mBAAmB,QAAQ,OAAO;AAAA,MAClE;AAAA,IACF,OAAO;AAGL,WAAK,SAAS,sBAAsB,iBAAiB;AACrD,WAAK,SAAS,gBAAgB,mBAAmB,QAAQ,aAAa;AAAA,IACxE;AAAA,EACF;AAAA,EAEA,AAAQ,qBAA2B;AACjC,SAAK,4BAA4B;AACjC,SAAK,4BAA4B;AACjC,SAAK,sBAAsB;AAAA,EAC7B;AAAA,EAEA,AAAQ,wBAA8B;AACpC,QAAI,CAAC,KAAK,SAAS,gBAAgB,GAAG;AACpC;AAAA,IACF;AACA,UAAM,WAAW,KAAK;AACtB,UAAM,WAAW,KAAK,qBAAqB;AAE3C,QAAI,aAAa,UAAU;AACzB;AAAA,IACF;AAEA,SAAK,mBAAmB;AAExB,UAAM,EAAE,+BAA+B,mBAAmB;AAC1D,UAAM,EAAE,aAAa,mBAAmB;AACxC,QAAI,aAAa,4BAA4B;AAC3C,WAAK,SAAS,gBAAgB,QAAQ;AAAA,IACxC,OAAO;AACL,WAAK,SAAS,aAAa,QAAQ;AAAA,IACrC;AAIA,QAAI,KAAK,uBAAuB,SAAS,GAAG;AAC1C,mBAAa,KAAK,kBAAkB;AACpC,WAAK,SAAS,YAAY;AAC1B,WAAK,SAAS,gBAAgB,KAAK,sBAAsB;AAAA,IAC3D;AAGA,QAAI,KAAK,uBAAuB,SAAS,GAAG;AAC1C,mBAAa,KAAK,kBAAkB;AACpC,WAAK,SAAS,YAAY;AAC1B,WAAK,SAAS,gBAAgB,KAAK,sBAAsB;AAAA,IAC3D;AAEA,SAAK,yBAAyB,KAAK,6BAA6B,UAAU,QAAQ;AAClF,SAAK,qBAAqB;AAI1B,QAAI,KAAK,SAAS,gBAAgB,KAAK,KAAK,uBAAuB,SAAS,GAAG;AAC7E,WAAK,SAAS,aAAa,KAAK,sBAAsB;AACtD,WAAK,6BAA6B;AAAA,IACpC;AAEA,SAAK,SAAS,YAAY;AAAA,EAC5B;AAAA,EAEA,AAAQ,8BAAoC;AAC1C,QAAI,KAAK,SAAS,WAAW,GAAG;AAC9B,WAAK,SAAS,aAAa,mBAAmB,QAAQ,QAAQ;AAC9D,WAAK,SAAS,gBAAgB,mBAAmB,QAAQ,gBAAgB;AACzE,WAAK,SAAS,gBAAgB,mBAAmB,QAAQ,OAAO;AAAA,IAClE,OAAO;AACL,WAAK,SAAS,gBAAgB,mBAAmB,QAAQ,QAAQ;AACjE,WAAK,SAAS,mBAAmB,mBAAmB,QAAQ,gBAAgB;AAC5E,WAAK,SAAS,aAAa,mBAAmB,QAAQ,OAAO;AAAA,IAC/D;AAEA,SAAK,4BAA4B;AAAA,EACnC;AAAA,EAEA,AAAQ,6BAA6B,UAAkB,UAA0B;AAC/E,UAAM,EAAE,0BAA0B,+BAA+B,mBAAmB;AAEpF,UAAM;AAAA,MACJ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,QACE,mBAAmB;AAEvB,YAAQ;AAAA,WACD;AACH,eAAO,aAAa,2BAA2B,yBAAyB;AAAA,WACrE;AACH,eAAO,aAAa,6BAA6B,yBAAyB;AAAA;AAI1E,eAAO,aAAa,2BAA2B,6BAA6B;AAAA;AAAA,EAElF;AAAA,EAEA,AAAQ,8BAAoC;AAE1C,QAAI,KAAK,SAAS,UAAU,GAAG;AAC7B,WAAK,SAAS,aAAa,mBAAmB,QAAQ,OAAO;AAAA,IAC/D,OAAO;AACL,WAAK,SAAS,gBAAgB,mBAAmB,QAAQ,OAAO;AAAA,IAClE;AAEA,QAAI,KAAK,SAAS,gBAAgB,GAAG;AACnC,WAAK,SAAS,aAAa,mBAAmB,QAAQ,aAAa;AACnE,WAAK,SAAS,gBAAgB,mBAAmB,QAAQ,OAAO;AAAA,IAClE,OAAO;AACL,WAAK,SAAS,gBAAgB,mBAAmB,QAAQ,aAAa;AAAA,IACxE;AAAA,EACF;AACF;;;ACrLO,IAAM,kBAAN,cAA8B,YAAuF;AAAA,EAU1H,YAAY,WAA+B;AACzC,UAAM,SAAS;AAAA,EACjB;AAAA,EAGA,IAAW,OAAgB;AACzB,WAAO,KAAK;AAAA,EACd;AAAA,EAEA,IAAW,YAAiC;AAC1C,WAAO;AAAA,EACT;AAAA,EAEA,IAAW,WAAgC;AACzC,WAAO,KAAK,WAAW;AAAA,EACzB;AAAA,EAEA,AAAO,aAAmB;AACxB,SAAK,mBAAmB;AACxB,SAAK,8BAA8B;AACnC,SAAK,kBAAkB,KAAK,cAAc;AAE1C,0BAAsB,MAAM;AAC1B,UAAI,KAAK,iBAAiB;AACxB,aAAK,gBAAgB,OAAO;AAAA,MAC9B;AAAA,IACF,CAAC;AAAA,EACH;AAAA,EAEA,AAAO,SAAS,OAAkC;AAChD,QAAI,OAAO;AACT,WAAK,kBAAkB,mBAAmB,WAAW,KAAK;AAC1D,WAAK,aAAa,mBAAmB,QAAQ,cAAc;AAAA,IAC7D,OAAO;AACL,WAAK,qBAAqB,mBAAmB,WAAW,KAAK;AAC7D,WAAK,gBAAgB,mBAAmB,QAAQ,cAAc;AAAA,IAChE;AAAA,EACF;AAAA,EAEA,AAAO,cAAoB;AACzB,SAAK,gBAAgB,OAAO;AAAA,EAC9B;AAAA,EAEA,AAAO,kBAA2B;AAChC,WAAO,QAAQ,KAAK,WAAW,UAAU;AAAA,EAC3C;AAAA,EAEA,AAAQ,qBAA2B;AACjC,SAAK,gBAAgB,KAAK,WAAW,cAAc,mBAAmB,UAAU,KAAK;AACrF,SAAK,kBAAkB,iBAAiB,KAAK,YAAY,mBAAmB,UAAU,OAAO;AAC7F,SAAK,eAAe,iBAAiB,KAAK,YAAY,mBAAmB,UAAU,IAAI;AACvF,SAAK,gBAAgB,KAAK,WAAW,cAAc,mBAAmB,UAAU,KAAK;AAErF,QAAI,KAAK,eAAe;AACtB,WAAK,cAAc,aAAa,mBAAmB,WAAW,MAAM,mBAAmB,UAAU,KAAK;AAAA,IACxG;AACA,QAAI,KAAK,eAAe;AACtB,WAAK,cAAc,aAAa,mBAAmB,WAAW,MAAM,mBAAmB,UAAU,KAAK;AAAA,IACxG;AACA,aAAS,mBAAmB,QAAQ,UAAU,KAAK,YAAY;AAAA,EACjE;AAAA,EAEA,AAAQ,kBAAkB,MAAc,QAAQ,IAAU;AACxD,SAAK,WAAW,aAAa,MAAM,KAAK;AAAA,EAC1C;AAAA,EAEA,AAAQ,qBAAqB,MAAoB;AAC/C,SAAK,WAAW,gBAAgB,IAAI;AAAA,EACtC;AAAA,EAEA,AAAO,aAAmB;AACxB,QAAI,KAAK,eAAe;AACtB,WAAK,cAAc,gBAAgB,mBAAmB,WAAW,IAAI;AAAA,IACvE;AAEA,QAAI,KAAK,eAAe;AACtB,WAAK,cAAc,gBAAgB,mBAAmB,WAAW,IAAI;AAAA,IACvE;AAEA,QAAI,KAAK,wBAAwB;AAC/B,WAAK,uBAAuB,WAAW;AAAA,IACzC;AAEA,SAAK,8BAA8B;AAEnC,QAAI,KAAK,iBAAiB;AACxB,WAAK,gBAAgB,QAAQ;AAAA,IAC/B;AAAA,EACF;AAAA,EAEA,AAAO,aAAa,UAAkC;AACpD,QAAI,KAAK,cAAc;AACrB,eAAS,UAAS,KAAK,YAAY;AAAA,IACrC;AAAA,EACF;AAAA,EAEA,AAAO,gBAAgB,UAAkC;AACvD,QAAI,KAAK,cAAc;AACrB,kBAAY,UAAS,KAAK,YAAY;AAAA,IACxC;AAAA,EACF;AAAA,EAEA,AAAO,gBAAgB,UAAkC;AACvD,QAAI,KAAK,iBAAiB;AACxB,eAAS,UAAS,KAAK,eAAe;AAAA,IACxC;AAAA,EACF;AAAA,EAEA,AAAO,mBAAmB,UAAkC;AAC1D,QAAI,KAAK,iBAAiB;AACxB,kBAAY,UAAS,KAAK,eAAe;AAAA,IAC3C;AAAA,EACF;AAAA,EAEA,AAAO,mBAAmB,eAAuB,OAAqB;AACpE,SAAK,cAAc,aAAa,eAAe,KAAK;AAAA,EACtD;AAAA,EAEA,AAAO,aAAsB;AAC3B,WAAO,KAAK,cAAc;AAAA,EAC5B;AAAA,EAEA,AAAO,YAAqB;AAC1B,WAAO,KAAK,iBAAiB,KAAK,cAAc;AAAA,EAClD;AAAA,EACA,AAAO,kBAA2B;AAChC,WAAO,KAAK,iBAAiB,KAAK,cAAc;AAAA,EAClD;AAAA,EAEA,AAAO,sBAAsB,eAA6B;AACxD,SAAK,cAAc,gBAAgB,aAAa;AAAA,EAClD;AAAA,EAEA,AAAO,2BAA2B,UAA4B;AAC5D,UAAM,WAAW,KAAK;AACtB,UAAM,UAAU,OAAO,eAAe,QAAQ;AAE9C,uBAAmB,eAAe,QAAQ,kBAAgB;AACxD,YAAM,OAAO,OAAO,yBAAyB,SAAS,YAAY;AAGlE,UAAI,CAAC,KAAK,iBAAiB,IAAI,GAAG;AAChC;AAAA,MACF;AAGA,YAAM,eAAgB,KAA2C;AAEjE,UAAI,MAAM;AACR,cAAM,eAAe;AAAA,UACnB,cAAc,KAAK;AAAA,UACnB,YAAY,KAAK;AAAA,UACjB,KAAK;AAAA,UACL,KAAK,CAAC,UAAmB;AAlMnC;AAmMY,uBAAK,QAAL,mBAAU,KAAK,UAAU;AACzB,qBAAS;AAAA,UACX;AAAA,QACF;AACA,eAAO,eAAe,UAAU,cAAc,YAAY;AAAA,MAC5D;AAAA,IACF,CAAC;AAAA,EACH;AAAA,EAEA,AAAO,OAAO,eAAuB,UAAsB,SAAS,OAAa;AAC/E,QAAI,QAAQ;AACV,WAAK,aAAa,iBAAiB,eAAe,QAAQ;AAAA,IAC5D,OAAO;AACL,WAAK,cAAc,iBAAiB,eAAe,QAAQ;AAAA,IAC7D;AAAA,EACF;AAAA,EAEA,AAAO,SAAS,eAAuB,UAAsB,SAAS,OAAa;AACjF,QAAI,CAAC,KAAK,eAAe;AACvB;AAAA,IACF;AAEA,QAAI,QAAQ;AACV,WAAK,aAAa,oBAAoB,eAAe,QAAQ;AAAA,IAC/D,OAAO;AACL,WAAK,cAAc,oBAAoB,eAAe,QAAQ;AAAA,IAChE;AAAA,EACF;AAAA,EAEA,AAAO,+BAAqC;AAC1C,QAAI,CAAC,KAAK,eAAe;AACvB;AAAA,IACF;AAEA,UAAM,WAAW,KAAK;AACtB,UAAM,UAAU,OAAO,eAAe,QAAQ;AAE9C,uBAAmB,eAAe,QAAQ,kBAAgB;AACxD,YAAM,OAAO,OAAO,yBAAyB,SAAS,YAAY;AAClE,UAAI,CAAC,KAAK,iBAAiB,IAAI,GAAG;AAChC;AAAA,MACF;AACA,aAAO,eAAe,UAAU,cAAc,IAAI;AAAA,IACpD,CAAC;AAAA,EACH;AAAA,EAEA,AAAO,0BAA0B,UAAuD;AACtF,SAAK,yBAAyB,IAAI,iBAAiB,eAAa;AAC9D,iBAAW,YAAY,WAAW;AAChC,YAAI,SAAS,eAAe;AAC1B,mBAAS,SAAS,eAAe,KAAK,cAAc,aAAa,SAAS,aAAa,CAAW;AAAA,QACpG;AAAA,MACF;AAAA,IACF,CAAC;AACD,SAAK,uBAAuB,QAAQ,KAAK,eAAe;AAAA,MACtD,YAAY;AAAA,MACZ,iBAAiB,CAAC,YAAY,SAAS;AAAA,IACzC,CAAC;AAAA,EACH;AAAA,EAEA,AAAQ,iBAAiB,eAAoF;AAC3G,WAAO,CAAC,CAAC,iBAAiB,OAAO,cAAc,QAAQ;AAAA,EACzD;AAAA,EAEA,AAAQ,gCAAsC;AAC5C,SAAK,qBAAqB,MAAM,KAAK,0BAA0B;AAC/D,SAAK,oBAAoB,MAAM,KAAK,yBAAyB;AAC7D,SAAK,cAAc,iBAAiB,SAAS,KAAK,kBAAkB;AACpE,SAAK,cAAc,iBAAiB,QAAQ,KAAK,iBAAiB;AAAA,EACpE;AAAA,EAEA,AAAQ,gCAAsC;AAC5C,wBAAoB,SAAS,KAAK,kBAAkB;AACpD,wBAAoB,QAAQ,KAAK,iBAAiB;AAAA,EACpD;AAAA,EAEA,AAAQ,4BAAkC;AACxC,aAAS,mBAAmB,QAAQ,SAAS,KAAK,YAAY;AAAA,EAChE;AAAA,EAEA,AAAQ,2BAAiC;AACvC,gBAAY,mBAAmB,QAAQ,SAAS,KAAK,YAAY;AAAA,EACnE;AAAA,EAEA,AAAQ,gBAA6B;AACnC,UAAM,UAA8B,iCAC/B,YAAY,cAAc,IAAI,IADC;AAAA,MAElC,8BAA8B,CAAC,SAAS,YAAY,KAAK,cAAc,oBAAoB,SAAS,SAAS,EAAE,SAAS,KAAK,CAA4B;AAAA,MACzJ,iBAAiB,MAAM,KAAK,cAAc,QAAQ,SAAS;AAAA,MAC3D,aAAa,MAAM,QAAQ,KAAK,SAAS;AAAA,MACzC,4BAA4B,CAAC,SAAS,YAAY,KAAK,cAAc,iBAAiB,SAAS,SAAS,EAAE,SAAS,KAAK,CAAC;AAAA,MACzH,mBAAmB,MAAM,KAAK,cAAc;AAAA,MAC5C,UAAU,CAAC,cAAsB,SAAS,WAAW,KAAK,YAAY;AAAA,MACtE,aAAa,CAAC,cAAsB,YAAY,WAAW,KAAK,YAAY;AAAA,MAC5E,mBAAmB,CAAC,SAAiB,UAAyB,KAAK,aAAa,MAAM,YAAY,SAAS,KAAK;AAAA,IAClH;AACA,UAAM,SAAS,IAAI,YAAY,KAAK,cAAc,IAAI,sBAAsB,OAAO,CAAC;AACpF,WAAO;AAAA,EACT;AACF;;;AChSA,IAAM,WAAW;AACjB,IAAM,SAAS;AAkBR,IAAM,oBAAN,cAAgC,cAA4C;AAAA,EAOjF,cAAc;AACZ,UAAM;AACN,yBAAqB,MAAM,UAAU,MAAM;AAC3C,SAAK,cAAc,IAAI,mBAAmB,IAAI,gBAAgB,IAAI,CAAC;AAAA,EACrE;AAAA,EAVA,WAAkB,qBAA+B;AAC/C,WAAO,CAAC,mBAAmB,WAAW,KAAK;AAAA,EAC7C;AAAA,EAUA,MAAa,oBAAmC;AAC9C,UAAM,KAAK,oBAAoB;AAC/B,SAAK,YAAY,QAAQ;AAAA,EAC3B;AAAA,EAEA,AAAO,yBAAyB,MAAc,UAAkB,UAAwB;AACtF,YAAQ;AAAA,WACD,mBAAmB,WAAW;AACjC,aAAK,QAAQ,cAAc,QAAQ;AACnC;AAAA;AAAA,EAEN;AAAA,EAEA,AAAO,uBAA6B;AAClC,SAAK,YAAY,WAAW;AAAA,EAC9B;AAAA,EAMA,MAAc,sBAAwC;AAEpD,WAAO,IAAI,QAAiB,aAAW;AACrC,YAAM,UAAU,KAAK,cAAc,OAAO;AAC1C,UAAI,SAAS;AACX,gBAAQ,OAAO;AAAA,MACjB;AAEA,YAAM,WAAW,IAAI,iBAAiB,aAAW;AAC/C,cAAM,gBAAgB,QAAQ,OAAO,CAAC,MAAM,SAAS,OAAO,KAAK,WAAW,QAAQ,CAAC,IAAI;AACzF,YAAI,eAAe;AACjB,gBAAM,eAAe,KAAK,cAAc,OAAO;AAC/C,cAAI,cAAc;AAChB,qBAAS,WAAW;AACpB,oBAAQ,YAAY;AAAA,UACtB;AAAA,QACF;AAAA,MACF,CAAC;AACD,eAAS,QAAQ,MAAM,EAAE,WAAW,MAAM,SAAS,KAAK,CAAC;AAAA,IAC3D,CAAC;AAAA,EACH;AACF;AAvBS;AAAA,EADP,AAAC,mBAAmB;AAAA,GACb,AAhCI,kBAgCJ;AAhCI,oBAAN;AAAA,EAHP,AAAC,cAAc;AAAA,IACb,MAAM,mBAAmB;AAAA,EAC3B,CAAC;AAAA,GACY;;;ACZN,IAAM,4BAAN,cAAwC,2BAAkF;AAAA,EAI/H,YAAY,QAA2C;AACrD,UAAM,MAAM;AAAA,EACd;AAAA,EAEA,IAAW,QAAiB;AAC1B,WAAO,KAAK;AAAA,EACd;AAAA,EACA,IAAW,MAAM,OAAgB;AAC/B,SAAK,UAAU;AAAA,EACjB;AAAA,EAEA,IAAW,UAAmB;AAC5B,WAAO,KAAK,cAAc;AAAA,EAC5B;AAAA,EACA,IAAW,QAAQ,OAAgB;AACjC,SAAK,cAAc,UAAU;AAAA,EAC/B;AAAA,EAEA,IAAW,WAAoB;AAC7B,WAAO,KAAK,cAAc;AAAA,EAC5B;AAAA,EACA,IAAW,SAAS,OAAgB;AAClC,SAAK,cAAc,WAAW;AAAA,EAChC;AAAA,EAEA,IAAW,eAAiC;AAC1C,WAAO,KAAK;AAAA,EACd;AAAA,EAEA,IAAW,eAA6C;AACtD,WAAO,KAAK;AAAA,EACd;AAAA,EAEA,AAAO,SAAS,UAA0C;AACxD,SAAK,cAAc,iBAAiB,UAAU,SAAO,SAAU,IAAI,OAA4B,OAAO,CAAC;AAAA,EACzG;AAAA,EAEA,AAAO,QAAQ,UAAsC;AACnD,SAAK,cAAc,iBAAiB,SAAS,SAAO,SAAS,GAAG,CAAC;AAAA,EACnE;AAAA,EAEA,AAAO,OAAO,UAAsC;AAClD,SAAK,cAAc,iBAAiB,QAAQ,SAAO,SAAS,GAAG,CAAC;AAAA,EAClE;AAAA,EAEA,AAAO,SAAS,MAA2B;AACzC,QAAI,MAAM;AACR,UAAI,KAAK,eAAe;AACtB,aAAK,cAAc,cAAc;AAAA,MACnC,OAAO;AACL,aAAK,aAAa,IAAI;AAAA,MACxB;AAAA,IACF,WAAW,KAAK,eAAe;AAC7B,WAAK,SAAS,YAAY,KAAK,aAAa;AAC5C,WAAK,gBAAgB;AAAA,IACvB;AAAA,EACF;AAAA,EAEA,AAAU,SAA6B;AACrC,UAAM,WAAW,SAAS,cAAc,mBAAmB,WAAW;AACtE,SAAK,gBAAgB,KAAK,mBAAmB;AAC7C,aAAS,YAAY,KAAK,aAAa;AACvC,WAAO;AAAA,EACT;AAAA,EAEA,AAAmB,aAAmB;AAlFxC;AAmFI,QAAI,OAAO,YAAK,QAAQ,YAAb,mBAAsB,WAAU,UAAU;AACnD,WAAK,aAAa,KAAK,QAAQ,QAAQ,KAAK;AAAA,IAC9C;AAAA,EACF;AAAA,EAEA,AAAQ,aAAa,MAAoB;AAxF3C;AAyFI,SAAK,gBAAgB,SAAS,cAAc,OAAO;AACnD,SAAK,cAAc,cAAc;AACjC,QAAI,WAAK,QAAQ,YAAb,mBAAsB,IAAI;AAC5B,WAAK,cAAc,aAAa,OAAO,KAAK,QAAQ,QAAQ,EAAE;AAAA,IAChE;AACA,SAAK,SAAS,YAAY,KAAK,aAAa;AAAA,EAC9C;AAAA,EAEA,AAAQ,qBAAuC;AAjGjD;AAkGI,UAAM,eAAe,SAAS,cAAc,OAAO;AACnD,iBAAa,OAAO;AAEpB,QAAI,YAAK,QAAQ,YAAb,mBAAsB,aAAY,QAAW;AAC/C,mBAAa,UAAU,KAAK,QAAQ,QAAQ;AAAA,IAC9C;AACA,QAAI,WAAK,QAAQ,YAAb,mBAAsB,IAAI;AAC5B,mBAAa,KAAK,KAAK,QAAQ,QAAQ;AAAA,IACzC;AAEA,WAAO;AAAA,EACT;AACF;;;ACpGO,mCAAyC;AAC9C,sBAAoB,iBAAiB;AACvC;",
4
+ "sourcesContent": ["import { COMPONENT_NAME_PREFIX } from '../constants';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}checkbox`;\n\nconst classes = {\n CONTAINER: 'forge-checkbox-container',\n ROOT: 'mdc-checkbox',\n CHECKBOX: 'mdc-checkbox',\n CHECKBOX_DENSE: 'forge-checkbox--dense',\n ANIM_CHECKED_INDETERMINATE: 'mdc-checkbox--anim-checked-indeterminate',\n ANIM_CHECKED_UNCHECKED: 'mdc-checkbox--anim-checked-unchecked',\n ANIM_INDETERMINATE_CHECKED: 'mdc-checkbox--anim-indeterminate-checked',\n ANIM_INDETERMINATE_UNCHECKED: 'mdc-checkbox--anim-indeterminate-unchecked',\n ANIM_UNCHECKED_CHECKED: 'mdc-checkbox--anim-unchecked-checked',\n ANIM_UNCHECKED_INDETERMINATE: 'mdc-checkbox--anim-unchecked-indeterminate',\n BACKGROUND: 'mdc-checkbox__background',\n CHECKMARK: 'mdc-checkbox__checkmark',\n CHECKMARK_PATH: 'mdc-checkbox__checkmark-path',\n DISABLED: 'mdc-checkbox--disabled',\n WRAPPER_DISABLED: 'forge-checkbox-wrapper--disabled',\n MIXEDMARK: 'mdc-checkbox__mixedmark',\n SELECTED: 'mdc-checkbox--selected',\n UPGRADED: 'mdc-checkbox--upgraded',\n CHECKED: 'forge-checkbox--checked',\n INDETERMINATE: 'forge-checkbox--indeterminate',\n FOCUSED: 'forge-checkbox--focused',\n ENABLED: 'forge-checkbox--enabled'\n};\n\nconst selectors = {\n INPUT: 'input',\n LABEL: 'label',\n ROOT: `.${classes.ROOT}`,\n WRAPPER: '.forge-checkbox-wrapper'\n};\n\nconst attributes = {\n DENSE: 'dense',\n CHECKED: 'checked',\n SLOT: 'slot',\n DISABLED: 'disabled',\n INDETERMINATE: 'indeterminate'\n};\n\nexport const strings = {\n ARIA_CHECKED_ATTR: 'aria-checked',\n ARIA_CHECKED_INDETERMINATE_VALUE: 'mixed',\n DATA_INDETERMINATE_ATTR: 'data-indeterminate',\n NATIVE_CONTROL_SELECTOR: '.mdc-checkbox__native-control',\n TRANSITION_STATE_CHECKED: 'checked',\n TRANSITION_STATE_INDETERMINATE: 'indeterminate',\n TRANSITION_STATE_INIT: 'init',\n TRANSITION_STATE_UNCHECKED: 'unchecked'\n};\n\nconst CB_PROTO_PROPS = ['checked', 'indeterminate', 'disabled'];\n\nexport const numbers = {\n ANIM_END_LATCH_MS: 250\n};\n\nexport const CHECKBOX_CONSTANTS = {\n elementName,\n classes,\n selectors,\n attributes,\n strings,\n CB_PROTO_PROPS,\n numbers\n};\n", "import { ICustomElementFoundation } from '@tylertech/forge-core';\n\nimport { ICheckboxAdapter } from './checkbox-adapter';\nimport { CHECKBOX_CONSTANTS } from './checkbox-constants';\n\nexport interface ICheckboxFoundation extends ICustomElementFoundation {\n dense: boolean;\n}\n\nexport class CheckboxFoundation implements ICheckboxFoundation {\n private _dense = false;\n private _currentCheckState = CHECKBOX_CONSTANTS.strings.TRANSITION_STATE_INIT;\n private _currentAnimationClass = '';\n private _animEndLatchTimer = 0;\n private _enableAnimationEndHandler = false;\n\n private _handleChange!: () => void;\n private _inputAttributeChangedListener: (name: string, value: string) => void;\n private _handleAnimationEnd: () => void;\n\n constructor(private _adapter: ICheckboxAdapter) {}\n\n public disconnect(): void {\n this._adapter.unlisten('change', this._handleChange);\n this._adapter.disconnect();\n this._adapter.uninstallPropertyChangeHooks();\n this._adapter.unlisten('animationend', this._handleAnimationEnd);\n }\n\n public connect(): void {\n this._adapter.initialize();\n this._currentCheckState = this._determineCheckState();\n this._setDense(this.dense);\n this._updateAriaChecked();\n this._inputAttributeChangedListener = (name, value) => this._handleInputAttributeChange();\n this._adapter.setInputAttributeObserver((name, value) => this._inputAttributeChangedListener(name, value));\n\n this._handleChange = () => this._handleInputChange();\n this._adapter.listen('change', this._handleChange);\n this._adapter.installPropertyChangeHooks(() => {\n this._handleInputChange();\n });\n this._handleAnimationEnd = () => this.handleAnimationEnd();\n this._adapter.listen('animationend', this._handleAnimationEnd, true);\n\n this._handleInputChange();\n }\n\n public get dense(): boolean {\n return this._dense;\n }\n\n public set dense(value: boolean) {\n if (this._dense !== value) {\n this._dense = value;\n this._setDense(value);\n }\n }\n\n public handleAnimationEnd(): void {\n if (!this._enableAnimationEndHandler) {\n return;\n }\n\n const handler: TimerHandler = () => {\n this._adapter.removeRootClass(this._currentAnimationClass);\n this._enableAnimationEndHandler = false;\n };\n\n clearTimeout(this._animEndLatchTimer);\n this._animEndLatchTimer = setTimeout(handler, CHECKBOX_CONSTANTS.numbers.ANIM_END_LATCH_MS);\n }\n\n private _setDense(value: boolean): void {\n this._adapter.setDense(value);\n }\n\n private _determineCheckState(): string {\n const { TRANSITION_STATE_INDETERMINATE, TRANSITION_STATE_CHECKED, TRANSITION_STATE_UNCHECKED } = CHECKBOX_CONSTANTS.strings;\n\n if (this._adapter.isIndeterminate()) {\n return TRANSITION_STATE_INDETERMINATE;\n }\n\n return this._adapter.isChecked() ? TRANSITION_STATE_CHECKED : TRANSITION_STATE_UNCHECKED;\n }\n\n private _updateAriaChecked(): void {\n const { ARIA_CHECKED_INDETERMINATE_VALUE, ARIA_CHECKED_ATTR } = CHECKBOX_CONSTANTS.strings;\n // Ensure aria-checked is set to mixed if checkbox is in indeterminate state.\n if (this._adapter.isIndeterminate()) {\n this._adapter.setNativeAttribute(ARIA_CHECKED_ATTR, ARIA_CHECKED_INDETERMINATE_VALUE);\n this._adapter.setRootClass(CHECKBOX_CONSTANTS.classes.INDETERMINATE);\n if (!this._adapter.isChecked()) {\n this._adapter.removeRootClass(CHECKBOX_CONSTANTS.classes.CHECKED);\n }\n } else {\n // The on/off state does not need to keep track of aria-checked, since\n // the screenreader uses the checked property on the checkbox element.\n this._adapter.removeNativeAttribute(ARIA_CHECKED_ATTR);\n this._adapter.removeRootClass(CHECKBOX_CONSTANTS.classes.INDETERMINATE);\n }\n }\n\n private _handleInputChange(): void {\n this._handleInputAttributeChange();\n this._updateCheckboxStateClasses();\n this._transitionCheckState();\n }\n\n private _transitionCheckState(): void {\n if (!this._adapter.isAttachedToDOM()) {\n return;\n }\n const oldState = this._currentCheckState;\n const newState = this._determineCheckState();\n\n if (oldState === newState) {\n return;\n }\n\n this._updateAriaChecked();\n\n const { TRANSITION_STATE_UNCHECKED } = CHECKBOX_CONSTANTS.strings;\n const { SELECTED } = CHECKBOX_CONSTANTS.classes;\n if (newState === TRANSITION_STATE_UNCHECKED) {\n this._adapter.removeRootClass(SELECTED);\n } else {\n this._adapter.setRootClass(SELECTED);\n }\n\n // Check to ensure that there isn't a previously existing animation class, in case for example\n // the user interacted with the checkbox before the animation was finished.\n if (this._currentAnimationClass.length > 0) {\n clearTimeout(this._animEndLatchTimer);\n this._adapter.forceLayout();\n this._adapter.removeRootClass(this._currentAnimationClass);\n }\n // Check to ensure that there isn't a previously existing animation class, in case for example\n // the user interacted with the checkbox before the animation was finished.\n if (this._currentAnimationClass.length > 0) {\n clearTimeout(this._animEndLatchTimer);\n this._adapter.forceLayout();\n this._adapter.removeRootClass(this._currentAnimationClass);\n }\n\n this._currentAnimationClass = this._getTransitionAnimationClass(oldState, newState);\n this._currentCheckState = newState;\n\n // Check for parentNode so that animations are only run when the element is attached\n // to the DOM.\n if (this._adapter.isAttachedToDOM() && this._currentAnimationClass.length > 0) {\n this._adapter.setRootClass(this._currentAnimationClass);\n this._enableAnimationEndHandler = true;\n }\n\n this._adapter.forceLayout();\n }\n\n private _handleInputAttributeChange(): void {\n if (this._adapter.isDisabled()) {\n this._adapter.setRootClass(CHECKBOX_CONSTANTS.classes.DISABLED);\n this._adapter.setWrapperClass(CHECKBOX_CONSTANTS.classes.WRAPPER_DISABLED);\n this._adapter.removeRootClass(CHECKBOX_CONSTANTS.classes.ENABLED);\n } else {\n this._adapter.removeRootClass(CHECKBOX_CONSTANTS.classes.DISABLED);\n this._adapter.removeWrapperClass(CHECKBOX_CONSTANTS.classes.WRAPPER_DISABLED);\n this._adapter.setRootClass(CHECKBOX_CONSTANTS.classes.ENABLED);\n }\n\n this._updateCheckboxStateClasses();\n }\n\n private _getTransitionAnimationClass(oldState: string, newState: string): string {\n const { TRANSITION_STATE_CHECKED, TRANSITION_STATE_UNCHECKED } = CHECKBOX_CONSTANTS.strings;\n\n const {\n ANIM_UNCHECKED_CHECKED,\n ANIM_UNCHECKED_INDETERMINATE,\n ANIM_CHECKED_UNCHECKED,\n ANIM_CHECKED_INDETERMINATE,\n ANIM_INDETERMINATE_CHECKED,\n ANIM_INDETERMINATE_UNCHECKED\n } = CHECKBOX_CONSTANTS.classes;\n\n switch (oldState) {\n case TRANSITION_STATE_UNCHECKED:\n return newState === TRANSITION_STATE_CHECKED ? ANIM_UNCHECKED_CHECKED : ANIM_UNCHECKED_INDETERMINATE;\n case TRANSITION_STATE_CHECKED:\n return newState === TRANSITION_STATE_UNCHECKED ? ANIM_CHECKED_UNCHECKED : ANIM_CHECKED_INDETERMINATE;\n default:\n // TRANSITION_STATE_INDETERMINATE\n // Handles TRANSITION_STATE_INIT\n return newState === TRANSITION_STATE_CHECKED ? ANIM_INDETERMINATE_CHECKED : ANIM_INDETERMINATE_UNCHECKED;\n }\n }\n\n private _updateCheckboxStateClasses(): void {\n // Since we can't use the ::slotted():checked ~ selector, simulating the same functionality with classes\n if (this._adapter.isChecked()) {\n this._adapter.setRootClass(CHECKBOX_CONSTANTS.classes.CHECKED);\n } else {\n this._adapter.removeRootClass(CHECKBOX_CONSTANTS.classes.CHECKED);\n }\n\n if (this._adapter.isIndeterminate()) {\n this._adapter.setRootClass(CHECKBOX_CONSTANTS.classes.INDETERMINATE);\n this._adapter.removeRootClass(CHECKBOX_CONSTANTS.classes.CHECKED);\n } else {\n this._adapter.removeRootClass(CHECKBOX_CONSTANTS.classes.INDETERMINATE);\n }\n }\n}\n", "import { addClass, getShadowElement, removeClass } from '@tylertech/forge-core';\nimport { BaseAdapter, IBaseAdapter } from '../core/base/base-adapter';\nimport { ForgeRipple, ForgeRippleAdapter, ForgeRippleCapableSurface, ForgeRippleFoundation } from '../ripple';\nimport { ICheckboxComponent } from './checkbox';\nimport { CHECKBOX_CONSTANTS } from './checkbox-constants';\n\ntype PropertyDescriptorGetter = (() => unknown) | undefined;\n\nexport interface ICheckboxAdapter extends IBaseAdapter {\n forceLayout(): void;\n isAttachedToDOM(): boolean;\n isDisabled(): boolean;\n isChecked(): boolean;\n isIndeterminate(): boolean;\n setRootClass(classes: string | string[]): void;\n removeRootClass(classes: string | string[]): void;\n setWrapperClass(classes: string | string[]): void;\n removeWrapperClass(classes: string | string[]): void;\n setDense(value: boolean): void;\n initialize(): void;\n disconnect(): void;\n // Sets attributes on the native checkbox element\n setNativeAttribute(qualifiedName: string, value: string): void;\n removeNativeAttribute(qualifiedName: string): void;\n listen(qualifiedName: string, callback: () => void, onRoot?: boolean): void;\n unlisten(qualifiedName: string, callback: () => void, onRoot?: boolean): void;\n installPropertyChangeHooks(callback: () => void): void;\n uninstallPropertyChangeHooks(): void;\n setInputAttributeObserver(listener: (name: string, value: string) => void): void;\n}\n\nexport class CheckboxAdapter extends BaseAdapter<ICheckboxComponent> implements ICheckboxAdapter, ForgeRippleCapableSurface {\n private _wrapperElement: HTMLElement;\n private _rootElement: HTMLElement;\n private _inputElement: HTMLInputElement;\n private _labelElement: HTMLLabelElement;\n private _inputFocusHandler: () => void;\n private _inputBlurHandler: () => void;\n private _inputMutationObserver: MutationObserver;\n private _rippleInstance: ForgeRipple;\n\n constructor(component: ICheckboxComponent) {\n super(component);\n }\n\n // ForgeRippleCapableSurface\n public get root(): Element {\n return this._rootElement;\n }\n\n public get unbounded(): boolean | undefined {\n return true;\n }\n\n public get disabled(): boolean | undefined {\n return this.isDisabled();\n }\n\n public initialize(): void {\n this._configureElements();\n this._attachInternalInputListeners();\n this._rippleInstance = this._createRipple();\n\n requestAnimationFrame(() => {\n if (this._rippleInstance) {\n this._rippleInstance.layout();\n }\n });\n }\n\n public setDense(value: boolean | undefined): void {\n if (value) {\n this._setHostAttribute(CHECKBOX_CONSTANTS.attributes.DENSE);\n this.setRootClass(CHECKBOX_CONSTANTS.classes.CHECKBOX_DENSE);\n } else {\n this._removeHostAttribute(CHECKBOX_CONSTANTS.attributes.DENSE);\n this.removeRootClass(CHECKBOX_CONSTANTS.classes.CHECKBOX_DENSE);\n }\n }\n\n public forceLayout(): void {\n this._rippleInstance.layout();\n }\n\n public isAttachedToDOM(): boolean {\n return Boolean(this._component.parentNode);\n }\n\n private _configureElements(): void {\n this._inputElement = this._component.querySelector(CHECKBOX_CONSTANTS.selectors.INPUT) as HTMLInputElement;\n this._wrapperElement = getShadowElement(this._component, CHECKBOX_CONSTANTS.selectors.WRAPPER);\n this._rootElement = getShadowElement(this._component, CHECKBOX_CONSTANTS.selectors.ROOT);\n this._labelElement = this._component.querySelector(CHECKBOX_CONSTANTS.selectors.LABEL) as HTMLLabelElement;\n\n if (this._labelElement) {\n this._labelElement.setAttribute(CHECKBOX_CONSTANTS.attributes.SLOT, CHECKBOX_CONSTANTS.selectors.LABEL);\n }\n if (this._inputElement) {\n this._inputElement.setAttribute(CHECKBOX_CONSTANTS.attributes.SLOT, CHECKBOX_CONSTANTS.selectors.INPUT);\n }\n addClass(CHECKBOX_CONSTANTS.classes.UPGRADED, this._rootElement);\n }\n\n private _setHostAttribute(name: string, value = ''): void {\n this._component.setAttribute(name, value);\n }\n\n private _removeHostAttribute(name: string): void {\n this._component.removeAttribute(name);\n }\n\n public disconnect(): void {\n if (this._labelElement) {\n this._labelElement.removeAttribute(CHECKBOX_CONSTANTS.attributes.SLOT);\n }\n\n if (this._inputElement) {\n this._inputElement.removeAttribute(CHECKBOX_CONSTANTS.attributes.SLOT);\n }\n\n if (this._inputMutationObserver) {\n this._inputMutationObserver.disconnect();\n }\n\n this._detachInternalInputListeners();\n\n if (this._rippleInstance) {\n this._rippleInstance.destroy();\n }\n }\n\n public setRootClass(classes: string | string[]): void {\n if (this._rootElement) {\n addClass(classes, this._rootElement);\n }\n }\n\n public removeRootClass(classes: string | string[]): void {\n if (this._rootElement) {\n removeClass(classes, this._rootElement);\n }\n }\n\n public setWrapperClass(classes: string | string[]): void {\n if (this._wrapperElement) {\n addClass(classes, this._wrapperElement);\n }\n }\n\n public removeWrapperClass(classes: string | string[]): void {\n if (this._wrapperElement) {\n removeClass(classes, this._wrapperElement);\n }\n }\n\n public setNativeAttribute(qualifiedName: string, value: string): void {\n this._inputElement.setAttribute(qualifiedName, value);\n }\n\n public isDisabled(): boolean {\n return this._inputElement.disabled;\n }\n\n public isChecked(): boolean {\n return this._inputElement && this._inputElement.checked;\n }\n public isIndeterminate(): boolean {\n return this._inputElement && this._inputElement.indeterminate;\n }\n\n public removeNativeAttribute(qualifiedName: string): void {\n this._inputElement.removeAttribute(qualifiedName);\n }\n\n public installPropertyChangeHooks(callback: () => void): void {\n const nativeCb = this._inputElement;\n const cbProto = Object.getPrototypeOf(nativeCb);\n\n CHECKBOX_CONSTANTS.CB_PROTO_PROPS.forEach(controlState => {\n const desc = Object.getOwnPropertyDescriptor(cbProto, controlState);\n // We have to check for this descriptor, since some browsers (Safari) don't support its return.\n // See: https://bugs.webkit.org/show_bug.cgi?id=49739\n if (!this._validDescriptor(desc)) {\n return;\n }\n\n // Type cast is needed for compatibility with Closure Compiler.\n const nativeGetter = (desc as { get: PropertyDescriptorGetter }).get;\n\n if (desc) {\n const nativeCbDesc = {\n configurable: desc.configurable,\n enumerable: desc.enumerable,\n get: nativeGetter,\n set: (state: boolean) => {\n desc.set?.call(nativeCb, state);\n callback();\n }\n };\n Object.defineProperty(nativeCb, controlState, nativeCbDesc);\n }\n });\n }\n\n public listen(qualifiedName: string, callback: () => void, onRoot = false): void {\n if (onRoot) {\n this._rootElement.addEventListener(qualifiedName, callback);\n } else {\n this._inputElement.addEventListener(qualifiedName, callback);\n }\n }\n\n public unlisten(qualifiedName: string, callback: () => void, onRoot = false): void {\n if (!this._inputElement) {\n return;\n }\n\n if (onRoot) {\n this._rootElement.removeEventListener(qualifiedName, callback);\n } else {\n this._inputElement.removeEventListener(qualifiedName, callback);\n }\n }\n\n public uninstallPropertyChangeHooks(): void {\n if (!this._inputElement) {\n return;\n }\n\n const nativeCb = this._inputElement;\n const cbProto = Object.getPrototypeOf(nativeCb);\n\n CHECKBOX_CONSTANTS.CB_PROTO_PROPS.forEach(controlState => {\n const desc = Object.getOwnPropertyDescriptor(cbProto, controlState);\n if (!this._validDescriptor(desc)) {\n return;\n }\n Object.defineProperty(nativeCb, controlState, desc);\n });\n }\n\n public setInputAttributeObserver(listener: (name: string, value: string) => void): void {\n this._inputMutationObserver = new MutationObserver(mutations => {\n for (const mutation of mutations) {\n if (mutation.attributeName) {\n listener(mutation.attributeName, this._inputElement.getAttribute(mutation.attributeName) as string);\n }\n }\n });\n this._inputMutationObserver.observe(this._inputElement, {\n attributes: true,\n attributeFilter: ['disabled', 'checked']\n });\n }\n\n private _validDescriptor(inputPropDesc: PropertyDescriptor | undefined): inputPropDesc is PropertyDescriptor {\n return !!inputPropDesc && typeof inputPropDesc.set === 'function';\n }\n\n private _attachInternalInputListeners(): void {\n this._inputFocusHandler = () => this._handleInputFocusListener();\n this._inputBlurHandler = () => this._handleInputBlurListener();\n this._inputElement.addEventListener('focus', this._inputFocusHandler);\n this._inputElement.addEventListener('blur', this._inputBlurHandler);\n }\n\n private _detachInternalInputListeners(): void {\n removeEventListener('focus', this._inputFocusHandler);\n removeEventListener('blur', this._inputBlurHandler);\n }\n\n private _handleInputFocusListener(): void {\n addClass(CHECKBOX_CONSTANTS.classes.FOCUSED, this._rootElement);\n }\n\n private _handleInputBlurListener(): void {\n removeClass(CHECKBOX_CONSTANTS.classes.FOCUSED, this._rootElement);\n }\n\n private _createRipple(): ForgeRipple {\n const adapter: ForgeRippleAdapter = {\n ...ForgeRipple.createAdapter(this),\n deregisterInteractionHandler: (evtType, handler) => this._inputElement.removeEventListener(evtType, handler, { passive: true } as AddEventListenerOptions),\n isSurfaceActive: () => this._inputElement.matches(':active'),\n isUnbounded: () => Boolean(this.unbounded),\n registerInteractionHandler: (evtType, handler) => this._inputElement.addEventListener(evtType, handler, { passive: true }),\n isSurfaceDisabled: () => this._inputElement.disabled,\n addClass: (className: string) => addClass(className, this._rootElement),\n removeClass: (className: string) => removeClass(className, this._rootElement),\n updateCssVariable: (varName: string, value: string | null) => this._rootElement.style.setProperty(varName, value)\n };\n const ripple = new ForgeRipple(this._rootElement, new ForgeRippleFoundation(adapter));\n return ripple;\n }\n}\n", "import { CustomElement, attachShadowTemplate, coerceBoolean, FoundationProperty } from '@tylertech/forge-core';\nimport { CHECKBOX_CONSTANTS } from './checkbox-constants';\nimport { CheckboxFoundation } from './checkbox-foundation';\nimport { CheckboxAdapter } from './checkbox-adapter';\nimport { BaseComponent, IBaseComponent } from '../core/base/base-component';\n\nconst template = '<template><div class=\\\"forge-checkbox-wrapper forge-form-field\\\" part=\\\"root\\\"><div class=\\\"mdc-checkbox\\\" part=\\\"container\\\"><slot name=\\\"input\\\"></slot><div class=\\\"mdc-checkbox__background\\\" part=\\\"background\\\"><svg class=\\\"mdc-checkbox__checkmark\\\" viewBox=\\\"0 0 24 24\\\" part=\\\"checkmark-svg\\\"><path class=\\\"mdc-checkbox__checkmark-path\\\" fill=\\\"none\\\" d=\\\"M1.73,12.91 8.1,19.28 22.79,4.59\\\" part=\\\"checkmark-path\\\"></path></svg><div class=\\\"mdc-checkbox__mixedmark\\\" part=\\\"mixedmark\\\"></div></div><div class=\\\"mdc-checkbox__ripple\\\" part=\\\"ripple-container\\\"></div></div><slot name=\\\"label\\\"></slot></div></template>';\nconst styles = '.mdc-checkbox{padding:calc((40px - 18px)/ 2);padding:calc((var(--mdc-checkbox-ripple-size,40px) - 18px)/ 2);margin:calc((40px - 40px)/ 2);margin:calc((var(--mdc-checkbox-ripple-size,40px) - var(--mdc-checkbox-ripple-size,40px))/ 2)}.mdc-checkbox .mdc-checkbox__ripple::after,.mdc-checkbox .mdc-checkbox__ripple::before{background-color:#000;background-color:var(--mdc-ripple-color,var(--mdc-theme-on-surface,#000))}.mdc-checkbox.mdc-ripple-surface--hover .mdc-checkbox__ripple::before,.mdc-checkbox:hover .mdc-checkbox__ripple::before{opacity:.04;opacity:var(--mdc-ripple-hover-opacity, .04)}.mdc-checkbox.mdc-ripple-upgraded--background-focused .mdc-checkbox__ripple::before,.mdc-checkbox:not(.mdc-ripple-upgraded):focus .mdc-checkbox__ripple::before{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.12;opacity:var(--mdc-ripple-focus-opacity, .12)}.mdc-checkbox:not(.mdc-ripple-upgraded) .mdc-checkbox__ripple::after{-webkit-transition:opacity 150ms linear;transition:opacity 150ms linear}.mdc-checkbox:not(.mdc-ripple-upgraded):active .mdc-checkbox__ripple::after{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.12;opacity:var(--mdc-ripple-press-opacity, .12)}.mdc-checkbox.mdc-ripple-upgraded{--mdc-ripple-fg-opacity:var(--mdc-ripple-press-opacity, 0.12)}.mdc-checkbox.mdc-checkbox--selected .mdc-checkbox__ripple::after,.mdc-checkbox.mdc-checkbox--selected .mdc-checkbox__ripple::before{background-color:#3d5afe;background-color:var(--forge-theme-tertiary,#3d5afe)}.mdc-checkbox.mdc-checkbox--selected.mdc-ripple-surface--hover .mdc-checkbox__ripple::before,.mdc-checkbox.mdc-checkbox--selected:hover .mdc-checkbox__ripple::before{opacity:.04;opacity:var(--mdc-ripple-hover-opacity, .04)}.mdc-checkbox.mdc-checkbox--selected.mdc-ripple-upgraded--background-focused .mdc-checkbox__ripple::before,.mdc-checkbox.mdc-checkbox--selected:not(.mdc-ripple-upgraded):focus .mdc-checkbox__ripple::before{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.12;opacity:var(--mdc-ripple-focus-opacity, .12)}.mdc-checkbox.mdc-checkbox--selected:not(.mdc-ripple-upgraded) .mdc-checkbox__ripple::after{-webkit-transition:opacity 150ms linear;transition:opacity 150ms linear}.mdc-checkbox.mdc-checkbox--selected:not(.mdc-ripple-upgraded):active .mdc-checkbox__ripple::after{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.12;opacity:var(--mdc-ripple-press-opacity, .12)}.mdc-checkbox.mdc-checkbox--selected.mdc-ripple-upgraded{--mdc-ripple-fg-opacity:var(--mdc-ripple-press-opacity, 0.12)}.mdc-checkbox.mdc-ripple-upgraded--background-focused.mdc-checkbox--selected .mdc-checkbox__ripple::after,.mdc-checkbox.mdc-ripple-upgraded--background-focused.mdc-checkbox--selected .mdc-checkbox__ripple::before{background-color:#3d5afe;background-color:var(--forge-theme-tertiary,#3d5afe)}.mdc-checkbox .mdc-checkbox__background{top:calc((40px - 18px)/ 2);top:calc((var(--mdc-checkbox-ripple-size,40px) - 18px)/ 2);left:calc((40px - 18px)/ 2);left:calc((var(--mdc-checkbox-ripple-size,40px) - 18px)/ 2)}.mdc-checkbox ::slotted(input[type=checkbox]){top:calc((40px - 40px)/ 2);top:calc((var(--mdc-checkbox-ripple-size,40px) - var(--mdc-checkbox-ripple-size,40px))/ 2);right:calc((40px - 40px)/ 2);right:calc((var(--mdc-checkbox-ripple-size,40px) - var(--mdc-checkbox-ripple-size,40px))/ 2);left:calc((40px - 40px)/ 2);left:calc((var(--mdc-checkbox-ripple-size,40px) - var(--mdc-checkbox-ripple-size,40px))/ 2);width:40px;width:var(--mdc-checkbox-ripple-size,40px);height:40px;height:var(--mdc-checkbox-ripple-size,40px)}.mdc-checkbox.forge-checkbox--enabled:not(.forge-checkbox--checked):not(.forge-checkbox--indeterminate) .mdc-checkbox__background{border-color:#000;border-color:var(--mdc-theme-text-secondary-on-background,#000);background-color:transparent}.mdc-checkbox.forge-checkbox--enabled.forge-checkbox--checked .mdc-checkbox__background,.mdc-checkbox.forge-checkbox--enabled.forge-checkbox--indeterminate .mdc-checkbox__background{border-color:#3d5afe;border-color:var(--mdc-checkbox-checked-color,var(--forge-theme-tertiary,#3d5afe));background-color:#3d5afe;background-color:var(--mdc-checkbox-checked-color,var(--forge-theme-tertiary,#3d5afe))}@-webkit-keyframes mdc-checkbox-fade-in-background-FF000000FF3D5AFE00000000FF3D5AFE{0%{border-color:#000;border-color:var(--mdc-theme-text-secondary-on-background,#000);background-color:transparent}50%{border-color:#3d5afe;border-color:var(--mdc-checkbox-checked-color,var(--forge-theme-tertiary,#3d5afe));background-color:#3d5afe;background-color:var(--mdc-checkbox-checked-color,var(--forge-theme-tertiary,#3d5afe))}}@keyframes mdc-checkbox-fade-in-background-FF000000FF3D5AFE00000000FF3D5AFE{0%{border-color:#000;border-color:var(--mdc-theme-text-secondary-on-background,#000);background-color:transparent}50%{border-color:#3d5afe;border-color:var(--mdc-checkbox-checked-color,var(--forge-theme-tertiary,#3d5afe));background-color:#3d5afe;background-color:var(--mdc-checkbox-checked-color,var(--forge-theme-tertiary,#3d5afe))}}@-webkit-keyframes mdc-checkbox-fade-out-background-FF000000FF3D5AFE00000000FF3D5AFE{0%,80%{border-color:#3d5afe;border-color:var(--mdc-checkbox-checked-color,var(--forge-theme-tertiary,#3d5afe));background-color:#3d5afe;background-color:var(--mdc-checkbox-checked-color,var(--forge-theme-tertiary,#3d5afe))}100%{border-color:#000;border-color:var(--mdc-theme-text-secondary-on-background,#000);background-color:transparent}}@keyframes mdc-checkbox-fade-out-background-FF000000FF3D5AFE00000000FF3D5AFE{0%,80%{border-color:#3d5afe;border-color:var(--mdc-checkbox-checked-color,var(--forge-theme-tertiary,#3d5afe));background-color:#3d5afe;background-color:var(--mdc-checkbox-checked-color,var(--forge-theme-tertiary,#3d5afe))}100%{border-color:#000;border-color:var(--mdc-theme-text-secondary-on-background,#000);background-color:transparent}}.mdc-checkbox.mdc-checkbox--anim-unchecked-checked.forge-checkbox--enabled .mdc-checkbox__background,.mdc-checkbox.mdc-checkbox--anim-unchecked-indeterminate.forge-checkbox--enabled .mdc-checkbox__background{-webkit-animation-name:mdc-checkbox-fade-in-background-FF000000FF3D5AFE00000000FF3D5AFE;animation-name:mdc-checkbox-fade-in-background-FF000000FF3D5AFE00000000FF3D5AFE}.mdc-checkbox.mdc-checkbox--anim-checked-unchecked.forge-checkbox--enabled .mdc-checkbox__background,.mdc-checkbox.mdc-checkbox--anim-indeterminate-unchecked.forge-checkbox--enabled .mdc-checkbox__background{-webkit-animation-name:mdc-checkbox-fade-out-background-FF000000FF3D5AFE00000000FF3D5AFE;animation-name:mdc-checkbox-fade-out-background-FF000000FF3D5AFE00000000FF3D5AFE}.mdc-checkbox.mdc-checkbox--disabled:not(.forge-checkbox--checked):not(.forge-checkbox--indeterminate) .mdc-checkbox__background{border-color:#000;border-color:var(--forge-theme-form-field-icon-disabled-on-background,#000);background-color:transparent}.mdc-checkbox.mdc-checkbox--disabled.forge-checkbox--checked .mdc-checkbox__background,.mdc-checkbox.mdc-checkbox--disabled.forge-checkbox--indeterminate .mdc-checkbox__background{border-color:transparent;background-color:#000;background-color:var(--forge-theme-form-field-icon-disabled-on-background,#000)}.mdc-checkbox.forge-checkbox--enabled .mdc-checkbox__background .mdc-checkbox__checkmark{color:rgba(255,255,255,.87);color:var(--mdc-theme-text-primary-on-dark,rgba(255,255,255,.87))}.mdc-checkbox.forge-checkbox--enabled .mdc-checkbox__background .mdc-checkbox__mixedmark{border-color:rgba(255,255,255,.87);border-color:var(--mdc-theme-text-primary-on-dark,rgba(255,255,255,.87))}.mdc-checkbox.mdc-checkbox--disabled .mdc-checkbox__background .mdc-checkbox__checkmark{color:rgba(255,255,255,.87);color:var(--mdc-theme-text-primary-on-dark,rgba(255,255,255,.87))}.mdc-checkbox.mdc-checkbox--disabled .mdc-checkbox__background .mdc-checkbox__mixedmark{border-color:rgba(255,255,255,.87);border-color:var(--mdc-theme-text-primary-on-dark,rgba(255,255,255,.87))}@-webkit-keyframes mdc-checkbox-unchecked-checked-checkmark-path{0%,50%{stroke-dashoffset:29.7833385}50%{-webkit-animation-timing-function:cubic-bezier(0,0,0.2,1);animation-timing-function:cubic-bezier(0,0,0.2,1)}100%{stroke-dashoffset:0}}@keyframes mdc-checkbox-unchecked-checked-checkmark-path{0%,50%{stroke-dashoffset:29.7833385}50%{-webkit-animation-timing-function:cubic-bezier(0,0,0.2,1);animation-timing-function:cubic-bezier(0,0,0.2,1)}100%{stroke-dashoffset:0}}@-webkit-keyframes mdc-checkbox-unchecked-indeterminate-mixedmark{0%,68.2%{-webkit-transform:scaleX(0);transform:scaleX(0)}68.2%{-webkit-animation-timing-function:cubic-bezier(0,0,0,1);animation-timing-function:cubic-bezier(0,0,0,1)}100%{-webkit-transform:scaleX(1);transform:scaleX(1)}}@keyframes mdc-checkbox-unchecked-indeterminate-mixedmark{0%,68.2%{-webkit-transform:scaleX(0);transform:scaleX(0)}68.2%{-webkit-animation-timing-function:cubic-bezier(0,0,0,1);animation-timing-function:cubic-bezier(0,0,0,1)}100%{-webkit-transform:scaleX(1);transform:scaleX(1)}}@-webkit-keyframes mdc-checkbox-checked-unchecked-checkmark-path{from{-webkit-animation-timing-function:cubic-bezier(0.4,0,1,1);animation-timing-function:cubic-bezier(0.4,0,1,1);opacity:1;stroke-dashoffset:0}to{opacity:0;stroke-dashoffset:-29.7833385}}@keyframes mdc-checkbox-checked-unchecked-checkmark-path{from{-webkit-animation-timing-function:cubic-bezier(0.4,0,1,1);animation-timing-function:cubic-bezier(0.4,0,1,1);opacity:1;stroke-dashoffset:0}to{opacity:0;stroke-dashoffset:-29.7833385}}@-webkit-keyframes mdc-checkbox-checked-indeterminate-checkmark{from{-webkit-animation-timing-function:cubic-bezier(0,0,0.2,1);animation-timing-function:cubic-bezier(0,0,0.2,1);-webkit-transform:rotate(0);transform:rotate(0);opacity:1}to{-webkit-transform:rotate(45deg);transform:rotate(45deg);opacity:0}}@keyframes mdc-checkbox-checked-indeterminate-checkmark{from{-webkit-animation-timing-function:cubic-bezier(0,0,0.2,1);animation-timing-function:cubic-bezier(0,0,0.2,1);-webkit-transform:rotate(0);transform:rotate(0);opacity:1}to{-webkit-transform:rotate(45deg);transform:rotate(45deg);opacity:0}}@-webkit-keyframes mdc-checkbox-indeterminate-checked-checkmark{from{-webkit-animation-timing-function:cubic-bezier(0.14,0,0,1);animation-timing-function:cubic-bezier(0.14,0,0,1);-webkit-transform:rotate(45deg);transform:rotate(45deg);opacity:0}to{-webkit-transform:rotate(360deg);transform:rotate(360deg);opacity:1}}@keyframes mdc-checkbox-indeterminate-checked-checkmark{from{-webkit-animation-timing-function:cubic-bezier(0.14,0,0,1);animation-timing-function:cubic-bezier(0.14,0,0,1);-webkit-transform:rotate(45deg);transform:rotate(45deg);opacity:0}to{-webkit-transform:rotate(360deg);transform:rotate(360deg);opacity:1}}@-webkit-keyframes mdc-checkbox-checked-indeterminate-mixedmark{from{-webkit-animation-timing-function:mdc-animation-deceleration-curve-timing-function;animation-timing-function:mdc-animation-deceleration-curve-timing-function;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);opacity:0}to{-webkit-transform:rotate(0);transform:rotate(0);opacity:1}}@keyframes mdc-checkbox-checked-indeterminate-mixedmark{from{-webkit-animation-timing-function:mdc-animation-deceleration-curve-timing-function;animation-timing-function:mdc-animation-deceleration-curve-timing-function;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);opacity:0}to{-webkit-transform:rotate(0);transform:rotate(0);opacity:1}}@-webkit-keyframes mdc-checkbox-indeterminate-checked-mixedmark{from{-webkit-animation-timing-function:cubic-bezier(0.14,0,0,1);animation-timing-function:cubic-bezier(0.14,0,0,1);-webkit-transform:rotate(0);transform:rotate(0);opacity:1}to{-webkit-transform:rotate(315deg);transform:rotate(315deg);opacity:0}}@keyframes mdc-checkbox-indeterminate-checked-mixedmark{from{-webkit-animation-timing-function:cubic-bezier(0.14,0,0,1);animation-timing-function:cubic-bezier(0.14,0,0,1);-webkit-transform:rotate(0);transform:rotate(0);opacity:1}to{-webkit-transform:rotate(315deg);transform:rotate(315deg);opacity:0}}@-webkit-keyframes mdc-checkbox-indeterminate-unchecked-mixedmark{0%{-webkit-animation-timing-function:linear;animation-timing-function:linear;-webkit-transform:scaleX(1);transform:scaleX(1);opacity:1}100%,32.8%{-webkit-transform:scaleX(0);transform:scaleX(0);opacity:0}}@keyframes mdc-checkbox-indeterminate-unchecked-mixedmark{0%{-webkit-animation-timing-function:linear;animation-timing-function:linear;-webkit-transform:scaleX(1);transform:scaleX(1);opacity:1}100%,32.8%{-webkit-transform:scaleX(0);transform:scaleX(0);opacity:0}}.mdc-checkbox{display:inline-block;position:relative;-webkit-box-flex:0;flex:0 0 18px;-webkit-box-sizing:content-box;box-sizing:content-box;width:18px;height:18px;line-height:0;white-space:nowrap;cursor:pointer;vertical-align:bottom}.mdc-checkbox--disabled{cursor:default;pointer-events:none}.mdc-checkbox__background{display:-webkit-inline-box;display:inline-flex;position:absolute;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;-webkit-box-sizing:border-box;box-sizing:border-box;width:18px;height:18px;border:2px solid currentColor;border-radius:2px;background-color:transparent;pointer-events:none;will-change:background-color,border-color;-webkit-transition:background-color 90ms 0s cubic-bezier(.4, 0, .6, 1),border-color 90ms 0s cubic-bezier(.4, 0, .6, 1);transition:background-color 90ms 0s cubic-bezier(.4, 0, .6, 1),border-color 90ms 0s cubic-bezier(.4, 0, .6, 1)}.mdc-checkbox__checkmark{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;opacity:0;-webkit-transition:opacity 180ms 0s cubic-bezier(.4, 0, .6, 1);transition:opacity 180ms 0s cubic-bezier(.4, 0, .6, 1)}.mdc-checkbox--upgraded .mdc-checkbox__checkmark{opacity:1}.mdc-checkbox__checkmark-path{-webkit-transition:stroke-dashoffset 180ms 0s cubic-bezier(.4, 0, .6, 1);transition:stroke-dashoffset 180ms 0s cubic-bezier(.4, 0, .6, 1);stroke:currentColor;stroke-width:3.12px;stroke-dashoffset:29.7833385;stroke-dasharray:29.7833385}.mdc-checkbox__mixedmark{width:100%;height:0;-webkit-transform:scaleX(0) rotate(0);transform:scaleX(0) rotate(0);border-width:1px;border-style:solid;opacity:0;-webkit-transition:opacity 90ms 0s cubic-bezier(.4, 0, .6, 1),-webkit-transform 90ms 0s cubic-bezier(.4, 0, .6, 1);transition:opacity 90ms 0s cubic-bezier(.4, 0, .6, 1),-webkit-transform 90ms 0s cubic-bezier(.4, 0, .6, 1);transition:opacity 90ms 0s cubic-bezier(.4, 0, .6, 1),transform 90ms 0s cubic-bezier(.4, 0, .6, 1);transition:opacity 90ms 0s cubic-bezier(.4, 0, .6, 1),transform 90ms 0s cubic-bezier(.4, 0, .6, 1),-webkit-transform 90ms 0s cubic-bezier(.4, 0, .6, 1)}.mdc-checkbox--anim-checked-unchecked .mdc-checkbox__background,.mdc-checkbox--anim-indeterminate-unchecked .mdc-checkbox__background,.mdc-checkbox--anim-unchecked-checked .mdc-checkbox__background,.mdc-checkbox--anim-unchecked-indeterminate .mdc-checkbox__background{-webkit-animation-duration:180ms;animation-duration:180ms;-webkit-animation-timing-function:linear;animation-timing-function:linear}.mdc-checkbox--anim-unchecked-checked .mdc-checkbox__checkmark-path{-webkit-animation:mdc-checkbox-unchecked-checked-checkmark-path 180ms linear 0s;animation:mdc-checkbox-unchecked-checked-checkmark-path 180ms linear 0s;-webkit-transition:none;transition:none}.mdc-checkbox--anim-unchecked-indeterminate .mdc-checkbox__mixedmark{-webkit-animation:mdc-checkbox-unchecked-indeterminate-mixedmark 90ms linear 0s;animation:mdc-checkbox-unchecked-indeterminate-mixedmark 90ms linear 0s;-webkit-transition:none;transition:none}.mdc-checkbox--anim-checked-unchecked .mdc-checkbox__checkmark-path{-webkit-animation:mdc-checkbox-checked-unchecked-checkmark-path 90ms linear 0s;animation:mdc-checkbox-checked-unchecked-checkmark-path 90ms linear 0s;-webkit-transition:none;transition:none}.mdc-checkbox--anim-checked-indeterminate .mdc-checkbox__checkmark{-webkit-animation:mdc-checkbox-checked-indeterminate-checkmark 90ms linear 0s;animation:mdc-checkbox-checked-indeterminate-checkmark 90ms linear 0s;-webkit-transition:none;transition:none}.mdc-checkbox--anim-checked-indeterminate .mdc-checkbox__mixedmark{-webkit-animation:mdc-checkbox-checked-indeterminate-mixedmark 90ms linear 0s;animation:mdc-checkbox-checked-indeterminate-mixedmark 90ms linear 0s;-webkit-transition:none;transition:none}.mdc-checkbox--anim-indeterminate-checked .mdc-checkbox__checkmark{-webkit-animation:mdc-checkbox-indeterminate-checked-checkmark .5s linear 0s;animation:mdc-checkbox-indeterminate-checked-checkmark .5s linear 0s;-webkit-transition:none;transition:none}.mdc-checkbox--anim-indeterminate-checked .mdc-checkbox__mixedmark{-webkit-animation:mdc-checkbox-indeterminate-checked-mixedmark .5s linear 0s;animation:mdc-checkbox-indeterminate-checked-mixedmark .5s linear 0s;-webkit-transition:none;transition:none}.mdc-checkbox--anim-indeterminate-unchecked .mdc-checkbox__mixedmark{-webkit-animation:mdc-checkbox-indeterminate-unchecked-mixedmark .3s linear 0s;animation:mdc-checkbox-indeterminate-unchecked-mixedmark .3s linear 0s;-webkit-transition:none;transition:none}.forge-checkbox--checked .mdc-checkbox__background,.forge-checkbox--indeterminate .mdc-checkbox__background{-webkit-transition:border-color 90ms 0s cubic-bezier(0, 0, .2, 1),background-color 90ms 0s cubic-bezier(0, 0, .2, 1);transition:border-color 90ms 0s cubic-bezier(0, 0, .2, 1),background-color 90ms 0s cubic-bezier(0, 0, .2, 1)}.forge-checkbox--checked .mdc-checkbox__background .mdc-checkbox__checkmark-path,.forge-checkbox--indeterminate .mdc-checkbox__background .mdc-checkbox__checkmark-path{stroke-dashoffset:0}::slotted(input[type=checkbox]){position:absolute;margin:0;padding:0;opacity:0;cursor:inherit}.forge-checkbox--disabled ::slotted(input[type=checkbox]){cursor:default;pointer-events:none}.forge-checkbox--checked .mdc-checkbox__background .mdc-checkbox__checkmark{-webkit-transition:opacity 180ms 0s cubic-bezier(0, 0, .2, 1),-webkit-transform 180ms 0s cubic-bezier(0, 0, .2, 1);transition:opacity 180ms 0s cubic-bezier(0, 0, .2, 1),-webkit-transform 180ms 0s cubic-bezier(0, 0, .2, 1);transition:opacity 180ms 0s cubic-bezier(0, 0, .2, 1),transform 180ms 0s cubic-bezier(0, 0, .2, 1);transition:opacity 180ms 0s cubic-bezier(0, 0, .2, 1),transform 180ms 0s cubic-bezier(0, 0, .2, 1),-webkit-transform 180ms 0s cubic-bezier(0, 0, .2, 1);opacity:1}.forge-checkbox--checked .mdc-checkbox__background .mdc-checkbox__mixedmark{-webkit-transform:scaleX(1) rotate(-45deg);transform:scaleX(1) rotate(-45deg)}.forge-checkbox--indeterminate .mdc-checkbox__background .mdc-checkbox__checkmark{-webkit-transform:rotate(45deg);transform:rotate(45deg);opacity:0;-webkit-transition:opacity 90ms 0s cubic-bezier(.4, 0, .6, 1),-webkit-transform 90ms 0s cubic-bezier(.4, 0, .6, 1);transition:opacity 90ms 0s cubic-bezier(.4, 0, .6, 1),-webkit-transform 90ms 0s cubic-bezier(.4, 0, .6, 1);transition:opacity 90ms 0s cubic-bezier(.4, 0, .6, 1),transform 90ms 0s cubic-bezier(.4, 0, .6, 1);transition:opacity 90ms 0s cubic-bezier(.4, 0, .6, 1),transform 90ms 0s cubic-bezier(.4, 0, .6, 1),-webkit-transform 90ms 0s cubic-bezier(.4, 0, .6, 1)}.forge-checkbox--indeterminate .mdc-checkbox__background .mdc-checkbox__mixedmark{-webkit-transform:scaleX(1) rotate(0);transform:scaleX(1) rotate(0);opacity:1}.mdc-checkbox.mdc-checkbox--upgraded .mdc-checkbox__background,.mdc-checkbox.mdc-checkbox--upgraded .mdc-checkbox__checkmark,.mdc-checkbox.mdc-checkbox--upgraded .mdc-checkbox__checkmark-path,.mdc-checkbox.mdc-checkbox--upgraded .mdc-checkbox__mixedmark{-webkit-transition:none;transition:none}@-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-checkbox{--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}.mdc-checkbox .mdc-checkbox__ripple::after,.mdc-checkbox .mdc-checkbox__ripple::before{position:absolute;border-radius:50%;opacity:0;pointer-events:none;content:\\\"\\\"}.mdc-checkbox .mdc-checkbox__ripple::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-checkbox .mdc-checkbox__ripple::after{z-index:0;z-index:var(--mdc-ripple-z-index,0)}.mdc-checkbox.mdc-ripple-upgraded .mdc-checkbox__ripple::before{-webkit-transform:scale(var(--mdc-ripple-fg-scale,1));transform:scale(var(--mdc-ripple-fg-scale,1))}.mdc-checkbox.mdc-ripple-upgraded .mdc-checkbox__ripple::after{top:0;left:0;-webkit-transform:scale(0);transform:scale(0);-webkit-transform-origin:center center;transform-origin:center center}.mdc-checkbox.mdc-ripple-upgraded--unbounded .mdc-checkbox__ripple::after{top:var(--mdc-ripple-top,0);left:var(--mdc-ripple-left,0)}.mdc-checkbox.mdc-ripple-upgraded--foreground-activation .mdc-checkbox__ripple::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-checkbox.mdc-ripple-upgraded--foreground-deactivation .mdc-checkbox__ripple::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-checkbox .mdc-checkbox__ripple::after,.mdc-checkbox .mdc-checkbox__ripple::before{top:calc(50% - 50%);left:calc(50% - 50%);width:100%;height:100%}.mdc-checkbox.mdc-ripple-upgraded .mdc-checkbox__ripple::after,.mdc-checkbox.mdc-ripple-upgraded .mdc-checkbox__ripple::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-checkbox.mdc-ripple-upgraded .mdc-checkbox__ripple::after{width:var(--mdc-ripple-fg-size,100%);height:var(--mdc-ripple-fg-size,100%)}.mdc-checkbox{z-index:0}.mdc-checkbox .mdc-checkbox__ripple::after,.mdc-checkbox .mdc-checkbox__ripple::before{z-index:-1;z-index:var(--mdc-ripple-z-index,-1)}.mdc-checkbox__ripple{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.forge-checkbox--dense{padding:calc((28px - 18px)/ 2);padding:calc((var(--mdc-checkbox-ripple-size,28px) - 18px)/ 2);margin:calc((28px - 28px)/ 2);margin:calc((var(--mdc-checkbox-ripple-size,28px) - var(--mdc-checkbox-ripple-size,28px))/ 2)}.forge-checkbox--dense .mdc-checkbox__background{top:calc((28px - 18px)/ 2);top:calc((var(--mdc-checkbox-ripple-size,28px) - 18px)/ 2);left:calc((28px - 18px)/ 2);left:calc((var(--mdc-checkbox-ripple-size,28px) - 18px)/ 2)}.forge-checkbox--dense ::slotted(input[type=checkbox]){top:calc((28px - 28px)/ 2);top:calc((var(--mdc-checkbox-ripple-size,28px) - var(--mdc-checkbox-ripple-size,28px))/ 2);right:calc((28px - 28px)/ 2);right:calc((var(--mdc-checkbox-ripple-size,28px) - var(--mdc-checkbox-ripple-size,28px))/ 2);left:calc((28px - 28px)/ 2);left:calc((var(--mdc-checkbox-ripple-size,28px) - var(--mdc-checkbox-ripple-size,28px))/ 2);width:28px;width:var(--mdc-checkbox-ripple-size,28px);height:28px;height:var(--mdc-checkbox-ripple-size,28px)}.forge-checkbox-wrapper--disabled{cursor:not-allowed}.forge-checkbox-wrapper--disabled ::slotted(label){cursor:not-allowed}.mdc-checkbox--disabled+::slotted(label){color:rgba(0,0,0,.38);color:var(--forge-theme-label-disabled-on-background,rgba(0,0,0,.38))}.forge-form-field{-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);color:rgba(0,0,0,.87);color:var(--mdc-theme-text-primary-on-background,rgba(0,0,0,.87));display:-webkit-inline-box;display:inline-flex;-webkit-box-align:center;align-items:center;vertical-align:middle}.forge-form-field ::slotted([slot=label]){-webkit-box-ordinal-group:1;order:0;margin-right:auto;padding-left:4px}.forge-form-field forge-switch~::slotted([slot=label]){padding-left:8px}.forge-form-field--align-end ::slotted([slot=label]){-webkit-box-ordinal-group:0;order:-1;margin-left:auto;padding-right:4px}:host{display:inline-block}:host([hidden]){display:none}';\n\nexport interface ICheckboxComponent extends IBaseComponent {\n dense: boolean;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'forge-checkbox': ICheckboxComponent;\n }\n}\n\n/**\n * The custom element class behind the `<forge-checkbox>` element.\n * \n * @tag forge-checkbox\n */\n@CustomElement({\n name: CHECKBOX_CONSTANTS.elementName\n})\nexport class CheckboxComponent extends BaseComponent implements ICheckboxComponent {\n public static get observedAttributes(): string[] {\n return [CHECKBOX_CONSTANTS.attributes.DENSE];\n }\n\n private _foundation: CheckboxFoundation;\n\n constructor() {\n super();\n attachShadowTemplate(this, template, styles);\n this._foundation = new CheckboxFoundation(new CheckboxAdapter(this));\n }\n\n public async connectedCallback(): Promise<void> {\n await this._ensureInputElement();\n this._foundation.connect();\n }\n\n public attributeChangedCallback(name: string, oldValue: string, newValue: string): void {\n switch (name) {\n case CHECKBOX_CONSTANTS.attributes.DENSE:\n this.dense = coerceBoolean(newValue);\n break;\n }\n }\n\n public disconnectedCallback(): void {\n this._foundation.disconnect();\n }\n\n /** Gets or sets whether or not the checkbox is dense */\n @FoundationProperty()\n public dense: boolean;\n\n private async _ensureInputElement(): Promise<Element> {\n // Not using core function ensureChild because it was not selecting the input properly\n return new Promise<Element>(resolve => {\n const element = this.querySelector('input');\n if (element) {\n resolve(element);\n }\n\n const observer = new MutationObserver(changes => {\n const hasAddedNodes = changes.reduce((prev, curr) => prev + curr.addedNodes.length, 0) > 0;\n if (hasAddedNodes) {\n const foundElement = this.querySelector('input');\n if (foundElement) {\n observer.disconnect();\n resolve(foundElement);\n }\n }\n });\n observer.observe(this, { childList: true, subtree: true });\n });\n }\n}\n", "import { FormFieldComponentDelegate, IFormFieldComponentDelegateOptions } from '../core';\nimport { IBaseComponentDelegateConfig } from '../core/delegates/base-component-delegate';\nimport { ICheckboxComponent } from './checkbox';\nimport { CHECKBOX_CONSTANTS } from './checkbox-constants';\n\nexport type CheckboxComponentDelegateProps = Partial<ICheckboxComponent>;\nexport interface ICheckboxComponentDelegateOptions extends IFormFieldComponentDelegateOptions {\n id?: string;\n label?: string;\n checked?: boolean;\n}\nexport interface ICheckboxComponentDelegateConfig extends IBaseComponentDelegateConfig<ICheckboxComponent, ICheckboxComponentDelegateOptions> {}\n\nexport class CheckboxComponentDelegate extends FormFieldComponentDelegate<ICheckboxComponent, ICheckboxComponentDelegateOptions> {\n private _inputElement: HTMLInputElement;\n private _labelElement?: HTMLLabelElement;\n\n constructor(config?: ICheckboxComponentDelegateConfig) {\n super(config);\n }\n\n public get value(): boolean {\n return this.checked;\n }\n public set value(value: boolean) {\n this.checked = value;\n }\n\n public get checked(): boolean {\n return this._inputElement.checked;\n }\n public set checked(value: boolean) {\n this._inputElement.checked = value;\n }\n\n public get disabled(): boolean {\n return this._inputElement.disabled;\n }\n public set disabled(value: boolean) {\n this._inputElement.disabled = value;\n }\n\n public get inputElement(): HTMLInputElement {\n return this._inputElement;\n }\n\n public get labelElement(): HTMLLabelElement | undefined {\n return this._labelElement;\n }\n\n public onChange(listener: (value: boolean) => void): void {\n this._inputElement.addEventListener('change', evt => listener((evt.target as HTMLInputElement).checked));\n }\n\n public onFocus(listener: (evt: Event) => void): void {\n this._inputElement.addEventListener('focus', evt => listener(evt));\n }\n\n public onBlur(listener: (evt: Event) => void): void {\n this._inputElement.addEventListener('blur', evt => listener(evt));\n }\n\n public setLabel(text: string | null): void {\n if (text) {\n if (this._labelElement) {\n this._labelElement.textContent = text;\n } else {\n this._createLabel(text);\n }\n } else if (this._labelElement) {\n this._element.removeChild(this._labelElement);\n this._labelElement = undefined;\n }\n }\n\n protected _build(): ICheckboxComponent {\n const checkbox = document.createElement(CHECKBOX_CONSTANTS.elementName);\n this._inputElement = this._buildInputElement();\n checkbox.appendChild(this._inputElement);\n return checkbox;\n }\n\n protected override _configure(): void {\n if (typeof this._config.options?.label === 'string') {\n this._createLabel(this._config.options.label);\n }\n }\n\n private _createLabel(text: string): void {\n this._labelElement = document.createElement('label');\n this._labelElement.textContent = text;\n if (this._config.options?.id) {\n this._labelElement.setAttribute('for', this._config.options.id);\n }\n this._element.appendChild(this._labelElement);\n }\n\n private _buildInputElement(): HTMLInputElement {\n const inputElement = document.createElement('input');\n inputElement.type = 'checkbox';\n\n if (this._config.options?.checked !== undefined) {\n inputElement.checked = this._config.options.checked;\n }\n if (this._config.options?.id) {\n inputElement.id = this._config.options.id;\n }\n\n return inputElement;\n }\n}\n", "import { defineCustomElement } from '@tylertech/forge-core';\n\nimport { CheckboxComponent } from './checkbox';\n\nexport * from './checkbox-constants';\nexport * from './checkbox-adapter';\nexport * from './checkbox-foundation';\nexport * from './checkbox';\nexport * from './checkbox-component-delegate';\n\nexport function defineCheckboxComponent(): void {\n defineCustomElement(CheckboxComponent);\n}\n"],
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }
@@ -290,4 +290,4 @@ export {
290
290
  LabelValueComponentDelegate,
291
291
  defineLabelValueComponent
292
292
  };
293
- //# sourceMappingURL=chunk.VDKKTHAJ.js.map
293
+ //# sourceMappingURL=chunk.ANME7BKM.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/label-value/label-value-constants.ts", "../../src/label-value/label-value-adapter.ts", "../../src/label-value/label-value-foundation.ts", "../../src/label-value/label-value.ts", "../../src/label-value/label-value-component-delegate.ts", "../../src/label-value/index.ts"],
4
- "sourcesContent": ["import { COMPONENT_NAME_PREFIX } from '../constants';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}label-value`;\n\nconst attributes = {\n EMPTY: 'empty',\n ELLIPSIS: 'ellipsis',\n DENSITY: 'density',\n ALIGN: 'align'\n};\n\nconst classes = {\n EMPTY: 'forge-label-value--empty',\n ELLIPSIS: 'forge-label-value--ellipsis',\n DENSE: 'forge-label-value--dense',\n ROOMY: 'forge-label-value--roomy',\n ALIGN_CENTER: 'forge-label-value--align-center',\n ALIGN_RIGHT: 'forge-label-value--align-right'\n};\n\nconst selectors = {\n ROOT: '.forge-label-value'\n};\n\nexport const LABEL_VALUE_CONSTANTS = {\n elementName,\n attributes,\n classes,\n selectors\n};\n\nexport type LabelValueAlignment = 'left' | 'center' | 'right';\nexport { FieldDensityType as LabelValueDensityType } from '../field/field-constants';\n", "import { getShadowElement, removeClass, toggleClass } from '@tylertech/forge-core';\nimport { BaseAdapter, IBaseAdapter } from '../core/base/base-adapter';\nimport { ILabelValueComponent } from './label-value';\nimport { LabelValueAlignment, LABEL_VALUE_CONSTANTS } from './label-value-constants';\n\nexport interface ILabelValueAdapter extends IBaseAdapter {\n setEmpty(isEmpty: boolean): void;\n setEllipsis(ellipsis: boolean): void;\n setRoomy(isRoomy: boolean): void;\n setDense(isDense: boolean): void;\n setAlignment(value: LabelValueAlignment): void;\n}\n\nexport class LabelValueAdapter extends BaseAdapter<ILabelValueComponent> implements ILabelValueAdapter {\n private _rootElement: HTMLElement;\n\n constructor(component: ILabelValueComponent) {\n super(component);\n this._rootElement = getShadowElement(component, LABEL_VALUE_CONSTANTS.selectors.ROOT);\n }\n\n public setEmpty(isEmpty: boolean): void {\n if (isEmpty) {\n this._rootElement.classList.add(LABEL_VALUE_CONSTANTS.classes.EMPTY);\n } else {\n this._rootElement.classList.remove(LABEL_VALUE_CONSTANTS.classes.EMPTY);\n }\n }\n\n public setEllipsis(ellipsis: boolean): void {\n if (ellipsis) {\n this._rootElement.classList.add(LABEL_VALUE_CONSTANTS.classes.ELLIPSIS);\n } else {\n this._rootElement.classList.remove(LABEL_VALUE_CONSTANTS.classes.ELLIPSIS);\n }\n }\n\n public setRoomy(isRoomy: boolean): void {\n toggleClass(this._rootElement, isRoomy, LABEL_VALUE_CONSTANTS.classes.ROOMY);\n }\n\n public setDense(isDense: boolean): void {\n toggleClass(this._rootElement, isDense, LABEL_VALUE_CONSTANTS.classes.DENSE);\n }\n\n public setAlignment(value: LabelValueAlignment): void {\n removeClass([LABEL_VALUE_CONSTANTS.classes.ALIGN_CENTER, LABEL_VALUE_CONSTANTS.classes.ALIGN_RIGHT], this._rootElement);\n\n switch (value) {\n case 'center':\n this._rootElement.classList.add(LABEL_VALUE_CONSTANTS.classes.ALIGN_CENTER);\n break;\n case 'right':\n this._rootElement.classList.add(LABEL_VALUE_CONSTANTS.classes.ALIGN_RIGHT);\n break;\n }\n }\n}\n", "import { ICustomElementFoundation, isDefined } from '@tylertech/forge-core';\nimport { FieldDensityType } from '../field/field-constants';\n\nimport { ILabelValueAdapter } from './label-value-adapter';\nimport { LABEL_VALUE_CONSTANTS, LabelValueAlignment } from './label-value-constants';\n\nexport interface ILabelValueFoundation extends ICustomElementFoundation {\n empty: boolean;\n ellipsis: boolean;\n density: FieldDensityType;\n align: LabelValueAlignment;\n}\n\nexport class LabelValueFoundation implements ILabelValueFoundation {\n private _empty = false;\n private _ellipsis = false;\n private _density: FieldDensityType = 'default';\n private _align: LabelValueAlignment = 'left';\n\n constructor(private _adapter: ILabelValueAdapter) {}\n\n public initialize(): void {\n this._adapter.setEmpty(this._empty);\n this._adapter.setEllipsis(this._ellipsis);\n this._applyDensity();\n this._adapter.setAlignment(this._align);\n }\n\n private _applyDensity(): void {\n this._adapter.setRoomy(this._density === 'roomy');\n this._adapter.setDense(this._density === 'dense');\n }\n\n public get empty(): boolean {\n return this._empty;\n }\n public set empty(value: boolean) {\n if (this._empty !== value) {\n this._empty = value;\n this._adapter.setEmpty(this._empty);\n if (this._empty) {\n this._adapter.setHostAttribute(LABEL_VALUE_CONSTANTS.attributes.EMPTY, '');\n } else {\n this._adapter.removeHostAttribute(LABEL_VALUE_CONSTANTS.attributes.EMPTY);\n }\n }\n }\n\n public get ellipsis(): boolean {\n return this._ellipsis;\n }\n public set ellipsis(value: boolean) {\n if (this._ellipsis !== value) {\n this._ellipsis = value;\n this._adapter.setEllipsis(this._ellipsis);\n if (this._ellipsis) {\n this._adapter.setHostAttribute(LABEL_VALUE_CONSTANTS.attributes.ELLIPSIS, '');\n } else {\n this._adapter.removeHostAttribute(LABEL_VALUE_CONSTANTS.attributes.ELLIPSIS);\n }\n }\n }\n\n public get density(): FieldDensityType {\n return this._density;\n }\n public set density(value: FieldDensityType) {\n if (this._density !== value) {\n this._density = value;\n this._applyDensity();\n this._adapter.setHostAttribute(LABEL_VALUE_CONSTANTS.attributes.DENSITY, this._density.toString());\n }\n }\n\n public get align(): LabelValueAlignment {\n return this._align;\n }\n public set align(value: LabelValueAlignment) {\n if (this._align !== value) {\n this._align = value;\n this._adapter.setAlignment(this._align);\n if (this._align) {\n this._adapter.setHostAttribute(LABEL_VALUE_CONSTANTS.attributes.ALIGN, this._align);\n } else {\n this._adapter.removeHostAttribute(LABEL_VALUE_CONSTANTS.attributes.ALIGN);\n }\n }\n }\n}\n", "import { CustomElement, attachShadowTemplate, coerceBoolean, FoundationProperty } from '@tylertech/forge-core';\nimport { LabelValueAdapter } from './label-value-adapter';\nimport { LabelValueFoundation } from './label-value-foundation';\nimport { LABEL_VALUE_CONSTANTS, LabelValueAlignment } from './label-value-constants';\nimport { BaseComponent, IBaseComponent } from '../core/base/base-component';\nimport { FieldDensityType } from '../field/field-constants';\n\nconst template = '<template><div class=\\\"forge-label-value\\\" part=\\\"root\\\"><div class=\\\"forge-label-value__icon-container\\\" part=\\\"icon-container\\\"><slot name=\\\"icon\\\"></slot></div><div class=\\\"forge-label-value__container\\\" part=\\\"container\\\"><div class=\\\"forge-label-value__label\\\" part=\\\"label-container\\\"><slot name=\\\"label\\\"></slot></div><div class=\\\"forge-label-value__value\\\" part=\\\"value-container\\\"><slot name=\\\"value\\\"></slot></div></div></div></template>';\nconst styles = ':host{display:block;min-width:0}:host([hidden]){display:none}.forge-label-value{display:-webkit-box;display:flex;min-height:3rem}.forge-label-value__container{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-webkit-box-flex:1;flex:1}.forge-label-value__icon-container{display:-webkit-box;display:flex;-webkit-box-align:start;align-items:flex-start}.forge-label-value__icon-container ::slotted([slot=icon]){color:rgba(0,0,0,.87);color:var(--mdc-theme-text-primary-on-background,rgba(0,0,0,.87));font-size:1.25rem!important;margin-right:8px;margin-top:4px}.forge-label-value--align-center .forge-label-value__container{-webkit-box-align:center;align-items:center}.forge-label-value--align-right .forge-label-value__container{-webkit-box-align:end;align-items:flex-end}.forge-label-value__label{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-caption-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:.75rem;font-size:var(--mdc-typography-caption-font-size, .75rem);line-height:1.25rem;line-height:var(--mdc-typography-caption-line-height, 1.25rem);font-weight:400;font-weight:var(--mdc-typography-caption-font-weight,400);letter-spacing:.0333333333em;letter-spacing:var(--mdc-typography-caption-letter-spacing, .0333333333em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-caption-text-decoration,inherit);text-decoration:var(--mdc-typography-caption-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-caption-text-transform,inherit);color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54));font-size:.8125rem;height:.8125rem;line-height:.8125rem;margin-top:.5rem}.forge-label-value__value{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-body1-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:1rem;font-size:var(--mdc-typography-body1-font-size, 1rem);line-height:1.5rem;line-height:var(--mdc-typography-body1-line-height, 1.5rem);font-weight:400;font-weight:var(--mdc-typography-body1-font-weight,400);letter-spacing:.03125em;letter-spacing:var(--mdc-typography-body1-letter-spacing, .03125em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-body1-text-decoration,inherit);text-decoration:var(--mdc-typography-body1-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-body1-text-transform,inherit);line-height:1rem;margin-top:.375rem}.forge-label-value--roomy{min-height:3.5rem}.forge-label-value--roomy .forge-label-value__label{margin-top:.625rem}.forge-label-value--roomy .forge-label-value__value{margin-top:.5rem}.forge-label-value--roomy ::slotted([slot=icon]){margin-top:6px}.forge-label-value--dense{min-height:1.5rem}.forge-label-value--dense .forge-label-value__container{-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;-webkit-box-align:center;align-items:center}.forge-label-value--dense .forge-label-value__container .forge-label-value__label{margin-top:0;margin-right:8px}.forge-label-value--dense .forge-label-value__container .forge-label-value__value{margin-top:0;font-size:.875rem}.forge-label-value--dense ::slotted([slot=icon]){margin-top:2px}.forge-label-value--empty .forge-label-value__value{color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54));font-style:italic}.forge-label-value--ellipsis .forge-label-value__container{overflow:hidden}.forge-label-value--ellipsis .forge-label-value__container .forge-label-value__label,.forge-label-value--ellipsis .forge-label-value__container .forge-label-value__value{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}';\n\nexport interface ILabelValueComponent extends IBaseComponent {\n empty: boolean;\n ellipsis: boolean;\n density: FieldDensityType;\n align: LabelValueAlignment;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'forge-label-value': ILabelValueComponent;\n }\n}\n\n@CustomElement({\n name: LABEL_VALUE_CONSTANTS.elementName\n})\nexport class LabelValueComponent extends BaseComponent implements ILabelValueComponent {\n public static get observedAttributes(): string[] {\n return [\n LABEL_VALUE_CONSTANTS.attributes.EMPTY,\n LABEL_VALUE_CONSTANTS.attributes.ELLIPSIS,\n LABEL_VALUE_CONSTANTS.attributes.DENSITY,\n LABEL_VALUE_CONSTANTS.attributes.ALIGN\n ];\n }\n\n private _foundation: LabelValueFoundation;\n\n constructor() {\n super();\n attachShadowTemplate(this, template, styles);\n this._foundation = new LabelValueFoundation(new LabelValueAdapter(this));\n }\n\n public connectedCallback(): void {\n this._foundation.initialize();\n }\n\n public attributeChangedCallback(name: string, oldValue: string, newValue: string): void {\n switch (name) {\n case LABEL_VALUE_CONSTANTS.attributes.EMPTY:\n this.empty = coerceBoolean(newValue);\n break;\n case LABEL_VALUE_CONSTANTS.attributes.ELLIPSIS:\n this.ellipsis = coerceBoolean(newValue);\n break;\n case LABEL_VALUE_CONSTANTS.attributes.DENSITY:\n this.density = newValue as FieldDensityType;\n break;\n case LABEL_VALUE_CONSTANTS.attributes.ALIGN:\n this.align = newValue as LabelValueAlignment;\n break;\n }\n }\n\n /** Gets/sets the empty state. */\n @FoundationProperty()\n public empty: boolean;\n\n /** Gets/sets the wrap-content attribute. */\n @FoundationProperty()\n public ellipsis: boolean;\n\n /** Controls the density type. */\n @FoundationProperty()\n public density: FieldDensityType;\n\n /** Gets/sets the alignment. */\n @FoundationProperty()\n public align: LabelValueAlignment;\n}\n", "import { BaseComponentDelegate, IBaseComponentDelegateConfig, IBaseComponentDelegateOptions } from '../core/delegates/base-component-delegate';\nimport { ILabelValueComponent } from '../label-value';\nimport { LABEL_VALUE_CONSTANTS } from './label-value-constants';\n\nexport type LabelValueComponentDelegateProps = Partial<ILabelValueComponent>;\nexport interface ILabelValueComponentDelegateOptions extends IBaseComponentDelegateOptions {\n labelText: string;\n valueText: string;\n iconElement?: HTMLElement;\n}\nexport interface ILabelValueComponentDelegateConfig extends IBaseComponentDelegateConfig<ILabelValueComponent, ILabelValueComponentDelegateOptions> {}\n\nexport class LabelValueComponentDelegate extends BaseComponentDelegate<ILabelValueComponent, ILabelValueComponentDelegateOptions> {\n private _labelElement: HTMLElement;\n private _valueElement: HTMLElement;\n\n constructor(config?: ILabelValueComponentDelegateConfig) {\n super(config);\n }\n\n public get labelElement(): HTMLElement {\n return this._labelElement;\n }\n\n public get valueElement(): HTMLElement {\n return this._valueElement;\n }\n\n public get labelText(): string {\n return this._labelElement.textContent ?? '';\n }\n public set labelText(value: string) {\n this._labelElement.textContent = value;\n }\n\n public get valueText(): string {\n return this._valueElement.textContent ?? '';\n }\n public set valueText(value: string) {\n this._valueElement.textContent = value;\n }\n\n protected _build(): ILabelValueComponent {\n return document.createElement(LABEL_VALUE_CONSTANTS.elementName);\n }\n\n protected override _configure(): void {\n if (this._config.options?.labelText) {\n this._labelElement = this._createTextElement(this._config.options.labelText, 'label');\n }\n if (this._config.options?.valueText) {\n this._valueElement = this._createTextElement(this._config.options.valueText, 'value');\n }\n if (this._config.options?.iconElement) {\n this._element.appendChild(this._config.options.iconElement);\n }\n }\n\n private _createTextElement(text: string, slot: string): HTMLElement {\n const span = document.createElement('span');\n span.textContent = text;\n span.slot = slot;\n this._element.appendChild(span);\n return span;\n }\n}\n", "import { defineCustomElement } from '@tylertech/forge-core';\n\nimport { LabelValueComponent } from './label-value';\n\nexport * from './label-value-adapter';\nexport * from './label-value-constants';\nexport * from './label-value-foundation';\nexport * from './label-value';\nexport * from './label-value-component-delegate';\n\nexport function defineLabelValueComponent(): void {\n defineCustomElement(LabelValueComponent);\n}\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["import { COMPONENT_NAME_PREFIX } from '../constants';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}label-value`;\n\nconst attributes = {\n EMPTY: 'empty',\n ELLIPSIS: 'ellipsis',\n DENSITY: 'density',\n ALIGN: 'align'\n};\n\nconst classes = {\n EMPTY: 'forge-label-value--empty',\n ELLIPSIS: 'forge-label-value--ellipsis',\n DENSE: 'forge-label-value--dense',\n ROOMY: 'forge-label-value--roomy',\n ALIGN_CENTER: 'forge-label-value--align-center',\n ALIGN_RIGHT: 'forge-label-value--align-right'\n};\n\nconst selectors = {\n ROOT: '.forge-label-value'\n};\n\nexport const LABEL_VALUE_CONSTANTS = {\n elementName,\n attributes,\n classes,\n selectors\n};\n\nexport type LabelValueAlignment = 'left' | 'center' | 'right';\nexport { FieldDensityType as LabelValueDensityType } from '../field/field-constants';\n", "import { getShadowElement, removeClass, toggleClass } from '@tylertech/forge-core';\nimport { BaseAdapter, IBaseAdapter } from '../core/base/base-adapter';\nimport { ILabelValueComponent } from './label-value';\nimport { LabelValueAlignment, LABEL_VALUE_CONSTANTS } from './label-value-constants';\n\nexport interface ILabelValueAdapter extends IBaseAdapter {\n setEmpty(isEmpty: boolean): void;\n setEllipsis(ellipsis: boolean): void;\n setRoomy(isRoomy: boolean): void;\n setDense(isDense: boolean): void;\n setAlignment(value: LabelValueAlignment): void;\n}\n\nexport class LabelValueAdapter extends BaseAdapter<ILabelValueComponent> implements ILabelValueAdapter {\n private _rootElement: HTMLElement;\n\n constructor(component: ILabelValueComponent) {\n super(component);\n this._rootElement = getShadowElement(component, LABEL_VALUE_CONSTANTS.selectors.ROOT);\n }\n\n public setEmpty(isEmpty: boolean): void {\n if (isEmpty) {\n this._rootElement.classList.add(LABEL_VALUE_CONSTANTS.classes.EMPTY);\n } else {\n this._rootElement.classList.remove(LABEL_VALUE_CONSTANTS.classes.EMPTY);\n }\n }\n\n public setEllipsis(ellipsis: boolean): void {\n if (ellipsis) {\n this._rootElement.classList.add(LABEL_VALUE_CONSTANTS.classes.ELLIPSIS);\n } else {\n this._rootElement.classList.remove(LABEL_VALUE_CONSTANTS.classes.ELLIPSIS);\n }\n }\n\n public setRoomy(isRoomy: boolean): void {\n toggleClass(this._rootElement, isRoomy, LABEL_VALUE_CONSTANTS.classes.ROOMY);\n }\n\n public setDense(isDense: boolean): void {\n toggleClass(this._rootElement, isDense, LABEL_VALUE_CONSTANTS.classes.DENSE);\n }\n\n public setAlignment(value: LabelValueAlignment): void {\n removeClass([LABEL_VALUE_CONSTANTS.classes.ALIGN_CENTER, LABEL_VALUE_CONSTANTS.classes.ALIGN_RIGHT], this._rootElement);\n\n switch (value) {\n case 'center':\n this._rootElement.classList.add(LABEL_VALUE_CONSTANTS.classes.ALIGN_CENTER);\n break;\n case 'right':\n this._rootElement.classList.add(LABEL_VALUE_CONSTANTS.classes.ALIGN_RIGHT);\n break;\n }\n }\n}\n", "import { ICustomElementFoundation, isDefined } from '@tylertech/forge-core';\nimport { FieldDensityType } from '../field/field-constants';\n\nimport { ILabelValueAdapter } from './label-value-adapter';\nimport { LABEL_VALUE_CONSTANTS, LabelValueAlignment } from './label-value-constants';\n\nexport interface ILabelValueFoundation extends ICustomElementFoundation {\n empty: boolean;\n ellipsis: boolean;\n density: FieldDensityType;\n align: LabelValueAlignment;\n}\n\nexport class LabelValueFoundation implements ILabelValueFoundation {\n private _empty = false;\n private _ellipsis = false;\n private _density: FieldDensityType = 'default';\n private _align: LabelValueAlignment = 'left';\n\n constructor(private _adapter: ILabelValueAdapter) {}\n\n public initialize(): void {\n this._adapter.setEmpty(this._empty);\n this._adapter.setEllipsis(this._ellipsis);\n this._applyDensity();\n this._adapter.setAlignment(this._align);\n }\n\n private _applyDensity(): void {\n this._adapter.setRoomy(this._density === 'roomy');\n this._adapter.setDense(this._density === 'dense');\n }\n\n public get empty(): boolean {\n return this._empty;\n }\n public set empty(value: boolean) {\n if (this._empty !== value) {\n this._empty = value;\n this._adapter.setEmpty(this._empty);\n if (this._empty) {\n this._adapter.setHostAttribute(LABEL_VALUE_CONSTANTS.attributes.EMPTY, '');\n } else {\n this._adapter.removeHostAttribute(LABEL_VALUE_CONSTANTS.attributes.EMPTY);\n }\n }\n }\n\n public get ellipsis(): boolean {\n return this._ellipsis;\n }\n public set ellipsis(value: boolean) {\n if (this._ellipsis !== value) {\n this._ellipsis = value;\n this._adapter.setEllipsis(this._ellipsis);\n if (this._ellipsis) {\n this._adapter.setHostAttribute(LABEL_VALUE_CONSTANTS.attributes.ELLIPSIS, '');\n } else {\n this._adapter.removeHostAttribute(LABEL_VALUE_CONSTANTS.attributes.ELLIPSIS);\n }\n }\n }\n\n public get density(): FieldDensityType {\n return this._density;\n }\n public set density(value: FieldDensityType) {\n if (this._density !== value) {\n this._density = value;\n this._applyDensity();\n this._adapter.setHostAttribute(LABEL_VALUE_CONSTANTS.attributes.DENSITY, this._density.toString());\n }\n }\n\n public get align(): LabelValueAlignment {\n return this._align;\n }\n public set align(value: LabelValueAlignment) {\n if (this._align !== value) {\n this._align = value;\n this._adapter.setAlignment(this._align);\n if (this._align) {\n this._adapter.setHostAttribute(LABEL_VALUE_CONSTANTS.attributes.ALIGN, this._align);\n } else {\n this._adapter.removeHostAttribute(LABEL_VALUE_CONSTANTS.attributes.ALIGN);\n }\n }\n }\n}\n", "import { CustomElement, attachShadowTemplate, coerceBoolean, FoundationProperty } from '@tylertech/forge-core';\nimport { LabelValueAdapter } from './label-value-adapter';\nimport { LabelValueFoundation } from './label-value-foundation';\nimport { LABEL_VALUE_CONSTANTS, LabelValueAlignment } from './label-value-constants';\nimport { BaseComponent, IBaseComponent } from '../core/base/base-component';\nimport { FieldDensityType } from '../field/field-constants';\n\nconst template = '<template><div class=\\\"forge-label-value\\\" part=\\\"root\\\"><div class=\\\"forge-label-value__icon-container\\\" part=\\\"icon-container\\\"><slot name=\\\"icon\\\"></slot></div><div class=\\\"forge-label-value__container\\\" part=\\\"container\\\"><div class=\\\"forge-label-value__label\\\" part=\\\"label-container\\\"><slot name=\\\"label\\\"></slot></div><div class=\\\"forge-label-value__value\\\" part=\\\"value-container\\\"><slot name=\\\"value\\\"></slot></div></div></div></template>';\nconst styles = ':host{display:block;min-width:0}:host([hidden]){display:none}.forge-label-value{display:-webkit-box;display:flex;min-height:3rem}.forge-label-value__container{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-webkit-box-flex:1;flex:1}.forge-label-value__icon-container{display:-webkit-box;display:flex;-webkit-box-align:start;align-items:flex-start}.forge-label-value__icon-container ::slotted([slot=icon]){color:rgba(0,0,0,.87);color:var(--mdc-theme-text-primary-on-background,rgba(0,0,0,.87));font-size:1.25rem!important;margin-right:8px;margin-top:4px}.forge-label-value--align-center .forge-label-value__container{-webkit-box-align:center;align-items:center}.forge-label-value--align-right .forge-label-value__container{-webkit-box-align:end;align-items:flex-end}.forge-label-value__label{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-caption-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:.75rem;font-size:var(--mdc-typography-caption-font-size, .75rem);line-height:1.25rem;line-height:var(--mdc-typography-caption-line-height, 1.25rem);font-weight:400;font-weight:var(--mdc-typography-caption-font-weight,400);letter-spacing:.0333333333em;letter-spacing:var(--mdc-typography-caption-letter-spacing, .0333333333em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-caption-text-decoration,inherit);text-decoration:var(--mdc-typography-caption-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-caption-text-transform,inherit);color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54));font-size:.8125rem;height:.8125rem;line-height:.8125rem;margin-top:.5rem}.forge-label-value__value{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-body1-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:1rem;font-size:var(--mdc-typography-body1-font-size, 1rem);line-height:1.5rem;line-height:var(--mdc-typography-body1-line-height, 1.5rem);font-weight:400;font-weight:var(--mdc-typography-body1-font-weight,400);letter-spacing:.03125em;letter-spacing:var(--mdc-typography-body1-letter-spacing, .03125em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-body1-text-decoration,inherit);text-decoration:var(--mdc-typography-body1-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-body1-text-transform,inherit);line-height:1rem;margin-top:.375rem}.forge-label-value--roomy{min-height:3.5rem}.forge-label-value--roomy .forge-label-value__label{margin-top:.625rem}.forge-label-value--roomy .forge-label-value__value{margin-top:.5rem}.forge-label-value--roomy ::slotted([slot=icon]){margin-top:6px}.forge-label-value--dense{min-height:1.5rem}.forge-label-value--dense .forge-label-value__container{-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;-webkit-box-align:center;align-items:center}.forge-label-value--dense .forge-label-value__container .forge-label-value__label{margin-top:0;margin-right:8px}.forge-label-value--dense .forge-label-value__container .forge-label-value__value{margin-top:0;font-size:.875rem}.forge-label-value--dense ::slotted([slot=icon]){margin-top:2px}.forge-label-value--empty .forge-label-value__value{color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54));font-style:italic}.forge-label-value--ellipsis .forge-label-value__container{overflow:hidden}.forge-label-value--ellipsis .forge-label-value__container .forge-label-value__label,.forge-label-value--ellipsis .forge-label-value__container .forge-label-value__value{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}';\n\nexport interface ILabelValueComponent extends IBaseComponent {\n empty: boolean;\n ellipsis: boolean;\n density: FieldDensityType;\n align: LabelValueAlignment;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'forge-label-value': ILabelValueComponent;\n }\n}\n\n/**\n * The web component class behind the `<forge-label-value>` custom element.\n * \n * @tag forge-label-value\n */\n@CustomElement({\n name: LABEL_VALUE_CONSTANTS.elementName\n})\nexport class LabelValueComponent extends BaseComponent implements ILabelValueComponent {\n public static get observedAttributes(): string[] {\n return [\n LABEL_VALUE_CONSTANTS.attributes.EMPTY,\n LABEL_VALUE_CONSTANTS.attributes.ELLIPSIS,\n LABEL_VALUE_CONSTANTS.attributes.DENSITY,\n LABEL_VALUE_CONSTANTS.attributes.ALIGN\n ];\n }\n\n private _foundation: LabelValueFoundation;\n\n constructor() {\n super();\n attachShadowTemplate(this, template, styles);\n this._foundation = new LabelValueFoundation(new LabelValueAdapter(this));\n }\n\n public connectedCallback(): void {\n this._foundation.initialize();\n }\n\n public attributeChangedCallback(name: string, oldValue: string, newValue: string): void {\n switch (name) {\n case LABEL_VALUE_CONSTANTS.attributes.EMPTY:\n this.empty = coerceBoolean(newValue);\n break;\n case LABEL_VALUE_CONSTANTS.attributes.ELLIPSIS:\n this.ellipsis = coerceBoolean(newValue);\n break;\n case LABEL_VALUE_CONSTANTS.attributes.DENSITY:\n this.density = newValue as FieldDensityType;\n break;\n case LABEL_VALUE_CONSTANTS.attributes.ALIGN:\n this.align = newValue as LabelValueAlignment;\n break;\n }\n }\n\n /** Gets/sets the empty state. */\n @FoundationProperty()\n public empty: boolean;\n\n /** Gets/sets the wrap-content attribute. */\n @FoundationProperty()\n public ellipsis: boolean;\n\n /** Controls the density type. */\n @FoundationProperty()\n public density: FieldDensityType;\n\n /** Gets/sets the alignment. */\n @FoundationProperty()\n public align: LabelValueAlignment;\n}\n", "import { BaseComponentDelegate, IBaseComponentDelegateConfig, IBaseComponentDelegateOptions } from '../core/delegates/base-component-delegate';\nimport { ILabelValueComponent } from '../label-value';\nimport { LABEL_VALUE_CONSTANTS } from './label-value-constants';\n\nexport type LabelValueComponentDelegateProps = Partial<ILabelValueComponent>;\nexport interface ILabelValueComponentDelegateOptions extends IBaseComponentDelegateOptions {\n labelText: string;\n valueText: string;\n iconElement?: HTMLElement;\n}\nexport interface ILabelValueComponentDelegateConfig extends IBaseComponentDelegateConfig<ILabelValueComponent, ILabelValueComponentDelegateOptions> {}\n\nexport class LabelValueComponentDelegate extends BaseComponentDelegate<ILabelValueComponent, ILabelValueComponentDelegateOptions> {\n private _labelElement: HTMLElement;\n private _valueElement: HTMLElement;\n\n constructor(config?: ILabelValueComponentDelegateConfig) {\n super(config);\n }\n\n public get labelElement(): HTMLElement {\n return this._labelElement;\n }\n\n public get valueElement(): HTMLElement {\n return this._valueElement;\n }\n\n public get labelText(): string {\n return this._labelElement.textContent ?? '';\n }\n public set labelText(value: string) {\n this._labelElement.textContent = value;\n }\n\n public get valueText(): string {\n return this._valueElement.textContent ?? '';\n }\n public set valueText(value: string) {\n this._valueElement.textContent = value;\n }\n\n protected _build(): ILabelValueComponent {\n return document.createElement(LABEL_VALUE_CONSTANTS.elementName);\n }\n\n protected override _configure(): void {\n if (this._config.options?.labelText) {\n this._labelElement = this._createTextElement(this._config.options.labelText, 'label');\n }\n if (this._config.options?.valueText) {\n this._valueElement = this._createTextElement(this._config.options.valueText, 'value');\n }\n if (this._config.options?.iconElement) {\n this._element.appendChild(this._config.options.iconElement);\n }\n }\n\n private _createTextElement(text: string, slot: string): HTMLElement {\n const span = document.createElement('span');\n span.textContent = text;\n span.slot = slot;\n this._element.appendChild(span);\n return span;\n }\n}\n", "import { defineCustomElement } from '@tylertech/forge-core';\n\nimport { LabelValueComponent } from './label-value';\n\nexport * from './label-value-adapter';\nexport * from './label-value-constants';\nexport * from './label-value-foundation';\nexport * from './label-value';\nexport * from './label-value-component-delegate';\n\nexport function defineLabelValueComponent(): void {\n defineCustomElement(LabelValueComponent);\n}\n"],
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }
@@ -5,7 +5,7 @@
5
5
  */
6
6
  import {
7
7
  SELECT_CONSTANTS
8
- } from "./chunk.CKVCNPLI.js";
8
+ } from "./chunk.MBZLA635.js";
9
9
  import {
10
10
  FormFieldComponentDelegate
11
11
  } from "./chunk.HZISALRH.js";
@@ -69,4 +69,4 @@ var SelectComponentDelegate = class extends FormFieldComponentDelegate {
69
69
  export {
70
70
  SelectComponentDelegate
71
71
  };
72
- //# sourceMappingURL=chunk.O62N7AHR.js.map
72
+ //# sourceMappingURL=chunk.BEAJZPWS.js.map
@@ -9,13 +9,13 @@ import {
9
9
  BaseDatePickerComponent,
10
10
  BaseDatePickerFoundation,
11
11
  createToggleElement
12
- } from "./chunk.2TEHKM2X.js";
12
+ } from "./chunk.TIUNGGBF.js";
13
13
  import {
14
14
  CalendarComponent
15
- } from "./chunk.QFPOG3VH.js";
15
+ } from "./chunk.U37G47LH.js";
16
16
  import {
17
17
  CalendarDropdown
18
- } from "./chunk.YDPSV74L.js";
18
+ } from "./chunk.M3O5VPDD.js";
19
19
  import {
20
20
  DateRange
21
21
  } from "./chunk.SNAZ6JSS.js";
@@ -27,10 +27,10 @@ import {
27
27
  } from "./chunk.RV3E762Y.js";
28
28
  import {
29
29
  PopupComponent
30
- } from "./chunk.5EEEKOOK.js";
30
+ } from "./chunk.DLF5JAQO.js";
31
31
  import {
32
32
  IconButtonComponent
33
- } from "./chunk.XN65LPA3.js";
33
+ } from "./chunk.EBC2HGO3.js";
34
34
  import {
35
35
  tylIconDateRange
36
36
  } from "./chunk.GS2AXUCN.js";
@@ -40,7 +40,7 @@ import {
40
40
  import {
41
41
  IconComponent,
42
42
  IconRegistry
43
- } from "./chunk.3MO6XU44.js";
43
+ } from "./chunk.WSH4S3GM.js";
44
44
  import {
45
45
  FormFieldComponentDelegate
46
46
  } from "./chunk.HZISALRH.js";
@@ -757,4 +757,4 @@ export {
757
757
  DateRangeComponentDelegate,
758
758
  defineDateRangePickerComponent
759
759
  };
760
- //# sourceMappingURL=chunk.BVGIWAUP.js.map
760
+ //# sourceMappingURL=chunk.BVGJFMEG.js.map