@tylertech/forge 2.16.5 → 2.17.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 (348) hide show
  1. package/custom-elements.json +10 -0
  2. package/dist/esm/accordion/index.js +1 -1
  3. package/dist/esm/app-bar/help-button/index.js +1 -1
  4. package/dist/esm/app-bar/index.js +1 -1
  5. package/dist/esm/app-bar/menu-button/index.js +1 -1
  6. package/dist/esm/app-bar/notification-button/index.js +1 -1
  7. package/dist/esm/app-bar/profile-button/index.js +1 -1
  8. package/dist/esm/app-bar/search/index.js +1 -1
  9. package/dist/esm/autocomplete/index.js +1 -1
  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 +1 -1
  14. package/dist/esm/bottom-sheet/index.js +1 -1
  15. package/dist/esm/busy-indicator/index.js +1 -1
  16. package/dist/esm/button/index.js +1 -1
  17. package/dist/esm/button-toggle/button-toggle/index.js +1 -1
  18. package/dist/esm/button-toggle/button-toggle-group/index.js +1 -1
  19. package/dist/esm/button-toggle/index.js +1 -1
  20. package/dist/esm/calendar/calendar-dropdown/index.js +1 -1
  21. package/dist/esm/calendar/calendar-menu/index.js +1 -1
  22. package/dist/esm/calendar/index.js +1 -1
  23. package/dist/esm/card/index.js +1 -1
  24. package/dist/esm/checkbox/index.js +1 -1
  25. package/dist/esm/chip-field/index.js +1 -1
  26. package/dist/esm/chips/chip/index.js +1 -1
  27. package/dist/esm/chips/chip-set/index.js +1 -1
  28. package/dist/esm/chips/index.js +1 -1
  29. package/dist/esm/chunks/{chunk.ZRRUDMBE.js → chunk.274MFEUZ.js} +2 -2
  30. package/dist/esm/chunks/{chunk.4FSAAN6W.js → chunk.2DAPNN6B.js} +2 -2
  31. package/dist/esm/chunks/{chunk.4FSAAN6W.js.map → chunk.2DAPNN6B.js.map} +2 -2
  32. package/dist/esm/chunks/{chunk.ARJ3EVVO.js → chunk.2KXSGD3S.js} +2 -2
  33. package/dist/esm/chunks/chunk.3C44DXZ2.js +7 -0
  34. package/dist/esm/chunks/chunk.3C44DXZ2.js.map +7 -0
  35. package/dist/esm/chunks/{chunk.VC2BG2RS.js → chunk.3FAYFYXF.js} +2 -2
  36. package/dist/esm/chunks/{chunk.G45OZEIS.js → chunk.3IXTRC6Z.js} +2 -2
  37. package/dist/esm/chunks/{chunk.77Y3EABF.js → chunk.3YT72ZWJ.js} +2 -2
  38. package/dist/esm/chunks/{chunk.HNMFFOUF.js → chunk.44WDRTRR.js} +2 -2
  39. package/dist/esm/chunks/{chunk.WY7DECJD.js → chunk.4CWMNWZU.js} +2 -2
  40. package/dist/esm/chunks/{chunk.PN26D52V.js → chunk.4LA6HEA7.js} +2 -2
  41. package/dist/esm/chunks/{chunk.PN26D52V.js.map → chunk.4LA6HEA7.js.map} +3 -3
  42. package/dist/esm/chunks/{chunk.K2C4W3CO.js → chunk.4R6NK524.js} +2 -2
  43. package/dist/esm/chunks/{chunk.G5MGGEFP.js → chunk.5KC43VFL.js} +2 -2
  44. package/dist/esm/chunks/{chunk.LJU5WSSF.js → chunk.65II7E54.js} +2 -2
  45. package/dist/esm/chunks/{chunk.ILRWZHH3.js → chunk.6ATSOUJQ.js} +2 -2
  46. package/dist/esm/chunks/{chunk.ELV22KTH.js → chunk.6CAOHLX6.js} +2 -2
  47. package/dist/esm/chunks/{chunk.RYMPSU4J.js → chunk.6TTAKWXI.js} +2 -2
  48. package/dist/esm/chunks/{chunk.4WPFFNLH.js → chunk.73GVVX4K.js} +2 -2
  49. package/dist/esm/chunks/{chunk.TR5YMNJJ.js → chunk.76PI42C5.js} +2 -2
  50. package/dist/esm/chunks/chunk.7BAO5IED.js +7 -0
  51. package/dist/esm/chunks/{chunk.AFLH5HUG.js → chunk.7K44O5RO.js} +2 -2
  52. package/dist/esm/chunks/{chunk.PALRSBSY.js → chunk.7SULS4D2.js} +2 -2
  53. package/dist/esm/chunks/{chunk.LYOQ2RGP.js → chunk.A4UN74PV.js} +2 -2
  54. package/dist/esm/chunks/{chunk.NWDZ5CGQ.js → chunk.AB5XER3E.js} +2 -2
  55. package/dist/esm/chunks/{chunk.P5HFRNJW.js → chunk.AEKZWVNO.js} +2 -2
  56. package/dist/esm/chunks/chunk.AMES2WWC.js +7 -0
  57. package/dist/esm/chunks/chunk.AMES2WWC.js.map +7 -0
  58. package/dist/esm/chunks/{chunk.ZUNZKRRK.js → chunk.AMWDVFAU.js} +2 -2
  59. package/dist/esm/chunks/chunk.APHMTBRQ.js +7 -0
  60. package/dist/esm/chunks/chunk.APHMTBRQ.js.map +7 -0
  61. package/dist/esm/chunks/chunk.BAVLVCGK.js +7 -0
  62. package/dist/esm/chunks/chunk.BAVLVCGK.js.map +7 -0
  63. package/dist/esm/chunks/{chunk.47A2CN5U.js → chunk.BESB4RGK.js} +2 -2
  64. package/dist/esm/chunks/{chunk.IJW7Z6YD.js → chunk.BKAZC53W.js} +2 -2
  65. package/dist/esm/chunks/chunk.BKNYDA4V.js +7 -0
  66. package/dist/esm/chunks/chunk.BKNYDA4V.js.map +7 -0
  67. package/dist/esm/chunks/{chunk.VAKNDCLP.js → chunk.BL4IBI6G.js} +2 -2
  68. package/dist/esm/chunks/{chunk.I5BAZWUF.js → chunk.CE6NTUWI.js} +2 -2
  69. package/dist/esm/chunks/{chunk.7A6MX6CS.js → chunk.CG5CVENX.js} +2 -2
  70. package/dist/esm/chunks/{chunk.EGRUD7S7.js → chunk.CX7MOSLM.js} +2 -2
  71. package/dist/esm/chunks/{chunk.XZ4WI7VK.js → chunk.D24CE6KE.js} +2 -2
  72. package/dist/esm/chunks/chunk.DLALEZ73.js +7 -0
  73. package/dist/esm/chunks/chunk.DLALEZ73.js.map +7 -0
  74. package/dist/esm/chunks/{chunk.RG6CDWEX.js → chunk.DYF2MREZ.js} +2 -2
  75. package/dist/esm/chunks/{chunk.RG6CDWEX.js.map → chunk.DYF2MREZ.js.map} +2 -2
  76. package/dist/esm/chunks/{chunk.SHTHI473.js → chunk.EMV7JGHB.js} +2 -2
  77. package/dist/esm/chunks/{chunk.CDUN4ONU.js → chunk.ERO7T6WC.js} +2 -2
  78. package/dist/esm/chunks/{chunk.UBD2DPQN.js → chunk.F5CFD2NG.js} +2 -2
  79. package/dist/esm/chunks/{chunk.ROR6JMAE.js → chunk.FFVZ6JMP.js} +2 -2
  80. package/dist/esm/chunks/{chunk.7BESNUTG.js → chunk.FOLQAW63.js} +2 -2
  81. package/dist/esm/chunks/{chunk.Y72NANFX.js → chunk.FPLHVO6D.js} +2 -2
  82. package/dist/esm/chunks/{chunk.7UKA4E5A.js → chunk.GQCUI7YS.js} +2 -2
  83. package/dist/esm/chunks/{chunk.F2B24WLK.js → chunk.H3IPTBWM.js} +2 -2
  84. package/dist/esm/chunks/{chunk.NOC2446R.js → chunk.H4ZMVM5H.js} +2 -2
  85. package/dist/esm/chunks/{chunk.NOC2446R.js.map → chunk.H4ZMVM5H.js.map} +1 -1
  86. package/dist/esm/chunks/{chunk.Y4GKBJGI.js → chunk.HOXFK44F.js} +2 -2
  87. package/dist/esm/chunks/{chunk.M7QAOQQ4.js → chunk.HTH3CEDN.js} +2 -2
  88. package/dist/esm/chunks/chunk.IMEODSRH.js +7 -0
  89. package/dist/esm/chunks/chunk.IMEODSRH.js.map +7 -0
  90. package/dist/esm/chunks/chunk.ITXUKOKJ.js +7 -0
  91. package/dist/esm/chunks/{chunk.PYIFIHDK.js.map → chunk.ITXUKOKJ.js.map} +2 -2
  92. package/dist/esm/chunks/{chunk.NSOALSSD.js → chunk.IWMA7NUU.js} +2 -2
  93. package/dist/esm/chunks/{chunk.INCKI5IX.js → chunk.IZSUW7WG.js} +2 -2
  94. package/dist/esm/chunks/{chunk.TWZXQQQO.js → chunk.JD4APKZS.js} +2 -2
  95. package/dist/esm/chunks/{chunk.N4PVZUJX.js → chunk.JDLEPQKN.js} +2 -2
  96. package/dist/esm/chunks/chunk.K4SWLH26.js +7 -0
  97. package/dist/esm/chunks/chunk.K4SWLH26.js.map +7 -0
  98. package/dist/esm/chunks/chunk.K6LBO4KJ.js +7 -0
  99. package/dist/esm/chunks/chunk.K6LBO4KJ.js.map +7 -0
  100. package/dist/esm/chunks/{chunk.KU5CXXGS.js → chunk.K7HRCGML.js} +2 -2
  101. package/dist/esm/chunks/{chunk.Y5A7RQ5M.js → chunk.KII37K76.js} +2 -2
  102. package/dist/esm/chunks/{chunk.D6MLVA5G.js → chunk.LLK7YGQW.js} +2 -2
  103. package/dist/esm/chunks/{chunk.RBAVT3XQ.js → chunk.M6PJ3PNN.js} +2 -2
  104. package/dist/esm/chunks/{chunk.FDLWB4QK.js → chunk.MS77SPS4.js} +2 -2
  105. package/dist/esm/chunks/{chunk.4NI63FGK.js → chunk.MSFGXRCM.js} +2 -2
  106. package/dist/esm/chunks/{chunk.JEN6YP2Q.js → chunk.NLXSZNQI.js} +2 -2
  107. package/dist/esm/chunks/{chunk.MLV25D2G.js → chunk.NMKDIHFB.js} +2 -2
  108. package/dist/esm/chunks/{chunk.ASJHDPFL.js → chunk.NOO2ZZKZ.js} +2 -2
  109. package/dist/esm/chunks/{chunk.4Y2QP7JX.js → chunk.NQZXAC65.js} +2 -2
  110. package/dist/esm/chunks/{chunk.XUW3GG46.js → chunk.NX4EECNP.js} +2 -2
  111. package/dist/esm/chunks/{chunk.P3IA2WTO.js → chunk.ON2K3O3I.js} +2 -2
  112. package/dist/esm/chunks/{chunk.O4FB4BV5.js → chunk.PADHAJLS.js} +2 -2
  113. package/dist/esm/chunks/{chunk.HPDBSBQJ.js → chunk.PKVY6EWM.js} +2 -2
  114. package/dist/esm/chunks/chunk.PYXKGV4Z.js +7 -0
  115. package/dist/esm/chunks/chunk.PYXKGV4Z.js.map +7 -0
  116. package/dist/esm/chunks/{chunk.YDBWGKR4.js → chunk.Q5YD3PKM.js} +2 -2
  117. package/dist/esm/chunks/{chunk.BE7PZANN.js → chunk.QOA2O575.js} +2 -2
  118. package/dist/esm/chunks/chunk.RGAPFLQE.js +7 -0
  119. package/dist/esm/chunks/chunk.RGAPFLQE.js.map +7 -0
  120. package/dist/esm/chunks/{chunk.H4Z4DHPA.js → chunk.RUK5PIER.js} +2 -2
  121. package/dist/esm/chunks/{chunk.XBW46N2J.js → chunk.S2N5KJ7S.js} +2 -2
  122. package/dist/esm/chunks/{chunk.JHBCYICS.js → chunk.S2YVOMLW.js} +2 -2
  123. package/dist/esm/chunks/{chunk.TBY35XZK.js → chunk.S7ZU6JKB.js} +2 -2
  124. package/dist/esm/chunks/{chunk.T76JYRPR.js → chunk.SAQSXX2T.js} +2 -2
  125. package/dist/esm/chunks/{chunk.HI2DQJZG.js → chunk.SATUJNQX.js} +2 -2
  126. package/dist/esm/chunks/{chunk.BTBHIIGI.js → chunk.SQTM36C3.js} +2 -2
  127. package/dist/esm/chunks/chunk.SXTM6OK4.js +7 -0
  128. package/dist/esm/chunks/chunk.SXTM6OK4.js.map +7 -0
  129. package/dist/esm/chunks/{chunk.RB5BTA5N.js → chunk.T6NVM7TN.js} +2 -2
  130. package/dist/esm/chunks/chunk.UHU4FUIS.js +7 -0
  131. package/dist/esm/chunks/{chunk.GCR7QZRO.js → chunk.USXO7YKN.js} +2 -2
  132. package/dist/esm/chunks/{chunk.FRYLJWYL.js → chunk.UW2HWAVL.js} +2 -2
  133. package/dist/esm/chunks/{chunk.RE5X26QT.js → chunk.VT2QJ7SM.js} +2 -2
  134. package/dist/esm/chunks/{chunk.UT7QUGAO.js → chunk.VTB27IL7.js} +2 -2
  135. package/dist/esm/chunks/chunk.W3GR3VDN.js +12 -0
  136. package/dist/esm/chunks/chunk.XFAOB6LU.js +7 -0
  137. package/dist/esm/chunks/chunk.XIZILH2M.js +7 -0
  138. package/dist/esm/chunks/chunk.XIZILH2M.js.map +7 -0
  139. package/dist/esm/chunks/{chunk.WP4QOOIS.js → chunk.XQ5CDWDY.js} +2 -2
  140. package/dist/esm/chunks/chunk.XY45YU7I.js +7 -0
  141. package/dist/esm/chunks/chunk.XY45YU7I.js.map +7 -0
  142. package/dist/esm/chunks/{chunk.G3ZTZ4AN.js → chunk.YG24YPYO.js} +2 -2
  143. package/dist/esm/chunks/{chunk.BJE6O5ES.js → chunk.YJTE34LC.js} +2 -2
  144. package/dist/esm/chunks/{chunk.4BEI55KI.js → chunk.YMBLWKRP.js} +2 -2
  145. package/dist/esm/chunks/{chunk.HBMNXZES.js → chunk.ZCQO3N25.js} +2 -2
  146. package/dist/esm/circular-progress/index.js +1 -1
  147. package/dist/esm/color-picker/index.js +1 -1
  148. package/dist/esm/core/base/index.js +1 -1
  149. package/dist/esm/core/delegates/index.js +1 -1
  150. package/dist/esm/core/index.js +1 -1
  151. package/dist/esm/date-picker/index.js +1 -1
  152. package/dist/esm/date-range-picker/index.js +1 -1
  153. package/dist/esm/dialog/index.js +1 -1
  154. package/dist/esm/divider/index.js +1 -1
  155. package/dist/esm/drawer/base/index.js +1 -1
  156. package/dist/esm/drawer/drawer/index.js +1 -1
  157. package/dist/esm/drawer/index.js +1 -1
  158. package/dist/esm/drawer/mini-drawer/index.js +1 -1
  159. package/dist/esm/drawer/modal-drawer/index.js +1 -1
  160. package/dist/esm/expansion-panel/index.js +1 -1
  161. package/dist/esm/file-picker/index.js +1 -1
  162. package/dist/esm/floating-action-button/index.js +1 -1
  163. package/dist/esm/floating-label/index.js +1 -1
  164. package/dist/esm/icon/index.js +1 -1
  165. package/dist/esm/icon-button/index.js +1 -1
  166. package/dist/esm/index.js +1 -1
  167. package/dist/esm/inline-message/index.js +1 -1
  168. package/dist/esm/keyboard-shortcut/index.js +1 -1
  169. package/dist/esm/label-value/index.js +1 -1
  170. package/dist/esm/linear-progress/index.js +1 -1
  171. package/dist/esm/list/index.js +1 -1
  172. package/dist/esm/list/list/index.js +1 -1
  173. package/dist/esm/list/list-item/index.js +1 -1
  174. package/dist/esm/list-dropdown/index.js +1 -1
  175. package/dist/esm/menu/index.js +1 -1
  176. package/dist/esm/open-icon/index.js +1 -1
  177. package/dist/esm/page-state/index.js +1 -1
  178. package/dist/esm/paginator/index.js +1 -1
  179. package/dist/esm/popup/index.js +1 -1
  180. package/dist/esm/product-icon/index.js +1 -1
  181. package/dist/esm/profile-card/index.js +1 -1
  182. package/dist/esm/quantity-field/index.js +1 -1
  183. package/dist/esm/radio/index.js +1 -1
  184. package/dist/esm/ripple/index.js +1 -1
  185. package/dist/esm/scaffold/index.js +1 -1
  186. package/dist/esm/select/core/index.js +1 -1
  187. package/dist/esm/select/index.js +1 -1
  188. package/dist/esm/select/option/index.js +1 -1
  189. package/dist/esm/select/option-group/index.js +1 -1
  190. package/dist/esm/select/select/index.js +1 -1
  191. package/dist/esm/select/select-dropdown/index.js +1 -1
  192. package/dist/esm/skeleton/index.js +1 -1
  193. package/dist/esm/slider/index.js +1 -1
  194. package/dist/esm/split-view/index.js +1 -1
  195. package/dist/esm/split-view/split-view/index.js +1 -1
  196. package/dist/esm/split-view/split-view-panel/index.js +1 -1
  197. package/dist/esm/stack/index.js +1 -1
  198. package/dist/esm/stepper/index.js +1 -1
  199. package/dist/esm/stepper/step/index.js +1 -1
  200. package/dist/esm/stepper/stepper/index.js +1 -1
  201. package/dist/esm/switch/index.js +1 -1
  202. package/dist/esm/table/index.js +1 -1
  203. package/dist/esm/tabs/index.js +1 -1
  204. package/dist/esm/tabs/tab/index.js +1 -1
  205. package/dist/esm/tabs/tab-bar/index.js +1 -1
  206. package/dist/esm/text-field/index.js +1 -1
  207. package/dist/esm/time-picker/index.js +1 -1
  208. package/dist/esm/toast/index.js +1 -1
  209. package/dist/esm/toolbar/index.js +1 -1
  210. package/dist/esm/tooltip/index.js +1 -1
  211. package/dist/esm/view-switcher/index.js +1 -1
  212. package/dist/esm/view-switcher/view/index.js +1 -1
  213. package/esm/app-bar/profile-button/app-bar-profile-button-adapter.js +1 -1
  214. package/esm/autocomplete/autocomplete-adapter.js +1 -1
  215. package/esm/busy-indicator/busy-indicator-adapter.js +1 -1
  216. package/esm/chip-field/chip-field-foundation.js +1 -1
  217. package/esm/chips/chip/chip-adapter.js +2 -2
  218. package/esm/date-picker/date-picker-adapter.js +1 -1
  219. package/esm/date-range-picker/date-range-picker-adapter.js +1 -1
  220. package/esm/dialog/dialog-adapter.js +1 -1
  221. package/esm/field/field-adapter.js +1 -1
  222. package/esm/list/list/list-adapter.js +2 -2
  223. package/esm/list/list-item/list-item.js +1 -1
  224. package/esm/popup/popup-adapter.d.ts +3 -1
  225. package/esm/popup/popup-adapter.js +5 -2
  226. package/esm/popup/popup-foundation.js +5 -3
  227. package/esm/popup/popup.d.ts +4 -1
  228. package/esm/radio/radio-adapter.js +2 -1
  229. package/esm/split-view/split-view-panel/split-view-panel.js +1 -1
  230. package/esm/stepper/stepper/stepper-adapter.js +1 -1
  231. package/esm/tabs/tab-bar/tab-bar-adapter.js +1 -1
  232. package/esm/text-field/text-field-adapter.js +2 -1
  233. package/esm/time-picker/time-picker-adapter.js +2 -1
  234. package/package.json +2 -2
  235. package/styles/list/list-item/_mixins.scss +11 -1
  236. package/styles/list/list-item/_variables.scss +9 -0
  237. package/dist/esm/chunks/chunk.2NSEMS3F.js +0 -7
  238. package/dist/esm/chunks/chunk.2NSEMS3F.js.map +0 -7
  239. package/dist/esm/chunks/chunk.4FBPHKAE.js +0 -7
  240. package/dist/esm/chunks/chunk.4FBPHKAE.js.map +0 -7
  241. package/dist/esm/chunks/chunk.72AUOVCD.js +0 -7
  242. package/dist/esm/chunks/chunk.72AUOVCD.js.map +0 -7
  243. package/dist/esm/chunks/chunk.BABBOL37.js +0 -7
  244. package/dist/esm/chunks/chunk.BABBOL37.js.map +0 -7
  245. package/dist/esm/chunks/chunk.EHF5E5UL.js +0 -7
  246. package/dist/esm/chunks/chunk.EHF5E5UL.js.map +0 -7
  247. package/dist/esm/chunks/chunk.G4BS5GG7.js +0 -7
  248. package/dist/esm/chunks/chunk.G4BS5GG7.js.map +0 -7
  249. package/dist/esm/chunks/chunk.IGTXLDZS.js +0 -7
  250. package/dist/esm/chunks/chunk.IL23S7ME.js +0 -7
  251. package/dist/esm/chunks/chunk.IL23S7ME.js.map +0 -7
  252. package/dist/esm/chunks/chunk.JHY2CKEH.js +0 -7
  253. package/dist/esm/chunks/chunk.JMMMXLY7.js +0 -7
  254. package/dist/esm/chunks/chunk.JMMMXLY7.js.map +0 -7
  255. package/dist/esm/chunks/chunk.K6AFP52A.js +0 -7
  256. package/dist/esm/chunks/chunk.K6AFP52A.js.map +0 -7
  257. package/dist/esm/chunks/chunk.KE6GOYAB.js +0 -7
  258. package/dist/esm/chunks/chunk.KE6GOYAB.js.map +0 -7
  259. package/dist/esm/chunks/chunk.L6WXTCL2.js +0 -7
  260. package/dist/esm/chunks/chunk.MH3BTNU5.js +0 -7
  261. package/dist/esm/chunks/chunk.MH3BTNU5.js.map +0 -7
  262. package/dist/esm/chunks/chunk.OXWKSI6J.js +0 -7
  263. package/dist/esm/chunks/chunk.OXWKSI6J.js.map +0 -7
  264. package/dist/esm/chunks/chunk.PYIFIHDK.js +0 -7
  265. package/dist/esm/chunks/chunk.UV6RI52H.js +0 -12
  266. package/dist/esm/chunks/chunk.V7WKXEZC.js +0 -7
  267. package/dist/esm/chunks/chunk.V7WKXEZC.js.map +0 -7
  268. package/dist/esm/chunks/chunk.XSVUDEOW.js +0 -7
  269. package/dist/esm/chunks/chunk.XSVUDEOW.js.map +0 -7
  270. /package/dist/esm/chunks/{chunk.ZRRUDMBE.js.map → chunk.274MFEUZ.js.map} +0 -0
  271. /package/dist/esm/chunks/{chunk.ARJ3EVVO.js.map → chunk.2KXSGD3S.js.map} +0 -0
  272. /package/dist/esm/chunks/{chunk.VC2BG2RS.js.map → chunk.3FAYFYXF.js.map} +0 -0
  273. /package/dist/esm/chunks/{chunk.G45OZEIS.js.map → chunk.3IXTRC6Z.js.map} +0 -0
  274. /package/dist/esm/chunks/{chunk.77Y3EABF.js.map → chunk.3YT72ZWJ.js.map} +0 -0
  275. /package/dist/esm/chunks/{chunk.HNMFFOUF.js.map → chunk.44WDRTRR.js.map} +0 -0
  276. /package/dist/esm/chunks/{chunk.WY7DECJD.js.map → chunk.4CWMNWZU.js.map} +0 -0
  277. /package/dist/esm/chunks/{chunk.K2C4W3CO.js.map → chunk.4R6NK524.js.map} +0 -0
  278. /package/dist/esm/chunks/{chunk.G5MGGEFP.js.map → chunk.5KC43VFL.js.map} +0 -0
  279. /package/dist/esm/chunks/{chunk.LJU5WSSF.js.map → chunk.65II7E54.js.map} +0 -0
  280. /package/dist/esm/chunks/{chunk.ILRWZHH3.js.map → chunk.6ATSOUJQ.js.map} +0 -0
  281. /package/dist/esm/chunks/{chunk.ELV22KTH.js.map → chunk.6CAOHLX6.js.map} +0 -0
  282. /package/dist/esm/chunks/{chunk.RYMPSU4J.js.map → chunk.6TTAKWXI.js.map} +0 -0
  283. /package/dist/esm/chunks/{chunk.4WPFFNLH.js.map → chunk.73GVVX4K.js.map} +0 -0
  284. /package/dist/esm/chunks/{chunk.TR5YMNJJ.js.map → chunk.76PI42C5.js.map} +0 -0
  285. /package/dist/esm/chunks/{chunk.IGTXLDZS.js.map → chunk.7BAO5IED.js.map} +0 -0
  286. /package/dist/esm/chunks/{chunk.AFLH5HUG.js.map → chunk.7K44O5RO.js.map} +0 -0
  287. /package/dist/esm/chunks/{chunk.PALRSBSY.js.map → chunk.7SULS4D2.js.map} +0 -0
  288. /package/dist/esm/chunks/{chunk.LYOQ2RGP.js.map → chunk.A4UN74PV.js.map} +0 -0
  289. /package/dist/esm/chunks/{chunk.NWDZ5CGQ.js.map → chunk.AB5XER3E.js.map} +0 -0
  290. /package/dist/esm/chunks/{chunk.P5HFRNJW.js.map → chunk.AEKZWVNO.js.map} +0 -0
  291. /package/dist/esm/chunks/{chunk.ZUNZKRRK.js.map → chunk.AMWDVFAU.js.map} +0 -0
  292. /package/dist/esm/chunks/{chunk.47A2CN5U.js.map → chunk.BESB4RGK.js.map} +0 -0
  293. /package/dist/esm/chunks/{chunk.IJW7Z6YD.js.map → chunk.BKAZC53W.js.map} +0 -0
  294. /package/dist/esm/chunks/{chunk.VAKNDCLP.js.map → chunk.BL4IBI6G.js.map} +0 -0
  295. /package/dist/esm/chunks/{chunk.I5BAZWUF.js.map → chunk.CE6NTUWI.js.map} +0 -0
  296. /package/dist/esm/chunks/{chunk.7A6MX6CS.js.map → chunk.CG5CVENX.js.map} +0 -0
  297. /package/dist/esm/chunks/{chunk.EGRUD7S7.js.map → chunk.CX7MOSLM.js.map} +0 -0
  298. /package/dist/esm/chunks/{chunk.XZ4WI7VK.js.map → chunk.D24CE6KE.js.map} +0 -0
  299. /package/dist/esm/chunks/{chunk.SHTHI473.js.map → chunk.EMV7JGHB.js.map} +0 -0
  300. /package/dist/esm/chunks/{chunk.CDUN4ONU.js.map → chunk.ERO7T6WC.js.map} +0 -0
  301. /package/dist/esm/chunks/{chunk.UBD2DPQN.js.map → chunk.F5CFD2NG.js.map} +0 -0
  302. /package/dist/esm/chunks/{chunk.ROR6JMAE.js.map → chunk.FFVZ6JMP.js.map} +0 -0
  303. /package/dist/esm/chunks/{chunk.7BESNUTG.js.map → chunk.FOLQAW63.js.map} +0 -0
  304. /package/dist/esm/chunks/{chunk.Y72NANFX.js.map → chunk.FPLHVO6D.js.map} +0 -0
  305. /package/dist/esm/chunks/{chunk.7UKA4E5A.js.map → chunk.GQCUI7YS.js.map} +0 -0
  306. /package/dist/esm/chunks/{chunk.F2B24WLK.js.map → chunk.H3IPTBWM.js.map} +0 -0
  307. /package/dist/esm/chunks/{chunk.Y4GKBJGI.js.map → chunk.HOXFK44F.js.map} +0 -0
  308. /package/dist/esm/chunks/{chunk.M7QAOQQ4.js.map → chunk.HTH3CEDN.js.map} +0 -0
  309. /package/dist/esm/chunks/{chunk.NSOALSSD.js.map → chunk.IWMA7NUU.js.map} +0 -0
  310. /package/dist/esm/chunks/{chunk.INCKI5IX.js.map → chunk.IZSUW7WG.js.map} +0 -0
  311. /package/dist/esm/chunks/{chunk.TWZXQQQO.js.map → chunk.JD4APKZS.js.map} +0 -0
  312. /package/dist/esm/chunks/{chunk.N4PVZUJX.js.map → chunk.JDLEPQKN.js.map} +0 -0
  313. /package/dist/esm/chunks/{chunk.KU5CXXGS.js.map → chunk.K7HRCGML.js.map} +0 -0
  314. /package/dist/esm/chunks/{chunk.Y5A7RQ5M.js.map → chunk.KII37K76.js.map} +0 -0
  315. /package/dist/esm/chunks/{chunk.D6MLVA5G.js.map → chunk.LLK7YGQW.js.map} +0 -0
  316. /package/dist/esm/chunks/{chunk.RBAVT3XQ.js.map → chunk.M6PJ3PNN.js.map} +0 -0
  317. /package/dist/esm/chunks/{chunk.FDLWB4QK.js.map → chunk.MS77SPS4.js.map} +0 -0
  318. /package/dist/esm/chunks/{chunk.4NI63FGK.js.map → chunk.MSFGXRCM.js.map} +0 -0
  319. /package/dist/esm/chunks/{chunk.JEN6YP2Q.js.map → chunk.NLXSZNQI.js.map} +0 -0
  320. /package/dist/esm/chunks/{chunk.MLV25D2G.js.map → chunk.NMKDIHFB.js.map} +0 -0
  321. /package/dist/esm/chunks/{chunk.ASJHDPFL.js.map → chunk.NOO2ZZKZ.js.map} +0 -0
  322. /package/dist/esm/chunks/{chunk.4Y2QP7JX.js.map → chunk.NQZXAC65.js.map} +0 -0
  323. /package/dist/esm/chunks/{chunk.XUW3GG46.js.map → chunk.NX4EECNP.js.map} +0 -0
  324. /package/dist/esm/chunks/{chunk.P3IA2WTO.js.map → chunk.ON2K3O3I.js.map} +0 -0
  325. /package/dist/esm/chunks/{chunk.O4FB4BV5.js.map → chunk.PADHAJLS.js.map} +0 -0
  326. /package/dist/esm/chunks/{chunk.HPDBSBQJ.js.map → chunk.PKVY6EWM.js.map} +0 -0
  327. /package/dist/esm/chunks/{chunk.YDBWGKR4.js.map → chunk.Q5YD3PKM.js.map} +0 -0
  328. /package/dist/esm/chunks/{chunk.BE7PZANN.js.map → chunk.QOA2O575.js.map} +0 -0
  329. /package/dist/esm/chunks/{chunk.H4Z4DHPA.js.map → chunk.RUK5PIER.js.map} +0 -0
  330. /package/dist/esm/chunks/{chunk.XBW46N2J.js.map → chunk.S2N5KJ7S.js.map} +0 -0
  331. /package/dist/esm/chunks/{chunk.JHBCYICS.js.map → chunk.S2YVOMLW.js.map} +0 -0
  332. /package/dist/esm/chunks/{chunk.TBY35XZK.js.map → chunk.S7ZU6JKB.js.map} +0 -0
  333. /package/dist/esm/chunks/{chunk.T76JYRPR.js.map → chunk.SAQSXX2T.js.map} +0 -0
  334. /package/dist/esm/chunks/{chunk.HI2DQJZG.js.map → chunk.SATUJNQX.js.map} +0 -0
  335. /package/dist/esm/chunks/{chunk.BTBHIIGI.js.map → chunk.SQTM36C3.js.map} +0 -0
  336. /package/dist/esm/chunks/{chunk.RB5BTA5N.js.map → chunk.T6NVM7TN.js.map} +0 -0
  337. /package/dist/esm/chunks/{chunk.JHY2CKEH.js.map → chunk.UHU4FUIS.js.map} +0 -0
  338. /package/dist/esm/chunks/{chunk.GCR7QZRO.js.map → chunk.USXO7YKN.js.map} +0 -0
  339. /package/dist/esm/chunks/{chunk.FRYLJWYL.js.map → chunk.UW2HWAVL.js.map} +0 -0
  340. /package/dist/esm/chunks/{chunk.RE5X26QT.js.map → chunk.VT2QJ7SM.js.map} +0 -0
  341. /package/dist/esm/chunks/{chunk.UT7QUGAO.js.map → chunk.VTB27IL7.js.map} +0 -0
  342. /package/dist/esm/chunks/{chunk.UV6RI52H.js.map → chunk.W3GR3VDN.js.map} +0 -0
  343. /package/dist/esm/chunks/{chunk.L6WXTCL2.js.map → chunk.XFAOB6LU.js.map} +0 -0
  344. /package/dist/esm/chunks/{chunk.WP4QOOIS.js.map → chunk.XQ5CDWDY.js.map} +0 -0
  345. /package/dist/esm/chunks/{chunk.G3ZTZ4AN.js.map → chunk.YG24YPYO.js.map} +0 -0
  346. /package/dist/esm/chunks/{chunk.BJE6O5ES.js.map → chunk.YJTE34LC.js.map} +0 -0
  347. /package/dist/esm/chunks/{chunk.4BEI55KI.js.map → chunk.YMBLWKRP.js.map} +0 -0
  348. /package/dist/esm/chunks/{chunk.HBMNXZES.js.map → chunk.ZCQO3N25.js.map} +0 -0
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/autocomplete/autocomplete-constants.ts", "../../src/autocomplete/autocomplete-adapter.ts", "../../src/autocomplete/autocomplete-utils.ts", "../../src/autocomplete/autocomplete-foundation.ts", "../../src/autocomplete/autocomplete.ts", "../../src/autocomplete/autocomplete-component-delegate.ts", "../../src/autocomplete/index.ts"],
4
+ "sourcesContent": ["import { COMPONENT_NAME_PREFIX, KEYSTROKE_DEBOUNCE_THRESHOLD } from '../constants';\nimport { IListItemComponent } from '../list';\nimport { IListDropdownConfig, IListDropdownOption, IListDropdownOptionGroup, ListDropdownOptionGroupBuilder } from '../list-dropdown';\nimport { IPopupPosition } from '../popup';\nimport { FIELD_CONSTANTS } from '../field/field-constants';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}autocomplete`;\n\nconst attributes = {\n MODE: 'mode',\n MULTIPLE: 'multiple',\n DEBOUNCE: 'debounce',\n FILTER_ON_FOCUS: 'filter-on-focus',\n FILTER_FOCUS_FIRST: 'filter-focus-first',\n ALLOW_UNMATCHED: 'allow-unmatched',\n POPUP_TARGET: 'popup-target',\n POPUP_CLASSES: 'popup-classes',\n OPTION_LIMIT: 'option-limit',\n OBSERVE_SCROLL: 'observe-scroll',\n OBSERVE_SCROLL_THRESHOLD: 'observe-scroll-threshold',\n SYNC_POPUP_WIDTH: 'sync-popup-width',\n OPEN: 'open',\n MATCH_KEY: 'match-key',\n FILTER_TEXT: 'filter-text',\n DROPDOWN_ICON_OPEN: 'data-forge-dropdown-icon-open'\n};\n\nconst selectors = {\n INPUT: FIELD_CONSTANTS.selectors.INPUT,\n DROPDOWN_ICON: '[data-forge-dropdown-icon],[data-forge-dropdown-icon],[forge-dropdown-icon],.forge-dropdown-icon',\n CLEAR_BUTTON: '[data-forge-autocomplete-clear],[forge-autocomplete-clear]'\n};\n\nconst numbers = {\n DEFAULT_DEBOUNCE_TIME: KEYSTROKE_DEBOUNCE_THRESHOLD,\n NUM_SKELETON_ITEMS: 3\n};\n\nconst events = {\n CHANGE: `${elementName}-change`,\n SELECT: `${elementName}-select`,\n SCROLLED_BOTTOM: `${elementName}-scrolled-bottom`\n};\n\nexport const AUTOCOMPLETE_CONSTANTS = {\n elementName,\n attributes,\n selectors,\n numbers,\n events\n};\n\nexport type AutocompleteOptionBuilder<T = any> = (option: IAutocompleteOption<T>, filterText: string, parentElement: IListItemComponent) => HTMLElement;\nexport type AutocompleteOptionGroupBuilder<T = any> = ListDropdownOptionGroupBuilder<T>;\nexport type AutocompleteFilterCallback<T = any> = (filterText: string, value: T | null) => IAutocompleteOption<T>[] | IAutocompleteOptionGroup<T>[] | Promise<IAutocompleteOption<T>[] | IAutocompleteOptionGroup<T>[]>;\nexport type AutocompleteSelectedTextBuilder<T = any> = (selectedOptions: Array<IAutocompleteOption<T>>) => string;\n\nexport enum AutocompleteMode {\n Default = 'default',\n Stateless = 'stateless'\n}\n\nexport interface IAutocompleteOption<T = any> extends IListDropdownOption<T> {}\nexport interface IAutocompleteOptionGroup<T = any> extends IListDropdownOptionGroup<T> {}\n\nexport interface IAutocompletePopupConfiguration {\n filterText: string;\n popupTarget: string;\n dropdownConfig: IListDropdownConfig;\n popupClasses: string[];\n popupOffset: IPopupPosition;\n syncPopupWidth: boolean;\n listener: (value: string) => void;\n scrollEndListener: () => void;\n}\n\nexport interface IAutocompleteSelectEventData<T = any> {\n value: T;\n}\n", "import { getShadowElement, deepQuerySelectorAll, getActiveElement, toggleAttribute } from '@tylertech/forge-core';\nimport { BaseAdapter, IBaseAdapter } from '../core/base/base-adapter';\nimport { IAutocompleteComponent } from './autocomplete';\nimport { AUTOCOMPLETE_CONSTANTS, IAutocompleteOption, IAutocompleteOptionGroup } from './autocomplete-constants';\nimport { TEXT_FIELD_CONSTANTS } from '../text-field';\nimport { IListDropdown, IListDropdownConfig, ListDropdown } from '../list-dropdown';\nimport { CHIP_FIELD_CONSTANTS } from '../chip-field';\nimport { IPopupComponent, POPUP_CONSTANTS } from '../popup';\n\nexport interface IAutocompleteAdapter extends IBaseAdapter {\n setInputElement(): HTMLInputElement;\n setInputAttribute(name: string, value: string): void;\n addInputListener(type: string, listener: (evt: Event) => void): void;\n removeInputListener(type: string, listener: (evt: Event) => void): void;\n initializeInputAccessibility(identifier: string): void;\n isWrappingChipField(): boolean;\n show(config: IListDropdownConfig, popupTarget: string): void;\n hide(listener: () => void): void;\n focus(): void;\n setOptions(options: IAutocompleteOption[] | IAutocompleteOptionGroup[]): void;\n appendOptions(options: IAutocompleteOption[] | IAutocompleteOptionGroup[]): void;\n setSelectedText(value: string): void;\n getInputValue(): string;\n setInputValue(value: string): void;\n selectInputValue(): void;\n setDismissListener(listener: () => void): void;\n isFocusWithinPopup(target: HTMLElement): boolean;\n hasFocus(): boolean;\n hasInputElement(): boolean;\n setDropdownIconListener(type: string, listener: EventListener): void;\n removeDropdownIconListener(type: string, listener: EventListener): void;\n setClearButtonListener(type: string, listener: EventListener): void;\n removeClearButtonListener(type: string, listener: EventListener): void;\n getPopupElement(): HTMLElement | null;\n propagateKey(key: string): void;\n updateActiveDescendant(id: string): void;\n getTargetElementWidth(selector: string): number;\n activateFirstOption(): void;\n activateSelectedOption(): void;\n activateOptionByIndex(value: number): void;\n setBusyVisibility(busy: boolean): void;\n getActiveOptionIndex(): number | null;\n clearActiveOption(): void;\n setSelectedOptions(options: IAutocompleteOption[]): void;\n queueDropdownPositionUpdate(): void;\n}\n\n/**\n * The DOM adapter for the `<forge-autocomplete>` element.\n */\nexport class AutocompleteAdapter extends BaseAdapter<IAutocompleteComponent> implements IAutocompleteAdapter {\n private _inputElement: HTMLInputElement;\n private _listDropdown?: IListDropdown;\n private _targetElement?: HTMLElement;\n \n constructor(component: IAutocompleteComponent) {\n super(component);\n this.setInputElement();\n }\n\n public setInputElement(): HTMLInputElement {\n const inputElements = deepQuerySelectorAll(this._component, AUTOCOMPLETE_CONSTANTS.selectors.INPUT, false);\n if (inputElements.length) {\n this._inputElement = inputElements[0] as HTMLInputElement;\n }\n return this._inputElement;\n }\n\n public setInputAttribute(name: string, value: string): void {\n this._inputElement.setAttribute(name, value);\n }\n\n public addInputListener(type: string, listener: (evt: Event) => void): void {\n this._inputElement.addEventListener(type, listener);\n }\n\n public removeInputListener(type: string, listener: (evt: Event) => void): void {\n this._inputElement.removeEventListener(type, listener);\n }\n\n public initializeInputAccessibility(identifier: string): void {\n this._inputElement.setAttribute('autocomplete', 'off');\n this._inputElement.setAttribute('role', 'combobox');\n this._inputElement.setAttribute('aria-live', 'polite');\n this._inputElement.setAttribute('aria-atomic', 'true');\n this._inputElement.setAttribute('aria-haspopup', 'true');\n this._inputElement.setAttribute('aria-expanded', 'false');\n this._inputElement.setAttribute('aria-autocomplete', 'list');\n }\n\n public isWrappingChipField(): boolean {\n return !!this._component.querySelector(CHIP_FIELD_CONSTANTS.elementName);\n }\n\n public show(config: IListDropdownConfig, popupTarget: string): void {\n this._targetElement = this._getTargetElement(popupTarget);\n if (!this._targetElement) {\n return;\n }\n this._listDropdown = new ListDropdown(this._targetElement, config);\n this._listDropdown.open();\n this._inputElement.setAttribute('aria-expanded', 'true');\n this._inputElement.setAttribute('aria-controls', `list-dropdown-popup-${config.id}`);\n this._tryToggleDropdownIconRotation(true);\n }\n\n public hide(listener: () => void): void {\n if (!this._listDropdown) {\n return;\n }\n const { targetElement } = this._listDropdown.dropdownElement as IPopupComponent;\n targetElement.removeEventListener(POPUP_CONSTANTS.events.BLUR, listener);\n this.setBusyVisibility(false);\n this._tryToggleDropdownIconRotation(false);\n this._inputElement.removeAttribute('aria-activedescendant');\n this._inputElement.removeAttribute('aria-controls');\n this._inputElement.setAttribute('aria-expanded', 'false');\n this._listDropdown.close();\n this._listDropdown = undefined;\n }\n\n\n public setBusyVisibility(isVisible: boolean): void {\n this._listDropdown?.setBusyVisibility(isVisible);\n }\n\n public setDismissListener(listener: () => void): void {\n if (!this._listDropdown || !this._listDropdown.dropdownElement) {\n return;\n }\n const dropdownElement = this._listDropdown.dropdownElement as IPopupComponent;\n if (dropdownElement.targetElement) {\n dropdownElement.targetElement.addEventListener(POPUP_CONSTANTS.events.BLUR, listener);\n }\n }\n\n public focus(): void {\n window.requestAnimationFrame(() => this._inputElement.focus());\n }\n\n public setOptions(options: IAutocompleteOption[] | IAutocompleteOptionGroup[]): void {\n this._listDropdown?.setOptions(options);\n }\n\n public appendOptions(options: IAutocompleteOption[] | IAutocompleteOptionGroup[]): void {\n this._listDropdown?.appendOptions(options);\n }\n\n public setSelectedText(value: string): void {\n this._inputElement.value = value;\n }\n\n public getInputValue(): string {\n return this._inputElement.value;\n }\n\n public setInputValue(value: string): void {\n this._inputElement.value = value;\n }\n\n public selectInputValue(): void {\n window.requestAnimationFrame(() => this._inputElement.select());\n }\n\n public isFocusWithinPopup(target: HTMLElement): boolean {\n if (!this._listDropdown || !this._listDropdown.dropdownElement) {\n return false;\n }\n return this._listDropdown.dropdownElement.contains(target);\n }\n\n public hasFocus(): boolean {\n const activeElement = getActiveElement(this._component.ownerDocument) as HTMLElement;\n return activeElement === this._inputElement || this.isFocusWithinPopup(activeElement);\n }\n\n public hasInputElement(): boolean {\n return !!this._inputElement;\n }\n\n public setDropdownIconListener(type: string, listener: EventListener): void {\n window.requestAnimationFrame(() => {\n const dropdownIcon = this._component.querySelector(AUTOCOMPLETE_CONSTANTS.selectors.DROPDOWN_ICON);\n if (dropdownIcon) {\n dropdownIcon.addEventListener(type, listener);\n }\n });\n }\n\n public removeDropdownIconListener(type: string, listener: EventListener): void {\n const dropdownIcon = this._component.querySelector(AUTOCOMPLETE_CONSTANTS.selectors.DROPDOWN_ICON);\n if (dropdownIcon) {\n dropdownIcon.removeEventListener(type, listener);\n }\n }\n\n public setClearButtonListener(type: string, listener: EventListener): void {\n window.requestAnimationFrame(() => {\n const clearButton = this._component.querySelector(AUTOCOMPLETE_CONSTANTS.selectors.CLEAR_BUTTON);\n if (clearButton) {\n clearButton.addEventListener(type, listener);\n }\n });\n }\n\n public removeClearButtonListener(type: string, listener: EventListener): void {\n const clearButton = this._component.querySelector(AUTOCOMPLETE_CONSTANTS.selectors.CLEAR_BUTTON);\n if (clearButton) {\n clearButton.removeEventListener(type, listener);\n }\n }\n\n public propagateKey(key: string): void {\n this._listDropdown?.handleKey(key);\n }\n\n public updateActiveDescendant(id: string): void {\n if (!this._targetElement) {\n return;\n }\n toggleAttribute(this._inputElement, !!id, 'aria-activedescendant', id);\n }\n\n public getTargetElementWidth(selector: string): number {\n if (!this._targetElement) {\n this._targetElement = this._getTargetElement(selector);\n }\n return this._targetElement.getBoundingClientRect().width;\n }\n\n public getPopupElement(): HTMLElement | null {\n return this._listDropdown?.dropdownElement ?? null;\n }\n\n public activateFirstOption(): void {\n this._listDropdown?.activateFirstOption();\n }\n\n public activateSelectedOption(): void {\n this._listDropdown?.activateSelectedOption();\n }\n\n public activateOptionByIndex(value: number): void {\n this._listDropdown?.activateOption(value);\n }\n\n public getActiveOptionIndex(): number | null {\n return this._listDropdown?.getActiveOptionIndex() ?? null;\n }\n\n public clearActiveOption(): void {\n this._listDropdown?.clearActiveOption();\n }\n\n public setSelectedOptions(options: IAutocompleteOption[]): void {\n if (this._listDropdown) {\n const values = options.map(o => o.value);\n this._listDropdown.setSelectedValues(values);\n }\n }\n\n public queueDropdownPositionUpdate(): void {\n if (!this.getPopupElement()) {\n return;\n }\n // We need to wait for the next animation frame to ensure that the layout has been updated\n window.requestAnimationFrame(() => {\n const dropdownEl = this.getPopupElement() as IPopupComponent | undefined;\n dropdownEl?.position();\n });\n }\n\n private _getTargetElement(selector?: string): HTMLElement {\n return selector ? this._component.querySelector(selector) || this._getDefaultTargetElement() : this._getDefaultTargetElement();\n }\n\n private _getDefaultTargetElement(): HTMLElement {\n // This component is often used with the text-field, if so, let's target our popup around one if its internal elements for proper alignnment\n const textField = this._component.querySelector('forge-text-field');\n if (textField && textField.shadowRoot) {\n const textFieldRoot = getShadowElement(textField, TEXT_FIELD_CONSTANTS.selectors.ROOT) as HTMLElement;\n if (textFieldRoot) {\n return textFieldRoot;\n }\n }\n\n // This component is often used with the chip-field, if so, let's target our popup around one if its internal elements for proper alignnment\n const chipField = this._component.querySelector('forge-chip-field');\n if (chipField && chipField.shadowRoot) {\n const chipFieldRoot = getShadowElement(chipField, CHIP_FIELD_CONSTANTS.selectors.ROOT) as HTMLElement;\n if (chipFieldRoot) {\n return chipFieldRoot;\n }\n }\n\n return this._component.querySelector('input') || this._component;\n }\n\n private _tryToggleDropdownIconRotation(state: boolean): void {\n const dropdownIcon = this._component.querySelector(AUTOCOMPLETE_CONSTANTS.selectors.DROPDOWN_ICON) as HTMLElement;\n if (dropdownIcon) {\n toggleAttribute(dropdownIcon, state, AUTOCOMPLETE_CONSTANTS.attributes.DROPDOWN_ICON_OPEN);\n }\n }\n}\n", "import { IAutocompleteOption, IAutocompleteOptionGroup } from './autocomplete-constants';\nimport { isDefined, isObject, isDeepEqual } from '@tylertech/forge-core';\n\n/** The available option types. */\nexport enum OptionType { Option, Group }\n\n/**\n * Determines if the provided options are of the specified type.\n * @param options The options either grouped or individual.\n * @param type The type of option to detect.\n */\nexport function isOptionType(options: IAutocompleteOption[] | IAutocompleteOptionGroup[], type: OptionType): boolean {\n const isOptionGroups = options.some((o: IAutocompleteOption | IAutocompleteOptionGroup) => isDefined(o) && isObject(o) && o.hasOwnProperty('options') && (o.hasOwnProperty('text') || o.hasOwnProperty('builder')));\n const isOptionTypes = options.some((o: IAutocompleteOption | IAutocompleteOptionGroup) => isDefined(o) && isObject(o) && o.hasOwnProperty('label') && o.hasOwnProperty('value'));\n return (isOptionGroups && type === OptionType.Group) || (isOptionTypes && type === OptionType.Option);\n}\n\n/** A utility function to find the matching option in the provided options by the value provided. */\nexport function getSelectedOption(options: IAutocompleteOption[], value: string): IAutocompleteOption | undefined {\n return options.find(o => o.value === value);\n}\n\n/** A predicate function that will determine if an option value is equal regardless of primitive type or complex object type. */\nexport function optionEqualPredicate(option: IAutocompleteOption, value: any, property: string | null = null): boolean {\n if (property) {\n if (!(property in option.value) || !(property in value)) {\n return false;\n }\n return isDeepEqual(option.value[property], value[property]);\n }\n return isDeepEqual(option.value, value);\n}\n", "import { debounce, isDefined, isString, Platform, randomChars } from '@tylertech/forge-core';\nimport { highlightTextHTML } from '../core';\nimport { IListItemComponent } from '../list';\nimport { IListDropdownConfig, IListDropdownOption, ListDropdownAsyncStyle, ListDropdownFooterBuilder, ListDropdownHeaderBuilder, ListDropdownOptionBuilder } from '../list-dropdown';\nimport { IListDropdownAwareFoundation, ListDropdownAwareFoundation } from '../list-dropdown/list-dropdown-aware-foundation';\nimport { IAutocompleteAdapter } from './autocomplete-adapter';\nimport { AutocompleteFilterCallback, AutocompleteMode, AutocompleteOptionBuilder, AutocompleteSelectedTextBuilder, AUTOCOMPLETE_CONSTANTS, IAutocompleteOption, IAutocompleteOptionGroup, IAutocompleteSelectEventData } from './autocomplete-constants';\nimport { getSelectedOption, isOptionType, optionEqualPredicate, OptionType } from './autocomplete-utils';\n\nexport interface IAutocompleteFoundation extends IListDropdownAwareFoundation {\n mode: AutocompleteMode;\n multiple: boolean;\n value: string | string[] | IAutocompleteOption | IAutocompleteOption[] | null | undefined;\n debounce: number;\n filterOnFocus: boolean;\n filterFocusFirst: boolean;\n allowUnmatched: boolean;\n popupTarget: string;\n filterText: string;\n optionBuilder: AutocompleteOptionBuilder | null | undefined;\n filter: AutocompleteFilterCallback | null | undefined;\n selectedTextBuilder: AutocompleteSelectedTextBuilder;\n isInitialized: boolean;\n open: boolean;\n matchKey: string | null | undefined;\n appendOptions(options: IAutocompleteOption[] | IAutocompleteOptionGroup[]): void;\n beforeValueChange: (value: any) => boolean | Promise<boolean>;\n}\n\n/**\n * The foundation class behind the `<forge-autocomplete>` element.\n */\nexport class AutocompleteFoundation extends ListDropdownAwareFoundation implements IAutocompleteFoundation {\n private _isInitialized = false;\n private _isDropdownOpen = false;\n private _mode: AutocompleteMode = AutocompleteMode.Default;\n private _multiple = false;\n private _debounce = AUTOCOMPLETE_CONSTANTS.numbers.DEFAULT_DEBOUNCE_TIME;\n private _allowUnmatched = false;\n private _popupTarget: string;\n private _filterOnFocus = true;\n private _filterFocusFirst = true;\n private _optionBuilder?: AutocompleteOptionBuilder | null;\n private _filter?: AutocompleteFilterCallback | null;\n private _selectedTextBuilder: AutocompleteSelectedTextBuilder;\n private _options: IAutocompleteOption[] | IAutocompleteOptionGroup[] = [];\n private _filterText = '';\n private _selectedOptions: IAutocompleteOption[] = [];\n private _values: any[] = [];\n private _pendingFilterPromises: Array<Promise<IAutocompleteOption[] | IAutocompleteOptionGroup[]>> = [];\n private _identifier: string;\n private _matchKey?: string | null = null;\n private _filterFn: () => Promise<void>;\n private _clickListener: (evt: MouseEvent) => void;\n private _focusListener: (evt: FocusEvent) => void;\n private _blurListener: (evt: FocusEvent) => void;\n private _inputListener: (evt: KeyboardEvent) => void;\n private _keydownListener: (evt: KeyboardEvent) => void;\n private _dropdownIconClickListener: (evt: MouseEvent) => void;\n private _dropdownIconMouseDownListener: (evt: MouseEvent) => void;\n private _clearButtonListener: (evt: MouseEvent) => void;\n private _dropdownScrollEndListener: () => void;\n private _dismissListener: () => void;\n private _activeChangeListener: (id: string) => void;\n private _targetWidthCallback: () => number;\n private _beforeValueChange: (value: any) => boolean | Promise<boolean>;\n private _valueChanging: Promise<boolean> | undefined;\n\n constructor(private _adapter: IAutocompleteAdapter) {\n super();\n this._clickListener = evt => this._onClick(evt);\n this._focusListener = () => this._onFocus();\n this._blurListener = evt => this._onBlur(evt);\n this._keydownListener = evt => this._onKeydown(evt);\n this._dropdownIconClickListener = evt => this._onDropdownIconClick(evt);\n this._dropdownScrollEndListener = () => this._onDropdownScrollEnd();\n this._dropdownIconMouseDownListener = evt => this._onDropdownIconMouseDown(evt);\n this._clearButtonListener = evt => this._onClear(evt);\n this._dismissListener = () => this._onDismiss();\n this._activeChangeListener = id => this._adapter.updateActiveDescendant(id);\n this._targetWidthCallback = () => this._adapter.getTargetElementWidth(this._popupTarget);\n this._identifier = randomChars();\n }\n\n public async initialize(): Promise<void> {\n if (!this._adapter.hasInputElement() && !this._adapter.setInputElement()) {\n throw new Error('An input element is required as a child of the autocomplete component.');\n }\n\n this._setInputListener();\n this._setFilterCallback();\n this._attachListeners();\n this._initializeAccessibility();\n\n if (this._values.length) {\n if (!this._selectedOptions.length) {\n try {\n await this._executeFilter();\n } catch (e) {\n console.error(e);\n }\n this._updateSelectedOptions(this._values);\n }\n this._adapter.setSelectedText(this._getSelectedText());\n }\n\n this._isInitialized = true;\n }\n\n public disconnect(): void {\n if (this._isInitialized) {\n this._detachListeners();\n this._isInitialized = false;\n }\n if (this._isDropdownOpen) {\n this._closeDropdown();\n }\n }\n\n private _attachListeners(): void {\n this._adapter.addInputListener('click', this._clickListener);\n this._adapter.addInputListener('focus', this._focusListener);\n this._adapter.addInputListener('blur', this._blurListener);\n this._adapter.addInputListener('input', this._inputListener);\n this._adapter.addInputListener('keydown', this._keydownListener);\n this._adapter.setDropdownIconListener('click', this._dropdownIconClickListener);\n this._adapter.setDropdownIconListener('mousedown', this._dropdownIconMouseDownListener);\n this._adapter.setClearButtonListener('click', this._clearButtonListener);\n }\n\n private _detachListeners(): void {\n this._adapter.removeInputListener('click', this._clickListener);\n this._adapter.removeInputListener('focus', this._focusListener);\n this._adapter.removeInputListener('blur', this._blurListener);\n this._adapter.removeInputListener('input', this._inputListener);\n this._adapter.removeInputListener('keydown', this._keydownListener);\n this._adapter.removeDropdownIconListener('click', this._dropdownIconClickListener);\n this._adapter.removeDropdownIconListener('mousedown', this._dropdownIconMouseDownListener);\n this._adapter.removeClearButtonListener('click', this._clearButtonListener);\n }\n\n private _setInputListener(): void {\n this._inputListener = (evt: KeyboardEvent) => this._onInput(evt);\n }\n\n private _setFilterCallback(): void {\n this._filterFn = isDefined(this._debounce) && this._debounce > 0 ? debounce(this._debounceFilter, this._debounce, false) : this._debounceFilter;\n }\n\n private _initializeAccessibility(): void {\n this._adapter.initializeInputAccessibility(this._identifier);\n }\n\n private get _flatOptions(): IAutocompleteOption[] {\n if (isOptionType(this._options, OptionType.Group)) {\n return (this._options as IAutocompleteOptionGroup[]).reduce((previousValue, currentValue) => previousValue.concat(currentValue.options), [] as IAutocompleteOption[]);\n }\n return this._options as IAutocompleteOption[];\n }\n\n private _onClick(evt: MouseEvent): void {\n if (!this._isDropdownOpen && this._filterOnFocus) {\n this._showDropdown();\n }\n }\n\n private _onDropdownIconMouseDown(evt: MouseEvent): void {\n evt.preventDefault(); // Always avoid changing focus when clicking the dropdown\n }\n\n private _onDropdownIconClick(evt: MouseEvent): void {\n if (!this._isDropdownOpen) {\n this._adapter.focus();\n window.requestAnimationFrame(() => this._showDropdown());\n } else {\n this._closeDropdown();\n }\n }\n\n private _onClear(evt: MouseEvent): void {\n this._clearValue();\n this._adapter.setSelectedText(this._getSelectedText());\n }\n\n private _onDropdownScrollEnd(): void {\n this._adapter.emitHostEvent(AUTOCOMPLETE_CONSTANTS.events.SCROLLED_BOTTOM);\n }\n\n private _onFocus(): void {\n if (!this._isDropdownOpen && this._adapter.getInputValue() && !Platform.isMobile) {\n this._adapter.selectInputValue();\n }\n }\n\n private _onBlur(evt: FocusEvent): void {\n // If the blur event was triggered by an element within the popup then ignore it\n if (this._adapter.isFocusWithinPopup(evt.relatedTarget as HTMLElement)) {\n return;\n }\n\n this._applyBlur();\n }\n\n private _applyBlur(): void {\n if (this._isDropdownOpen) {\n this._closeDropdown();\n }\n\n // If we are in stateless mode, we don't need to do anything further\n if (this._mode === AutocompleteMode.Stateless) {\n return;\n }\n\n if (!this._selectedOptions.length) {\n if (!this._allowUnmatched) {\n this._filterText = '';\n this._adapter.setSelectedText('');\n }\n } else {\n this._adapter.setSelectedText(this._getSelectedText());\n }\n }\n\n private _onInput(evt: KeyboardEvent): void {\n if (this._selectedOptions.length && !this._multiple && (!this._adapter.getInputValue() || this._allowUnmatched) && !this._adapter.isWrappingChipField()) {\n this._selectedOptions = [];\n this._values = [];\n this._emitChangeEvent();\n }\n this._filterText = this._adapter.getInputValue();\n this._filterFn();\n }\n\n private async _debounceFilter({ checkFocus = true } = {}): Promise<void> {\n // There is the potential that the user could have started a filter, then moved focus to another element\n // while a debounced filter is running. This check detects that scenario and stops all pending filters.\n if (!checkFocus && !this._adapter.hasFocus()) {\n this._pendingFilterPromises = [];\n if (this._isDropdownOpen) {\n this._closeDropdown();\n }\n return;\n }\n\n // Keep track of these variables so we can use them when each filter callback completes\n const filterText = this._filterText; // Filter text just before the execution\n const filterPromise = this._executeFilter(); // Execute the filter and keep track of the filter promise object for use after it resolves\n\n // Keep track of all pending promises\n this._pendingFilterPromises.push(filterPromise);\n\n // If the dropdown is open, show the spinner and execute the filter. If not open, then we need to\n // show the dropdown (which will handle showing the spinner and executing the filter for us) so\n // we use the promise from that method instead.\n if (this._isDropdownOpen) {\n this._adapter.setBusyVisibility(true);\n } else {\n this._showDropdown({ filter: false });\n }\n\n try {\n await filterPromise;\n } catch {\n // When an exception occurs, we just flush the pending promises and clean up\n this._pendingFilterPromises = [];\n if (this._isDropdownOpen) {\n this._closeDropdown();\n }\n return;\n }\n\n // We only continue if the filter text before this result matches the latest filter text\n if (filterText === this._filterText) {\n this._pendingFilterPromises = [];\n this._onFilterComplete();\n } else {\n // If this is not the latest filter result, we ignore it and remove it from the pending promises\n const promiseIndex = this._pendingFilterPromises.indexOf(filterPromise);\n if (promiseIndex !== -1) {\n this._pendingFilterPromises.splice(promiseIndex, 1);\n }\n }\n }\n\n private _onKeydown(evt: KeyboardEvent): void {\n switch (evt.key) {\n case 'Tab':\n if (this._isDropdownOpen && !this._multiple) {\n this._selectActiveOption(false);\n }\n break;\n case 'Esc':\n case 'Escape':\n if (this._isDropdownOpen) {\n evt.preventDefault();\n evt.stopPropagation();\n this._closeDropdown();\n }\n break;\n case 'Down':\n case 'ArrowDown':\n evt.preventDefault();\n if (!this._isDropdownOpen) {\n this._showDropdown({ activateFirst: true, activateSelected: true });\n } else {\n this._adapter.propagateKey(evt.key);\n }\n break;\n case 'Up':\n case 'ArrowUp':\n evt.preventDefault();\n if (this._isDropdownOpen) {\n this._adapter.propagateKey(evt.key);\n }\n break;\n case 'Enter':\n case 'Home':\n case 'End':\n if (this._isDropdownOpen) {\n if (evt.key === 'Enter') {\n evt.stopPropagation();\n }\n evt.preventDefault();\n this._adapter.propagateKey(evt.key);\n }\n break;\n case 'Backspace':\n case 'Delete':\n const input = evt.target as HTMLInputElement;\n const value = this._adapter.getInputValue();\n const isRemovingAllChars = input.value.substring(input.selectionStart as number, input.selectionEnd as number) === input.value;\n const isBackspacingLastChar = value.length === 1 && input.selectionEnd === 1;\n const isDeletingLastChar = value.length === 1 && input.selectionEnd === 0;\n const isEmpty = !value || isRemovingAllChars || isBackspacingLastChar || isDeletingLastChar;\n \n // We only clear the value on empty when not around a chip-field and NOT in multiple mode\n if (!this._adapter.isWrappingChipField() && isEmpty && !this._multiple && this._values.length) {\n this._clearValue();\n }\n break;\n }\n }\n\n private _executeFilter(sendFilterText = true, sendValue = false): Promise<IAutocompleteOption[] | IAutocompleteOptionGroup[]> {\n if (!this._filter || typeof this._filter !== 'function') {\n throw new Error('A filter callback must be provided. Did you set the \"filter\" property?');\n }\n const filter = this._filter;\n\n const filterText = sendFilterText ? this._filterText : '';\n const value = sendValue ? this._getValue() : null;\n\n return new Promise<IAutocompleteOption[] | IAutocompleteOptionGroup[]>((resolve, reject) => {\n return Promise.resolve(filter(filterText, value))\n .then(options => {\n this._options = options;\n resolve(this._options);\n })\n .catch(e => reject(`An unexpected error occurred while filtering: ${e}`));\n });\n }\n\n private _onFilterComplete(): void {\n if (!this._adapter.hasFocus()) {\n if (this._isDropdownOpen) {\n this._closeDropdown();\n }\n return;\n }\n\n if (this._options.length) {\n const sendFilterText = this._allowUnmatched && !this._selectedOptions.length;\n this._dropdownReady({ userTriggered: sendFilterText });\n\n if (this._filterFocusFirst && this._filterText) {\n this._adapter.activateFirstOption();\n }\n } else {\n this._closeDropdown();\n }\n }\n\n private _clearValue(): void {\n this._selectedOptions = [];\n this._values = [];\n\n if (this._isDropdownOpen) {\n this._adapter.setSelectedOptions([]);\n this._adapter.clearActiveOption();\n }\n\n this._emitChangeEvent();\n }\n\n private async _showDropdown({ filter = true, userTriggered = true, activateFirst = false, activateSelected = false } = {}): Promise<void> {\n const sendFilterText = this._allowUnmatched && !this._selectedOptions.length;\n this._isDropdownOpen = true;\n let listOptionBuilder: ListDropdownOptionBuilder<HTMLElement> | undefined;\n if (this._optionBuilder) {\n const optionBuilder = this._optionBuilder;\n listOptionBuilder = (option: IListDropdownOption, parentElement: HTMLElement) => {\n return optionBuilder(option, this._filterText, parentElement as IListItemComponent);\n };\n }\n const config: IListDropdownConfig = {\n options: this._options,\n multiple: this._multiple,\n selectedValues: [...this._values],\n id: `forge-autocomplete-${this._identifier}`,\n asyncStyle: ListDropdownAsyncStyle.Skeleton,\n optionLimit: this._optionLimit,\n popupClasses: this._popupClasses,\n headerBuilder: this._popupHeaderBuilder,\n footerBuilder: this._popupFooterBuilder,\n transform: label => {\n if (this._filterText) {\n // Highlight the filter text within the label\n const highlightElement = highlightTextHTML(label, this._filterText);\n if (highlightElement) {\n return highlightElement;\n }\n }\n return label;\n },\n allowBusy: true,\n optionBuilder: listOptionBuilder,\n syncWidth: this._syncPopupWidth,\n observeScroll: this._observeScroll,\n observeScrollThreshold: this._observeScrollThreshold,\n scrollEndListener: this._dropdownScrollEndListener,\n activeChangeCallback: this._activeChangeListener,\n targetWidthCallback: this._targetWidthCallback,\n selectCallback: (value: any) => this._onSelect(value),\n closeCallback: () => this._closeDropdown()\n };\n\n this._adapter.show(config, this._popupTarget);\n this._adapter.toggleHostAttribute(AUTOCOMPLETE_CONSTANTS.attributes.OPEN, this._isDropdownOpen);\n\n if (filter) {\n if (this._options.length) {\n this._adapter.setBusyVisibility(true);\n }\n try {\n await this._executeFilter(sendFilterText);\n } catch (e) {\n console.error(e);\n }\n this._updateSelectedOptions(this._values);\n }\n\n // If we have any pending filter promises, then we will let those complete and update the dropdown separately after\n if (this._pendingFilterPromises.length) {\n return;\n }\n\n this._dropdownReady({ userTriggered, activateFirst, activateSelected });\n }\n\n private _dropdownReady({ userTriggered = true, activateFirst = false, activateSelected = false } = {}): void {\n if (!this._isDropdownOpen || !this._options.length || (userTriggered && !this._adapter.hasFocus())) {\n this._closeDropdown();\n return;\n }\n\n this._sortSelectedOptions();\n this._adapter.setBusyVisibility(false);\n this._adapter.setOptions(this._options);\n this._adapter.setSelectedOptions(this._selectedOptions);\n this._adapter.setDismissListener(this._dismissListener);\n\n if (activateSelected && this._selectedOptions.length) {\n this._adapter.activateSelectedOption();\n } else if (activateFirst) {\n this._adapter.activateFirstOption();\n }\n }\n\n private _closeDropdown(): void {\n if (this._multiple) {\n this._filterText = '';\n }\n this._isDropdownOpen = false;\n this._adapter.hide(this._dismissListener);\n this._sortSelectedOptions();\n this._adapter.toggleHostAttribute(AUTOCOMPLETE_CONSTANTS.attributes.OPEN, this._isDropdownOpen);\n }\n\n private _sortSelectedOptions(): void {\n // When in multiple selection mode, we need to make sure that the selected options appear at the top of the list\n if (this._multiple && this._selectedOptions.length && isOptionType(this._options, OptionType.Option)) {\n const selectedOptions: IAutocompleteOption[] = [];\n const unselectedOptions: IAutocompleteOption[] = [];\n\n (this._options as IAutocompleteOption[]).forEach(option => {\n if (this._selectedOptions.find(o => optionEqualPredicate(o, option.value, this._matchKey))) {\n selectedOptions.push(option);\n } else {\n unselectedOptions.push(option);\n }\n });\n\n this._options = [...selectedOptions, ...unselectedOptions];\n }\n }\n\n /**\n * Handles selecting an item in the dropdown.\n * @param {string} selectedValue The string value to select.\n */\n private async _onSelect(selectedValue: string, keepFocus = true): Promise<void> {\n if (this._valueChanging) {\n return;\n }\n\n // If we are in stateless mode, then we need to just emit an event when selecting an option. The\n // selected values are not tracked in stateless mode\n if (this._mode === AutocompleteMode.Stateless) {\n const data: IAutocompleteSelectEventData = { value: selectedValue };\n const result = this._adapter.emitHostEvent(AUTOCOMPLETE_CONSTANTS.events.SELECT, data, true, true);\n if (result) {\n this._filterText = '';\n if (!this._multiple) {\n this._closeDropdown();\n }\n }\n return;\n }\n\n const select = (): void => {\n const flatOptions = this._flatOptions;\n const option = flatOptions.find(o => optionEqualPredicate(o, selectedValue, this._matchKey)) as IAutocompleteOption;\n const value = option ? option.value : '';\n const label = option ? option.label : '';\n\n if (this._multiple) {\n const selectedOption = getSelectedOption(this._selectedOptions, value);\n if (selectedOption) {\n const index = this._selectedOptions.indexOf(selectedOption);\n this._selectedOptions.splice(index, 1);\n } else {\n this._selectedOptions.push(option);\n }\n } else {\n if (isDefined(value)) {\n this._selectedOptions[0] = option;\n this._filterText = label;\n } else {\n this._selectedOptions = [];\n this._filterText = '';\n }\n }\n\n // Update the dropdown selection status if its open\n if (this._isDropdownOpen) {\n this._adapter.setSelectedOptions(this._selectedOptions);\n }\n\n // Keep the values in sync with the currently selected options\n this._values = this._selectedOptions.map(o => o.value);\n\n // Update the selected text in the input\n this._adapter.setSelectedText(this._getSelectedText());\n\n // Select the text in the input to allow for the next filter\n if (!Platform.isMobile && keepFocus) {\n this._adapter.selectInputValue();\n }\n\n this._emitChangeEvent();\n this._tryUpdateDropdownPosition();\n };\n\n // We close the dropdown immediately if in single selection mode\n if (this._isDropdownOpen && !this._multiple) {\n this._closeDropdown();\n }\n\n if (typeof this._beforeValueChange === 'function') {\n this._valueChanging = Promise.resolve(this._beforeValueChange.call(null, selectedValue, this._matchKey));\n const shouldContinue = await this._valueChanging;\n if (shouldContinue) {\n select();\n } else {\n this._tryUpdateDropdownPosition();\n }\n this._valueChanging = undefined;\n } else {\n select();\n }\n }\n\n private _selectActiveOption(keepFocus = true): void {\n const activeOptionIndex = this._adapter.getActiveOptionIndex();\n if (typeof activeOptionIndex === 'number' && activeOptionIndex >= 0) {\n const option = this._flatOptions[activeOptionIndex];\n if (option) {\n this._onSelect(option.value, keepFocus);\n }\n }\n }\n\n private _emitChangeEvent(): void {\n this._adapter.emitHostEvent(AUTOCOMPLETE_CONSTANTS.events.CHANGE, this._getValue(), true);\n }\n\n private _tryUpdateDropdownPosition(): void {\n if (this._isDropdownOpen) {\n this._adapter.queueDropdownPositionUpdate();\n }\n }\n\n /**\n * Retrieves the current value(s) from the selected options array based on whether\n * we are in multi-select mode or not.\n */\n private _getValue(): string | string[] | null | undefined {\n if (!this._values) {\n return null;\n }\n\n if (!this._values.length) {\n return this._multiple ? [] : null;\n }\n\n return this._multiple ? [...this._values] : this._values[0];\n }\n\n /**\n * Creates the selected text value from the selected label values.\n */\n private _getSelectedText(): string {\n if (this._adapter.isWrappingChipField()) {\n return '';\n }\n\n if (this._selectedTextBuilder) {\n return this._selectedTextBuilder(this._selectedOptions);\n } else {\n if (this._multiple) {\n if (this._values.length) {\n if (this._values.length === 1) {\n return this._selectedOptions[0]?.label ?? '';\n } else {\n return `${this._values.length} options selected`;\n }\n } else {\n return '';\n }\n } else {\n return this._selectedOptions.filter(o => o && o.label).map(o => o.label).join(' ').trim();\n }\n }\n }\n\n /**\n * Handles the user dismissing the dropdown. This is only called if the blur event was triggered\n * from within the popup element itself (in a custom template most likely).\n * @param keepFocus Keep focus on the dropdown or not.\n */\n private _onDismiss(): void {\n this._closeDropdown();\n }\n\n private async _applyValue(value: string | string[] | IAutocompleteOption | IAutocompleteOption[] | null | undefined): Promise<void> {\n let values: any[] = [];\n this._selectedOptions = [];\n\n if (!Array.isArray(value)) {\n values = isDefined(value) ? [value] : [];\n } else {\n values = value;\n }\n\n // If this is not a multi-select, then make sure we only allow one selected value\n if (!this._multiple && values.length > 1) {\n values = [values[0]];\n }\n\n if (isOptionType(values, OptionType.Option)) {\n this._values = values.map((o: IAutocompleteOption) => o.value);\n this._selectedOptions = values as IAutocompleteOption[];\n } else {\n this._values = values as any[];\n }\n\n // Ensure that the values passed are actually existing options\n const allOptions = this._flatOptions;\n if (values.length && allOptions.length) {\n this._updateSelectedOptions(values);\n }\n\n // Execute the filter now if we have a value, but not options yet (only if it has been initialized already)\n if (this._values.length && !this._selectedOptions.length && !!this._filter && this._isInitialized) {\n try {\n await this._executeFilter(false, true);\n } catch (e) {\n console.error(e);\n }\n this._updateSelectedOptions(this._values);\n }\n\n // Update filter text to match the label when on in multiselect mode\n if (!this._multiple) {\n this._filterText = this._selectedOptions.length ? this._selectedOptions[0].label : '';\n } else {\n this._filterText = '';\n }\n\n // Update the state of the component based on the existence of a selected value\n if (this._isInitialized) {\n this._adapter.setSelectedText(this._getSelectedText());\n }\n\n // When the value is changed programmatically we should update the selected options\n if (this._isDropdownOpen) {\n this._adapter.setSelectedOptions(this._selectedOptions);\n }\n }\n\n private _updateSelectedOptions(values: Array<any | IAutocompleteOption>): void {\n const flatOptions = [...this._flatOptions, ...this._selectedOptions];\n\n if (this._selectedOptions.length) {\n this._selectedOptions = [];\n }\n\n if (isOptionType(values, OptionType.Option)) {\n for (const option of values as IAutocompleteOption[]) {\n const actualOption = flatOptions.find(o => optionEqualPredicate(o, option.value, this._matchKey));\n if (actualOption) {\n this._selectedOptions.push(actualOption);\n } else {\n this._selectedOptions.push(option);\n }\n }\n } else {\n for (const value of values as any[]) {\n const actualOption = flatOptions.find(o => optionEqualPredicate(o, value, this._matchKey));\n if (actualOption) {\n this._selectedOptions.push(actualOption);\n } else if (this._allowUnmatched) {\n this._selectedOptions.push({ label: value, value });\n }\n }\n }\n }\n\n /** Gets/sets the mode state. */\n public get mode(): AutocompleteMode {\n return this._mode;\n }\n public set mode(value: AutocompleteMode) {\n if (this._mode !== value) {\n this._mode = value;\n if (this._mode === AutocompleteMode.Stateless) {\n this._selectedOptions = [];\n if (this._isDropdownOpen) {\n this._closeDropdown();\n }\n }\n this._adapter.setHostAttribute(AUTOCOMPLETE_CONSTANTS.attributes.MODE, this._mode);\n }\n }\n\n /** Gets/sets the multi-select state. */\n public get multiple(): boolean {\n return this._multiple;\n }\n public set multiple(value: boolean) {\n if (this._multiple !== value) {\n this._multiple = value;\n this._adapter.setHostAttribute(AUTOCOMPLETE_CONSTANTS.attributes.MULTIPLE, isDefined(this._multiple) ? this._multiple.toString() : '');\n }\n }\n\n /** Gets/sets the value of the component. */\n public get value(): string | string[] | IAutocompleteOption | IAutocompleteOption[] | null | undefined {\n return this._getValue();\n }\n public set value(value: string | string[] | IAutocompleteOption | IAutocompleteOption[] | null | undefined) {\n let values: Array<string | IAutocompleteOption | IAutocompleteOption[] | string[]> = [];\n\n if (value == null) {\n values = [];\n } else if (Array.isArray(value)) {\n values = JSON.parse(JSON.stringify(value));\n } else if (isString(value)) {\n values = [value];\n } else {\n values = [JSON.parse(JSON.stringify(value))];\n }\n\n const hasNewValue = values.length !== this._values.length || values.some(v => !this._values.includes(v));\n if (!hasNewValue) {\n return;\n }\n\n // We only apply the new values if they have actually changed\n this._applyValue(value);\n }\n\n /** Gets/sets filter on focus settings which controls whether the dropdown displays automatically when focused. */\n public get filterOnFocus(): boolean {\n return this._filterOnFocus;\n }\n public set filterOnFocus(value: boolean) {\n if (this._filterOnFocus !== value) {\n this._filterOnFocus = value;\n this._adapter.setHostAttribute(AUTOCOMPLETE_CONSTANTS.attributes.FILTER_ON_FOCUS, isDefined(this._filterOnFocus) ? this._filterOnFocus.toString() : '');\n }\n }\n\n /** Gets/sets whether the first option in the dropdown will be focused automatically when opened or not. */\n public get filterFocusFirst(): boolean {\n return this._filterFocusFirst;\n }\n public set filterFocusFirst(value: boolean) {\n if (this._filterFocusFirst !== value) {\n this._filterFocusFirst = value;\n this._adapter.toggleHostAttribute(AUTOCOMPLETE_CONSTANTS.attributes.FILTER_FOCUS_FIRST, this._filterFocusFirst);\n }\n }\n\n /** Controls whether unmatched text entered by the user will stay visible an option in the dropdown is not found. */\n public get allowUnmatched(): boolean {\n return this._allowUnmatched;\n }\n public set allowUnmatched(value: boolean) {\n if (this._allowUnmatched !== value) {\n this._allowUnmatched = value;\n\n if (isDefined(this._allowUnmatched)) {\n this._adapter.setHostAttribute(AUTOCOMPLETE_CONSTANTS.attributes.ALLOW_UNMATCHED, this._allowUnmatched.toString());\n }\n }\n }\n\n /** Gets/sets the property key to match the value to an option. */\n public get matchKey(): string | null | undefined {\n return this._matchKey;\n }\n public set matchKey(value: string | null | undefined) {\n if (this._matchKey !== value) {\n this._matchKey = value;\n }\n }\n\n /** Gets/sets the selector that will be used to find an element to attach the popup to. Defaults to the input element. */\n public get popupTarget(): string {\n return this._popupTarget;\n }\n public set popupTarget(value: string) {\n if (this._popupTarget !== value) {\n this._popupTarget = value;\n }\n }\n\n /**\n * Gets/sets the filter text.\n * \n * Setting the filter text only applies when allowUnmatched is enabled.\n */\n public get filterText(): string {\n return this._filterText;\n }\n public set filterText(value: string) {\n if (this._filterText !== value) {\n this._filterText = this._allowUnmatched ? value : '';\n\n if (this._isInitialized && this._allowUnmatched) {\n this._adapter.setInputValue(this._filterText);\n\n if (this._isDropdownOpen) {\n this._debounceFilter({ checkFocus: false });\n }\n }\n }\n }\n\n /** Gets/sets the list of classes to apply to the popup element. */\n public get popupClasses(): string | string[] {\n return Array.isArray(this._popupClasses) ? [...this._popupClasses] : [this._popupClasses];\n }\n public set popupClasses(value: string | string[]) {\n if (this._popupClasses !== value) {\n this._popupClasses = Array.isArray(value) ? [...value] : [value];\n }\n }\n\n /** Gets/sets the builder callback to use for the popup header. */\n public set popupHeaderBuilder(value: ListDropdownHeaderBuilder) {\n this._popupHeaderBuilder = value;\n }\n\n /** Gets/sets the builder callback to use for the popup footer. */\n public set popupFooterBuilder(value: ListDropdownFooterBuilder) {\n this._popupFooterBuilder = value;\n }\n\n /** Gets/sets whether the popup width is synchronized with the popup target. */\n public get syncPopupWidth(): boolean {\n return this._syncPopupWidth;\n }\n public set syncPopupWidth(value: boolean) {\n if (this._syncPopupWidth !== value) {\n this._syncPopupWidth = value;\n }\n }\n\n /** Gets/sets the maximum number of options to display in the dropdown. */\n public get optionLimit(): number {\n return this._optionLimit;\n }\n public set optionLimit(value: number) {\n if (this._optionLimit !== value) {\n this._optionLimit = value;\n }\n }\n\n /** Gets/sets the debounce delay (milliseconds) for keyboard events. */\n public get debounce(): number {\n return this._debounce;\n }\n public set debounce(value: number) {\n if (this._debounce !== value) {\n this._debounce = value;\n\n if (this._isInitialized) {\n this._setFilterCallback();\n }\n\n this._adapter.setHostAttribute(AUTOCOMPLETE_CONSTANTS.attributes.DEBOUNCE, isDefined(this._debounce) ? this._debounce.toString() : '');\n }\n }\n\n /** Sets the item builder callback that will be executed when building the option list in the dropdown. */\n public get optionBuilder(): AutocompleteOptionBuilder | null | undefined {\n return this._optionBuilder;\n }\n public set optionBuilder(fn: AutocompleteOptionBuilder | null | undefined) {\n this._optionBuilder = fn;\n }\n\n /** Sets the filter callback that will be executed when fetching options for the autocomplete dropdown. */\n public get filter(): AutocompleteFilterCallback | null | undefined {\n return this._filter;\n }\n public set filter(cb: AutocompleteFilterCallback | null | undefined) {\n if (this._filter !== cb) {\n this._filter = cb;\n\n // If we have a value, but don't have any options yet then execute the filter\n if (this._isInitialized && this._values.length && !this._flatOptions.length && !!this._filter) {\n this._executeFilter().then(() => {\n this._updateSelectedOptions(this._values);\n this._adapter.setSelectedText(this._getSelectedText());\n });\n }\n }\n }\n\n /** Sets the selected text builder callback that will be executed when getting the selected text. */\n public get selectedTextBuilder(): AutocompleteSelectedTextBuilder {\n return this._selectedTextBuilder;\n }\n public set selectedTextBuilder(fn: AutocompleteSelectedTextBuilder) {\n this._selectedTextBuilder = fn;\n\n // If there are selected options, set the selected text again\n if (this._selectedOptions.length) {\n this._adapter.setSelectedText(this._getSelectedText());\n }\n }\n\n public get observeScroll(): boolean {\n return this._observeScroll;\n }\n public set observeScroll(value: boolean) {\n this._observeScroll = value;\n }\n\n public get observeScrollThreshold(): number {\n return this._observeScrollThreshold;\n }\n public set observeScrollThreshold(value: number) {\n this._observeScrollThreshold = value;\n }\n\n public appendOptions(options: IAutocompleteOption[] | IAutocompleteOptionGroup[]): void {\n if (!this._isDropdownOpen) {\n return;\n }\n this._options = [...this._options, ...options] as IAutocompleteOption[] | IAutocompleteOptionGroup[];\n this._adapter.appendOptions(options);\n }\n\n public get isInitialized(): boolean {\n return this._isInitialized;\n }\n\n public get open(): boolean {\n return this._isDropdownOpen;\n }\n public set open(value: boolean) {\n if (this._isDropdownOpen !== value) {\n if (value) {\n this._showDropdown({ userTriggered: false });\n } else {\n this._closeDropdown();\n }\n }\n }\n\n public get beforeValueChange(): (value: any) => boolean | Promise<boolean> {\n return this._beforeValueChange;\n }\n public set beforeValueChange(value: (value: any) => boolean | Promise<boolean>) {\n if (value !== this._beforeValueChange) {\n this._beforeValueChange = value;\n }\n }\n\n public get popupElement(): HTMLElement | null {\n return this._adapter.getPopupElement();\n }\n}\n", "import { attachShadowTemplate, coerceBoolean, coerceNumber, CustomElement, ensureChild, FoundationProperty } from '@tylertech/forge-core';\nimport { tylIconArrowDropDown, tylIconCheckBox, tylIconCheckBoxOutlineBlank } from '@tylertech/tyler-icons/standard';\nimport { DividerComponent } from '../divider';\nimport { IconComponent, IconRegistry } from '../icon';\nimport { LinearProgressComponent } from '../linear-progress';\nimport { ListComponent, ListItemComponent } from '../list';\nimport { IListDropdownAware, ListDropdownAware } from '../list-dropdown/list-dropdown-aware';\nimport { PopupComponent } from '../popup';\nimport { SkeletonComponent } from '../skeleton';\nimport { TextFieldComponent } from '../text-field';\nimport { AutocompleteAdapter } from './autocomplete-adapter';\nimport { AutocompleteFilterCallback, AutocompleteMode, AutocompleteOptionBuilder, AutocompleteSelectedTextBuilder, AUTOCOMPLETE_CONSTANTS, IAutocompleteOption, IAutocompleteOptionGroup, IAutocompleteSelectEventData } from './autocomplete-constants';\nimport { AutocompleteFoundation } from './autocomplete-foundation';\n\nconst template = '<template><slot></slot></template>';\nconst styles = ':host{display:block}:host([hidden]){display:none}';\n\nexport interface IAutocompleteComponent extends IListDropdownAware {\n mode: `${AutocompleteMode}`;\n multiple: boolean;\n value: any;\n debounce: number;\n filterOnFocus: boolean;\n filterFocusFirst: boolean;\n allowUnmatched: boolean;\n matchKey: string | null | undefined;\n popupTarget: string;\n filterText: string;\n filter: AutocompleteFilterCallback | null | undefined;\n optionBuilder: AutocompleteOptionBuilder | null | undefined;\n selectedTextBuilder: AutocompleteSelectedTextBuilder;\n popupElement: HTMLElement | null;\n beforeValueChange: (value: any) => boolean | Promise<boolean>;\n isInitialized: boolean;\n open: boolean;\n appendOptions(options: IAutocompleteOption[] | IAutocompleteOptionGroup[]): void;\n openDropdown(): void;\n closeDropdown(): void;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'forge-autocomplete': IAutocompleteComponent;\n }\n\n interface HTMLElementEventMap {\n 'forge-autocomplete-change': CustomEvent<any>;\n 'forge-autocomplete-select': CustomEvent<IAutocompleteSelectEventData>;\n 'forge-autocomplete-scrolled-bottom': CustomEvent<void>;\n }\n}\n\n/**\n * The custom element class behind the `<forge-autocomplete>` element.\n * \n * @tag forge-autocomplete\n */\n@CustomElement({\n name: AUTOCOMPLETE_CONSTANTS.elementName,\n dependencies: [\n TextFieldComponent,\n PopupComponent,\n ListComponent,\n ListItemComponent,\n DividerComponent,\n SkeletonComponent,\n LinearProgressComponent,\n IconComponent\n ]\n})\nexport class AutocompleteComponent extends ListDropdownAware implements IAutocompleteComponent {\n public static get observedAttributes(): string[] {\n return [\n AUTOCOMPLETE_CONSTANTS.attributes.MODE,\n AUTOCOMPLETE_CONSTANTS.attributes.MULTIPLE,\n AUTOCOMPLETE_CONSTANTS.attributes.DEBOUNCE,\n AUTOCOMPLETE_CONSTANTS.attributes.FILTER_ON_FOCUS,\n AUTOCOMPLETE_CONSTANTS.attributes.FILTER_FOCUS_FIRST,\n AUTOCOMPLETE_CONSTANTS.attributes.ALLOW_UNMATCHED,\n AUTOCOMPLETE_CONSTANTS.attributes.POPUP_TARGET,\n AUTOCOMPLETE_CONSTANTS.attributes.POPUP_CLASSES,\n AUTOCOMPLETE_CONSTANTS.attributes.OBSERVE_SCROLL,\n AUTOCOMPLETE_CONSTANTS.attributes.OBSERVE_SCROLL_THRESHOLD,\n AUTOCOMPLETE_CONSTANTS.attributes.OPTION_LIMIT,\n AUTOCOMPLETE_CONSTANTS.attributes.SYNC_POPUP_WIDTH,\n AUTOCOMPLETE_CONSTANTS.attributes.OPEN,\n AUTOCOMPLETE_CONSTANTS.attributes.MATCH_KEY,\n AUTOCOMPLETE_CONSTANTS.attributes.FILTER_TEXT\n ];\n }\n\n private _foundation: AutocompleteFoundation;\n\n constructor() {\n super();\n IconRegistry.define([tylIconArrowDropDown, tylIconCheckBox, tylIconCheckBoxOutlineBlank]);\n attachShadowTemplate(this, template, styles);\n this._foundation = new AutocompleteFoundation(new AutocompleteAdapter(this));\n }\n\n public connectedCallback(): void {\n if (this.querySelector(AUTOCOMPLETE_CONSTANTS.selectors.INPUT)) {\n this._foundation.initialize();\n } else {\n ensureChild(this, AUTOCOMPLETE_CONSTANTS.selectors.INPUT).then(() => this._foundation.initialize());\n }\n }\n\n public disconnectedCallback(): void {\n this._foundation.disconnect();\n }\n\n public attributeChangedCallback(name: string, oldValue: string, newValue: string): void {\n super.attributeChangedCallback(name, oldValue, newValue);\n switch (name) {\n case AUTOCOMPLETE_CONSTANTS.attributes.MODE:\n this.mode = newValue as AutocompleteMode;\n break;\n case AUTOCOMPLETE_CONSTANTS.attributes.MULTIPLE:\n this.multiple = coerceBoolean(newValue);\n break;\n case AUTOCOMPLETE_CONSTANTS.attributes.DEBOUNCE:\n this.debounce = coerceNumber(newValue);\n break;\n case AUTOCOMPLETE_CONSTANTS.attributes.FILTER_ON_FOCUS:\n this.filterOnFocus = coerceBoolean(newValue);\n break;\n case AUTOCOMPLETE_CONSTANTS.attributes.FILTER_FOCUS_FIRST:\n this.filterFocusFirst = coerceBoolean(newValue);\n break;\n case AUTOCOMPLETE_CONSTANTS.attributes.ALLOW_UNMATCHED:\n this.allowUnmatched = coerceBoolean(newValue);\n break;\n case AUTOCOMPLETE_CONSTANTS.attributes.POPUP_TARGET:\n this.popupTarget = newValue;\n break;\n case AUTOCOMPLETE_CONSTANTS.attributes.OPEN:\n this.open = coerceBoolean(newValue);\n break;\n case AUTOCOMPLETE_CONSTANTS.attributes.MATCH_KEY:\n this.matchKey = newValue;\n break;\n case AUTOCOMPLETE_CONSTANTS.attributes.FILTER_TEXT:\n this.filterText = newValue;\n break;\n }\n }\n\n /** Gets/sets the interaction mode. */\n @FoundationProperty()\n public declare mode: `${AutocompleteMode}`;\n\n /** Gets/sets the multi-select state. */\n @FoundationProperty()\n public declare multiple: boolean;\n\n /** Gets/sets the value. */\n @FoundationProperty()\n public declare value: any;\n\n /** Gets/sets the debounce delay (milliseconds) for keyboard events. */\n @FoundationProperty()\n public declare debounce: number;\n\n /** Gets/sets filter on focus settings which controls whether the dropdown displays automatically when focused. */\n @FoundationProperty()\n public declare filterOnFocus: boolean;\n\n /** Gets/sets whether the first option in the dropdown will be focused automatically when opened or not. */\n @FoundationProperty()\n public declare filterFocusFirst: boolean;\n\n /** Controls whether unmatched text entered by the user will stay visible an option in the dropdown is not found. */\n @FoundationProperty()\n public declare allowUnmatched: boolean;\n\n /** Gets/sets the selector that will be used to find an element to attach the popup to. Defaults to the input element. */\n @FoundationProperty()\n public declare popupTarget: string;\n\n /**\n * Gets/sets the filter text.\n * \n * Setting the filter text only applies when allowUnmatched is enabled.\n */\n @FoundationProperty()\n public declare filterText: string;\n\n /** Sets the option builder callback that will be executed when building the option list in the dropdown. */\n @FoundationProperty()\n public declare optionBuilder: AutocompleteOptionBuilder | null | undefined;\n\n /** Sets the filter callback that will be executed when fetching options for the autocomplete dropdown. */\n @FoundationProperty()\n public declare filter: AutocompleteFilterCallback | null | undefined;\n\n /** Sets the selected text builder callback that will be executed when getting the selected text. */\n @FoundationProperty()\n public declare selectedTextBuilder: AutocompleteSelectedTextBuilder;\n\n /** Controls the open state of the dropdown. */\n @FoundationProperty()\n public declare open: boolean;\n\n /** Gets/sets the property key to match the value to an option. */\n @FoundationProperty()\n public declare matchKey: string | null | undefined;\n\n /** Returns whether the component has been initialized or not yet. */\n @FoundationProperty({ set: false })\n public declare isInitialized: boolean;\n\n /** Gets the currently active popup element when the dropdown is open. */\n @FoundationProperty({ set: false })\n public declare popupElement: HTMLElement | null;\n\n /** Sets the callback to be executed when the user selects an option, before the UI is updated to allow for validation. */\n @FoundationProperty()\n public declare beforeValueChange: (value: any) => boolean | Promise<boolean>;\n\n /** Adds options to the dropdown while it is open. Has no effect if the dropdown is closed. */\n public appendOptions(options: IAutocompleteOption[] | IAutocompleteOptionGroup[]): void {\n this._foundation.appendOptions(options);\n }\n\n /** Opens the dropdown. */\n public openDropdown(): void {\n this.open = true;\n }\n\n /** Closes the dropdown. */\n public closeDropdown(): void {\n this.open = false;\n }\n}\n", "import { FormFieldComponentDelegate, IFormFieldComponentDelegateOptions } from '../core/delegates/form-field-component-delegate';\nimport { ITextFieldComponent, TextFieldComponentDelegate, ITextFieldComponentDelegateOptions } from '../text-field';\nimport { IAutocompleteComponent } from './autocomplete';\nimport { AUTOCOMPLETE_CONSTANTS } from './autocomplete-constants';\nimport { IconComponentDelegate, IIconComponentDelegateConfig } from '../icon';\nimport { IBaseComponentDelegateConfig } from '../core/delegates/base-component-delegate';\nimport { ITextFieldComponentDelegateConfig } from '../text-field/text-field-component-delegate';\n\nexport type AutocompleteComponentDelegateProps = Partial<IAutocompleteComponent>;\nexport interface IAutocompleteComponentDelegateOptions extends IFormFieldComponentDelegateOptions {\n useDropdownIcon?: boolean;\n textFieldDelegateConfig?: ITextFieldComponentDelegateConfig;\n}\n\nexport interface IAutocompleteComponentDelegateConfig extends IBaseComponentDelegateConfig<IAutocompleteComponent, IAutocompleteComponentDelegateOptions> {}\n\nexport class AutocompleteComponentDelegate extends FormFieldComponentDelegate<IAutocompleteComponent, IAutocompleteComponentDelegateOptions> {\n private _textFieldDelegate: TextFieldComponentDelegate;\n\n constructor(config?: IAutocompleteComponentDelegateConfig) {\n super(config);\n }\n\n protected _build(): IAutocompleteComponent {\n const autocomplete = document.createElement(AUTOCOMPLETE_CONSTANTS.elementName) as IAutocompleteComponent;\n this._attachTextField(autocomplete);\n return autocomplete;\n }\n\n public get textFieldDelegate(): TextFieldComponentDelegate {\n return this._textFieldDelegate;\n }\n\n public get value(): any {\n return this._element.value;\n }\n public set value(value: any) {\n this._element.value = value;\n }\n\n public get disabled(): boolean {\n return this._textFieldDelegate.inputElement.disabled;\n }\n public set disabled(value: boolean) {\n this._textFieldDelegate.inputElement.disabled = value;\n }\n\n public get invalid(): boolean {\n return this._textFieldDelegate.invalid || false;\n }\n public set invalid(value: boolean) {\n this._textFieldDelegate.invalid = value;\n }\n\n public onChange(listener: (value: string) => void): void {\n this._element.addEventListener(AUTOCOMPLETE_CONSTANTS.events.CHANGE, (evt: CustomEvent) => listener(evt.detail));\n }\n\n public onFocus(listener: (evt: FocusEvent) => void): void {\n this._textFieldDelegate.inputElement.addEventListener('focus', (evt: FocusEvent) => listener(evt));\n }\n\n public onBlur(listener: (evt: FocusEvent) => void): void {\n this._textFieldDelegate.inputElement.addEventListener('blur', (evt: FocusEvent) => listener(evt));\n }\n\n private _attachTextField(autocomplete: IAutocompleteComponent): void {\n const textFieldConfig: ITextFieldComponentDelegateConfig = {\n props: { ...this._config.options?.textFieldDelegateConfig?.props },\n options: { ...this._config.options?.textFieldDelegateConfig?.options }\n };\n\n if (!textFieldConfig.options) {\n textFieldConfig.options = {};\n }\n\n if (this._config.options?.useDropdownIcon !== false && !textFieldConfig.options?.trailingElement) {\n textFieldConfig.options.trailingElement = this._createDropdownIconElement();\n }\n\n this._textFieldDelegate = new TextFieldComponentDelegate(textFieldConfig);\n autocomplete.appendChild(this._textFieldDelegate.element);\n }\n\n private _createDropdownIconElement(): HTMLElement {\n const config: IIconComponentDelegateConfig = {\n props: {\n slot: 'trailing',\n name: 'arrow_drop_down'\n },\n options: {\n attributes: { 'forge-dropdown-icon': '' }\n }\n };\n return new IconComponentDelegate(config).element;\n }\n}\n", "import { defineCustomElement } from '@tylertech/forge-core';\n\nimport { AutocompleteComponent } from './autocomplete';\n\nexport * from './autocomplete-adapter';\nexport * from './autocomplete-component-delegate';\nexport * from './autocomplete-constants';\nexport * from './autocomplete-foundation';\nexport * from './autocomplete-utils';\nexport * from './autocomplete';\n\nexport function defineAutocompleteComponent(): void {\n defineCustomElement(AutocompleteComponent);\n}\n"],
5
+ "mappings": "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",
6
+ "names": ["elementName", "COMPONENT_NAME_PREFIX", "attributes", "selectors", "FIELD_CONSTANTS", "numbers", "events", "AUTOCOMPLETE_CONSTANTS", "AutocompleteMode", "AutocompleteAdapter", "BaseAdapter", "component", "inputElements", "deepQuerySelectorAll", "AUTOCOMPLETE_CONSTANTS", "name", "value", "type", "listener", "identifier", "CHIP_FIELD_CONSTANTS", "config", "popupTarget", "ListDropdown", "targetElement", "POPUP_CONSTANTS", "isVisible", "_a", "dropdownElement", "options", "target", "activeElement", "getActiveElement", "dropdownIcon", "clearButton", "key", "id", "toggleAttribute", "selector", "_b", "values", "o", "dropdownEl", "textField", "textFieldRoot", "getShadowElement", "TEXT_FIELD_CONSTANTS", "chipField", "chipFieldRoot", "state", "OptionType", "isOptionType", "options", "type", "isOptionGroups", "o", "isDefined", "isObject", "isOptionTypes", "getSelectedOption", "value", "optionEqualPredicate", "option", "property", "isDeepEqual", "AutocompleteFoundation", "ListDropdownAwareFoundation", "_adapter", "AUTOCOMPLETE_CONSTANTS", "evt", "id", "randomChars", "isDefined", "debounce", "isOptionType", "previousValue", "currentValue", "Platform", "checkFocus", "filterText", "filterPromise", "e", "promiseIndex", "input", "value", "isRemovingAllChars", "isBackspacingLastChar", "isDeletingLastChar", "isEmpty", "sendFilterText", "sendValue", "filter", "resolve", "reject", "options", "userTriggered", "activateFirst", "activateSelected", "listOptionBuilder", "optionBuilder", "option", "parentElement", "config", "label", "highlightElement", "highlightTextHTML", "selectedOptions", "unselectedOptions", "o", "optionEqualPredicate", "selectedValue", "keepFocus", "data", "select", "selectedOption", "getSelectedOption", "index", "activeOptionIndex", "_a", "_b", "values", "allOptions", "flatOptions", "actualOption", "isString", "v", "fn", "cb", "template", "styles", "AutocompleteComponent", "ListDropdownAware", "IconRegistry", "tylIconArrowDropDown", "tylIconCheckBox", "tylIconCheckBoxOutlineBlank", "attachShadowTemplate", "AutocompleteFoundation", "AutocompleteAdapter", "AUTOCOMPLETE_CONSTANTS", "ensureChild", "name", "oldValue", "newValue", "coerceBoolean", "coerceNumber", "options", "__decorateClass", "FoundationProperty", "CustomElement", "TextFieldComponent", "PopupComponent", "ListComponent", "ListItemComponent", "DividerComponent", "SkeletonComponent", "LinearProgressComponent", "IconComponent", "AutocompleteComponentDelegate", "FormFieldComponentDelegate", "config", "autocomplete", "AUTOCOMPLETE_CONSTANTS", "value", "listener", "evt", "_a", "_b", "_c", "_d", "_e", "_f", "textFieldConfig", "__spreadValues", "TextFieldComponentDelegate", "IconComponentDelegate", "defineAutocompleteComponent", "defineCustomElement", "AutocompleteComponent"]
7
+ }
@@ -3,5 +3,5 @@
3
3
  * Copyright 2023 Tyler Technologies, Inc.
4
4
  * License: Apache-2.0
5
5
  */
6
- import{b as _,c as R}from"./chunk.WY7DECJD.js";import{a as N}from"./chunk.ARJ3EVVO.js";import{b as z}from"./chunk.Y66GSZJB.js";import{a as T}from"./chunk.G5MGGEFP.js";import{a as w}from"./chunk.KTGSZEAG.js";import{a as A,b as D}from"./chunk.BE7PZANN.js";import{a as C,e as y,g as x,l as I}from"./chunk.Y4GKBJGI.js";import{f as d,g as l}from"./chunk.PN26D52V.js";import{k as v}from"./chunk.J2M2MXP2.js";import{a as g,b as E,f}from"./chunk.MCIQXNKY.js";var H=`${D}checkbox`,F={CONTAINER:"forge-checkbox-container",ROOT:"mdc-checkbox",CHECKBOX:"mdc-checkbox",CHECKBOX_DENSE:"forge-checkbox--dense",ANIM_CHECKED_INDETERMINATE:"mdc-checkbox--anim-checked-indeterminate",ANIM_CHECKED_UNCHECKED:"mdc-checkbox--anim-checked-unchecked",ANIM_INDETERMINATE_CHECKED:"mdc-checkbox--anim-indeterminate-checked",ANIM_INDETERMINATE_UNCHECKED:"mdc-checkbox--anim-indeterminate-unchecked",ANIM_UNCHECKED_CHECKED:"mdc-checkbox--anim-unchecked-checked",ANIM_UNCHECKED_INDETERMINATE:"mdc-checkbox--anim-unchecked-indeterminate",BACKGROUND:"mdc-checkbox__background",CHECKMARK:"mdc-checkbox__checkmark",CHECKMARK_PATH:"mdc-checkbox__checkmark-path",DISABLED:"mdc-checkbox--disabled",WRAPPER_DISABLED:"forge-checkbox-wrapper--disabled",MIXEDMARK:"mdc-checkbox__mixedmark",SELECTED:"mdc-checkbox--selected",UPGRADED:"mdc-checkbox--upgraded",CHECKED:"forge-checkbox--checked",INDETERMINATE:"forge-checkbox--indeterminate",FOCUSED:"forge-checkbox--focused",ENABLED:"forge-checkbox--enabled"},L={INPUT:"input",LABEL:"label",ROOT:`.${F.ROOT}`,WRAPPER:".forge-checkbox-wrapper"},S={DENSE:"dense",CHECKED:"checked",SLOT:"slot",DISABLED:"disabled",INDETERMINATE:"indeterminate"},M={ARIA_CHECKED_ATTR:"aria-checked",ARIA_CHECKED_INDETERMINATE_VALUE:"mixed",DATA_INDETERMINATE_ATTR:"data-indeterminate",NATIVE_CONTROL_SELECTOR:".mdc-checkbox__native-control",TRANSITION_STATE_CHECKED:"checked",TRANSITION_STATE_INDETERMINATE:"indeterminate",TRANSITION_STATE_INIT:"init",TRANSITION_STATE_UNCHECKED:"unchecked"},P=["checked","indeterminate","disabled"],K={ANIM_END_LATCH_MS:250},t={elementName:H,classes:F,selectors:L,attributes:S,strings:M,CB_PROTO_PROPS:P,numbers:K};var p=class{constructor(r){this._adapter=r;this._dense=!1;this._currentCheckState=t.strings.TRANSITION_STATE_INIT;this._currentAnimationClass="";this._animEndLatchTimer=0;this._enableAnimationEndHandler=!1}disconnect(){this._adapter.unlisten("change",this._handleChange),this._adapter.disconnect(),this._adapter.uninstallPropertyChangeHooks(),this._adapter.unlisten("animationend",this._handleAnimationEnd)}connect(){this._adapter.initialize(),this._currentCheckState=this._determineCheckState(),this._setDense(this.dense),this._updateAriaChecked(),this._inputAttributeChangedListener=(r,e)=>this._handleInputAttributeChange(),this._adapter.setInputAttributeObserver((r,e)=>this._inputAttributeChangedListener(r,e)),this._handleChange=()=>this._handleInputChange(),this._adapter.listen("change",this._handleChange),this._adapter.installPropertyChangeHooks(()=>{this._handleInputChange()}),this._handleAnimationEnd=()=>this.handleAnimationEnd(),this._adapter.listen("animationend",this._handleAnimationEnd,!0),this._handleInputChange()}get dense(){return this._dense}set dense(r){this._dense!==r&&(this._dense=r,this._setDense(r))}handleAnimationEnd(){if(!this._enableAnimationEndHandler)return;let r=()=>{this._adapter.removeRootClass(this._currentAnimationClass),this._enableAnimationEndHandler=!1};clearTimeout(this._animEndLatchTimer),this._animEndLatchTimer=setTimeout(r,t.numbers.ANIM_END_LATCH_MS)}_setDense(r){this._adapter.setDense(r)}_determineCheckState(){let{TRANSITION_STATE_INDETERMINATE:r,TRANSITION_STATE_CHECKED:e,TRANSITION_STATE_UNCHECKED:i}=t.strings;return this._adapter.isIndeterminate()?r:this._adapter.isChecked()?e:i}_updateAriaChecked(){let{ARIA_CHECKED_INDETERMINATE_VALUE:r,ARIA_CHECKED_ATTR:e}=t.strings;this._adapter.isIndeterminate()?(this._adapter.setNativeAttribute(e,r),this._adapter.setRootClass(t.classes.INDETERMINATE),this._adapter.isChecked()||this._adapter.removeRootClass(t.classes.CHECKED)):(this._adapter.removeNativeAttribute(e),this._adapter.removeRootClass(t.classes.INDETERMINATE))}_handleInputChange(){this._handleInputAttributeChange(),this._updateCheckboxStateClasses(),this._transitionCheckState()}_transitionCheckState(){if(!this._adapter.isAttachedToDOM())return;let r=this._currentCheckState,e=this._determineCheckState();if(r===e)return;this._updateAriaChecked();let{TRANSITION_STATE_UNCHECKED:i}=t.strings,{SELECTED:c}=t.classes;e===i?this._adapter.removeRootClass(c):this._adapter.setRootClass(c),this._currentAnimationClass.length>0&&(clearTimeout(this._animEndLatchTimer),this._adapter.removeRootClass(this._currentAnimationClass)),this._currentAnimationClass.length>0&&(clearTimeout(this._animEndLatchTimer),this._adapter.removeRootClass(this._currentAnimationClass)),this._currentAnimationClass=this._getTransitionAnimationClass(r,e),this._currentCheckState=e,this._adapter.isAttachedToDOM()&&this._currentAnimationClass.length>0&&(this._adapter.setRootClass(this._currentAnimationClass),this._enableAnimationEndHandler=!0)}_handleInputAttributeChange(){this._adapter.isDisabled()?(this._adapter.setRootClass(t.classes.DISABLED),this._adapter.setWrapperClass(t.classes.WRAPPER_DISABLED),this._adapter.removeRootClass(t.classes.ENABLED)):(this._adapter.removeRootClass(t.classes.DISABLED),this._adapter.removeWrapperClass(t.classes.WRAPPER_DISABLED),this._adapter.setRootClass(t.classes.ENABLED)),this._updateCheckboxStateClasses()}_getTransitionAnimationClass(r,e){let{TRANSITION_STATE_CHECKED:i,TRANSITION_STATE_UNCHECKED:c}=t.strings,{ANIM_UNCHECKED_CHECKED:o,ANIM_UNCHECKED_INDETERMINATE:n,ANIM_CHECKED_UNCHECKED:a,ANIM_CHECKED_INDETERMINATE:m,ANIM_INDETERMINATE_CHECKED:u,ANIM_INDETERMINATE_UNCHECKED:b}=t.classes;switch(r){case c:return e===i?o:n;case i:return e===c?a:m;default:return e===i?u:b}}_updateCheckboxStateClasses(){this._adapter.isChecked()?this._adapter.setRootClass(t.classes.CHECKED):this._adapter.removeRootClass(t.classes.CHECKED),this._adapter.isIndeterminate()?(this._adapter.setRootClass(t.classes.INDETERMINATE),this._adapter.removeRootClass(t.classes.CHECKED)):this._adapter.removeRootClass(t.classes.INDETERMINATE)}};var h=class extends T{constructor(e){super(e)}get root(){return this._rootElement}get unbounded(){return!0}get disabled(){return this.isDisabled()}initialize(){this._configureElements(),this._attachInternalInputListeners(),this._deferRippleInitialization()}async _deferRippleInitialization(){let e=await z(this._rootElement);this._rippleInstance||(this._rippleInstance=this._createRipple(),e==="focusin"&&this._rippleInstance.handleFocus())}setDense(e){var i;e?(this._setHostAttribute(t.attributes.DENSE),this.setRootClass(t.classes.CHECKBOX_DENSE)):(this._removeHostAttribute(t.attributes.DENSE),this.removeRootClass(t.classes.CHECKBOX_DENSE)),(i=this._rippleInstance)==null||i.layout()}isAttachedToDOM(){return Boolean(this._component.parentNode)}_configureElements(){this._inputElement=this._component.querySelector(t.selectors.INPUT),this._wrapperElement=x(this._component,t.selectors.WRAPPER),this._rootElement=x(this._component,t.selectors.ROOT),this._labelElement=this._component.querySelector(t.selectors.LABEL),this._labelElement&&this._labelElement.setAttribute(t.attributes.SLOT,t.selectors.LABEL),this._inputElement&&this._inputElement.setAttribute(t.attributes.SLOT,t.selectors.INPUT),d(t.classes.UPGRADED,this._rootElement)}_setHostAttribute(e,i=""){this._component.setAttribute(e,i)}_removeHostAttribute(e){this._component.removeAttribute(e)}disconnect(){this._labelElement&&this._labelElement.removeAttribute(t.attributes.SLOT),this._inputElement&&this._inputElement.removeAttribute(t.attributes.SLOT),this._inputMutationObserver&&this._inputMutationObserver.disconnect(),this._detachInternalInputListeners(),this._rippleInstance&&this._rippleInstance.destroy()}setRootClass(e){this._rootElement&&d(e,this._rootElement)}removeRootClass(e){this._rootElement&&l(e,this._rootElement)}setWrapperClass(e){this._wrapperElement&&d(e,this._wrapperElement)}removeWrapperClass(e){this._wrapperElement&&l(e,this._wrapperElement)}setNativeAttribute(e,i){this._inputElement.setAttribute(e,i)}isDisabled(){return this._inputElement.disabled}isChecked(){return this._inputElement&&this._inputElement.checked}isIndeterminate(){return this._inputElement&&this._inputElement.indeterminate}removeNativeAttribute(e){this._inputElement.removeAttribute(e)}installPropertyChangeHooks(e){let i=this._inputElement,c=Object.getPrototypeOf(i);t.CB_PROTO_PROPS.forEach(o=>{let n=Object.getOwnPropertyDescriptor(c,o);if(!this._validDescriptor(n))return;let a=n.get;if(n){let m={configurable:n.configurable,enumerable:n.enumerable,get:a,set:u=>{var b;(b=n.set)==null||b.call(i,u),e()}};Object.defineProperty(i,o,m)}})}listen(e,i,c=!1){c?this._rootElement.addEventListener(e,i):this._inputElement.addEventListener(e,i)}unlisten(e,i,c=!1){!this._inputElement||(c?this._rootElement.removeEventListener(e,i):this._inputElement.removeEventListener(e,i))}uninstallPropertyChangeHooks(){if(!this._inputElement)return;let e=this._inputElement,i=Object.getPrototypeOf(e);t.CB_PROTO_PROPS.forEach(c=>{let o=Object.getOwnPropertyDescriptor(i,c);!this._validDescriptor(o)||Object.defineProperty(e,c,o)})}setInputAttributeObserver(e){this._inputMutationObserver=new MutationObserver(i=>{for(let c of i)c.attributeName&&e(c.attributeName,this._inputElement.getAttribute(c.attributeName))}),this._inputMutationObserver.observe(this._inputElement,{attributes:!0,attributeFilter:["disabled","checked"]})}_validDescriptor(e){return!!e&&typeof e.set=="function"}_attachInternalInputListeners(){this._inputFocusHandler=()=>this._handleInputFocusListener(),this._inputBlurHandler=()=>this._handleInputBlurListener(),this._inputElement.addEventListener("focus",this._inputFocusHandler),this._inputElement.addEventListener("blur",this._inputBlurHandler)}_detachInternalInputListeners(){removeEventListener("focus",this._inputFocusHandler),removeEventListener("blur",this._inputBlurHandler)}_handleInputFocusListener(){d(t.classes.FOCUSED,this._rootElement)}_handleInputBlurListener(){l(t.classes.FOCUSED,this._rootElement)}_createRipple(){let e=E(g({},_.createAdapter(this)),{deregisterInteractionHandler:(c,o)=>this._inputElement.removeEventListener(c,o,{passive:!0}),isSurfaceActive:()=>this._inputElement.matches(":active"),isUnbounded:()=>Boolean(this.unbounded),registerInteractionHandler:(c,o)=>this._inputElement.addEventListener(c,o,{passive:!0}),isSurfaceDisabled:()=>this._inputElement.disabled,addClass:c=>d(c,this._rootElement),removeClass:c=>l(c,this._rootElement),updateCssVariable:(c,o)=>this._rootElement.style.setProperty(c,o)});return new _(this._rootElement,new R(e))}};var B='<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>',X='.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}',s=class extends I{constructor(){super();y(this,B,X),this._foundation=new p(new h(this))}static get observedAttributes(){return[t.attributes.DENSE]}async connectedCallback(){await this._ensureInputElement(),this._foundation.connect()}attributeChangedCallback(e,i,c){switch(e){case t.attributes.DENSE:this.dense=v(c);break}}disconnectedCallback(){this._foundation.disconnect()}async _ensureInputElement(){return new Promise(e=>{let i=this.querySelector("input");i&&e(i);let c=new MutationObserver(o=>{if(o.reduce((a,m)=>a+m.addedNodes.length,0)>0){let a=this.querySelector("input");a&&(c.disconnect(),e(a))}});c.observe(this,{childList:!0,subtree:!0})})}};f([w()],s.prototype,"dense",2),s=f([A({name:t.elementName})],s);var O=class extends N{constructor(e){super(e)}get value(){return this.checked}set value(e){this.checked=e}get checked(){return this._inputElement.checked}set checked(e){this._inputElement.checked=e}get disabled(){return this._inputElement.disabled}set disabled(e){this._inputElement.disabled=e}get inputElement(){return this._inputElement}get labelElement(){return this._labelElement}onChange(e){this._inputElement.addEventListener("change",i=>e(i.target.checked))}onFocus(e){this._inputElement.addEventListener("focus",i=>e(i))}onBlur(e){this._inputElement.addEventListener("blur",i=>e(i))}setLabel(e){e?this._labelElement?this._labelElement.textContent=e:this._createLabel(e):this._labelElement&&(this._element.removeChild(this._labelElement),this._labelElement=void 0)}_build(){let e=document.createElement(t.elementName);return this._inputElement=this._buildInputElement(),e.appendChild(this._inputElement),e}_configure(){var e;typeof((e=this._config.options)==null?void 0:e.label)=="string"&&this._createLabel(this._config.options.label)}_createLabel(e){var i;this._labelElement=document.createElement("label"),this._labelElement.textContent=e,(i=this._config.options)!=null&&i.id&&this._labelElement.setAttribute("for",this._config.options.id),this._element.appendChild(this._labelElement)}_buildInputElement(){var i,c;let e=document.createElement("input");return e.type="checkbox",((i=this._config.options)==null?void 0:i.checked)!==void 0&&(e.checked=this._config.options.checked),(c=this._config.options)!=null&&c.id&&(e.id=this._config.options.id),e}};function ke(){C(s)}export{M as a,K as b,t as c,p as d,h as e,s as f,O as g,ke as h};
7
- //# sourceMappingURL=chunk.G3ZTZ4AN.js.map
6
+ import{b as _,c as R}from"./chunk.4CWMNWZU.js";import{a as N}from"./chunk.2KXSGD3S.js";import{b as z}from"./chunk.Y66GSZJB.js";import{a as T}from"./chunk.5KC43VFL.js";import{a as w}from"./chunk.KTGSZEAG.js";import{a as A,b as D}from"./chunk.QOA2O575.js";import{a as C,e as y,g as x,l as I}from"./chunk.HOXFK44F.js";import{f as d,g as l}from"./chunk.4LA6HEA7.js";import{k as v}from"./chunk.J2M2MXP2.js";import{a as g,b as E,f}from"./chunk.MCIQXNKY.js";var H=`${D}checkbox`,F={CONTAINER:"forge-checkbox-container",ROOT:"mdc-checkbox",CHECKBOX:"mdc-checkbox",CHECKBOX_DENSE:"forge-checkbox--dense",ANIM_CHECKED_INDETERMINATE:"mdc-checkbox--anim-checked-indeterminate",ANIM_CHECKED_UNCHECKED:"mdc-checkbox--anim-checked-unchecked",ANIM_INDETERMINATE_CHECKED:"mdc-checkbox--anim-indeterminate-checked",ANIM_INDETERMINATE_UNCHECKED:"mdc-checkbox--anim-indeterminate-unchecked",ANIM_UNCHECKED_CHECKED:"mdc-checkbox--anim-unchecked-checked",ANIM_UNCHECKED_INDETERMINATE:"mdc-checkbox--anim-unchecked-indeterminate",BACKGROUND:"mdc-checkbox__background",CHECKMARK:"mdc-checkbox__checkmark",CHECKMARK_PATH:"mdc-checkbox__checkmark-path",DISABLED:"mdc-checkbox--disabled",WRAPPER_DISABLED:"forge-checkbox-wrapper--disabled",MIXEDMARK:"mdc-checkbox__mixedmark",SELECTED:"mdc-checkbox--selected",UPGRADED:"mdc-checkbox--upgraded",CHECKED:"forge-checkbox--checked",INDETERMINATE:"forge-checkbox--indeterminate",FOCUSED:"forge-checkbox--focused",ENABLED:"forge-checkbox--enabled"},L={INPUT:"input",LABEL:"label",ROOT:`.${F.ROOT}`,WRAPPER:".forge-checkbox-wrapper"},S={DENSE:"dense",CHECKED:"checked",SLOT:"slot",DISABLED:"disabled",INDETERMINATE:"indeterminate"},M={ARIA_CHECKED_ATTR:"aria-checked",ARIA_CHECKED_INDETERMINATE_VALUE:"mixed",DATA_INDETERMINATE_ATTR:"data-indeterminate",NATIVE_CONTROL_SELECTOR:".mdc-checkbox__native-control",TRANSITION_STATE_CHECKED:"checked",TRANSITION_STATE_INDETERMINATE:"indeterminate",TRANSITION_STATE_INIT:"init",TRANSITION_STATE_UNCHECKED:"unchecked"},P=["checked","indeterminate","disabled"],K={ANIM_END_LATCH_MS:250},t={elementName:H,classes:F,selectors:L,attributes:S,strings:M,CB_PROTO_PROPS:P,numbers:K};var p=class{constructor(r){this._adapter=r;this._dense=!1;this._currentCheckState=t.strings.TRANSITION_STATE_INIT;this._currentAnimationClass="";this._animEndLatchTimer=0;this._enableAnimationEndHandler=!1}disconnect(){this._adapter.unlisten("change",this._handleChange),this._adapter.disconnect(),this._adapter.uninstallPropertyChangeHooks(),this._adapter.unlisten("animationend",this._handleAnimationEnd)}connect(){this._adapter.initialize(),this._currentCheckState=this._determineCheckState(),this._setDense(this.dense),this._updateAriaChecked(),this._inputAttributeChangedListener=(r,e)=>this._handleInputAttributeChange(),this._adapter.setInputAttributeObserver((r,e)=>this._inputAttributeChangedListener(r,e)),this._handleChange=()=>this._handleInputChange(),this._adapter.listen("change",this._handleChange),this._adapter.installPropertyChangeHooks(()=>{this._handleInputChange()}),this._handleAnimationEnd=()=>this.handleAnimationEnd(),this._adapter.listen("animationend",this._handleAnimationEnd,!0),this._handleInputChange()}get dense(){return this._dense}set dense(r){this._dense!==r&&(this._dense=r,this._setDense(r))}handleAnimationEnd(){if(!this._enableAnimationEndHandler)return;let r=()=>{this._adapter.removeRootClass(this._currentAnimationClass),this._enableAnimationEndHandler=!1};clearTimeout(this._animEndLatchTimer),this._animEndLatchTimer=setTimeout(r,t.numbers.ANIM_END_LATCH_MS)}_setDense(r){this._adapter.setDense(r)}_determineCheckState(){let{TRANSITION_STATE_INDETERMINATE:r,TRANSITION_STATE_CHECKED:e,TRANSITION_STATE_UNCHECKED:i}=t.strings;return this._adapter.isIndeterminate()?r:this._adapter.isChecked()?e:i}_updateAriaChecked(){let{ARIA_CHECKED_INDETERMINATE_VALUE:r,ARIA_CHECKED_ATTR:e}=t.strings;this._adapter.isIndeterminate()?(this._adapter.setNativeAttribute(e,r),this._adapter.setRootClass(t.classes.INDETERMINATE),this._adapter.isChecked()||this._adapter.removeRootClass(t.classes.CHECKED)):(this._adapter.removeNativeAttribute(e),this._adapter.removeRootClass(t.classes.INDETERMINATE))}_handleInputChange(){this._handleInputAttributeChange(),this._updateCheckboxStateClasses(),this._transitionCheckState()}_transitionCheckState(){if(!this._adapter.isAttachedToDOM())return;let r=this._currentCheckState,e=this._determineCheckState();if(r===e)return;this._updateAriaChecked();let{TRANSITION_STATE_UNCHECKED:i}=t.strings,{SELECTED:c}=t.classes;e===i?this._adapter.removeRootClass(c):this._adapter.setRootClass(c),this._currentAnimationClass.length>0&&(clearTimeout(this._animEndLatchTimer),this._adapter.removeRootClass(this._currentAnimationClass)),this._currentAnimationClass.length>0&&(clearTimeout(this._animEndLatchTimer),this._adapter.removeRootClass(this._currentAnimationClass)),this._currentAnimationClass=this._getTransitionAnimationClass(r,e),this._currentCheckState=e,this._adapter.isAttachedToDOM()&&this._currentAnimationClass.length>0&&(this._adapter.setRootClass(this._currentAnimationClass),this._enableAnimationEndHandler=!0)}_handleInputAttributeChange(){this._adapter.isDisabled()?(this._adapter.setRootClass(t.classes.DISABLED),this._adapter.setWrapperClass(t.classes.WRAPPER_DISABLED),this._adapter.removeRootClass(t.classes.ENABLED)):(this._adapter.removeRootClass(t.classes.DISABLED),this._adapter.removeWrapperClass(t.classes.WRAPPER_DISABLED),this._adapter.setRootClass(t.classes.ENABLED)),this._updateCheckboxStateClasses()}_getTransitionAnimationClass(r,e){let{TRANSITION_STATE_CHECKED:i,TRANSITION_STATE_UNCHECKED:c}=t.strings,{ANIM_UNCHECKED_CHECKED:o,ANIM_UNCHECKED_INDETERMINATE:n,ANIM_CHECKED_UNCHECKED:a,ANIM_CHECKED_INDETERMINATE:m,ANIM_INDETERMINATE_CHECKED:u,ANIM_INDETERMINATE_UNCHECKED:b}=t.classes;switch(r){case c:return e===i?o:n;case i:return e===c?a:m;default:return e===i?u:b}}_updateCheckboxStateClasses(){this._adapter.isChecked()?this._adapter.setRootClass(t.classes.CHECKED):this._adapter.removeRootClass(t.classes.CHECKED),this._adapter.isIndeterminate()?(this._adapter.setRootClass(t.classes.INDETERMINATE),this._adapter.removeRootClass(t.classes.CHECKED)):this._adapter.removeRootClass(t.classes.INDETERMINATE)}};var h=class extends T{constructor(e){super(e)}get root(){return this._rootElement}get unbounded(){return!0}get disabled(){return this.isDisabled()}initialize(){this._configureElements(),this._attachInternalInputListeners(),this._deferRippleInitialization()}async _deferRippleInitialization(){let e=await z(this._rootElement);this._rippleInstance||(this._rippleInstance=this._createRipple(),e==="focusin"&&this._rippleInstance.handleFocus())}setDense(e){var i;e?(this._setHostAttribute(t.attributes.DENSE),this.setRootClass(t.classes.CHECKBOX_DENSE)):(this._removeHostAttribute(t.attributes.DENSE),this.removeRootClass(t.classes.CHECKBOX_DENSE)),(i=this._rippleInstance)==null||i.layout()}isAttachedToDOM(){return Boolean(this._component.parentNode)}_configureElements(){this._inputElement=this._component.querySelector(t.selectors.INPUT),this._wrapperElement=x(this._component,t.selectors.WRAPPER),this._rootElement=x(this._component,t.selectors.ROOT),this._labelElement=this._component.querySelector(t.selectors.LABEL),this._labelElement&&this._labelElement.setAttribute(t.attributes.SLOT,t.selectors.LABEL),this._inputElement&&this._inputElement.setAttribute(t.attributes.SLOT,t.selectors.INPUT),d(t.classes.UPGRADED,this._rootElement)}_setHostAttribute(e,i=""){this._component.setAttribute(e,i)}_removeHostAttribute(e){this._component.removeAttribute(e)}disconnect(){this._labelElement&&this._labelElement.removeAttribute(t.attributes.SLOT),this._inputElement&&this._inputElement.removeAttribute(t.attributes.SLOT),this._inputMutationObserver&&this._inputMutationObserver.disconnect(),this._detachInternalInputListeners(),this._rippleInstance&&this._rippleInstance.destroy()}setRootClass(e){this._rootElement&&d(e,this._rootElement)}removeRootClass(e){this._rootElement&&l(e,this._rootElement)}setWrapperClass(e){this._wrapperElement&&d(e,this._wrapperElement)}removeWrapperClass(e){this._wrapperElement&&l(e,this._wrapperElement)}setNativeAttribute(e,i){this._inputElement.setAttribute(e,i)}isDisabled(){return this._inputElement.disabled}isChecked(){return this._inputElement&&this._inputElement.checked}isIndeterminate(){return this._inputElement&&this._inputElement.indeterminate}removeNativeAttribute(e){this._inputElement.removeAttribute(e)}installPropertyChangeHooks(e){let i=this._inputElement,c=Object.getPrototypeOf(i);t.CB_PROTO_PROPS.forEach(o=>{let n=Object.getOwnPropertyDescriptor(c,o);if(!this._validDescriptor(n))return;let a=n.get;if(n){let m={configurable:n.configurable,enumerable:n.enumerable,get:a,set:u=>{var b;(b=n.set)==null||b.call(i,u),e()}};Object.defineProperty(i,o,m)}})}listen(e,i,c=!1){c?this._rootElement.addEventListener(e,i):this._inputElement.addEventListener(e,i)}unlisten(e,i,c=!1){!this._inputElement||(c?this._rootElement.removeEventListener(e,i):this._inputElement.removeEventListener(e,i))}uninstallPropertyChangeHooks(){if(!this._inputElement)return;let e=this._inputElement,i=Object.getPrototypeOf(e);t.CB_PROTO_PROPS.forEach(c=>{let o=Object.getOwnPropertyDescriptor(i,c);!this._validDescriptor(o)||Object.defineProperty(e,c,o)})}setInputAttributeObserver(e){this._inputMutationObserver=new MutationObserver(i=>{for(let c of i)c.attributeName&&e(c.attributeName,this._inputElement.getAttribute(c.attributeName))}),this._inputMutationObserver.observe(this._inputElement,{attributes:!0,attributeFilter:["disabled","checked"]})}_validDescriptor(e){return!!e&&typeof e.set=="function"}_attachInternalInputListeners(){this._inputFocusHandler=()=>this._handleInputFocusListener(),this._inputBlurHandler=()=>this._handleInputBlurListener(),this._inputElement.addEventListener("focus",this._inputFocusHandler),this._inputElement.addEventListener("blur",this._inputBlurHandler)}_detachInternalInputListeners(){removeEventListener("focus",this._inputFocusHandler),removeEventListener("blur",this._inputBlurHandler)}_handleInputFocusListener(){d(t.classes.FOCUSED,this._rootElement)}_handleInputBlurListener(){l(t.classes.FOCUSED,this._rootElement)}_createRipple(){let e=E(g({},_.createAdapter(this)),{deregisterInteractionHandler:(c,o)=>this._inputElement.removeEventListener(c,o,{passive:!0}),isSurfaceActive:()=>this._inputElement.matches(":active"),isUnbounded:()=>Boolean(this.unbounded),registerInteractionHandler:(c,o)=>this._inputElement.addEventListener(c,o,{passive:!0}),isSurfaceDisabled:()=>this._inputElement.disabled,addClass:c=>d(c,this._rootElement),removeClass:c=>l(c,this._rootElement),updateCssVariable:(c,o)=>this._rootElement.style.setProperty(c,o)});return new _(this._rootElement,new R(e))}};var B='<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>',X='.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}',s=class extends I{constructor(){super();y(this,B,X),this._foundation=new p(new h(this))}static get observedAttributes(){return[t.attributes.DENSE]}async connectedCallback(){await this._ensureInputElement(),this._foundation.connect()}attributeChangedCallback(e,i,c){switch(e){case t.attributes.DENSE:this.dense=v(c);break}}disconnectedCallback(){this._foundation.disconnect()}async _ensureInputElement(){return new Promise(e=>{let i=this.querySelector("input");i&&e(i);let c=new MutationObserver(o=>{if(o.reduce((a,m)=>a+m.addedNodes.length,0)>0){let a=this.querySelector("input");a&&(c.disconnect(),e(a))}});c.observe(this,{childList:!0,subtree:!0})})}};f([w()],s.prototype,"dense",2),s=f([A({name:t.elementName})],s);var O=class extends N{constructor(e){super(e)}get value(){return this.checked}set value(e){this.checked=e}get checked(){return this._inputElement.checked}set checked(e){this._inputElement.checked=e}get disabled(){return this._inputElement.disabled}set disabled(e){this._inputElement.disabled=e}get inputElement(){return this._inputElement}get labelElement(){return this._labelElement}onChange(e){this._inputElement.addEventListener("change",i=>e(i.target.checked))}onFocus(e){this._inputElement.addEventListener("focus",i=>e(i))}onBlur(e){this._inputElement.addEventListener("blur",i=>e(i))}setLabel(e){e?this._labelElement?this._labelElement.textContent=e:this._createLabel(e):this._labelElement&&(this._element.removeChild(this._labelElement),this._labelElement=void 0)}_build(){let e=document.createElement(t.elementName);return this._inputElement=this._buildInputElement(),e.appendChild(this._inputElement),e}_configure(){var e;typeof((e=this._config.options)==null?void 0:e.label)=="string"&&this._createLabel(this._config.options.label)}_createLabel(e){var i;this._labelElement=document.createElement("label"),this._labelElement.textContent=e,(i=this._config.options)!=null&&i.id&&this._labelElement.setAttribute("for",this._config.options.id),this._element.appendChild(this._labelElement)}_buildInputElement(){var i,c;let e=document.createElement("input");return e.type="checkbox",((i=this._config.options)==null?void 0:i.checked)!==void 0&&(e.checked=this._config.options.checked),(c=this._config.options)!=null&&c.id&&(e.id=this._config.options.id),e}};function ke(){C(s)}export{M as a,K as b,t as c,p as d,h as e,s as f,O as g,ke as h};
7
+ //# sourceMappingURL=chunk.YG24YPYO.js.map
@@ -3,5 +3,5 @@
3
3
  * Copyright 2023 Tyler Technologies, Inc.
4
4
  * License: Apache-2.0
5
5
  */
6
- import{b as h}from"./chunk.WY7DECJD.js";import{a as f}from"./chunk.G5MGGEFP.js";import{a as n}from"./chunk.KTGSZEAG.js";import{a as b,b as v}from"./chunk.BE7PZANN.js";import{e as m,g as p,l as u}from"./chunk.Y4GKBJGI.js";import{k as l}from"./chunk.J2M2MXP2.js";import{f as i}from"./chunk.MCIQXNKY.js";var y=`${v}button-toggle`,E={VALUE:"value",SELECTED:"selected",DISABLED:"disabled",DENSE:"dense",BUTTON_ARIA_LABEL:"button-aria-label",SELECTED_ADJACENT:"selected-adjacent",SELECTED_ADJACENT_VERTICAL:"selected-adjacent-vertical",STRETCH:"stretch"},_={SELECTED:"forge-button-toggle__selected",DENSE:"forge-button-toggle--dense"},x={BUTTON:".forge-button-toggle",SELECTED:`.${_.SELECTED}`},w={SELECT:`${y}-select`},e={elementName:y,attributes:E,classes:_,selectors:x,events:w};var c=class extends f{constructor(t){super(t);this._buttonElement=p(t,e.selectors.BUTTON)}setSelected(t){t?this._buttonElement.classList.add(e.classes.SELECTED):this._buttonElement.classList.remove(e.classes.SELECTED),this._buttonElement.setAttribute("aria-pressed",t.toString())}addEventListener(t,d){this._buttonElement.addEventListener(t,d)}removeEventListener(t,d){this._buttonElement.removeEventListener(t,d)}initializeRipple(){return new h(this._buttonElement)}setDisabled(t){this._buttonElement.disabled=t,t?this._buttonElement.setAttribute("aria-disabled",t.toString()):this._buttonElement.removeAttribute("aria-disabled")}setDense(t){t?this._buttonElement.classList.add(e.classes.DENSE):this._buttonElement.classList.remove(e.classes.DENSE)}requestFocus(){this._buttonElement.focus()}detectStretchState(){if(this._component.hasAttribute(e.attributes.STRETCH))return;let t=this._component.parentElement;t&&t.hasAttribute(e.attributes.STRETCH)&&t.stretch&&this._component.setAttribute(e.attributes.STRETCH,"")}};var s=class{constructor(r){this._adapter=r;this._selected=!1;this._disabled=!1;this._dense=!1;this._clickListener=t=>this._onClick(t)}initialize(){this._rippleInstance=this._adapter.initializeRipple(),this._adapter.addEventListener("click",this._clickListener),this._adapter.setSelected(this._selected),this._adapter.setDisabled(this._disabled),this._adapter.setDense(this._dense),this._adapter.detectStretchState()}disconnect(){this._rippleInstance&&this._rippleInstance.destroy(),this._adapter.removeEventListener("click",this._clickListener)}_onClick(r){this._selected=!this._selected,this._updateSelectedState(),this._adapter.emitHostEvent(e.events.SELECT,{value:this._value,selected:this._selected})}_updateSelectedState(){this._adapter.setSelected(this._selected),this._adapter.setHostAttribute(e.attributes.SELECTED,this._selected.toString())}get value(){return this._value}set value(r){this._value=r}get selected(){return this._selected}set selected(r){this._selected!==r&&(this._selected=r,this._updateSelectedState())}get disabled(){return this._disabled}set disabled(r){this._disabled!==r&&(this._disabled=r,this._adapter.setDisabled(this._disabled))}get dense(){return this._dense}set dense(r){this._dense!==r&&(this._dense=r,this._adapter.setDense(this._dense))}setFocus(){this._adapter.requestFocus()}};var k='<template><button type="button" class="forge-button-toggle" aria-pressed="false" part="button"><slot name="leading"></slot><slot></slot><slot name="trailing"></slot></button></template>',T='@-webkit-keyframes mdc-ripple-fg-radius-in{from{-webkit-animation-timing-function:cubic-bezier(0.4,0,0.2,1);animation-timing-function:cubic-bezier(0.4,0,0.2,1);-webkit-transform:translate(var(--mdc-ripple-fg-translate-start,0)) scale(1);transform:translate(var(--mdc-ripple-fg-translate-start,0)) scale(1)}to{-webkit-transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1));transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1))}}@keyframes mdc-ripple-fg-radius-in{from{-webkit-animation-timing-function:cubic-bezier(0.4,0,0.2,1);animation-timing-function:cubic-bezier(0.4,0,0.2,1);-webkit-transform:translate(var(--mdc-ripple-fg-translate-start,0)) scale(1);transform:translate(var(--mdc-ripple-fg-translate-start,0)) scale(1)}to{-webkit-transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1));transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1))}}@-webkit-keyframes mdc-ripple-fg-opacity-in{from{-webkit-animation-timing-function:linear;animation-timing-function:linear;opacity:0}to{opacity:var(--mdc-ripple-fg-opacity, 0)}}@keyframes mdc-ripple-fg-opacity-in{from{-webkit-animation-timing-function:linear;animation-timing-function:linear;opacity:0}to{opacity:var(--mdc-ripple-fg-opacity, 0)}}@-webkit-keyframes mdc-ripple-fg-opacity-out{from{-webkit-animation-timing-function:linear;animation-timing-function:linear;opacity:var(--mdc-ripple-fg-opacity, 0)}to{opacity:0}}@keyframes mdc-ripple-fg-opacity-out{from{-webkit-animation-timing-function:linear;animation-timing-function:linear;opacity:var(--mdc-ripple-fg-opacity, 0)}to{opacity:0}}.mdc-ripple-surface{--mdc-ripple-fg-size:0;--mdc-ripple-left:0;--mdc-ripple-top:0;--mdc-ripple-fg-scale:1;--mdc-ripple-fg-translate-end:0;--mdc-ripple-fg-translate-start:0;-webkit-tap-highlight-color:transparent;will-change:transform,opacity;position:relative;outline:0;overflow:hidden}.mdc-ripple-surface::after,.mdc-ripple-surface::before{position:absolute;border-radius:50%;opacity:0;pointer-events:none;content:""}.mdc-ripple-surface::before{-webkit-transition:opacity 15ms linear,background-color 15ms linear;transition:opacity 15ms linear,background-color 15ms linear;z-index:1;z-index:var(--mdc-ripple-z-index,1)}.mdc-ripple-surface::after{z-index:0;z-index:var(--mdc-ripple-z-index,0)}.mdc-ripple-surface.mdc-ripple-upgraded::before{-webkit-transform:scale(var(--mdc-ripple-fg-scale,1));transform:scale(var(--mdc-ripple-fg-scale,1))}.mdc-ripple-surface.mdc-ripple-upgraded::after{top:0;left:0;-webkit-transform:scale(0);transform:scale(0);-webkit-transform-origin:center center;transform-origin:center center}.mdc-ripple-surface.mdc-ripple-upgraded--unbounded::after{top:var(--mdc-ripple-top,0);left:var(--mdc-ripple-left,0)}.mdc-ripple-surface.mdc-ripple-upgraded--foreground-activation::after{-webkit-animation:mdc-ripple-fg-radius-in 225ms forwards,mdc-ripple-fg-opacity-in 75ms forwards;animation:mdc-ripple-fg-radius-in 225ms forwards,mdc-ripple-fg-opacity-in 75ms forwards}.mdc-ripple-surface.mdc-ripple-upgraded--foreground-deactivation::after{-webkit-animation:mdc-ripple-fg-opacity-out 150ms;animation:mdc-ripple-fg-opacity-out 150ms;-webkit-transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1));transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1))}.mdc-ripple-surface::after,.mdc-ripple-surface::before{top:calc(50% - 100%);left:calc(50% - 100%);width:200%;height:200%}.mdc-ripple-surface.mdc-ripple-upgraded::after{width:var(--mdc-ripple-fg-size,100%);height:var(--mdc-ripple-fg-size,100%)}.mdc-ripple-surface[data-mdc-ripple-is-unbounded],.mdc-ripple-upgraded--unbounded{overflow:visible}.mdc-ripple-surface[data-mdc-ripple-is-unbounded]::after,.mdc-ripple-surface[data-mdc-ripple-is-unbounded]::before,.mdc-ripple-upgraded--unbounded::after,.mdc-ripple-upgraded--unbounded::before{top:calc(50% - 50%);left:calc(50% - 50%);width:100%;height:100%}.mdc-ripple-surface[data-mdc-ripple-is-unbounded].mdc-ripple-upgraded::after,.mdc-ripple-surface[data-mdc-ripple-is-unbounded].mdc-ripple-upgraded::before,.mdc-ripple-upgraded--unbounded.mdc-ripple-upgraded::after,.mdc-ripple-upgraded--unbounded.mdc-ripple-upgraded::before{top:var(--mdc-ripple-top,calc(50% - 50%));left:var(--mdc-ripple-left,calc(50% - 50%));width:var(--mdc-ripple-fg-size,100%);height:var(--mdc-ripple-fg-size,100%)}.mdc-ripple-surface[data-mdc-ripple-is-unbounded].mdc-ripple-upgraded::after,.mdc-ripple-upgraded--unbounded.mdc-ripple-upgraded::after{width:var(--mdc-ripple-fg-size,100%);height:var(--mdc-ripple-fg-size,100%)}.mdc-ripple-surface::after,.mdc-ripple-surface::before{background-color:#000;background-color:var(--mdc-ripple-color,#000)}.mdc-ripple-surface.mdc-ripple-surface--hover::before,.mdc-ripple-surface:hover::before{opacity:.04;opacity:var(--mdc-ripple-hover-opacity, .04)}.mdc-ripple-surface.mdc-ripple-upgraded--background-focused::before,.mdc-ripple-surface:not(.mdc-ripple-upgraded):focus::before{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.12;opacity:var(--mdc-ripple-focus-opacity, .12)}.mdc-ripple-surface:not(.mdc-ripple-upgraded)::after{-webkit-transition:opacity 150ms linear;transition:opacity 150ms linear}.mdc-ripple-surface:not(.mdc-ripple-upgraded):active::after{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.12;opacity:var(--mdc-ripple-press-opacity, .12)}.mdc-ripple-surface.mdc-ripple-upgraded{--mdc-ripple-fg-opacity:var(--mdc-ripple-press-opacity, 0.12)}.mdc-ripple-surface::after,.mdc-ripple-surface::before{--mdc-ripple-color:var(--mdc-theme-on-surface)}.forge-button-toggle{--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;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-button-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:.875rem;font-size:var(--mdc-typography-button-font-size, .875rem);line-height:2.25rem;line-height:var(--mdc-typography-button-line-height, 2.25rem);font-weight:500;font-weight:var(--mdc-typography-button-font-weight,500);letter-spacing:.0892857143em;letter-spacing:var(--mdc-typography-button-letter-spacing, .0892857143em);text-decoration:none;-webkit-text-decoration:var(--mdc-typography-button-text-decoration,none);text-decoration:var(--mdc-typography-button-text-decoration,none);text-transform:uppercase;text-transform:var(--mdc-typography-button-text-transform,uppercase);position:relative;display:-webkit-inline-box;display:inline-flex;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;-webkit-box-sizing:border-box;box-sizing:border-box;min-width:64px;border:none;outline:0;line-height:inherit;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-appearance:none;overflow:visible;vertical-align:middle;background:0 0;border-radius:4px;border-radius:var(--mdc-shape-small,4px);height:36px;text-transform:none;box-sizing:border-box;overflow:hidden;border-style:solid;-webkit-transition:border 280ms cubic-bezier(.4, 0, .2, 1);transition:border 280ms cubic-bezier(.4, 0, .2, 1);font-family:Roboto,sans-serif;font-family:var(--mdc-outlined-button-label-text-font, var(--mdc-typography-button-font-family, var(--mdc-typography-font-family, Roboto, sans-serif)));font-size:.875rem;font-size:var(--mdc-outlined-button-label-text-size, var(--mdc-typography-button-font-size, .875rem));letter-spacing:.0892857143em;letter-spacing:var(--mdc-outlined-button-label-text-tracking, var(--mdc-typography-button-letter-spacing, .0892857143em));font-weight:500;font-weight:var(--mdc-outlined-button-label-text-weight,var(--mdc-typography-button-font-weight,500));text-transform:uppercase;text-transform:var(--mdc-outlined-button-label-text-transform,var(--mdc-typography-button-text-transform,uppercase));height:36px;height:var(--mdc-outlined-button-container-height,36px);border-radius:4px;border-radius:var(--mdc-outlined-button-container-shape,var(--mdc-shape-small,4px));padding:0 15px 0 15px;border-width:1px;border-width:var(--mdc-outlined-button-outline-width,1px);padding:0 15px 0 15px;border-width:1px;width:100%;box-sizing:border-box;-webkit-transition:background-color 150ms 0s cubic-bezier(0, 0, .2, 1);transition:background-color 150ms 0s cubic-bezier(0, 0, .2, 1);border-radius:0;border-bottom-width:var(--forge-button-toggle-border-bottom-width,1px);border-right-width:var(--forge-button-toggle-border-right-width,1px);border-top-left-radius:var(--forge-button-toggle-border-top-left-radius,4px);border-bottom-left-radius:var(--forge-button-toggle-border-bottom-left-radius,4px);border-top-right-radius:var(--forge-button-toggle-border-top-right-radius,4px);border-bottom-right-radius:var(--forge-button-toggle-border-bottom-right-radius,4px)}.forge-button-toggle::after,.forge-button-toggle::before{position:absolute;border-radius:50%;opacity:0;pointer-events:none;content:""}.forge-button-toggle::before{-webkit-transition:opacity 15ms linear,background-color 15ms linear;transition:opacity 15ms linear,background-color 15ms linear;z-index:1;z-index:var(--mdc-ripple-z-index,1)}.forge-button-toggle::after{z-index:0;z-index:var(--mdc-ripple-z-index,0)}.forge-button-toggle.mdc-ripple-upgraded::before{-webkit-transform:scale(var(--mdc-ripple-fg-scale,1));transform:scale(var(--mdc-ripple-fg-scale,1))}.forge-button-toggle.mdc-ripple-upgraded::after{top:0;left:0;-webkit-transform:scale(0);transform:scale(0);-webkit-transform-origin:center center;transform-origin:center center}.forge-button-toggle.mdc-ripple-upgraded--unbounded::after{top:var(--mdc-ripple-top,0);left:var(--mdc-ripple-left,0)}.forge-button-toggle.mdc-ripple-upgraded--foreground-activation::after{-webkit-animation:mdc-ripple-fg-radius-in 225ms forwards,mdc-ripple-fg-opacity-in 75ms forwards;animation:mdc-ripple-fg-radius-in 225ms forwards,mdc-ripple-fg-opacity-in 75ms forwards}.forge-button-toggle.mdc-ripple-upgraded--foreground-deactivation::after{-webkit-animation:mdc-ripple-fg-opacity-out 150ms;animation:mdc-ripple-fg-opacity-out 150ms;-webkit-transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1));transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1))}.forge-button-toggle::after,.forge-button-toggle::before{top:calc(50% - 100%);left:calc(50% - 100%);width:200%;height:200%}.forge-button-toggle.mdc-ripple-upgraded::after{width:var(--mdc-ripple-fg-size,100%);height:var(--mdc-ripple-fg-size,100%)}.forge-button-toggle::after,.forge-button-toggle::before{background-color:#3f51b5;background-color:var(--mdc-ripple-color,var(--mdc-theme-primary,#3f51b5))}.forge-button-toggle.mdc-ripple-surface--hover::before,.forge-button-toggle:hover::before{opacity:.04;opacity:var(--mdc-ripple-hover-opacity, .04)}.forge-button-toggle.mdc-ripple-upgraded--background-focused::before,.forge-button-toggle:not(.mdc-ripple-upgraded):focus::before{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.12;opacity:var(--mdc-ripple-focus-opacity, .12)}.forge-button-toggle:not(.mdc-ripple-upgraded)::after{-webkit-transition:opacity 150ms linear;transition:opacity 150ms linear}.forge-button-toggle:not(.mdc-ripple-upgraded):active::after{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.12;opacity:var(--mdc-ripple-press-opacity, .12)}.forge-button-toggle.mdc-ripple-upgraded{--mdc-ripple-fg-opacity:var(--mdc-ripple-press-opacity, 0.12)}.forge-button-toggle .mdc-elevation-overlay{width:100%;height:100%;top:0;left:0}.forge-button-toggle::-moz-focus-inner{padding:0;border:0}.forge-button-toggle:active{outline:0}.forge-button-toggle:hover{cursor:pointer}.forge-button-toggle:disabled{cursor:default;pointer-events:none}.forge-button-toggle .mdc-button__ripple{border-radius:4px;border-radius:var(--mdc-shape-small,4px)}.forge-button-toggle:not(:disabled){background-color:transparent}.forge-button-toggle:not(:disabled){color:#3f51b5;color:var(--mdc-theme-primary,#3f51b5)}.forge-button-toggle .mdc-button__ripple{border-style:solid;border-color:transparent}.forge-button-toggle:not(:disabled){color:#3f51b5;color:var(--mdc-outlined-button-label-text-color,var(--mdc-theme-primary,#3f51b5))}.forge-button-toggle:disabled{color:rgba(0,0,0,.38);color:var(--mdc-outlined-button-disabled-label-text-color,rgba(0,0,0,.38))}.forge-button-toggle .mdc-button__icon{font-size:1.125rem;font-size:var(--mdc-outlined-button-with-icon-icon-size, 1.125rem);width:1.125rem;width:var(--mdc-outlined-button-with-icon-icon-size,1.125rem);height:1.125rem;height:var(--mdc-outlined-button-with-icon-icon-size,1.125rem)}.forge-button-toggle .mdc-button__ripple::after,.forge-button-toggle .mdc-button__ripple::before{background-color:#3f51b5;background-color:var(--mdc-outlined-button-hover-state-layer-color,var(--mdc-theme-primary,#3f51b5))}.forge-button-toggle.mdc-ripple-surface--hover .mdc-button__ripple::before,.forge-button-toggle:hover .mdc-button__ripple::before{opacity:.04;opacity:var(--mdc-outlined-button-hover-state-layer-opacity, .04)}.forge-button-toggle.mdc-ripple-upgraded--background-focused .mdc-button__ripple::before,.forge-button-toggle:not(.mdc-ripple-upgraded):focus .mdc-button__ripple::before{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.12;opacity:var(--mdc-outlined-button-focus-state-layer-opacity, .12)}.forge-button-toggle:not(.mdc-ripple-upgraded) .mdc-button__ripple::after{-webkit-transition:opacity 150ms linear;transition:opacity 150ms linear}.forge-button-toggle:not(.mdc-ripple-upgraded):active .mdc-button__ripple::after{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.12;opacity:var(--mdc-outlined-button-pressed-state-layer-opacity, .12)}.forge-button-toggle.mdc-ripple-upgraded{--mdc-ripple-fg-opacity:var(--mdc-outlined-button-pressed-state-layer-opacity, 0.12)}.forge-button-toggle .mdc-button__ripple{border-radius:4px;border-radius:var(--mdc-outlined-button-container-shape,var(--mdc-shape-small,4px))}.forge-button-toggle:not(:disabled){border-color:rgba(0,0,0,.12);border-color:var(--mdc-outlined-button-outline-color,rgba(0,0,0,.12))}.forge-button-toggle:disabled{border-color:rgba(0,0,0,.12);border-color:var(--mdc-outlined-button-disabled-outline-color,rgba(0,0,0,.12))}.forge-button-toggle.mdc-button--icon-trailing{padding:0 11px 0 15px}.forge-button-toggle.mdc-button--icon-leading{padding:0 15px 0 11px}.forge-button-toggle .mdc-button__ripple{top:-1px;left:-1px;bottom:-1px;right:-1px;border-width:1px;border-width:var(--mdc-outlined-button-outline-width,1px)}.forge-button-toggle .mdc-button__touch{left:calc(-1 * 1px);left:calc(-1 * var(--mdc-outlined-button-outline-width,1px));width:calc(100% + 2 * 1px);width:calc(100% + 2 * var(--mdc-outlined-button-outline-width,1px))}.forge-button-toggle.mdc-button--icon-trailing{padding:0 11px 0 15px}.forge-button-toggle.mdc-button--icon-leading{padding:0 15px 0 11px}.forge-button-toggle .mdc-button__ripple{top:-1px;left:-1px;bottom:-1px;right:-1px;border-width:1px}.forge-button-toggle .mdc-button__touch{left:calc(-1 * 1px);width:calc(100% + 2 * 1px)}.forge-button-toggle:not(:disabled){border-color:#3f51b5;border-color:var(--mdc-theme-primary,#3f51b5)}.forge-button-toggle:disabled{border-color:#e0e0e0;border-color:var(--forge-theme-border-color,#e0e0e0);color:rgba(0,0,0,.38);color:var(--mdc-theme-text-disabled-on-light,rgba(0,0,0,.38))}.forge-button-toggle__selected:not(:disabled){background-color:#3f51b5;background-color:var(--mdc-theme-primary,#3f51b5);color:rgba(255,255,255,.87);color:var(--mdc-theme-text-primary-on-dark,rgba(255,255,255,.87))}.forge-button-toggle__selected:not(:disabled)::after,.forge-button-toggle__selected:not(:disabled)::before{background-color:#fff;background-color:var(--mdc-ripple-color,var(--mdc-theme-on-primary,#fff))}.forge-button-toggle__selected:not(:disabled).mdc-ripple-surface--hover::before,.forge-button-toggle__selected:not(:disabled):hover::before{opacity:.08;opacity:var(--mdc-ripple-hover-opacity, .08)}.forge-button-toggle__selected:not(:disabled).mdc-ripple-upgraded--background-focused::before,.forge-button-toggle__selected:not(:disabled):not(.mdc-ripple-upgraded):focus::before{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.24;opacity:var(--mdc-ripple-focus-opacity, .24)}.forge-button-toggle__selected:not(:disabled):not(.mdc-ripple-upgraded)::after{-webkit-transition:opacity 150ms linear;transition:opacity 150ms linear}.forge-button-toggle__selected:not(:disabled):not(.mdc-ripple-upgraded):active::after{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.24;opacity:var(--mdc-ripple-press-opacity, .24)}.forge-button-toggle__selected:not(:disabled).mdc-ripple-upgraded{--mdc-ripple-fg-opacity:var(--mdc-ripple-press-opacity, 0.24)}.forge-button-toggle__selected:disabled{background-color:#3f51b5;background-color:var(--mdc-theme-primary,#3f51b5);color:rgba(255,255,255,.87);color:var(--mdc-theme-text-primary-on-dark,rgba(255,255,255,.87));opacity:.37}.forge-button-toggle__selected:disabled::after,.forge-button-toggle__selected:disabled::before{background-color:#fff;background-color:var(--mdc-ripple-color,var(--mdc-theme-on-primary,#fff))}.forge-button-toggle__selected:disabled.mdc-ripple-surface--hover::before,.forge-button-toggle__selected:disabled:hover::before{opacity:.08;opacity:var(--mdc-ripple-hover-opacity, .08)}.forge-button-toggle__selected:disabled.mdc-ripple-upgraded--background-focused::before,.forge-button-toggle__selected:disabled:not(.mdc-ripple-upgraded):focus::before{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.24;opacity:var(--mdc-ripple-focus-opacity, .24)}.forge-button-toggle__selected:disabled:not(.mdc-ripple-upgraded)::after{-webkit-transition:opacity 150ms linear;transition:opacity 150ms linear}.forge-button-toggle__selected:disabled:not(.mdc-ripple-upgraded):active::after{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.24;opacity:var(--mdc-ripple-press-opacity, .24)}.forge-button-toggle__selected:disabled.mdc-ripple-upgraded{--mdc-ripple-fg-opacity:var(--mdc-ripple-press-opacity, 0.24)}.forge-button-toggle ::slotted([slot=leading]){display:inline-block;width:1.125rem;height:1.125rem;font-size:1.125rem!important;vertical-align:top;margin-right:4px}.forge-button-toggle ::slotted([slot=trailing]){display:inline-block;width:1.125rem;height:1.125rem;font-size:1.125rem!important;vertical-align:top;margin-left:4px}.forge-button-toggle--dense{height:24px;margin-top:0;margin-bottom:0;height:1.5rem;font-size:.75rem}.forge-button-toggle--dense .mdc-button__touch{height:100%}.forge-button-toggle--dense ::slotted([slot=leading]){width:.875rem;height:.875rem;font-size:.875rem!important}.forge-button-toggle--dense ::slotted([slot=trailing]){width:.875rem;height:.875rem;font-size:.875rem!important}:host{display:inline-block}:host([hidden]){display:none}:host([stretch]){width:100%;-webkit-box-flex:1;flex:1}:host([selected-adjacent]) .forge-button-toggle{border-left-color:var(--mdc-theme-text-primary-on-dark)}:host([selected-adjacent-vertical]) .forge-button-toggle{border-top-color:var(--mdc-theme-text-primary-on-dark)}',o=class extends u{constructor(){super();m(this,k,T),this._foundation=new s(new c(this)),this._buttonElement=p(this,e.selectors.BUTTON)}static get observedAttributes(){return[e.attributes.VALUE,e.attributes.SELECTED,e.attributes.DISABLED,e.attributes.DENSE,e.attributes.BUTTON_ARIA_LABEL]}initializedCallback(){this._foundation.initialize()}disconnectedCallback(){this._foundation.disconnect()}attributeChangedCallback(t,d,a){switch(t){case e.attributes.VALUE:this.value=a;break;case e.attributes.SELECTED:this.selected=l(a);break;case e.attributes.DISABLED:this.disabled=l(a);break;case e.attributes.DENSE:this.dense=l(a);break;case e.attributes.BUTTON_ARIA_LABEL:this._buttonElement.setAttribute("aria-label",a);break}}focus(){this._foundation.setFocus()}};i([n()],o.prototype,"value",2),i([n()],o.prototype,"selected",2),i([n()],o.prototype,"disabled",2),i([n()],o.prototype,"dense",2),o=i([b({name:e.elementName})],o);export{e as a,c as b,s as c,o as d};
7
- //# sourceMappingURL=chunk.BJE6O5ES.js.map
6
+ import{b as h}from"./chunk.4CWMNWZU.js";import{a as f}from"./chunk.5KC43VFL.js";import{a as n}from"./chunk.KTGSZEAG.js";import{a as b,b as v}from"./chunk.QOA2O575.js";import{e as m,g as p,l as u}from"./chunk.HOXFK44F.js";import{k as l}from"./chunk.J2M2MXP2.js";import{f as i}from"./chunk.MCIQXNKY.js";var y=`${v}button-toggle`,E={VALUE:"value",SELECTED:"selected",DISABLED:"disabled",DENSE:"dense",BUTTON_ARIA_LABEL:"button-aria-label",SELECTED_ADJACENT:"selected-adjacent",SELECTED_ADJACENT_VERTICAL:"selected-adjacent-vertical",STRETCH:"stretch"},_={SELECTED:"forge-button-toggle__selected",DENSE:"forge-button-toggle--dense"},x={BUTTON:".forge-button-toggle",SELECTED:`.${_.SELECTED}`},w={SELECT:`${y}-select`},e={elementName:y,attributes:E,classes:_,selectors:x,events:w};var c=class extends f{constructor(t){super(t);this._buttonElement=p(t,e.selectors.BUTTON)}setSelected(t){t?this._buttonElement.classList.add(e.classes.SELECTED):this._buttonElement.classList.remove(e.classes.SELECTED),this._buttonElement.setAttribute("aria-pressed",t.toString())}addEventListener(t,d){this._buttonElement.addEventListener(t,d)}removeEventListener(t,d){this._buttonElement.removeEventListener(t,d)}initializeRipple(){return new h(this._buttonElement)}setDisabled(t){this._buttonElement.disabled=t,t?this._buttonElement.setAttribute("aria-disabled",t.toString()):this._buttonElement.removeAttribute("aria-disabled")}setDense(t){t?this._buttonElement.classList.add(e.classes.DENSE):this._buttonElement.classList.remove(e.classes.DENSE)}requestFocus(){this._buttonElement.focus()}detectStretchState(){if(this._component.hasAttribute(e.attributes.STRETCH))return;let t=this._component.parentElement;t&&t.hasAttribute(e.attributes.STRETCH)&&t.stretch&&this._component.setAttribute(e.attributes.STRETCH,"")}};var s=class{constructor(r){this._adapter=r;this._selected=!1;this._disabled=!1;this._dense=!1;this._clickListener=t=>this._onClick(t)}initialize(){this._rippleInstance=this._adapter.initializeRipple(),this._adapter.addEventListener("click",this._clickListener),this._adapter.setSelected(this._selected),this._adapter.setDisabled(this._disabled),this._adapter.setDense(this._dense),this._adapter.detectStretchState()}disconnect(){this._rippleInstance&&this._rippleInstance.destroy(),this._adapter.removeEventListener("click",this._clickListener)}_onClick(r){this._selected=!this._selected,this._updateSelectedState(),this._adapter.emitHostEvent(e.events.SELECT,{value:this._value,selected:this._selected})}_updateSelectedState(){this._adapter.setSelected(this._selected),this._adapter.setHostAttribute(e.attributes.SELECTED,this._selected.toString())}get value(){return this._value}set value(r){this._value=r}get selected(){return this._selected}set selected(r){this._selected!==r&&(this._selected=r,this._updateSelectedState())}get disabled(){return this._disabled}set disabled(r){this._disabled!==r&&(this._disabled=r,this._adapter.setDisabled(this._disabled))}get dense(){return this._dense}set dense(r){this._dense!==r&&(this._dense=r,this._adapter.setDense(this._dense))}setFocus(){this._adapter.requestFocus()}};var k='<template><button type="button" class="forge-button-toggle" aria-pressed="false" part="button"><slot name="leading"></slot><slot></slot><slot name="trailing"></slot></button></template>',T='@-webkit-keyframes mdc-ripple-fg-radius-in{from{-webkit-animation-timing-function:cubic-bezier(0.4,0,0.2,1);animation-timing-function:cubic-bezier(0.4,0,0.2,1);-webkit-transform:translate(var(--mdc-ripple-fg-translate-start,0)) scale(1);transform:translate(var(--mdc-ripple-fg-translate-start,0)) scale(1)}to{-webkit-transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1));transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1))}}@keyframes mdc-ripple-fg-radius-in{from{-webkit-animation-timing-function:cubic-bezier(0.4,0,0.2,1);animation-timing-function:cubic-bezier(0.4,0,0.2,1);-webkit-transform:translate(var(--mdc-ripple-fg-translate-start,0)) scale(1);transform:translate(var(--mdc-ripple-fg-translate-start,0)) scale(1)}to{-webkit-transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1));transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1))}}@-webkit-keyframes mdc-ripple-fg-opacity-in{from{-webkit-animation-timing-function:linear;animation-timing-function:linear;opacity:0}to{opacity:var(--mdc-ripple-fg-opacity, 0)}}@keyframes mdc-ripple-fg-opacity-in{from{-webkit-animation-timing-function:linear;animation-timing-function:linear;opacity:0}to{opacity:var(--mdc-ripple-fg-opacity, 0)}}@-webkit-keyframes mdc-ripple-fg-opacity-out{from{-webkit-animation-timing-function:linear;animation-timing-function:linear;opacity:var(--mdc-ripple-fg-opacity, 0)}to{opacity:0}}@keyframes mdc-ripple-fg-opacity-out{from{-webkit-animation-timing-function:linear;animation-timing-function:linear;opacity:var(--mdc-ripple-fg-opacity, 0)}to{opacity:0}}.mdc-ripple-surface{--mdc-ripple-fg-size:0;--mdc-ripple-left:0;--mdc-ripple-top:0;--mdc-ripple-fg-scale:1;--mdc-ripple-fg-translate-end:0;--mdc-ripple-fg-translate-start:0;-webkit-tap-highlight-color:transparent;will-change:transform,opacity;position:relative;outline:0;overflow:hidden}.mdc-ripple-surface::after,.mdc-ripple-surface::before{position:absolute;border-radius:50%;opacity:0;pointer-events:none;content:""}.mdc-ripple-surface::before{-webkit-transition:opacity 15ms linear,background-color 15ms linear;transition:opacity 15ms linear,background-color 15ms linear;z-index:1;z-index:var(--mdc-ripple-z-index,1)}.mdc-ripple-surface::after{z-index:0;z-index:var(--mdc-ripple-z-index,0)}.mdc-ripple-surface.mdc-ripple-upgraded::before{-webkit-transform:scale(var(--mdc-ripple-fg-scale,1));transform:scale(var(--mdc-ripple-fg-scale,1))}.mdc-ripple-surface.mdc-ripple-upgraded::after{top:0;left:0;-webkit-transform:scale(0);transform:scale(0);-webkit-transform-origin:center center;transform-origin:center center}.mdc-ripple-surface.mdc-ripple-upgraded--unbounded::after{top:var(--mdc-ripple-top,0);left:var(--mdc-ripple-left,0)}.mdc-ripple-surface.mdc-ripple-upgraded--foreground-activation::after{-webkit-animation:mdc-ripple-fg-radius-in 225ms forwards,mdc-ripple-fg-opacity-in 75ms forwards;animation:mdc-ripple-fg-radius-in 225ms forwards,mdc-ripple-fg-opacity-in 75ms forwards}.mdc-ripple-surface.mdc-ripple-upgraded--foreground-deactivation::after{-webkit-animation:mdc-ripple-fg-opacity-out 150ms;animation:mdc-ripple-fg-opacity-out 150ms;-webkit-transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1));transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1))}.mdc-ripple-surface::after,.mdc-ripple-surface::before{top:calc(50% - 100%);left:calc(50% - 100%);width:200%;height:200%}.mdc-ripple-surface.mdc-ripple-upgraded::after{width:var(--mdc-ripple-fg-size,100%);height:var(--mdc-ripple-fg-size,100%)}.mdc-ripple-surface[data-mdc-ripple-is-unbounded],.mdc-ripple-upgraded--unbounded{overflow:visible}.mdc-ripple-surface[data-mdc-ripple-is-unbounded]::after,.mdc-ripple-surface[data-mdc-ripple-is-unbounded]::before,.mdc-ripple-upgraded--unbounded::after,.mdc-ripple-upgraded--unbounded::before{top:calc(50% - 50%);left:calc(50% - 50%);width:100%;height:100%}.mdc-ripple-surface[data-mdc-ripple-is-unbounded].mdc-ripple-upgraded::after,.mdc-ripple-surface[data-mdc-ripple-is-unbounded].mdc-ripple-upgraded::before,.mdc-ripple-upgraded--unbounded.mdc-ripple-upgraded::after,.mdc-ripple-upgraded--unbounded.mdc-ripple-upgraded::before{top:var(--mdc-ripple-top,calc(50% - 50%));left:var(--mdc-ripple-left,calc(50% - 50%));width:var(--mdc-ripple-fg-size,100%);height:var(--mdc-ripple-fg-size,100%)}.mdc-ripple-surface[data-mdc-ripple-is-unbounded].mdc-ripple-upgraded::after,.mdc-ripple-upgraded--unbounded.mdc-ripple-upgraded::after{width:var(--mdc-ripple-fg-size,100%);height:var(--mdc-ripple-fg-size,100%)}.mdc-ripple-surface::after,.mdc-ripple-surface::before{background-color:#000;background-color:var(--mdc-ripple-color,#000)}.mdc-ripple-surface.mdc-ripple-surface--hover::before,.mdc-ripple-surface:hover::before{opacity:.04;opacity:var(--mdc-ripple-hover-opacity, .04)}.mdc-ripple-surface.mdc-ripple-upgraded--background-focused::before,.mdc-ripple-surface:not(.mdc-ripple-upgraded):focus::before{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.12;opacity:var(--mdc-ripple-focus-opacity, .12)}.mdc-ripple-surface:not(.mdc-ripple-upgraded)::after{-webkit-transition:opacity 150ms linear;transition:opacity 150ms linear}.mdc-ripple-surface:not(.mdc-ripple-upgraded):active::after{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.12;opacity:var(--mdc-ripple-press-opacity, .12)}.mdc-ripple-surface.mdc-ripple-upgraded{--mdc-ripple-fg-opacity:var(--mdc-ripple-press-opacity, 0.12)}.mdc-ripple-surface::after,.mdc-ripple-surface::before{--mdc-ripple-color:var(--mdc-theme-on-surface)}.forge-button-toggle{--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;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-button-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:.875rem;font-size:var(--mdc-typography-button-font-size, .875rem);line-height:2.25rem;line-height:var(--mdc-typography-button-line-height, 2.25rem);font-weight:500;font-weight:var(--mdc-typography-button-font-weight,500);letter-spacing:.0892857143em;letter-spacing:var(--mdc-typography-button-letter-spacing, .0892857143em);text-decoration:none;-webkit-text-decoration:var(--mdc-typography-button-text-decoration,none);text-decoration:var(--mdc-typography-button-text-decoration,none);text-transform:uppercase;text-transform:var(--mdc-typography-button-text-transform,uppercase);position:relative;display:-webkit-inline-box;display:inline-flex;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;-webkit-box-sizing:border-box;box-sizing:border-box;min-width:64px;border:none;outline:0;line-height:inherit;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-appearance:none;overflow:visible;vertical-align:middle;background:0 0;border-radius:4px;border-radius:var(--mdc-shape-small,4px);height:36px;text-transform:none;box-sizing:border-box;overflow:hidden;border-style:solid;-webkit-transition:border 280ms cubic-bezier(.4, 0, .2, 1);transition:border 280ms cubic-bezier(.4, 0, .2, 1);font-family:Roboto,sans-serif;font-family:var(--mdc-outlined-button-label-text-font, var(--mdc-typography-button-font-family, var(--mdc-typography-font-family, Roboto, sans-serif)));font-size:.875rem;font-size:var(--mdc-outlined-button-label-text-size, var(--mdc-typography-button-font-size, .875rem));letter-spacing:.0892857143em;letter-spacing:var(--mdc-outlined-button-label-text-tracking, var(--mdc-typography-button-letter-spacing, .0892857143em));font-weight:500;font-weight:var(--mdc-outlined-button-label-text-weight,var(--mdc-typography-button-font-weight,500));text-transform:uppercase;text-transform:var(--mdc-outlined-button-label-text-transform,var(--mdc-typography-button-text-transform,uppercase));height:36px;height:var(--mdc-outlined-button-container-height,36px);border-radius:4px;border-radius:var(--mdc-outlined-button-container-shape,var(--mdc-shape-small,4px));padding:0 15px 0 15px;border-width:1px;border-width:var(--mdc-outlined-button-outline-width,1px);padding:0 15px 0 15px;border-width:1px;width:100%;box-sizing:border-box;-webkit-transition:background-color 150ms 0s cubic-bezier(0, 0, .2, 1);transition:background-color 150ms 0s cubic-bezier(0, 0, .2, 1);border-radius:0;border-bottom-width:var(--forge-button-toggle-border-bottom-width,1px);border-right-width:var(--forge-button-toggle-border-right-width,1px);border-top-left-radius:var(--forge-button-toggle-border-top-left-radius,4px);border-bottom-left-radius:var(--forge-button-toggle-border-bottom-left-radius,4px);border-top-right-radius:var(--forge-button-toggle-border-top-right-radius,4px);border-bottom-right-radius:var(--forge-button-toggle-border-bottom-right-radius,4px)}.forge-button-toggle::after,.forge-button-toggle::before{position:absolute;border-radius:50%;opacity:0;pointer-events:none;content:""}.forge-button-toggle::before{-webkit-transition:opacity 15ms linear,background-color 15ms linear;transition:opacity 15ms linear,background-color 15ms linear;z-index:1;z-index:var(--mdc-ripple-z-index,1)}.forge-button-toggle::after{z-index:0;z-index:var(--mdc-ripple-z-index,0)}.forge-button-toggle.mdc-ripple-upgraded::before{-webkit-transform:scale(var(--mdc-ripple-fg-scale,1));transform:scale(var(--mdc-ripple-fg-scale,1))}.forge-button-toggle.mdc-ripple-upgraded::after{top:0;left:0;-webkit-transform:scale(0);transform:scale(0);-webkit-transform-origin:center center;transform-origin:center center}.forge-button-toggle.mdc-ripple-upgraded--unbounded::after{top:var(--mdc-ripple-top,0);left:var(--mdc-ripple-left,0)}.forge-button-toggle.mdc-ripple-upgraded--foreground-activation::after{-webkit-animation:mdc-ripple-fg-radius-in 225ms forwards,mdc-ripple-fg-opacity-in 75ms forwards;animation:mdc-ripple-fg-radius-in 225ms forwards,mdc-ripple-fg-opacity-in 75ms forwards}.forge-button-toggle.mdc-ripple-upgraded--foreground-deactivation::after{-webkit-animation:mdc-ripple-fg-opacity-out 150ms;animation:mdc-ripple-fg-opacity-out 150ms;-webkit-transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1));transform:translate(var(--mdc-ripple-fg-translate-end,0)) scale(var(--mdc-ripple-fg-scale,1))}.forge-button-toggle::after,.forge-button-toggle::before{top:calc(50% - 100%);left:calc(50% - 100%);width:200%;height:200%}.forge-button-toggle.mdc-ripple-upgraded::after{width:var(--mdc-ripple-fg-size,100%);height:var(--mdc-ripple-fg-size,100%)}.forge-button-toggle::after,.forge-button-toggle::before{background-color:#3f51b5;background-color:var(--mdc-ripple-color,var(--mdc-theme-primary,#3f51b5))}.forge-button-toggle.mdc-ripple-surface--hover::before,.forge-button-toggle:hover::before{opacity:.04;opacity:var(--mdc-ripple-hover-opacity, .04)}.forge-button-toggle.mdc-ripple-upgraded--background-focused::before,.forge-button-toggle:not(.mdc-ripple-upgraded):focus::before{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.12;opacity:var(--mdc-ripple-focus-opacity, .12)}.forge-button-toggle:not(.mdc-ripple-upgraded)::after{-webkit-transition:opacity 150ms linear;transition:opacity 150ms linear}.forge-button-toggle:not(.mdc-ripple-upgraded):active::after{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.12;opacity:var(--mdc-ripple-press-opacity, .12)}.forge-button-toggle.mdc-ripple-upgraded{--mdc-ripple-fg-opacity:var(--mdc-ripple-press-opacity, 0.12)}.forge-button-toggle .mdc-elevation-overlay{width:100%;height:100%;top:0;left:0}.forge-button-toggle::-moz-focus-inner{padding:0;border:0}.forge-button-toggle:active{outline:0}.forge-button-toggle:hover{cursor:pointer}.forge-button-toggle:disabled{cursor:default;pointer-events:none}.forge-button-toggle .mdc-button__ripple{border-radius:4px;border-radius:var(--mdc-shape-small,4px)}.forge-button-toggle:not(:disabled){background-color:transparent}.forge-button-toggle:not(:disabled){color:#3f51b5;color:var(--mdc-theme-primary,#3f51b5)}.forge-button-toggle .mdc-button__ripple{border-style:solid;border-color:transparent}.forge-button-toggle:not(:disabled){color:#3f51b5;color:var(--mdc-outlined-button-label-text-color,var(--mdc-theme-primary,#3f51b5))}.forge-button-toggle:disabled{color:rgba(0,0,0,.38);color:var(--mdc-outlined-button-disabled-label-text-color,rgba(0,0,0,.38))}.forge-button-toggle .mdc-button__icon{font-size:1.125rem;font-size:var(--mdc-outlined-button-with-icon-icon-size, 1.125rem);width:1.125rem;width:var(--mdc-outlined-button-with-icon-icon-size,1.125rem);height:1.125rem;height:var(--mdc-outlined-button-with-icon-icon-size,1.125rem)}.forge-button-toggle .mdc-button__ripple::after,.forge-button-toggle .mdc-button__ripple::before{background-color:#3f51b5;background-color:var(--mdc-outlined-button-hover-state-layer-color,var(--mdc-theme-primary,#3f51b5))}.forge-button-toggle.mdc-ripple-surface--hover .mdc-button__ripple::before,.forge-button-toggle:hover .mdc-button__ripple::before{opacity:.04;opacity:var(--mdc-outlined-button-hover-state-layer-opacity, .04)}.forge-button-toggle.mdc-ripple-upgraded--background-focused .mdc-button__ripple::before,.forge-button-toggle:not(.mdc-ripple-upgraded):focus .mdc-button__ripple::before{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.12;opacity:var(--mdc-outlined-button-focus-state-layer-opacity, .12)}.forge-button-toggle:not(.mdc-ripple-upgraded) .mdc-button__ripple::after{-webkit-transition:opacity 150ms linear;transition:opacity 150ms linear}.forge-button-toggle:not(.mdc-ripple-upgraded):active .mdc-button__ripple::after{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.12;opacity:var(--mdc-outlined-button-pressed-state-layer-opacity, .12)}.forge-button-toggle.mdc-ripple-upgraded{--mdc-ripple-fg-opacity:var(--mdc-outlined-button-pressed-state-layer-opacity, 0.12)}.forge-button-toggle .mdc-button__ripple{border-radius:4px;border-radius:var(--mdc-outlined-button-container-shape,var(--mdc-shape-small,4px))}.forge-button-toggle:not(:disabled){border-color:rgba(0,0,0,.12);border-color:var(--mdc-outlined-button-outline-color,rgba(0,0,0,.12))}.forge-button-toggle:disabled{border-color:rgba(0,0,0,.12);border-color:var(--mdc-outlined-button-disabled-outline-color,rgba(0,0,0,.12))}.forge-button-toggle.mdc-button--icon-trailing{padding:0 11px 0 15px}.forge-button-toggle.mdc-button--icon-leading{padding:0 15px 0 11px}.forge-button-toggle .mdc-button__ripple{top:-1px;left:-1px;bottom:-1px;right:-1px;border-width:1px;border-width:var(--mdc-outlined-button-outline-width,1px)}.forge-button-toggle .mdc-button__touch{left:calc(-1 * 1px);left:calc(-1 * var(--mdc-outlined-button-outline-width,1px));width:calc(100% + 2 * 1px);width:calc(100% + 2 * var(--mdc-outlined-button-outline-width,1px))}.forge-button-toggle.mdc-button--icon-trailing{padding:0 11px 0 15px}.forge-button-toggle.mdc-button--icon-leading{padding:0 15px 0 11px}.forge-button-toggle .mdc-button__ripple{top:-1px;left:-1px;bottom:-1px;right:-1px;border-width:1px}.forge-button-toggle .mdc-button__touch{left:calc(-1 * 1px);width:calc(100% + 2 * 1px)}.forge-button-toggle:not(:disabled){border-color:#3f51b5;border-color:var(--mdc-theme-primary,#3f51b5)}.forge-button-toggle:disabled{border-color:#e0e0e0;border-color:var(--forge-theme-border-color,#e0e0e0);color:rgba(0,0,0,.38);color:var(--mdc-theme-text-disabled-on-light,rgba(0,0,0,.38))}.forge-button-toggle__selected:not(:disabled){background-color:#3f51b5;background-color:var(--mdc-theme-primary,#3f51b5);color:rgba(255,255,255,.87);color:var(--mdc-theme-text-primary-on-dark,rgba(255,255,255,.87))}.forge-button-toggle__selected:not(:disabled)::after,.forge-button-toggle__selected:not(:disabled)::before{background-color:#fff;background-color:var(--mdc-ripple-color,var(--mdc-theme-on-primary,#fff))}.forge-button-toggle__selected:not(:disabled).mdc-ripple-surface--hover::before,.forge-button-toggle__selected:not(:disabled):hover::before{opacity:.08;opacity:var(--mdc-ripple-hover-opacity, .08)}.forge-button-toggle__selected:not(:disabled).mdc-ripple-upgraded--background-focused::before,.forge-button-toggle__selected:not(:disabled):not(.mdc-ripple-upgraded):focus::before{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.24;opacity:var(--mdc-ripple-focus-opacity, .24)}.forge-button-toggle__selected:not(:disabled):not(.mdc-ripple-upgraded)::after{-webkit-transition:opacity 150ms linear;transition:opacity 150ms linear}.forge-button-toggle__selected:not(:disabled):not(.mdc-ripple-upgraded):active::after{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.24;opacity:var(--mdc-ripple-press-opacity, .24)}.forge-button-toggle__selected:not(:disabled).mdc-ripple-upgraded{--mdc-ripple-fg-opacity:var(--mdc-ripple-press-opacity, 0.24)}.forge-button-toggle__selected:disabled{background-color:#3f51b5;background-color:var(--mdc-theme-primary,#3f51b5);color:rgba(255,255,255,.87);color:var(--mdc-theme-text-primary-on-dark,rgba(255,255,255,.87));opacity:.37}.forge-button-toggle__selected:disabled::after,.forge-button-toggle__selected:disabled::before{background-color:#fff;background-color:var(--mdc-ripple-color,var(--mdc-theme-on-primary,#fff))}.forge-button-toggle__selected:disabled.mdc-ripple-surface--hover::before,.forge-button-toggle__selected:disabled:hover::before{opacity:.08;opacity:var(--mdc-ripple-hover-opacity, .08)}.forge-button-toggle__selected:disabled.mdc-ripple-upgraded--background-focused::before,.forge-button-toggle__selected:disabled:not(.mdc-ripple-upgraded):focus::before{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.24;opacity:var(--mdc-ripple-focus-opacity, .24)}.forge-button-toggle__selected:disabled:not(.mdc-ripple-upgraded)::after{-webkit-transition:opacity 150ms linear;transition:opacity 150ms linear}.forge-button-toggle__selected:disabled:not(.mdc-ripple-upgraded):active::after{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.24;opacity:var(--mdc-ripple-press-opacity, .24)}.forge-button-toggle__selected:disabled.mdc-ripple-upgraded{--mdc-ripple-fg-opacity:var(--mdc-ripple-press-opacity, 0.24)}.forge-button-toggle ::slotted([slot=leading]){display:inline-block;width:1.125rem;height:1.125rem;font-size:1.125rem!important;vertical-align:top;margin-right:4px}.forge-button-toggle ::slotted([slot=trailing]){display:inline-block;width:1.125rem;height:1.125rem;font-size:1.125rem!important;vertical-align:top;margin-left:4px}.forge-button-toggle--dense{height:24px;margin-top:0;margin-bottom:0;height:1.5rem;font-size:.75rem}.forge-button-toggle--dense .mdc-button__touch{height:100%}.forge-button-toggle--dense ::slotted([slot=leading]){width:.875rem;height:.875rem;font-size:.875rem!important}.forge-button-toggle--dense ::slotted([slot=trailing]){width:.875rem;height:.875rem;font-size:.875rem!important}:host{display:inline-block}:host([hidden]){display:none}:host([stretch]){width:100%;-webkit-box-flex:1;flex:1}:host([selected-adjacent]) .forge-button-toggle{border-left-color:var(--mdc-theme-text-primary-on-dark)}:host([selected-adjacent-vertical]) .forge-button-toggle{border-top-color:var(--mdc-theme-text-primary-on-dark)}',o=class extends u{constructor(){super();m(this,k,T),this._foundation=new s(new c(this)),this._buttonElement=p(this,e.selectors.BUTTON)}static get observedAttributes(){return[e.attributes.VALUE,e.attributes.SELECTED,e.attributes.DISABLED,e.attributes.DENSE,e.attributes.BUTTON_ARIA_LABEL]}initializedCallback(){this._foundation.initialize()}disconnectedCallback(){this._foundation.disconnect()}attributeChangedCallback(t,d,a){switch(t){case e.attributes.VALUE:this.value=a;break;case e.attributes.SELECTED:this.selected=l(a);break;case e.attributes.DISABLED:this.disabled=l(a);break;case e.attributes.DENSE:this.dense=l(a);break;case e.attributes.BUTTON_ARIA_LABEL:this._buttonElement.setAttribute("aria-label",a);break}}focus(){this._foundation.setFocus()}};i([n()],o.prototype,"value",2),i([n()],o.prototype,"selected",2),i([n()],o.prototype,"disabled",2),i([n()],o.prototype,"dense",2),o=i([b({name:e.elementName})],o);export{e as a,c as b,s as c,o as d};
7
+ //# sourceMappingURL=chunk.YJTE34LC.js.map
@@ -3,5 +3,5 @@
3
3
  * Copyright 2023 Tyler Technologies, Inc.
4
4
  * License: Apache-2.0
5
5
  */
6
- import{q as g,r as u}from"./chunk.MZLPUI6R.js";import{a as h,d as C,l as T}from"./chunk.JHBCYICS.js";import{a as _}from"./chunk.G5MGGEFP.js";import{a as p}from"./chunk.KTGSZEAG.js";import{a as f,b}from"./chunk.BE7PZANN.js";import{a as O,e as d,g as s,l as N}from"./chunk.Y4GKBJGI.js";import{t as I}from"./chunk.PN26D52V.js";import{k as l}from"./chunk.J2M2MXP2.js";import{f as i}from"./chunk.MCIQXNKY.js";var E=`${b}open-icon`,A={ICON:"forge-open-icon",ICON_OPEN:"forge-open-icon--open"},x={OPEN:"open",ORIENTATION:"orientation"},S={ORIENTATION_VERTICAL:"vertical",ORIENTATION_HORIZONTAL:"horizontal"},e={elementName:E,classes:A,attributes:x,strings:S};var r=class{constructor(o){this._adapter=o;this._open=!1;this._orientation=e.strings.ORIENTATION_VERTICAL}initialize(){this._adapter.setOrientation(this._orientation),this._adapter.setOpenState(this._open)}get open(){return this._open}set open(o){o=Boolean(o),this._open!==o&&(this._open=o,this._adapter.setOpenState(this._open))}get orientation(){return this._orientation}set orientation(o){this._orientation=o,this._adapter.setOrientation(this._orientation)}};var a=class extends _{constructor(t){super(t);this._openIcon=s(t,`.${e.classes.ICON}`),this._iconElement=s(t,h.elementName)}setOrientation(t){t===e.strings.ORIENTATION_HORIZONTAL?this._iconElement.name="keyboard_arrow_right":this._iconElement.name="keyboard_arrow_down"}setOpenState(t){I(this._openIcon,t,e.classes.ICON_OPEN)}};var w='<template><span class="forge-open-icon" part="root"><forge-icon class="icon" part="icon"></forge-icon></span></template>',v=".forge-open-icon{color:#757575;color:var(--forge-theme-icon-color,#757575)}.forge-open-icon .icon{-webkit-transition:-webkit-transform .4s;transition:-webkit-transform .4s;transition:transform .4s;transition:transform .4s,-webkit-transform .4s}.forge-open-icon.forge-open-icon--open .icon{-webkit-transform:rotate(180deg);transform:rotate(180deg)}:host{line-height:.5}:host([hidden]){display:none}",n=class extends N{constructor(){super();C.define([u,g]),d(this,w,v),this._foundation=new r(new a(this))}static get observedAttributes(){return[e.attributes.OPEN,e.attributes.ORIENTATION]}initializedCallback(){this._foundation.initialize()}attributeChangedCallback(t,R,m){switch(t){case e.attributes.OPEN:this.open=l(m);break;case e.attributes.ORIENTATION:this.orientation=m;break}}};i([p()],n.prototype,"open",2),i([p()],n.prototype,"orientation",2),n=i([f({name:e.elementName,dependencies:[T]})],n);function Y(){O(n)}export{e as a,r as b,a as c,n as d,Y as e};
7
- //# sourceMappingURL=chunk.4BEI55KI.js.map
6
+ import{q as g,r as u}from"./chunk.MZLPUI6R.js";import{a as h,d as C,l as T}from"./chunk.S2YVOMLW.js";import{a as _}from"./chunk.5KC43VFL.js";import{a as p}from"./chunk.KTGSZEAG.js";import{a as f,b}from"./chunk.QOA2O575.js";import{a as O,e as d,g as s,l as N}from"./chunk.HOXFK44F.js";import{t as I}from"./chunk.4LA6HEA7.js";import{k as l}from"./chunk.J2M2MXP2.js";import{f as i}from"./chunk.MCIQXNKY.js";var E=`${b}open-icon`,A={ICON:"forge-open-icon",ICON_OPEN:"forge-open-icon--open"},x={OPEN:"open",ORIENTATION:"orientation"},S={ORIENTATION_VERTICAL:"vertical",ORIENTATION_HORIZONTAL:"horizontal"},e={elementName:E,classes:A,attributes:x,strings:S};var r=class{constructor(o){this._adapter=o;this._open=!1;this._orientation=e.strings.ORIENTATION_VERTICAL}initialize(){this._adapter.setOrientation(this._orientation),this._adapter.setOpenState(this._open)}get open(){return this._open}set open(o){o=Boolean(o),this._open!==o&&(this._open=o,this._adapter.setOpenState(this._open))}get orientation(){return this._orientation}set orientation(o){this._orientation=o,this._adapter.setOrientation(this._orientation)}};var a=class extends _{constructor(t){super(t);this._openIcon=s(t,`.${e.classes.ICON}`),this._iconElement=s(t,h.elementName)}setOrientation(t){t===e.strings.ORIENTATION_HORIZONTAL?this._iconElement.name="keyboard_arrow_right":this._iconElement.name="keyboard_arrow_down"}setOpenState(t){I(this._openIcon,t,e.classes.ICON_OPEN)}};var w='<template><span class="forge-open-icon" part="root"><forge-icon class="icon" part="icon"></forge-icon></span></template>',v=".forge-open-icon{color:#757575;color:var(--forge-theme-icon-color,#757575)}.forge-open-icon .icon{-webkit-transition:-webkit-transform .4s;transition:-webkit-transform .4s;transition:transform .4s;transition:transform .4s,-webkit-transform .4s}.forge-open-icon.forge-open-icon--open .icon{-webkit-transform:rotate(180deg);transform:rotate(180deg)}:host{line-height:.5}:host([hidden]){display:none}",n=class extends N{constructor(){super();C.define([u,g]),d(this,w,v),this._foundation=new r(new a(this))}static get observedAttributes(){return[e.attributes.OPEN,e.attributes.ORIENTATION]}initializedCallback(){this._foundation.initialize()}attributeChangedCallback(t,R,m){switch(t){case e.attributes.OPEN:this.open=l(m);break;case e.attributes.ORIENTATION:this.orientation=m;break}}};i([p()],n.prototype,"open",2),i([p()],n.prototype,"orientation",2),n=i([f({name:e.elementName,dependencies:[T]})],n);function Y(){O(n)}export{e as a,r as b,a as c,n as d,Y as e};
7
+ //# sourceMappingURL=chunk.YMBLWKRP.js.map