@tylertech/forge 3.0.0-next.12 → 3.0.0-next.13

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 (709) hide show
  1. package/README.md +1 -6
  2. package/custom-elements.json +53072 -38831
  3. package/dist/esm/accordion/index.js +1 -1
  4. package/dist/esm/app-bar/help-button/index.js +1 -1
  5. package/dist/esm/app-bar/index.js +1 -1
  6. package/dist/esm/app-bar/menu-button/index.js +1 -1
  7. package/dist/esm/app-bar/notification-button/index.js +1 -1
  8. package/dist/esm/app-bar/profile-button/index.js +1 -1
  9. package/dist/esm/app-bar/search/index.js +1 -1
  10. package/dist/esm/autocomplete/index.js +1 -1
  11. package/dist/esm/avatar/index.js +1 -1
  12. package/dist/esm/backdrop/index.js +1 -1
  13. package/dist/esm/badge/index.js +1 -1
  14. package/dist/esm/banner/index.js +1 -1
  15. package/dist/esm/bottom-sheet/index.js +1 -1
  16. package/dist/esm/busy-indicator/index.js +1 -1
  17. package/dist/esm/button/index.js +1 -1
  18. package/dist/esm/button-area/index.js +1 -1
  19. package/dist/esm/button-toggle/button-toggle/index.js +1 -1
  20. package/dist/esm/button-toggle/button-toggle-group/index.js +1 -1
  21. package/dist/esm/button-toggle/index.js +1 -1
  22. package/dist/esm/calendar/calendar-dropdown/index.js +1 -1
  23. package/dist/esm/calendar/calendar-menu/index.js +1 -1
  24. package/dist/esm/calendar/index.js +1 -1
  25. package/dist/esm/card/index.js +1 -1
  26. package/dist/esm/checkbox/index.js +1 -1
  27. package/dist/esm/chip-field/index.js +1 -1
  28. package/dist/esm/chips/chip/index.js +1 -1
  29. package/dist/esm/chips/chip-set/index.js +1 -1
  30. package/dist/esm/chips/index.js +1 -1
  31. package/dist/esm/chunks/{chunk.4USQ2AP6.js → chunk.2MSL7CYM.js} +2 -2
  32. package/dist/esm/chunks/chunk.2ZU6LWHE.js +7 -0
  33. package/dist/esm/chunks/chunk.2ZU6LWHE.js.map +7 -0
  34. package/dist/esm/chunks/{chunk.OXGOCF4L.js → chunk.36C6SIPW.js} +2 -2
  35. package/dist/esm/chunks/{chunk.OXGOCF4L.js.map → chunk.36C6SIPW.js.map} +2 -2
  36. package/dist/esm/chunks/chunk.36F2GVWS.js +7 -0
  37. package/dist/esm/chunks/chunk.36F2GVWS.js.map +7 -0
  38. package/dist/esm/chunks/{chunk.HDO3WRH7.js → chunk.3HCYRDRI.js} +2 -2
  39. package/dist/esm/chunks/{chunk.UVJFHSMF.js → chunk.3R4BUIQP.js} +2 -2
  40. package/dist/esm/chunks/{chunk.37JFBP4X.js → chunk.3ZPSN2QG.js} +2 -2
  41. package/dist/esm/chunks/chunk.4SPEX2GJ.js +7 -0
  42. package/dist/esm/chunks/chunk.4SPEX2GJ.js.map +7 -0
  43. package/dist/esm/chunks/chunk.4YFJVHXN.js +7 -0
  44. package/dist/esm/chunks/chunk.4YFJVHXN.js.map +7 -0
  45. package/dist/esm/chunks/chunk.5A2PA7TL.js +7 -0
  46. package/dist/esm/chunks/chunk.5A2PA7TL.js.map +7 -0
  47. package/dist/esm/chunks/chunk.5CSXPRL3.js +7 -0
  48. package/dist/esm/chunks/chunk.5CSXPRL3.js.map +7 -0
  49. package/dist/esm/chunks/chunk.5LVZVQXB.js +7 -0
  50. package/dist/esm/chunks/{chunk.Q7BWJCT5.js.map → chunk.5LVZVQXB.js.map} +2 -2
  51. package/dist/esm/chunks/{chunk.HKSXC5VK.js → chunk.5N4N6DL6.js} +2 -2
  52. package/dist/esm/chunks/{chunk.AQ7ROWO4.js → chunk.5PG6WIIX.js} +2 -2
  53. package/dist/esm/chunks/{chunk.CLD75EBJ.js → chunk.5RM65QPN.js} +2 -2
  54. package/dist/esm/chunks/{chunk.CLD75EBJ.js.map → chunk.5RM65QPN.js.map} +3 -3
  55. package/dist/esm/chunks/chunk.5WMYF27O.js +7 -0
  56. package/dist/esm/chunks/chunk.5WMYF27O.js.map +7 -0
  57. package/dist/esm/chunks/{chunk.C7VEJINB.js → chunk.675V42JS.js} +2 -2
  58. package/dist/esm/chunks/chunk.6M27ERWW.js +12 -0
  59. package/dist/esm/chunks/chunk.6M27ERWW.js.map +7 -0
  60. package/dist/esm/chunks/chunk.6NTYTHAL.js +7 -0
  61. package/dist/esm/chunks/chunk.6NTYTHAL.js.map +7 -0
  62. package/dist/esm/chunks/chunk.6ZNBFKNP.js +7 -0
  63. package/dist/esm/chunks/chunk.6ZNBFKNP.js.map +7 -0
  64. package/dist/esm/chunks/{chunk.5ASOX23Q.js → chunk.72JVXGHF.js} +2 -2
  65. package/dist/esm/chunks/{chunk.5ASOX23Q.js.map → chunk.72JVXGHF.js.map} +1 -1
  66. package/dist/esm/chunks/chunk.7V4BDSA5.js +7 -0
  67. package/dist/esm/chunks/chunk.7V4BDSA5.js.map +7 -0
  68. package/dist/esm/chunks/chunk.7VMJLHQY.js +7 -0
  69. package/dist/esm/chunks/chunk.7VMJLHQY.js.map +7 -0
  70. package/dist/esm/chunks/{chunk.OQAD6MFL.js → chunk.7ZROQ6D3.js} +2 -2
  71. package/dist/esm/chunks/{chunk.W7H2ZYNR.js → chunk.AMLT6XJP.js} +2 -2
  72. package/dist/esm/chunks/{chunk.TCFKFKZW.js → chunk.AMZZKEAE.js} +2 -2
  73. package/dist/esm/chunks/{chunk.DH76CMUT.js → chunk.APPY5AYL.js} +2 -2
  74. package/dist/esm/chunks/{chunk.7M4HRJYP.js → chunk.ARQMMZJL.js} +2 -2
  75. package/dist/esm/chunks/{chunk.QNVVUUNQ.js → chunk.AUBOJZQ7.js} +2 -2
  76. package/dist/esm/chunks/chunk.AUCBR6CC.js +7 -0
  77. package/dist/esm/chunks/{chunk.UAVC4YLD.js.map → chunk.AUCBR6CC.js.map} +2 -2
  78. package/dist/esm/chunks/{chunk.RXLORASN.js → chunk.BB4UF5RX.js} +2 -2
  79. package/dist/esm/chunks/chunk.BBCZNGT3.js +7 -0
  80. package/dist/esm/chunks/chunk.BBCZNGT3.js.map +7 -0
  81. package/dist/esm/chunks/chunk.BQ2X5SBP.js +7 -0
  82. package/dist/esm/chunks/{chunk.TSH7BTC3.js.map → chunk.BQ2X5SBP.js.map} +2 -2
  83. package/dist/esm/chunks/{chunk.NDJZYFRT.js → chunk.BTXY3XMJ.js} +2 -2
  84. package/dist/esm/chunks/{chunk.AY43NTAK.js → chunk.DTLZOIUQ.js} +2 -2
  85. package/dist/esm/chunks/chunk.EJX6RI4I.js +7 -0
  86. package/dist/esm/chunks/chunk.EJX6RI4I.js.map +7 -0
  87. package/dist/esm/chunks/chunk.EWK76SPH.js +7 -0
  88. package/dist/esm/chunks/chunk.EWK76SPH.js.map +7 -0
  89. package/dist/esm/chunks/chunk.FAXYCG55.js +7 -0
  90. package/dist/esm/chunks/chunk.FAXYCG55.js.map +7 -0
  91. package/dist/esm/chunks/chunk.FFHSUJFM.js +7 -0
  92. package/dist/esm/chunks/chunk.FFHSUJFM.js.map +7 -0
  93. package/dist/esm/chunks/{chunk.PLNLLKP2.js → chunk.FLWNOP42.js} +2 -2
  94. package/dist/esm/chunks/{chunk.IJ2I25V3.js → chunk.FXIWCHLW.js} +2 -2
  95. package/dist/esm/chunks/chunk.FYVDTZLF.js +7 -0
  96. package/dist/esm/chunks/{chunk.YP2NHWIW.js.map → chunk.FYVDTZLF.js.map} +2 -2
  97. package/dist/esm/chunks/{chunk.6VSFLBZF.js → chunk.G73KL7P2.js} +2 -2
  98. package/dist/esm/chunks/chunk.G7SMCLHQ.js +7 -0
  99. package/dist/esm/chunks/chunk.G7SMCLHQ.js.map +7 -0
  100. package/dist/esm/chunks/{chunk.PDSOXEMY.js → chunk.GNDKQPDV.js} +2 -2
  101. package/dist/esm/chunks/{chunk.RWUJGZ3R.js → chunk.HAKF2T2D.js} +2 -2
  102. package/dist/esm/chunks/{chunk.ZYVXIP42.js → chunk.HDG2GHKC.js} +2 -2
  103. package/dist/esm/chunks/{chunk.EY37FYZ4.js → chunk.HOLCNJXC.js} +2 -2
  104. package/dist/esm/chunks/{chunk.DQVYB55P.js → chunk.HRRJIFC5.js} +2 -2
  105. package/dist/esm/chunks/chunk.HSI7B43D.js +7 -0
  106. package/dist/esm/chunks/chunk.HSI7B43D.js.map +7 -0
  107. package/dist/esm/chunks/chunk.IAWYYNUU.js +7 -0
  108. package/dist/esm/chunks/chunk.IAWYYNUU.js.map +7 -0
  109. package/dist/esm/chunks/{chunk.WK2L7BPJ.js → chunk.IDMDBMBR.js} +2 -2
  110. package/dist/esm/chunks/{chunk.WJXDDQUK.js → chunk.IHAHJPMB.js} +2 -2
  111. package/dist/esm/chunks/chunk.IISWKFCX.js +7 -0
  112. package/dist/esm/chunks/chunk.IISWKFCX.js.map +7 -0
  113. package/dist/esm/chunks/{chunk.DABGA7I6.js → chunk.IMLJD35R.js} +2 -2
  114. package/dist/esm/chunks/{chunk.66X366TV.js → chunk.IT7XPDAV.js} +2 -2
  115. package/dist/esm/chunks/chunk.JAWV5Y5T.js +7 -0
  116. package/dist/esm/chunks/{chunk.I5SFCLDD.js.map → chunk.JAWV5Y5T.js.map} +3 -3
  117. package/dist/esm/chunks/{chunk.RNUGVHZF.js → chunk.JVLJH6PR.js} +2 -2
  118. package/dist/esm/chunks/chunk.KPJWP77R.js +7 -0
  119. package/dist/esm/chunks/{chunk.Z6AFASMO.js → chunk.KV5IKYG2.js} +2 -2
  120. package/dist/esm/chunks/chunk.KV67JXOC.js +7 -0
  121. package/dist/esm/chunks/{chunk.OQ75YGB6.js.map → chunk.KV67JXOC.js.map} +2 -2
  122. package/dist/esm/chunks/{chunk.7UJAI6P2.js → chunk.LCR4YH3O.js} +2 -2
  123. package/dist/esm/chunks/{chunk.2WSXSOYB.js → chunk.LOG6GQOK.js} +2 -2
  124. package/dist/esm/chunks/chunk.LUIKMPQR.js +7 -0
  125. package/dist/esm/chunks/chunk.LUIKMPQR.js.map +7 -0
  126. package/dist/esm/chunks/chunk.LUNKNRRH.js +7 -0
  127. package/dist/esm/chunks/chunk.LUNKNRRH.js.map +7 -0
  128. package/dist/esm/chunks/{chunk.VDGJ4UDL.js → chunk.MKJCHUJH.js} +2 -2
  129. package/dist/esm/chunks/{chunk.IXGXASHQ.js → chunk.MWYQRG5W.js} +2 -2
  130. package/dist/esm/chunks/{chunk.CBIHNCT5.js → chunk.NUMKGUCK.js} +2 -2
  131. package/dist/esm/chunks/{chunk.R6NA7SV2.js → chunk.O6V3YNMO.js} +2 -2
  132. package/dist/esm/chunks/chunk.OWZREAT6.js +15 -0
  133. package/dist/esm/chunks/chunk.OWZREAT6.js.map +7 -0
  134. package/dist/esm/chunks/chunk.PMYQY3D3.js +7 -0
  135. package/dist/esm/chunks/chunk.PMYQY3D3.js.map +7 -0
  136. package/dist/esm/chunks/chunk.PYR2OCCH.js +7 -0
  137. package/dist/esm/chunks/{chunk.LNLO36U6.js.map → chunk.PYR2OCCH.js.map} +2 -2
  138. package/dist/esm/chunks/chunk.QJCNMYD3.js +7 -0
  139. package/dist/esm/chunks/{chunk.URFSXQKR.js.map → chunk.QJCNMYD3.js.map} +2 -2
  140. package/dist/esm/chunks/{chunk.CQQSOTZ5.js → chunk.QLCVRJ3Q.js} +2 -2
  141. package/dist/esm/chunks/chunk.QLOYOZN3.js +7 -0
  142. package/dist/esm/chunks/{chunk.JCO4M4PF.js.map → chunk.QLOYOZN3.js.map} +3 -3
  143. package/dist/esm/chunks/chunk.QN5T26HH.js +7 -0
  144. package/dist/esm/chunks/chunk.QN5T26HH.js.map +7 -0
  145. package/dist/esm/chunks/chunk.QQRPV4RN.js +7 -0
  146. package/dist/esm/chunks/{chunk.YXXKPT6P.js.map → chunk.QQRPV4RN.js.map} +2 -2
  147. package/dist/esm/chunks/{chunk.E4TAHUQO.js → chunk.R6LQBI42.js} +2 -2
  148. package/dist/esm/chunks/{chunk.FK6NNHXH.js → chunk.RES7WDKH.js} +2 -2
  149. package/dist/esm/chunks/chunk.RP674CRC.js +7 -0
  150. package/dist/esm/chunks/chunk.S5QL4SPT.js +7 -0
  151. package/dist/esm/chunks/chunk.S5QL4SPT.js.map +7 -0
  152. package/dist/esm/chunks/{chunk.SEWAMWO6.js → chunk.SIRXAA3O.js} +2 -2
  153. package/dist/esm/chunks/{chunk.WWTQAN4G.js → chunk.SLJ6HDK7.js} +2 -2
  154. package/dist/esm/chunks/chunk.STB2FEUA.js +7 -0
  155. package/dist/esm/chunks/chunk.STB2FEUA.js.map +7 -0
  156. package/dist/esm/chunks/chunk.TBGMJQYJ.js +7 -0
  157. package/dist/esm/chunks/chunk.TBGMJQYJ.js.map +7 -0
  158. package/dist/esm/chunks/{chunk.RBFGJH3C.js → chunk.TU74SREL.js} +2 -2
  159. package/dist/esm/chunks/{chunk.4JF54GDJ.js → chunk.URJQNB3S.js} +2 -2
  160. package/dist/esm/chunks/{chunk.C2MQN7MI.js → chunk.V24M62MC.js} +2 -2
  161. package/dist/esm/chunks/chunk.VFKHRAWD.js +7 -0
  162. package/dist/esm/chunks/chunk.VFKHRAWD.js.map +7 -0
  163. package/dist/esm/chunks/{chunk.R2KOYHIZ.js → chunk.VO6YJCEU.js} +2 -2
  164. package/dist/esm/chunks/{chunk.C5ZUGOOC.js → chunk.W2LN45WY.js} +2 -2
  165. package/dist/esm/chunks/{chunk.4XJYS5WH.js → chunk.WMVYRDUJ.js} +2 -2
  166. package/dist/esm/chunks/{chunk.4XJYS5WH.js.map → chunk.WMVYRDUJ.js.map} +2 -2
  167. package/dist/esm/chunks/chunk.WY3E33CW.js +7 -0
  168. package/dist/esm/chunks/chunk.WY3E33CW.js.map +7 -0
  169. package/dist/esm/chunks/{chunk.HBCDD25D.js → chunk.XEFWZKHQ.js} +2 -2
  170. package/dist/esm/chunks/{chunk.MHU452GM.js → chunk.XLL7L2UB.js} +2 -2
  171. package/dist/esm/chunks/{chunk.UZPZ6KUN.js → chunk.XNFS7YIB.js} +2 -2
  172. package/dist/esm/chunks/{chunk.UZPZ6KUN.js.map → chunk.XNFS7YIB.js.map} +2 -2
  173. package/dist/esm/chunks/chunk.XYAZVLPR.js +7 -0
  174. package/dist/esm/chunks/{chunk.AHAARGYM.js → chunk.YAERJVPL.js} +2 -2
  175. package/dist/esm/chunks/chunk.YBZK6LJZ.js +7 -0
  176. package/dist/esm/chunks/chunk.YKIBREM5.js +7 -0
  177. package/dist/esm/chunks/chunk.YWAUEUAH.js +7 -0
  178. package/dist/esm/chunks/chunk.YWAUEUAH.js.map +7 -0
  179. package/dist/esm/chunks/{chunk.YIFI5D2X.js → chunk.Z5RROENA.js} +2 -2
  180. package/dist/esm/chunks/{chunk.YIFI5D2X.js.map → chunk.Z5RROENA.js.map} +3 -3
  181. package/dist/esm/chunks/{chunk.ZREXLSAJ.js → chunk.Z5ZLKM7W.js} +2 -2
  182. package/dist/esm/chunks/chunk.ZGRQDDHO.js +7 -0
  183. package/dist/esm/chunks/{chunk.U5XNDTSZ.js.map → chunk.ZGRQDDHO.js.map} +2 -2
  184. package/dist/esm/chunks/{chunk.TGVLYX5F.js → chunk.ZKM667OT.js} +2 -2
  185. package/dist/esm/chunks/{chunk.TGVLYX5F.js.map → chunk.ZKM667OT.js.map} +2 -2
  186. package/dist/esm/chunks/chunk.ZRSDTCSD.js +7 -0
  187. package/dist/esm/chunks/chunk.ZRSDTCSD.js.map +7 -0
  188. package/dist/esm/chunks/chunk.ZSZFWZAI.js +7 -0
  189. package/dist/esm/chunks/chunk.ZSZFWZAI.js.map +7 -0
  190. package/dist/esm/circular-progress/index.js +1 -1
  191. package/dist/esm/color-picker/index.js +1 -1
  192. package/dist/esm/core/base/index.js +1 -1
  193. package/dist/esm/core/index.js +1 -1
  194. package/dist/esm/core/utils/index.js +1 -1
  195. package/dist/esm/date-picker/index.js +1 -1
  196. package/dist/esm/date-range-picker/index.js +1 -1
  197. package/dist/esm/dialog/index.js +1 -1
  198. package/dist/esm/divider/index.js +1 -1
  199. package/dist/esm/drawer/base/index.js +1 -1
  200. package/dist/esm/drawer/drawer/index.js +1 -1
  201. package/dist/esm/drawer/index.js +1 -1
  202. package/dist/esm/drawer/mini-drawer/index.js +1 -1
  203. package/dist/esm/drawer/modal-drawer/index.js +1 -1
  204. package/dist/esm/expansion-panel/index.js +1 -1
  205. package/dist/esm/file-picker/index.js +1 -1
  206. package/dist/esm/floating-action-button/index.js +1 -1
  207. package/dist/esm/focus-indicator/index.js +1 -1
  208. package/dist/esm/icon/index.js +1 -1
  209. package/dist/esm/icon-button/index.js +1 -1
  210. package/dist/esm/index.js +1 -1
  211. package/dist/esm/inline-message/index.js +1 -1
  212. package/dist/esm/keyboard-shortcut/index.js +1 -1
  213. package/dist/esm/label/index.js +7 -0
  214. package/dist/esm/label/index.js.map +7 -0
  215. package/dist/esm/label-value/index.js +1 -1
  216. package/dist/esm/linear-progress/index.js +1 -1
  217. package/dist/esm/list/index.js +1 -1
  218. package/dist/esm/list/list/index.js +1 -1
  219. package/dist/esm/list/list-item/index.js +1 -1
  220. package/dist/esm/list-dropdown/index.js +1 -1
  221. package/dist/esm/menu/index.js +1 -1
  222. package/dist/esm/open-icon/index.js +1 -1
  223. package/dist/esm/page-state/index.js +1 -1
  224. package/dist/esm/paginator/index.js +1 -1
  225. package/dist/esm/popup/index.js +1 -1
  226. package/dist/esm/product-icon/index.js +1 -1
  227. package/dist/esm/profile-card/index.js +1 -1
  228. package/dist/esm/quantity-field/index.js +1 -1
  229. package/dist/esm/radio/index.js +1 -1
  230. package/dist/esm/ripple/index.js +1 -1
  231. package/dist/esm/scaffold/index.js +1 -1
  232. package/dist/esm/select/core/index.js +1 -1
  233. package/dist/esm/select/index.js +1 -1
  234. package/dist/esm/select/option/index.js +1 -1
  235. package/dist/esm/select/option-group/index.js +1 -1
  236. package/dist/esm/select/select/index.js +1 -1
  237. package/dist/esm/select/select-dropdown/index.js +1 -1
  238. package/dist/esm/skeleton/index.js +1 -1
  239. package/dist/esm/slider/index.js +1 -1
  240. package/dist/esm/split-button/index.js +7 -0
  241. package/dist/esm/split-button/index.js.map +7 -0
  242. package/dist/esm/split-view/index.js +1 -1
  243. package/dist/esm/split-view/split-view/index.js +1 -1
  244. package/dist/esm/split-view/split-view-panel/index.js +1 -1
  245. package/dist/esm/stack/index.js +1 -1
  246. package/dist/esm/state-layer/index.js +1 -1
  247. package/dist/esm/stepper/index.js +1 -1
  248. package/dist/esm/stepper/step/index.js +1 -1
  249. package/dist/esm/stepper/stepper/index.js +1 -1
  250. package/dist/esm/switch/index.js +1 -1
  251. package/dist/esm/table/index.js +1 -1
  252. package/dist/esm/tabs/index.js +1 -1
  253. package/dist/esm/tabs/tab/index.js +1 -1
  254. package/dist/esm/tabs/tab-bar/index.js +1 -1
  255. package/dist/esm/text-field/index.js +1 -1
  256. package/dist/esm/time-picker/index.js +1 -1
  257. package/dist/esm/toast/index.js +1 -1
  258. package/dist/esm/toolbar/index.js +1 -1
  259. package/dist/esm/tooltip/index.js +1 -1
  260. package/dist/esm/view-switcher/index.js +1 -1
  261. package/dist/esm/view-switcher/view/index.js +1 -1
  262. package/dist/forge-dark.css +1 -1
  263. package/dist/forge.css +1 -1
  264. package/dist/table/forge-table.css +1 -1
  265. package/dist/theme/forge-theme.css +1 -1
  266. package/dist/typography/forge-typography.css +1 -1
  267. package/esm/app-bar/app-bar.js +1 -1
  268. package/esm/app-bar/help-button/app-bar-help-button.js +1 -1
  269. package/esm/app-bar/menu-button/app-bar-menu-button.js +1 -1
  270. package/esm/app-bar/notification-button/app-bar-notification-button.js +1 -1
  271. package/esm/app-bar/profile-button/app-bar-profile-button-constants.js +1 -1
  272. package/esm/app-bar/profile-button/app-bar-profile-button.js +1 -1
  273. package/esm/autocomplete/autocomplete-foundation.js +2 -2
  274. package/esm/banner/banner-constants.js +1 -1
  275. package/esm/banner/banner.js +2 -2
  276. package/esm/bottom-sheet/bottom-sheet.js +1 -1
  277. package/esm/busy-indicator/busy-indicator.js +2 -2
  278. package/esm/button/base/base-button-adapter.d.ts +72 -0
  279. package/esm/button/base/base-button-adapter.js +250 -0
  280. package/esm/button/base/base-button-constants.d.ts +41 -0
  281. package/esm/button/base/base-button-constants.js +32 -0
  282. package/esm/button/base/base-button-foundation.d.ts +75 -0
  283. package/esm/button/base/base-button-foundation.js +234 -0
  284. package/esm/button/base/base-button.d.ts +51 -0
  285. package/esm/button/base/base-button.js +106 -0
  286. package/esm/button/button-adapter.d.ts +14 -0
  287. package/esm/button/button-adapter.js +14 -0
  288. package/esm/button/button-component-delegate.d.ts +4 -4
  289. package/esm/button/button-component-delegate.js +13 -17
  290. package/esm/button/button-constants.d.ts +10 -18
  291. package/esm/button/button-constants.js +6 -22
  292. package/esm/button/button-foundation.d.ts +25 -0
  293. package/esm/button/button-foundation.js +49 -0
  294. package/esm/button/button.d.ts +126 -30
  295. package/esm/button/button.js +160 -159
  296. package/esm/button/index.d.ts +3 -1
  297. package/esm/button/index.js +3 -1
  298. package/esm/button-toggle/button-toggle/button-toggle.js +1 -1
  299. package/esm/calendar/calendar-dom-utils.js +18 -30
  300. package/esm/calendar/calendar.js +1 -1
  301. package/esm/checkbox/checkbox-adapter.d.ts +50 -59
  302. package/esm/checkbox/checkbox-adapter.js +104 -186
  303. package/esm/checkbox/checkbox-component-delegate.d.ts +18 -9
  304. package/esm/checkbox/checkbox-component-delegate.js +58 -51
  305. package/esm/checkbox/checkbox-constants.d.ts +14 -56
  306. package/esm/checkbox/checkbox-constants.js +17 -50
  307. package/esm/checkbox/checkbox-foundation.d.ts +48 -18
  308. package/esm/checkbox/checkbox-foundation.js +139 -139
  309. package/esm/checkbox/checkbox.d.ts +120 -9
  310. package/esm/checkbox/checkbox.js +235 -36
  311. package/esm/checkbox/index.d.ts +1 -1
  312. package/esm/checkbox/index.js +1 -1
  313. package/esm/chip-field/chip-field-constants.d.ts +3 -0
  314. package/esm/chip-field/chip-field-constants.js +4 -0
  315. package/esm/chip-field/chip-field-foundation.d.ts +5 -0
  316. package/esm/chip-field/chip-field-foundation.js +20 -1
  317. package/esm/chip-field/chip-field.d.ts +5 -0
  318. package/esm/chip-field/chip-field.js +19 -1
  319. package/esm/chips/chip/chip.js +1 -1
  320. package/esm/circular-progress/circular-progress-constants.d.ts +4 -0
  321. package/esm/circular-progress/circular-progress-constants.js +2 -0
  322. package/esm/circular-progress/circular-progress-foundation.d.ts +9 -0
  323. package/esm/circular-progress/circular-progress-foundation.js +21 -0
  324. package/esm/circular-progress/circular-progress.d.ts +15 -2
  325. package/esm/circular-progress/circular-progress.js +25 -3
  326. package/esm/color-picker/color-picker.js +2 -2
  327. package/esm/constants.d.ts +7 -0
  328. package/esm/constants.js +4 -0
  329. package/esm/core/base/base-adapter.d.ts +13 -1
  330. package/esm/core/base/base-adapter.js +17 -0
  331. package/esm/core/base/base-component.d.ts +0 -38
  332. package/esm/core/base/base-component.js +0 -4
  333. package/esm/core/base/base-focusable-component.d.ts +49 -0
  334. package/esm/core/base/base-focusable-component.js +90 -0
  335. package/esm/core/base/base-form-component.d.ts +45 -0
  336. package/esm/core/base/base-form-component.js +19 -0
  337. package/esm/core/base/base-nullable-form-component.d.ts +35 -0
  338. package/esm/core/base/base-nullable-form-component.js +20 -0
  339. package/esm/core/utils/feature-detection.d.ts +10 -0
  340. package/esm/core/utils/feature-detection.js +12 -0
  341. package/esm/core/utils/index.d.ts +2 -1
  342. package/esm/core/utils/index.js +2 -1
  343. package/esm/core/utils/reflect-utils.d.ts +107 -0
  344. package/esm/core/utils/reflect-utils.js +227 -0
  345. package/esm/date-picker/base/base-date-picker-utils.js +5 -8
  346. package/esm/field/field-constants.d.ts +8 -0
  347. package/esm/field/field-constants.js +10 -8
  348. package/esm/file-picker/file-picker-component-delegate.js +1 -1
  349. package/esm/file-picker/file-picker.js +1 -1
  350. package/esm/focus-indicator/focus-indicator-adapter.d.ts +2 -2
  351. package/esm/focus-indicator/focus-indicator-adapter.js +3 -3
  352. package/esm/focus-indicator/focus-indicator-foundation.js +3 -2
  353. package/esm/focus-indicator/focus-indicator.js +1 -1
  354. package/esm/icon-button/icon-button-adapter.d.ts +12 -0
  355. package/esm/icon-button/icon-button-adapter.js +11 -0
  356. package/esm/icon-button/icon-button-component-delegate.d.ts +0 -4
  357. package/esm/icon-button/icon-button-component-delegate.js +8 -18
  358. package/esm/icon-button/icon-button-constants.d.ts +26 -17
  359. package/esm/icon-button/icon-button-constants.js +17 -28
  360. package/esm/icon-button/icon-button-foundation.d.ts +39 -0
  361. package/esm/icon-button/icon-button-foundation.js +122 -0
  362. package/esm/icon-button/icon-button.d.ts +69 -41
  363. package/esm/icon-button/icon-button.js +107 -213
  364. package/esm/index.d.ts +2 -0
  365. package/esm/index.js +4 -0
  366. package/esm/label/index.d.ts +11 -0
  367. package/esm/label/index.js +15 -0
  368. package/esm/label/label-adapter.d.ts +51 -0
  369. package/esm/label/label-adapter.js +102 -0
  370. package/esm/label/label-aware.d.ts +15 -0
  371. package/esm/label/label-aware.js +13 -0
  372. package/esm/label/label-constants.d.ts +17 -0
  373. package/esm/label/label-constants.js +31 -0
  374. package/esm/label/label-foundation.d.ts +40 -0
  375. package/esm/label/label-foundation.js +106 -0
  376. package/esm/label/label.d.ts +49 -0
  377. package/esm/label/label.js +80 -0
  378. package/esm/linear-progress/linear-progress-constants.d.ts +3 -0
  379. package/esm/linear-progress/linear-progress-constants.js +1 -0
  380. package/esm/linear-progress/linear-progress-foundation.d.ts +5 -0
  381. package/esm/linear-progress/linear-progress-foundation.js +13 -3
  382. package/esm/linear-progress/linear-progress.d.ts +8 -1
  383. package/esm/linear-progress/linear-progress.js +13 -2
  384. package/esm/list/list/list-adapter.js +0 -1
  385. package/esm/list/list/list.js +1 -1
  386. package/esm/list/list-item/list-item-adapter.d.ts +12 -4
  387. package/esm/list/list-item/list-item-adapter.js +36 -5
  388. package/esm/list/list-item/list-item-constants.d.ts +4 -0
  389. package/esm/list/list-item/list-item-constants.js +3 -1
  390. package/esm/list/list-item/list-item-foundation.d.ts +9 -0
  391. package/esm/list/list-item/list-item-foundation.js +34 -4
  392. package/esm/list/list-item/list-item.d.ts +15 -4
  393. package/esm/list/list-item/list-item.js +29 -6
  394. package/esm/menu/menu-constants.js +1 -1
  395. package/esm/menu/menu-foundation.js +0 -4
  396. package/esm/menu/menu.js +1 -1
  397. package/esm/paginator/paginator-adapter.d.ts +4 -2
  398. package/esm/paginator/paginator-adapter.js +21 -8
  399. package/esm/paginator/paginator-constants.js +4 -4
  400. package/esm/paginator/paginator-foundation.d.ts +2 -0
  401. package/esm/paginator/paginator-foundation.js +19 -16
  402. package/esm/paginator/paginator.d.ts +1 -0
  403. package/esm/paginator/paginator.js +5 -2
  404. package/esm/profile-card/profile-card.js +2 -2
  405. package/esm/quantity-field/quantity-field-constants.js +2 -2
  406. package/esm/select/core/base-select-foundation.js +3 -1
  407. package/esm/slider/slider-adapter.d.ts +1 -1
  408. package/esm/slider/slider-adapter.js +3 -2
  409. package/esm/slider/slider-constants.js +3 -3
  410. package/esm/slider/slider.d.ts +6 -11
  411. package/esm/slider/slider.js +11 -7
  412. package/esm/split-button/index.d.ts +10 -0
  413. package/esm/split-button/index.js +14 -0
  414. package/esm/split-button/split-button-adapter.d.ts +30 -0
  415. package/esm/split-button/split-button-adapter.js +84 -0
  416. package/esm/split-button/split-button-constants.d.ts +21 -0
  417. package/esm/split-button/split-button-constants.js +23 -0
  418. package/esm/split-button/split-button-foundation.d.ts +37 -0
  419. package/esm/split-button/split-button-foundation.js +77 -0
  420. package/esm/split-button/split-button.d.ts +57 -0
  421. package/esm/split-button/split-button.js +103 -0
  422. package/esm/split-view/split-view-panel/split-view-panel.js +1 -1
  423. package/esm/state-layer/state-layer-adapter.js +1 -0
  424. package/esm/state-layer/state-layer-foundation.js +10 -1
  425. package/esm/state-layer/state-layer.js +1 -1
  426. package/esm/stepper/stepper/stepper-foundation.js +1 -1
  427. package/esm/switch/index.d.ts +2 -0
  428. package/esm/switch/index.js +2 -0
  429. package/esm/switch/switch-adapter.d.ts +30 -4
  430. package/esm/switch/switch-adapter.js +100 -18
  431. package/esm/switch/switch-component-delegate.d.ts +22 -7
  432. package/esm/switch/switch-component-delegate.js +63 -28
  433. package/esm/switch/switch-constants.d.ts +12 -2
  434. package/esm/switch/switch-constants.js +22 -11
  435. package/esm/switch/switch-foundation.d.ts +23 -4
  436. package/esm/switch/switch-foundation.js +63 -11
  437. package/esm/switch/switch.d.ts +28 -16
  438. package/esm/switch/switch.js +65 -36
  439. package/esm/table/table-foundation.d.ts +2 -0
  440. package/esm/table/table-foundation.js +17 -6
  441. package/esm/table/table-utils.js +13 -1
  442. package/esm/table/types.d.ts +1 -0
  443. package/esm/tabs/tab/tab.js +2 -2
  444. package/esm/tabs/tab-bar/tab-bar-adapter.js +17 -20
  445. package/esm/tabs/tab-bar/tab-bar.js +1 -1
  446. package/esm/time-picker/time-picker-adapter.js +5 -8
  447. package/esm/toast/toast-adapter.d.ts +1 -1
  448. package/esm/toast/toast-adapter.js +1 -1
  449. package/esm/toast/toast.js +2 -2
  450. package/package.json +1 -2
  451. package/styles/app-bar/_mixins.scss +9 -4
  452. package/styles/banner/banner.scss +0 -1
  453. package/styles/bottom-sheet/bottom-sheet.scss +0 -1
  454. package/styles/busy-indicator/_mixins.scss +1 -1
  455. package/styles/busy-indicator/busy-indicator.scss +0 -1
  456. package/styles/button/_configuration.scss +16 -0
  457. package/styles/button/_core.scss +183 -0
  458. package/styles/button/_token-utils.scss +30 -0
  459. package/styles/button/button.scss +208 -0
  460. package/styles/button/index.scss +8 -0
  461. package/styles/button-toggle/button-toggle/_mixins.scss +26 -7
  462. package/styles/calendar/calendar.scss +0 -4
  463. package/styles/{button/forge-button.scss → checkbox/_configuration.scss} +4 -3
  464. package/styles/checkbox/_core.scss +157 -0
  465. package/styles/checkbox/_token-utils.scss +30 -0
  466. package/styles/checkbox/checkbox.scss +143 -7
  467. package/styles/checkbox/index.scss +8 -0
  468. package/styles/chips/chip/_mixins.scss +21 -7
  469. package/styles/circular-progress/_configuration.scss +8 -15
  470. package/styles/circular-progress/_core.scss +19 -19
  471. package/styles/circular-progress/_token-utils.scss +30 -0
  472. package/styles/circular-progress/circular-progress.scss +51 -4
  473. package/styles/circular-progress/index.scss +1 -0
  474. package/styles/color-picker/color-picker.scss +0 -3
  475. package/styles/core/styles/_utils.scss +67 -4
  476. package/styles/core/styles/spacing/index.scss +7 -0
  477. package/styles/core/styles/tokens/_token-utils.scss +118 -0
  478. package/styles/core/styles/tokens/button/_tokens.scss +115 -0
  479. package/styles/core/styles/tokens/checkbox/_tokens.scss +69 -0
  480. package/styles/core/styles/tokens/circular-progress/_tokens.scss +13 -3
  481. package/styles/core/styles/tokens/focus-indicator/_tokens.scss +8 -5
  482. package/styles/core/styles/tokens/icon-button/_tokens.scss +106 -0
  483. package/styles/core/styles/tokens/index.scss +0 -1
  484. package/styles/core/styles/tokens/linear-progress/_tokens.scss +14 -3
  485. package/styles/core/styles/tokens/spacing/_tokens.scss +15 -1
  486. package/styles/core/styles/tokens/split-button/_tokens.scss +21 -0
  487. package/styles/core/styles/tokens/switch/_tokens.scss +4 -4
  488. package/styles/core/styles/tokens/tabs/tab/_tokens.scss +1 -1
  489. package/styles/core/styles/tokens/tabs/tab-bar/_tokens.scss +2 -2
  490. package/styles/core/styles/tokens/theme/_token-utils.scss +8 -4
  491. package/styles/core/styles/tokens/typography/_tokens.label.scss +0 -1
  492. package/styles/core/styles/typography/index.scss +26 -1
  493. package/styles/file-picker/_mixins.scss +1 -1
  494. package/styles/focus-indicator/_animations.scss +6 -4
  495. package/styles/focus-indicator/_configuration.scss +2 -15
  496. package/styles/focus-indicator/_core.scss +20 -25
  497. package/styles/focus-indicator/_token-utils.scss +31 -0
  498. package/styles/focus-indicator/focus-indicator.scss +28 -6
  499. package/styles/focus-indicator/index.scss +1 -0
  500. package/styles/forge.scss +0 -2
  501. package/styles/icon-button/_configuration.scss +16 -0
  502. package/styles/icon-button/_core.scss +145 -0
  503. package/styles/icon-button/_token-utils.scss +30 -0
  504. package/styles/icon-button/icon-button.scss +315 -0
  505. package/styles/icon-button/index.scss +8 -0
  506. package/styles/label/_core.scss +17 -0
  507. package/styles/{icon-button/forge-icon-button.scss → label/index.scss} +1 -3
  508. package/styles/label/label.scss +18 -0
  509. package/styles/linear-progress/_animations.scss +3 -1
  510. package/styles/linear-progress/_configuration.scss +15 -16
  511. package/styles/linear-progress/_core.scss +17 -19
  512. package/styles/linear-progress/_token-utils.scss +31 -0
  513. package/styles/linear-progress/index.scss +1 -0
  514. package/styles/linear-progress/linear-progress.scss +42 -6
  515. package/styles/list/list/_configuration.scss +2 -4
  516. package/styles/list/list/_core.scss +3 -8
  517. package/styles/list/list/_token-utils.scss +30 -0
  518. package/styles/list/list/index.scss +1 -0
  519. package/styles/list/list/list.scss +11 -0
  520. package/styles/list/list-item/_configuration.scss +5 -61
  521. package/styles/list/list-item/_core.scss +51 -56
  522. package/styles/list/list-item/_token-utils.scss +30 -0
  523. package/styles/list/list-item/index.scss +1 -0
  524. package/styles/list/list-item/list-item.scss +10 -3
  525. package/styles/menu/menu.scss +1 -1
  526. package/styles/paginator/paginator.scss +0 -1
  527. package/styles/profile-card/profile-card.scss +0 -1
  528. package/styles/slider/_configuration.scss +5 -50
  529. package/styles/slider/_core.scss +58 -63
  530. package/styles/slider/_token-utils.scss +30 -0
  531. package/styles/slider/index.scss +1 -0
  532. package/styles/slider/slider.scss +26 -3
  533. package/styles/split-button/_configuration.scss +12 -0
  534. package/styles/split-button/_token-utils.scss +30 -0
  535. package/styles/split-button/index.scss +7 -0
  536. package/styles/split-button/split-button.scss +97 -0
  537. package/styles/state-layer/_configuration.scss +2 -9
  538. package/styles/state-layer/_core.scss +11 -16
  539. package/styles/state-layer/_token-utils.scss +31 -0
  540. package/styles/state-layer/index.scss +1 -0
  541. package/styles/state-layer/state-layer.scss +7 -0
  542. package/styles/switch/_configuration.scss +2 -87
  543. package/styles/switch/_core.scss +83 -86
  544. package/styles/switch/_token-utils.scss +30 -0
  545. package/styles/switch/index.scss +1 -0
  546. package/styles/switch/switch.scss +118 -84
  547. package/styles/table/_mixins.scss +20 -2
  548. package/styles/tabs/tab/_configuration.scss +7 -49
  549. package/styles/tabs/tab/_core.scss +27 -32
  550. package/styles/tabs/tab/_token-utils.scss +30 -0
  551. package/styles/tabs/tab/index.scss +1 -0
  552. package/styles/tabs/tab/tab.scss +87 -44
  553. package/styles/tabs/tab-bar/_configuration.scss +2 -5
  554. package/styles/tabs/tab-bar/_core.scss +26 -9
  555. package/styles/tabs/tab-bar/_token-utils.scss +30 -0
  556. package/styles/tabs/tab-bar/index.scss +2 -1
  557. package/styles/tabs/tab-bar/tab-bar.scss +68 -34
  558. package/styles/toast/_mixins.scss +1 -1
  559. package/styles/toast/toast.scss +0 -2
  560. package/styles/typography/forge-typography.scss +5 -2
  561. package/dist/button/forge-button.css +0 -6
  562. package/dist/esm/chunks/chunk.2LIWNFQK.js +0 -7
  563. package/dist/esm/chunks/chunk.3X4N4ZPY.js +0 -7
  564. package/dist/esm/chunks/chunk.3X4N4ZPY.js.map +0 -7
  565. package/dist/esm/chunks/chunk.436MTO6R.js +0 -7
  566. package/dist/esm/chunks/chunk.436MTO6R.js.map +0 -7
  567. package/dist/esm/chunks/chunk.4CXLGEJO.js +0 -7
  568. package/dist/esm/chunks/chunk.4CXLGEJO.js.map +0 -7
  569. package/dist/esm/chunks/chunk.7L66GZDN.js +0 -7
  570. package/dist/esm/chunks/chunk.7PPBXNAD.js +0 -7
  571. package/dist/esm/chunks/chunk.7PPBXNAD.js.map +0 -7
  572. package/dist/esm/chunks/chunk.A3ZDCBLA.js +0 -7
  573. package/dist/esm/chunks/chunk.A3ZDCBLA.js.map +0 -7
  574. package/dist/esm/chunks/chunk.CMRVP4EA.js +0 -7
  575. package/dist/esm/chunks/chunk.CZEF72BG.js +0 -12
  576. package/dist/esm/chunks/chunk.CZEF72BG.js.map +0 -7
  577. package/dist/esm/chunks/chunk.D5ZHKPCL.js +0 -7
  578. package/dist/esm/chunks/chunk.D5ZHKPCL.js.map +0 -7
  579. package/dist/esm/chunks/chunk.DLQSINSS.js +0 -7
  580. package/dist/esm/chunks/chunk.DLQSINSS.js.map +0 -7
  581. package/dist/esm/chunks/chunk.G6JWSERI.js +0 -7
  582. package/dist/esm/chunks/chunk.G6JWSERI.js.map +0 -7
  583. package/dist/esm/chunks/chunk.GO5A4GKZ.js +0 -7
  584. package/dist/esm/chunks/chunk.GO5A4GKZ.js.map +0 -7
  585. package/dist/esm/chunks/chunk.GWIXDVIA.js +0 -7
  586. package/dist/esm/chunks/chunk.GWIXDVIA.js.map +0 -7
  587. package/dist/esm/chunks/chunk.HGH6SSHZ.js +0 -7
  588. package/dist/esm/chunks/chunk.HGH6SSHZ.js.map +0 -7
  589. package/dist/esm/chunks/chunk.HJ23XQDJ.js +0 -7
  590. package/dist/esm/chunks/chunk.HJ23XQDJ.js.map +0 -7
  591. package/dist/esm/chunks/chunk.I5SFCLDD.js +0 -7
  592. package/dist/esm/chunks/chunk.IURDWGLD.js +0 -7
  593. package/dist/esm/chunks/chunk.IURDWGLD.js.map +0 -7
  594. package/dist/esm/chunks/chunk.JCO4M4PF.js +0 -7
  595. package/dist/esm/chunks/chunk.LNLO36U6.js +0 -7
  596. package/dist/esm/chunks/chunk.LV7XF22P.js +0 -7
  597. package/dist/esm/chunks/chunk.LV7XF22P.js.map +0 -7
  598. package/dist/esm/chunks/chunk.MLTEGJH6.js +0 -7
  599. package/dist/esm/chunks/chunk.MWWY5TX5.js +0 -7
  600. package/dist/esm/chunks/chunk.MWWY5TX5.js.map +0 -7
  601. package/dist/esm/chunks/chunk.O5GE3FFV.js +0 -7
  602. package/dist/esm/chunks/chunk.O5GE3FFV.js.map +0 -7
  603. package/dist/esm/chunks/chunk.OQ75YGB6.js +0 -7
  604. package/dist/esm/chunks/chunk.PCOOIP2H.js +0 -7
  605. package/dist/esm/chunks/chunk.PCOOIP2H.js.map +0 -7
  606. package/dist/esm/chunks/chunk.PDICDA2V.js +0 -7
  607. package/dist/esm/chunks/chunk.PDICDA2V.js.map +0 -7
  608. package/dist/esm/chunks/chunk.Q7BWJCT5.js +0 -7
  609. package/dist/esm/chunks/chunk.TSH7BTC3.js +0 -7
  610. package/dist/esm/chunks/chunk.U5XNDTSZ.js +0 -7
  611. package/dist/esm/chunks/chunk.UAKQY7QB.js +0 -7
  612. package/dist/esm/chunks/chunk.UAKQY7QB.js.map +0 -7
  613. package/dist/esm/chunks/chunk.UAVC4YLD.js +0 -7
  614. package/dist/esm/chunks/chunk.URFSXQKR.js +0 -7
  615. package/dist/esm/chunks/chunk.V6443MP3.js +0 -7
  616. package/dist/esm/chunks/chunk.V6443MP3.js.map +0 -7
  617. package/dist/esm/chunks/chunk.VAAID3SH.js +0 -7
  618. package/dist/esm/chunks/chunk.VAAID3SH.js.map +0 -7
  619. package/dist/esm/chunks/chunk.VPNDAKM3.js +0 -7
  620. package/dist/esm/chunks/chunk.VPNDAKM3.js.map +0 -7
  621. package/dist/esm/chunks/chunk.WCTSXMGU.js +0 -7
  622. package/dist/esm/chunks/chunk.WCTSXMGU.js.map +0 -7
  623. package/dist/esm/chunks/chunk.WOMYKBUG.js +0 -12
  624. package/dist/esm/chunks/chunk.WOMYKBUG.js.map +0 -7
  625. package/dist/esm/chunks/chunk.WVGIT7F7.js +0 -7
  626. package/dist/esm/chunks/chunk.WVGIT7F7.js.map +0 -7
  627. package/dist/esm/chunks/chunk.YOXZOPAC.js +0 -7
  628. package/dist/esm/chunks/chunk.YOXZOPAC.js.map +0 -7
  629. package/dist/esm/chunks/chunk.YP2NHWIW.js +0 -7
  630. package/dist/esm/chunks/chunk.YPA27RX7.js +0 -7
  631. package/dist/esm/chunks/chunk.YXXKPT6P.js +0 -7
  632. package/dist/esm/chunks/chunk.ZMUDT5UK.js +0 -7
  633. package/dist/esm/chunks/chunk.ZMUDT5UK.js.map +0 -7
  634. package/dist/icon-button/forge-icon-button.css +0 -6
  635. package/esm/core/utils/a11y-utils.d.ts +0 -32
  636. package/esm/core/utils/a11y-utils.js +0 -111
  637. package/styles/button/_button-base.scss +0 -183
  638. package/styles/button/_button-filled-theme.scss +0 -60
  639. package/styles/button/_button-filled.scss +0 -71
  640. package/styles/button/_button-outlined-theme.scss +0 -175
  641. package/styles/button/_button-outlined.scss +0 -76
  642. package/styles/button/_button-protected-theme.scss +0 -60
  643. package/styles/button/_button-protected.scss +0 -88
  644. package/styles/button/_button-ripple.scss +0 -69
  645. package/styles/button/_button-shared-theme.scss +0 -447
  646. package/styles/button/_button-text-theme.scss +0 -60
  647. package/styles/button/_button-text.scss +0 -57
  648. package/styles/button/_button.mixins.scss +0 -148
  649. package/styles/button/_mixins.scss +0 -183
  650. package/styles/checkbox/_checkbox-custom-properties.scss +0 -11
  651. package/styles/checkbox/_checkbox-theme.scss +0 -577
  652. package/styles/checkbox/_checkbox.mixins.scss +0 -595
  653. package/styles/icon-button/_mixins.scss +0 -345
  654. package/styles/icon-button/_variables.scss +0 -42
  655. /package/dist/esm/chunks/{chunk.4USQ2AP6.js.map → chunk.2MSL7CYM.js.map} +0 -0
  656. /package/dist/esm/chunks/{chunk.HDO3WRH7.js.map → chunk.3HCYRDRI.js.map} +0 -0
  657. /package/dist/esm/chunks/{chunk.UVJFHSMF.js.map → chunk.3R4BUIQP.js.map} +0 -0
  658. /package/dist/esm/chunks/{chunk.37JFBP4X.js.map → chunk.3ZPSN2QG.js.map} +0 -0
  659. /package/dist/esm/chunks/{chunk.HKSXC5VK.js.map → chunk.5N4N6DL6.js.map} +0 -0
  660. /package/dist/esm/chunks/{chunk.AQ7ROWO4.js.map → chunk.5PG6WIIX.js.map} +0 -0
  661. /package/dist/esm/chunks/{chunk.C7VEJINB.js.map → chunk.675V42JS.js.map} +0 -0
  662. /package/dist/esm/chunks/{chunk.OQAD6MFL.js.map → chunk.7ZROQ6D3.js.map} +0 -0
  663. /package/dist/esm/chunks/{chunk.W7H2ZYNR.js.map → chunk.AMLT6XJP.js.map} +0 -0
  664. /package/dist/esm/chunks/{chunk.TCFKFKZW.js.map → chunk.AMZZKEAE.js.map} +0 -0
  665. /package/dist/esm/chunks/{chunk.DH76CMUT.js.map → chunk.APPY5AYL.js.map} +0 -0
  666. /package/dist/esm/chunks/{chunk.7M4HRJYP.js.map → chunk.ARQMMZJL.js.map} +0 -0
  667. /package/dist/esm/chunks/{chunk.QNVVUUNQ.js.map → chunk.AUBOJZQ7.js.map} +0 -0
  668. /package/dist/esm/chunks/{chunk.RXLORASN.js.map → chunk.BB4UF5RX.js.map} +0 -0
  669. /package/dist/esm/chunks/{chunk.NDJZYFRT.js.map → chunk.BTXY3XMJ.js.map} +0 -0
  670. /package/dist/esm/chunks/{chunk.AY43NTAK.js.map → chunk.DTLZOIUQ.js.map} +0 -0
  671. /package/dist/esm/chunks/{chunk.PLNLLKP2.js.map → chunk.FLWNOP42.js.map} +0 -0
  672. /package/dist/esm/chunks/{chunk.IJ2I25V3.js.map → chunk.FXIWCHLW.js.map} +0 -0
  673. /package/dist/esm/chunks/{chunk.6VSFLBZF.js.map → chunk.G73KL7P2.js.map} +0 -0
  674. /package/dist/esm/chunks/{chunk.PDSOXEMY.js.map → chunk.GNDKQPDV.js.map} +0 -0
  675. /package/dist/esm/chunks/{chunk.RWUJGZ3R.js.map → chunk.HAKF2T2D.js.map} +0 -0
  676. /package/dist/esm/chunks/{chunk.ZYVXIP42.js.map → chunk.HDG2GHKC.js.map} +0 -0
  677. /package/dist/esm/chunks/{chunk.EY37FYZ4.js.map → chunk.HOLCNJXC.js.map} +0 -0
  678. /package/dist/esm/chunks/{chunk.DQVYB55P.js.map → chunk.HRRJIFC5.js.map} +0 -0
  679. /package/dist/esm/chunks/{chunk.WK2L7BPJ.js.map → chunk.IDMDBMBR.js.map} +0 -0
  680. /package/dist/esm/chunks/{chunk.WJXDDQUK.js.map → chunk.IHAHJPMB.js.map} +0 -0
  681. /package/dist/esm/chunks/{chunk.DABGA7I6.js.map → chunk.IMLJD35R.js.map} +0 -0
  682. /package/dist/esm/chunks/{chunk.66X366TV.js.map → chunk.IT7XPDAV.js.map} +0 -0
  683. /package/dist/esm/chunks/{chunk.RNUGVHZF.js.map → chunk.JVLJH6PR.js.map} +0 -0
  684. /package/dist/esm/chunks/{chunk.MLTEGJH6.js.map → chunk.KPJWP77R.js.map} +0 -0
  685. /package/dist/esm/chunks/{chunk.Z6AFASMO.js.map → chunk.KV5IKYG2.js.map} +0 -0
  686. /package/dist/esm/chunks/{chunk.7UJAI6P2.js.map → chunk.LCR4YH3O.js.map} +0 -0
  687. /package/dist/esm/chunks/{chunk.2WSXSOYB.js.map → chunk.LOG6GQOK.js.map} +0 -0
  688. /package/dist/esm/chunks/{chunk.VDGJ4UDL.js.map → chunk.MKJCHUJH.js.map} +0 -0
  689. /package/dist/esm/chunks/{chunk.IXGXASHQ.js.map → chunk.MWYQRG5W.js.map} +0 -0
  690. /package/dist/esm/chunks/{chunk.CBIHNCT5.js.map → chunk.NUMKGUCK.js.map} +0 -0
  691. /package/dist/esm/chunks/{chunk.R6NA7SV2.js.map → chunk.O6V3YNMO.js.map} +0 -0
  692. /package/dist/esm/chunks/{chunk.CQQSOTZ5.js.map → chunk.QLCVRJ3Q.js.map} +0 -0
  693. /package/dist/esm/chunks/{chunk.E4TAHUQO.js.map → chunk.R6LQBI42.js.map} +0 -0
  694. /package/dist/esm/chunks/{chunk.FK6NNHXH.js.map → chunk.RES7WDKH.js.map} +0 -0
  695. /package/dist/esm/chunks/{chunk.2LIWNFQK.js.map → chunk.RP674CRC.js.map} +0 -0
  696. /package/dist/esm/chunks/{chunk.SEWAMWO6.js.map → chunk.SIRXAA3O.js.map} +0 -0
  697. /package/dist/esm/chunks/{chunk.WWTQAN4G.js.map → chunk.SLJ6HDK7.js.map} +0 -0
  698. /package/dist/esm/chunks/{chunk.RBFGJH3C.js.map → chunk.TU74SREL.js.map} +0 -0
  699. /package/dist/esm/chunks/{chunk.4JF54GDJ.js.map → chunk.URJQNB3S.js.map} +0 -0
  700. /package/dist/esm/chunks/{chunk.C2MQN7MI.js.map → chunk.V24M62MC.js.map} +0 -0
  701. /package/dist/esm/chunks/{chunk.R2KOYHIZ.js.map → chunk.VO6YJCEU.js.map} +0 -0
  702. /package/dist/esm/chunks/{chunk.C5ZUGOOC.js.map → chunk.W2LN45WY.js.map} +0 -0
  703. /package/dist/esm/chunks/{chunk.HBCDD25D.js.map → chunk.XEFWZKHQ.js.map} +0 -0
  704. /package/dist/esm/chunks/{chunk.MHU452GM.js.map → chunk.XLL7L2UB.js.map} +0 -0
  705. /package/dist/esm/chunks/{chunk.YPA27RX7.js.map → chunk.XYAZVLPR.js.map} +0 -0
  706. /package/dist/esm/chunks/{chunk.AHAARGYM.js.map → chunk.YAERJVPL.js.map} +0 -0
  707. /package/dist/esm/chunks/{chunk.7L66GZDN.js.map → chunk.YBZK6LJZ.js.map} +0 -0
  708. /package/dist/esm/chunks/{chunk.CMRVP4EA.js.map → chunk.YKIBREM5.js.map} +0 -0
  709. /package/dist/esm/chunks/{chunk.ZREXLSAJ.js.map → chunk.Z5ZLKM7W.js.map} +0 -0
@@ -4,68 +4,267 @@
4
4
  * License: Apache-2.0
5
5
  */
6
6
  import { __decorate } from "tslib";
7
- import { CustomElement, attachShadowTemplate, coerceBoolean, FoundationProperty } from '@tylertech/forge-core';
7
+ import { CustomElement, FoundationProperty, attachShadowTemplate, coerceBoolean, isDefined, isString, toggleAttribute } from '@tylertech/forge-core';
8
+ import { internals } from '../constants';
9
+ import { BaseNullableFormComponent } from '../core/base/base-nullable-form-component';
10
+ import { FocusIndicatorComponent } from '../focus-indicator/focus-indicator';
11
+ import { StateLayerComponent } from '../state-layer/state-layer';
12
+ import { CheckboxAdapter } from './checkbox-adapter';
8
13
  import { CHECKBOX_CONSTANTS } from './checkbox-constants';
9
14
  import { CheckboxFoundation } from './checkbox-foundation';
10
- import { CheckboxAdapter } from './checkbox-adapter';
11
- import { BaseComponent } from '../core/base/base-component';
12
- const template = '<template><div class=\"forge-checkbox-wrapper forge-form-field\" part=\"root\"><div class=\"mdc-checkbox\" part=\"container\"><slot name=\"input\"></slot><div class=\"mdc-checkbox__background\" part=\"background\"><svg class=\"mdc-checkbox__checkmark\" viewBox=\"0 0 24 24\" part=\"checkmark-svg\"><path class=\"mdc-checkbox__checkmark-path\" fill=\"none\" d=\"M1.73,12.91 8.1,19.28 22.79,4.59\" part=\"checkmark-path\"></path></svg><div class=\"mdc-checkbox__mixedmark\" part=\"mixedmark\"></div></div><div class=\"mdc-checkbox__ripple\" part=\"ripple-container\"></div></div><slot name=\"label\"></slot></div></template>';
13
- const styles = '.mdc-checkbox{padding:calc((40px - 18px)/ 2);padding:calc((var(--mdc-checkbox-ripple-size,40px) - 18px)/ 2);margin:calc((40px - 40px)/ 2);margin:calc((var(--mdc-checkbox-ripple-size,40px) - var(--mdc-checkbox-ripple-size,40px))/ 2)}.mdc-checkbox .mdc-checkbox__ripple::after,.mdc-checkbox .mdc-checkbox__ripple::before{background-color:#000;background-color:var(--mdc-ripple-color,var(--mdc-theme-on-surface,#000))}.mdc-checkbox.mdc-ripple-surface--hover .mdc-checkbox__ripple::before,.mdc-checkbox:hover .mdc-checkbox__ripple::before{opacity:.04;opacity:var(--mdc-ripple-hover-opacity, .04)}.mdc-checkbox.mdc-ripple-upgraded--background-focused .mdc-checkbox__ripple::before,.mdc-checkbox:not(.mdc-ripple-upgraded):focus .mdc-checkbox__ripple::before{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.12;opacity:var(--mdc-ripple-focus-opacity, .12)}.mdc-checkbox:not(.mdc-ripple-upgraded) .mdc-checkbox__ripple::after{-webkit-transition:opacity 150ms linear;transition:opacity 150ms linear}.mdc-checkbox:not(.mdc-ripple-upgraded):active .mdc-checkbox__ripple::after{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.12;opacity:var(--mdc-ripple-press-opacity, .12)}.mdc-checkbox.mdc-ripple-upgraded{--mdc-ripple-fg-opacity:var(--mdc-ripple-press-opacity, 0.12)}.mdc-checkbox.mdc-checkbox--selected .mdc-checkbox__ripple::after,.mdc-checkbox.mdc-checkbox--selected .mdc-checkbox__ripple::before{background-color:#3d5afe;background-color:var(--forge-theme-tertiary,#3d5afe)}.mdc-checkbox.mdc-checkbox--selected.mdc-ripple-surface--hover .mdc-checkbox__ripple::before,.mdc-checkbox.mdc-checkbox--selected:hover .mdc-checkbox__ripple::before{opacity:.04;opacity:var(--mdc-ripple-hover-opacity, .04)}.mdc-checkbox.mdc-checkbox--selected.mdc-ripple-upgraded--background-focused .mdc-checkbox__ripple::before,.mdc-checkbox.mdc-checkbox--selected:not(.mdc-ripple-upgraded):focus .mdc-checkbox__ripple::before{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.12;opacity:var(--mdc-ripple-focus-opacity, .12)}.mdc-checkbox.mdc-checkbox--selected:not(.mdc-ripple-upgraded) .mdc-checkbox__ripple::after{-webkit-transition:opacity 150ms linear;transition:opacity 150ms linear}.mdc-checkbox.mdc-checkbox--selected:not(.mdc-ripple-upgraded):active .mdc-checkbox__ripple::after{-webkit-transition-duration:75ms;transition-duration:75ms;opacity:.12;opacity:var(--mdc-ripple-press-opacity, .12)}.mdc-checkbox.mdc-checkbox--selected.mdc-ripple-upgraded{--mdc-ripple-fg-opacity:var(--mdc-ripple-press-opacity, 0.12)}.mdc-checkbox.mdc-ripple-upgraded--background-focused.mdc-checkbox--selected .mdc-checkbox__ripple::after,.mdc-checkbox.mdc-ripple-upgraded--background-focused.mdc-checkbox--selected .mdc-checkbox__ripple::before{background-color:#3d5afe;background-color:var(--forge-theme-tertiary,#3d5afe)}.mdc-checkbox .mdc-checkbox__background{top:calc((40px - 18px)/ 2);top:calc((var(--mdc-checkbox-ripple-size,40px) - 18px)/ 2);left:calc((40px - 18px)/ 2);left:calc((var(--mdc-checkbox-ripple-size,40px) - 18px)/ 2)}.mdc-checkbox ::slotted(input[type=checkbox]){top:calc((40px - 40px)/ 2);top:calc((var(--mdc-checkbox-ripple-size,40px) - var(--mdc-checkbox-ripple-size,40px))/ 2);right:calc((40px - 40px)/ 2);right:calc((var(--mdc-checkbox-ripple-size,40px) - var(--mdc-checkbox-ripple-size,40px))/ 2);left:calc((40px - 40px)/ 2);left:calc((var(--mdc-checkbox-ripple-size,40px) - var(--mdc-checkbox-ripple-size,40px))/ 2);width:40px;width:var(--mdc-checkbox-ripple-size,40px);height:40px;height:var(--mdc-checkbox-ripple-size,40px)}.mdc-checkbox.forge-checkbox--enabled:not(.forge-checkbox--checked):not(.forge-checkbox--indeterminate) .mdc-checkbox__background{border-color:#000;border-color:var(--mdc-theme-text-secondary-on-background,#000);background-color:transparent}.mdc-checkbox.forge-checkbox--enabled.forge-checkbox--checked .mdc-checkbox__background,.mdc-checkbox.forge-checkbox--enabled.forge-checkbox--indeterminate .mdc-checkbox__background{border-color:#3d5afe;border-color:var(--mdc-checkbox-checked-color,var(--forge-theme-tertiary,#3d5afe));background-color:#3d5afe;background-color:var(--mdc-checkbox-checked-color,var(--forge-theme-tertiary,#3d5afe))}@-webkit-keyframes mdc-checkbox-fade-in-background-FF000000FF3D5AFE00000000FF3D5AFE{0%{border-color:#000;border-color:var(--mdc-theme-text-secondary-on-background,#000);background-color:transparent}50%{border-color:#3d5afe;border-color:var(--mdc-checkbox-checked-color,var(--forge-theme-tertiary,#3d5afe));background-color:#3d5afe;background-color:var(--mdc-checkbox-checked-color,var(--forge-theme-tertiary,#3d5afe))}}@keyframes mdc-checkbox-fade-in-background-FF000000FF3D5AFE00000000FF3D5AFE{0%{border-color:#000;border-color:var(--mdc-theme-text-secondary-on-background,#000);background-color:transparent}50%{border-color:#3d5afe;border-color:var(--mdc-checkbox-checked-color,var(--forge-theme-tertiary,#3d5afe));background-color:#3d5afe;background-color:var(--mdc-checkbox-checked-color,var(--forge-theme-tertiary,#3d5afe))}}@-webkit-keyframes mdc-checkbox-fade-out-background-FF000000FF3D5AFE00000000FF3D5AFE{0%,80%{border-color:#3d5afe;border-color:var(--mdc-checkbox-checked-color,var(--forge-theme-tertiary,#3d5afe));background-color:#3d5afe;background-color:var(--mdc-checkbox-checked-color,var(--forge-theme-tertiary,#3d5afe))}100%{border-color:#000;border-color:var(--mdc-theme-text-secondary-on-background,#000);background-color:transparent}}@keyframes mdc-checkbox-fade-out-background-FF000000FF3D5AFE00000000FF3D5AFE{0%,80%{border-color:#3d5afe;border-color:var(--mdc-checkbox-checked-color,var(--forge-theme-tertiary,#3d5afe));background-color:#3d5afe;background-color:var(--mdc-checkbox-checked-color,var(--forge-theme-tertiary,#3d5afe))}100%{border-color:#000;border-color:var(--mdc-theme-text-secondary-on-background,#000);background-color:transparent}}.mdc-checkbox.mdc-checkbox--anim-unchecked-checked.forge-checkbox--enabled .mdc-checkbox__background,.mdc-checkbox.mdc-checkbox--anim-unchecked-indeterminate.forge-checkbox--enabled .mdc-checkbox__background{-webkit-animation-name:mdc-checkbox-fade-in-background-FF000000FF3D5AFE00000000FF3D5AFE;animation-name:mdc-checkbox-fade-in-background-FF000000FF3D5AFE00000000FF3D5AFE}.mdc-checkbox.mdc-checkbox--anim-checked-unchecked.forge-checkbox--enabled .mdc-checkbox__background,.mdc-checkbox.mdc-checkbox--anim-indeterminate-unchecked.forge-checkbox--enabled .mdc-checkbox__background{-webkit-animation-name:mdc-checkbox-fade-out-background-FF000000FF3D5AFE00000000FF3D5AFE;animation-name:mdc-checkbox-fade-out-background-FF000000FF3D5AFE00000000FF3D5AFE}.mdc-checkbox.mdc-checkbox--disabled:not(.forge-checkbox--checked):not(.forge-checkbox--indeterminate) .mdc-checkbox__background{border-color:#000;border-color:var(--forge-theme-form-field-icon-disabled-on-background,#000);background-color:transparent}.mdc-checkbox.mdc-checkbox--disabled.forge-checkbox--checked .mdc-checkbox__background,.mdc-checkbox.mdc-checkbox--disabled.forge-checkbox--indeterminate .mdc-checkbox__background{border-color:transparent;background-color:#000;background-color:var(--forge-theme-form-field-icon-disabled-on-background,#000)}.mdc-checkbox.forge-checkbox--enabled .mdc-checkbox__background .mdc-checkbox__checkmark{color:#fff;color:var(--mdc-theme-text-primary-on-dark,#fff)}.mdc-checkbox.forge-checkbox--enabled .mdc-checkbox__background .mdc-checkbox__mixedmark{border-color:#fff;border-color:var(--mdc-theme-text-primary-on-dark,#fff)}.mdc-checkbox.mdc-checkbox--disabled .mdc-checkbox__background .mdc-checkbox__checkmark{color:#fff;color:var(--mdc-theme-text-primary-on-dark,#fff)}.mdc-checkbox.mdc-checkbox--disabled .mdc-checkbox__background .mdc-checkbox__mixedmark{border-color:#fff;border-color:var(--mdc-theme-text-primary-on-dark,#fff)}@-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}';
15
+ const template = '<template><div class=\"forge-checkbox\" part=\"checkbox\"><div id=\"container\" class=\"container\"><slot name=\"input\"><input id=\"input\" class=\"input\" type=\"checkbox\"></slot><div class=\"background\" part=\"background\"><svg class=\"icon icon--checked\" aria-hidden=\"true\" viewBox=\"0 0 24 24\" part=\"checkmark\"><path d=\"M1.73,12.91 8.1,19.28 22.79,4.59\"></path></svg> <svg class=\"icon icon--indeterminate\" aria-hidden=\"true\" viewBox=\"0 0 24 24\" part=\"mixedmark\"><line x1=\"2\" y1=\"12\" x2=\"22\" y2=\"12\"></line></svg><forge-focus-indicator target=\"container\" exportparts=\"indicator:focus-indicator\"></forge-focus-indicator></div><forge-state-layer target=\"container\" exportparts=\"surface:state-layer\"></forge-state-layer></div><label id=\"label\" for=\"input\" class=\"label\" part=\"label\"><slot></slot></label></div></template>';
16
+ const styles = ':host{display:inline-block}:host([hidden]){display:none}.forge-checkbox{--_checkbox-primary-color:var(--forge-checkbox-primary-color, var(--forge-theme-tertiary, #3d5afe));--_checkbox-size:var(--forge-checkbox-size, 16px);--_checkbox-border-width:var(--forge-checkbox-border-width, var(--forge-border-medium, 2px));--_checkbox-icon-color:var(--forge-checkbox-icon-color, var(--forge-theme-on-tertiary, #ffffff));--_checkbox-state-layer-size:var(--forge-checkbox-state-layer-size, 40px);--_checkbox-state-layer-dense-size:var(--forge-checkbox-state-layer-size, 24px);--_checkbox-background-color:var(--forge-checkbox-background-color, var(--forge-theme-surface, #ffffff));--_checkbox-width:var(--forge-checkbox-width, var(--_checkbox-size));--_checkbox-height:var(--forge-checkbox-height, var(--_checkbox-size));--_checkbox-unchecked-border-width:var(--forge-checkbox-unchecked-border-width, var(--_checkbox-border-width));--_checkbox-unchecked-border-color:var(--forge-checkbox-unchecked-border-color, var(--forge-theme-surface-container-high, #9e9e9e));--_checkbox-shape:var(--forge-checkbox-shape, var(--forge-shape-small, 2px));--_checkbox-elevation:var(--forge-checkbox-elevation, 0px 0px 0px 0px rgba(0, 0, 0, 0.2), 0px 0px 0px 0px rgba(0, 0, 0, 0.14), 0px 0px 0px 0px rgba(0, 0, 0, 0.12));--_checkbox-checked-background-color:var(--forge-checkbox-checked-background-color, var(--_checkbox-primary-color));--_checkbox-checked-border-width:var(--forge-checkbox-checked-border-width, var(--_checkbox-border-width));--_checkbox-checked-border-color:var(--forge-checkbox-checked-border-color, var(--_checkbox-checked-background-color));--_checkbox-icon-checked-color:var(--forge-checkbox-icon-checked-color, var(--_checkbox-icon-color));--_checkbox-icon-indeterminate-color:var(--forge-checkbox-icon-indeterminate-color, var(--_checkbox-icon-color));--_checkbox-icon-stroke-width:var(--forge-checkbox-icon-stroke-width, 4px);--_checkbox-gap:var(--forge-checkbox-gap, 0);--_checkbox-justify:var(--forge-switch-justify, space-between);--_checkbox-direction:var(--forge-switch-direction, initial);--_checkbox-state-layer-width:var(--forge-checkbox-state-layer-width, var(--_checkbox-state-layer-size));--_checkbox-state-layer-height:var(--forge-checkbox-state-layer-height, var(--_checkbox-state-layer-size));--_checkbox-state-layer-checked-color:var(--forge-checkbox-state-layer-checked-color, var(--_checkbox-primary-color));--_checkbox-state-layer-unchecked-color:var(--forge-state-layer-state-layer-unchecked-color, var(--_state-layer-color));--_checkbox-state-layer-shape:var(--forge-checkbox-state-layer-shape, var(--forge-shape-full, 9999px));--_checkbox-state-layer-dense-width:var(--forge-checkbox-state-layer-dense-width, var(--_checkbox-state-layer-dense-size));--_checkbox-state-layer-dense-height:var(--forge-checkbox-state-layer-dense-height, var(--_checkbox-state-layer-dense-size));--_checkbox-disabled-opacity:var(--forge-checkbox-disabled-opacity, 0.38);--_checkbox-animation-duration:var(--forge-checkbox-animation-duration, var(--forge-animation-duration-short2, 100ms));--_checkbox-background-animation-timing:var(--forge-checkbox-animation-duration, var(--forge-animation-easing-standard, cubic-bezier(0.2, 0, 0, 1)));--_checkbox-icon-animation-timing:var(--forge-checkbox-animation-duration, var(--forge-animation-easing-emphasized-accelerate, cubic-bezier(0.3, 0, 0.8, 0.15)))}.forge-checkbox{position:relative;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:var(--_checkbox-direction);flex-shrink:0;-webkit-box-align:center;align-items:center;-webkit-box-pack:var(--_checkbox-justify);justify-content:var(--_checkbox-justify);gap:var(--_checkbox-gap);display:-webkit-box;display:flex}.forge-checkbox .container{position:relative;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;display:-webkit-box;display:flex;border-radius:var(--_checkbox-state-layer-shape);inline-size:var(--_checkbox-state-layer-width);block-size:var(--_checkbox-state-layer-height);cursor:pointer}.forge-checkbox .input{position:absolute;z-index:1;-webkit-appearance:none;-moz-appearance:none;appearance:none;outline:0;margin:0;inline-size:100%;block-size:100%;cursor:unset}.forge-checkbox .background{position:relative;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;display:-webkit-box;display:flex;-webkit-transition-property:background-color,border-width,border-color;transition-property:background-color,border-width,border-color;-webkit-transition-duration:var(--_checkbox-animation-duration);transition-duration:var(--_checkbox-animation-duration);-webkit-transition-timing-function:var(--_checkbox-background-animation-timing);transition-timing-function:var(--_checkbox-background-animation-timing);-webkit-box-shadow:var(--_checkbox-elevation);box-shadow:var(--_checkbox-elevation);border-style:solid;border-width:var(--_checkbox-unchecked-border-width);border-color:var(--_checkbox-unchecked-border-color);border-radius:var(--_checkbox-shape);-webkit-box-sizing:border-box;box-sizing:border-box;block-size:var(--_checkbox-height);inline-size:var(--_checkbox-width);background-color:var(--_checkbox-background-color)}.forge-checkbox .icon{position:absolute;-webkit-transition-property:stroke-dashoffset;transition-property:stroke-dashoffset;-webkit-transition-duration:var(--_checkbox-animation-duration);transition-duration:var(--_checkbox-animation-duration);-webkit-transition-timing-function:var(--_checkbox-icon-animation-timing);transition-timing-function:var(--_checkbox-icon-animation-timing);fill:none;stroke-width:var(--_checkbox-icon-stroke-width)}.forge-checkbox .icon--checked{stroke:var(--_checkbox-icon-checked-color);stroke-dasharray:30;-webkit-transition-delay:0s;transition-delay:0s;stroke-dashoffset:30}.forge-checkbox .icon--indeterminate{stroke:var(--_checkbox-icon-indeterminate-color);stroke-dasharray:20;-webkit-transition-delay:0s;transition-delay:0s;stroke-dashoffset:20}.forge-checkbox .label{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:var(--forge-typography-label-font-family, var(--forge-typography-font-family, \"Roboto\", sans-serif));font-size:var(--forge-typography-label-font-size, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-label-font-size-scale, .75)));font-weight:var(--forge-typography-label-font-weight,400);line-height:var(--forge-typography-label-line-height, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-label-line-height-scale, 1.25)));letter-spacing:var(--forge-typography-label-letter-spacing, .0357142857em);text-transform:var(--forge-typography-label-text-transform,inherit);-webkit-text-decoration:var(--forge-typography-label-text-decoration,inherit);text-decoration:var(--forge-typography-label-text-decoration,inherit)}.forge-checkbox .label:empty{display:none}.forge-checkbox ::slotted([slot=input]){position:absolute;z-index:1;-webkit-appearance:none;-moz-appearance:none;appearance:none;outline:0;margin:0;inline-size:100%;block-size:100%;cursor:unset}:host([checked]) .background{border-style:solid;border-width:var(--_checkbox-checked-border-width);border-color:var(--_checkbox-checked-border-color);background-color:var(--_checkbox-checked-background-color)}:host([checked]) .icon--checked{-webkit-transition-delay:var(--_checkbox-animation-duration);transition-delay:var(--_checkbox-animation-duration);stroke-dashoffset:0}:host([checked]) .icon--checked:dir(rtl){stroke-dashoffset:60}:host([checked]) .icon--indeterminate{-webkit-transition-delay:0s;transition-delay:0s;stroke-dashoffset:20}:host([checked]) forge-state-layer{--forge-state-layer-color:var(--_checkbox-state-layer-checked-color)}:host([indeterminate]) .background{border-style:solid;border-width:var(--_checkbox-checked-border-width);border-color:var(--_checkbox-checked-border-color);background-color:var(--_checkbox-checked-background-color)}:host([indeterminate]) .icon--checked{-webkit-transition-delay:0s;transition-delay:0s;stroke-dashoffset:30}:host([indeterminate]) .icon--indeterminate{-webkit-transition-delay:var(--_checkbox-animation-duration);transition-delay:var(--_checkbox-animation-duration);stroke-dashoffset:0}:host([indeterminate]) .icon--indeterminate:dir(rtl){stroke-dashoffset:40}:host([indeterminate]) forge-state-layer{--forge-state-layer-color:var(--_checkbox-state-layer-checked-color)}:host([dense]) .forge-checkbox .container{inline-size:var(--_checkbox-state-layer-dense-width);block-size:var(--_checkbox-state-layer-dense-height)}:host([disabled]) .forge-checkbox{opacity:var(--_checkbox-disabled-opacity)}:host([disabled]) .forge-checkbox .container{cursor:not-allowed}:host([readonly]) .forge-checkbox .container{cursor:not-allowed}@media (prefers-reduced-motion){.forge-checkbox{--_checkbox-animation-duration:var(--forge-checkbox-animation-duration, 0s)}}forge-state-layer{--forge-state-layer-color:var(--_checkbox-state-layer-unchecked-color)}forge-focus-indicator{--forge-focus-indicator-shape:0px;--forge-focus-indicator-outward-offset:8px}';
14
17
  /**
15
- * The custom element class behind the `<forge-checkbox>` element.
16
- *
17
18
  * @tag forge-checkbox
19
+ *
20
+ * @summary Checkboxes select single values for submission in a form.
21
+ *
22
+ * @description
23
+ * Use checkboxes to:
24
+ * - Select one or multiple items from a list.
25
+ * - Present a list containing sub-selections.
26
+ * - Turn an option on or off in desktop environment.
27
+ *
28
+ * @property {boolean} checked - Whether the checkbox is checked.
29
+ * @property {boolean} defaultChecked - Whether the checkbox is checked by default.
30
+ * @property {boolean} indeterminate - Toggles the indeterminate state. This does not affect whether the checkbox is checked or its form submission.
31
+ * @property {string} value - The value of the checkbox when checked.
32
+ * @property {boolean} disabled - Controls if the checkbix is disabled.
33
+ * @property {boolean} required = Controls if the checkbox is required.
34
+ * @property {boolean} readonly = Controls if the checkbox is readonly.
35
+ * @property {boolean} dense - The density state.
36
+ * @property {SwitchLabelPosition} labelPosition - Whether the label appears before or after the checkbox.
37
+ *
38
+ * @attribute {string} checked - Controls whether the checkbox is checked.
39
+ * @attribute {string} defaultChecked - Controls whether the checkbox is checked by default.
40
+ * @attribute {string} indeterminate - Controls the indeterminate state.
41
+ * @attribute {string} value - The value of the checkbox when checked.
42
+ * @attribute {string} disabled - Controls if the switch is disabled.
43
+ * @attribute {string} required - Controls if the switch is required.
44
+ * @attribute {string} readonly - Controls if the switch is readonly.
45
+ * @attribute {string} dense - Sets the density state.
46
+ * @attribute {string} label-position - Sets whether the label appears before or after the switch.
47
+ *
48
+ * @method {(force?: boolean) => void} toggle - Toggles whether the checkbox is is checked or forces a checked state.
49
+ *
50
+ * @event {Event} change - Dispatches when the checkbox is checked or unchecked.
51
+ *
52
+ * @cssproperty --forge-theme-tertiary - The primary color of the checkbox.
53
+ * @cssproperty --forge-theme-on-tertiary - The color of the checkmark and indeterminate mark.
54
+ * @cssproperty --forge-checkbox-primary-color - The primary color of the checkbox.
55
+ * @cssproperty --forge-checkbox-size - The inline and block size of the checkbox.
56
+ * @cssproperty --forge-checkbox-border-width - The width of the checkbox border.
57
+ * @cssproperty --forge-checkbox-state-layer-size - The inline and block size of the state layer.
58
+ * @cssproperty --forge-checkbox-state-layer-dense-size - The inline and block size of the state layer when dense.
59
+ * @cssproperty --forge-checkbox-background-color - The color of the checkbox background when unchecked and not indeterminate.
60
+ * @cssproperty --forge-checkbox-width - The inline size of the checkbox.
61
+ * @cssproperty --forge-checkbox-height - The block size of the checkbox.
62
+ * @cssproperty --forge-checkbox-unchecked-border-width - The width of the checkbox border when unchecked and not indeterminate.
63
+ * @cssproperty --forge-checkbox-unchecked-border-color - The color of the checkbox border when unchecked and not indeterminate.
64
+ * @cssproperty --forge-checkbox-shape - The shape of the checkbox.
65
+ * @cssproperty --forge-checkbox-elevation - The shadow of the checkbox.
66
+ * @cssproperty --forge-checkbox-gap - The space between the checkbox and label.
67
+ * @cssproperty --forge-checkbox-justify - How the checkbox and label are distributed along their main axis.
68
+ * @cssproperty --forge-checkbox-direction - Whether the checkbox and label are arranged along the inline or block axis.
69
+ * @cssproperty --forge-checkbox-checked-background-color - The color of the checkbox background when checked or indeterminate.
70
+ * @cssproperty --forge-checkbox-checked-border-width - The width of the checkbox border when checked or indeterminate.
71
+ * @cssproperty --forge-checkbox-checked-border-color - The color of the checkbox border when checked or indeterminate.
72
+ * @cssproperty --forge-checkbox-icon-color - The color of the checkmark and indeterminate mark.
73
+ * @cssproperty --forge-checkbox-icon-checked-color - The color of the checkmark mark.
74
+ * @cssproperty --forge-checkbox-icon-indeterminate-color - The color of the indeterminate mark.
75
+ * @cssproperty --forge-checkbox-icon-stroke-width - The stroke width of the checkmark and indeterminate marks.
76
+ * @cssproperty --forge-checkbox-state-layer-width - The inline size of the state layer.
77
+ * @cssproperty --forge-checkbox-state-layer-width - The inline size of the state layer.
78
+ * @cssproperty --forge-checkbox-state-layer-height - The block size of the state layer.
79
+ * @cssproperty --forge-checkbox-state-layer-checked-color - The color of the state layer when checked.
80
+ * @cssproperty --forge-checkbox-state-layer-unchecked-color - The color of the state layer when unchecked.
81
+ * @cssproperty --forge-checkbox-state-layer-shape - The shape of the state layer.
82
+ * @cssproperty --forge-checkbox-state-layer-dense-width - The inline size of the state layer when dense.
83
+ * @cssproperty --forge-checkbox-state-layer-dense-height - The block size of the state layer when dense.
84
+ * @cssproperty --forge-checkbox-disabled-opacity - The opacity when disabled.
85
+ * @cssproperty --forge-checkbox-animation-duration - The duration of animations.
86
+ * @cssproperty --forge-checkbox-background-animation-timing - The timing function of the background animations.
87
+ * @cssproperty --forge-checkbox-icon-animation-timing - The timing function of the checked and indeterminate icons animations.
88
+ *
89
+ * @csspart checkbox - Styles the checkbox container element.
90
+ * @csspart background - Styles the checkbox background element.
91
+ * @csspart checkmark - Styles the checkmark element.
92
+ * @csspart mixedmark - Styles the indeterminate mark element.
93
+ * @csspart label - Styles the label element.
94
+ * @csspart state-layer - Styles the state layer element.
95
+ * @csspart focus-indicator - Styles the focus indicator element.
18
96
  */
19
- let CheckboxComponent = class CheckboxComponent extends BaseComponent {
97
+ let CheckboxComponent = class CheckboxComponent extends BaseNullableFormComponent {
20
98
  static get observedAttributes() {
21
- return [CHECKBOX_CONSTANTS.attributes.DENSE];
99
+ return [
100
+ CHECKBOX_CONSTANTS.attributes.CHECKED,
101
+ CHECKBOX_CONSTANTS.attributes.DEFAULT_CHECKED,
102
+ CHECKBOX_CONSTANTS.attributes.INDETERMINATE,
103
+ CHECKBOX_CONSTANTS.attributes.VALUE,
104
+ CHECKBOX_CONSTANTS.attributes.DENSE,
105
+ CHECKBOX_CONSTANTS.attributes.DISABLED,
106
+ CHECKBOX_CONSTANTS.attributes.REQUIRED,
107
+ CHECKBOX_CONSTANTS.attributes.READONLY,
108
+ CHECKBOX_CONSTANTS.attributes.LABEL_POSITION
109
+ ];
110
+ }
111
+ get name() {
112
+ var _a;
113
+ return (_a = this.getAttribute('name')) !== null && _a !== void 0 ? _a : '';
114
+ }
115
+ set name(value) {
116
+ toggleAttribute(this, !!value, 'name', value !== null && value !== void 0 ? value : '');
117
+ }
118
+ get form() {
119
+ return this[internals].form;
120
+ }
121
+ get labels() {
122
+ return this[internals].labels;
123
+ }
124
+ get validity() {
125
+ this._foundation.syncValidity(this._hasCustomValidityError);
126
+ return this[internals].validity;
127
+ }
128
+ get validationMessage() {
129
+ this._foundation.syncValidity(this._hasCustomValidityError);
130
+ return this[internals].validationMessage;
131
+ }
132
+ get willValidate() {
133
+ return this[internals].willValidate;
22
134
  }
23
135
  constructor() {
24
136
  super();
25
- attachShadowTemplate(this, template, styles);
137
+ attachShadowTemplate(this, template, styles, true);
138
+ this[internals] = this.attachInternals();
26
139
  this._foundation = new CheckboxFoundation(new CheckboxAdapter(this));
27
140
  }
28
- async connectedCallback() {
29
- await this._ensureInputElement();
30
- this._foundation.connect();
141
+ connectedCallback() {
142
+ this._foundation.initialize();
31
143
  }
32
144
  attributeChangedCallback(name, oldValue, newValue) {
33
145
  switch (name) {
146
+ case CHECKBOX_CONSTANTS.attributes.CHECKED:
147
+ this.checked = coerceBoolean(newValue);
148
+ break;
149
+ case CHECKBOX_CONSTANTS.attributes.DEFAULT_CHECKED:
150
+ this.defaultChecked = coerceBoolean(newValue);
151
+ break;
152
+ case CHECKBOX_CONSTANTS.attributes.INDETERMINATE:
153
+ this.indeterminate = coerceBoolean(newValue);
154
+ break;
155
+ case CHECKBOX_CONSTANTS.attributes.VALUE:
156
+ this.value = newValue;
157
+ break;
34
158
  case CHECKBOX_CONSTANTS.attributes.DENSE:
35
159
  this.dense = coerceBoolean(newValue);
36
160
  break;
161
+ case CHECKBOX_CONSTANTS.attributes.DISABLED:
162
+ this.disabled = coerceBoolean(newValue);
163
+ break;
164
+ case CHECKBOX_CONSTANTS.attributes.REQUIRED:
165
+ this.required = coerceBoolean(newValue);
166
+ break;
167
+ case CHECKBOX_CONSTANTS.attributes.READONLY:
168
+ this.readonly = coerceBoolean(newValue);
169
+ break;
170
+ case CHECKBOX_CONSTANTS.attributes.LABEL_POSITION:
171
+ this.labelPosition = newValue;
172
+ break;
37
173
  }
38
174
  }
39
- disconnectedCallback() {
40
- this._foundation.disconnect();
41
- }
42
- async _ensureInputElement() {
43
- // Not using core function ensureChild because it was not selecting the input properly
44
- return new Promise(resolve => {
45
- const element = this.querySelector('input');
46
- if (element) {
47
- resolve(element);
48
- }
49
- const observer = new MutationObserver(changes => {
50
- const hasAddedNodes = changes.reduce((prev, curr) => prev + curr.addedNodes.length, 0) > 0;
51
- if (hasAddedNodes) {
52
- const foundElement = this.querySelector('input');
53
- if (foundElement) {
54
- observer.disconnect();
55
- resolve(foundElement);
56
- }
57
- }
58
- });
59
- observer.observe(this, { childList: true, subtree: true });
60
- });
175
+ setFormValue(value, state) {
176
+ this[internals].setFormValue(value, state);
177
+ if (state) {
178
+ const stateValue = isString(state) ? state : state[this.name];
179
+ this.checked = stateValue === 'checked' || stateValue === 'checked-indeterminate';
180
+ this.indeterminate = stateValue === 'unchecked-indeterminate' || stateValue === 'checked-indeterminate';
181
+ return;
182
+ }
183
+ if (isString(value)) {
184
+ this.checked = !!value;
185
+ }
186
+ else if (value === null || value === void 0 ? void 0 : value[this.name]) {
187
+ this.checked = !!value[this.name];
188
+ }
189
+ else {
190
+ this.checked = false;
191
+ }
192
+ }
193
+ checkValidity() {
194
+ this._foundation.syncValidity(this._hasCustomValidityError);
195
+ return this[internals].checkValidity();
196
+ }
197
+ reportValidity() {
198
+ this._foundation.syncValidity(this._hasCustomValidityError);
199
+ return this[internals].reportValidity();
200
+ }
201
+ setCustomValidity(error) {
202
+ this._hasCustomValidityError = !!error;
203
+ this._foundation.setValidity({ customError: !!error }, error);
204
+ }
205
+ formResetCallback() {
206
+ this.checked = this.defaultChecked;
207
+ }
208
+ formStateRestoreCallback(state, reason) {
209
+ this.checked = state === 'checked' || state === 'checked-indeterminate';
210
+ this.indeterminate = state === 'unchecked-indeterminate' || state === 'checked-indeterminate';
211
+ }
212
+ formDisabledCallback(isDisabled) {
213
+ this.disabled = isDisabled;
214
+ }
215
+ labelClickedCallback() {
216
+ this._foundation.proxyClick();
217
+ }
218
+ labelChangedCallback(value) {
219
+ this._foundation.proxyLabel(value);
220
+ }
221
+ /**
222
+ * Toggles the checkbox checked or unchecked.
223
+ * @param force Whether to set the checkbox checked or unchecked.
224
+ */
225
+ toggle(force) {
226
+ if (isDefined(force)) {
227
+ this._foundation.checked = force;
228
+ }
229
+ else {
230
+ this._foundation.checked = !this._foundation.checked;
231
+ }
61
232
  }
62
233
  };
234
+ __decorate([
235
+ FoundationProperty()
236
+ ], CheckboxComponent.prototype, "checked", void 0);
237
+ __decorate([
238
+ FoundationProperty()
239
+ ], CheckboxComponent.prototype, "defaultChecked", void 0);
240
+ __decorate([
241
+ FoundationProperty()
242
+ ], CheckboxComponent.prototype, "indeterminate", void 0);
243
+ __decorate([
244
+ FoundationProperty()
245
+ ], CheckboxComponent.prototype, "value", void 0);
63
246
  __decorate([
64
247
  FoundationProperty()
65
248
  ], CheckboxComponent.prototype, "dense", void 0);
249
+ __decorate([
250
+ FoundationProperty()
251
+ ], CheckboxComponent.prototype, "disabled", void 0);
252
+ __decorate([
253
+ FoundationProperty()
254
+ ], CheckboxComponent.prototype, "required", void 0);
255
+ __decorate([
256
+ FoundationProperty()
257
+ ], CheckboxComponent.prototype, "readonly", void 0);
258
+ __decorate([
259
+ FoundationProperty()
260
+ ], CheckboxComponent.prototype, "labelPosition", void 0);
66
261
  CheckboxComponent = __decorate([
67
262
  CustomElement({
68
- name: CHECKBOX_CONSTANTS.elementName
263
+ name: CHECKBOX_CONSTANTS.elementName,
264
+ dependencies: [
265
+ FocusIndicatorComponent,
266
+ StateLayerComponent
267
+ ]
69
268
  })
70
269
  ], CheckboxComponent);
71
270
  export { CheckboxComponent };
@@ -3,8 +3,8 @@
3
3
  * Copyright 2023 Tyler Technologies, Inc.
4
4
  * License: Apache-2.0
5
5
  */
6
- export * from './checkbox-constants';
7
6
  export * from './checkbox-adapter';
7
+ export * from './checkbox-constants';
8
8
  export * from './checkbox-foundation';
9
9
  export * from './checkbox';
10
10
  export * from './checkbox-component-delegate';
@@ -5,8 +5,8 @@
5
5
  */
6
6
  import { defineCustomElement } from '@tylertech/forge-core';
7
7
  import { CheckboxComponent } from './checkbox';
8
- export * from './checkbox-constants';
9
8
  export * from './checkbox-adapter';
9
+ export * from './checkbox-constants';
10
10
  export * from './checkbox-foundation';
11
11
  export * from './checkbox';
12
12
  export * from './checkbox-component-delegate';
@@ -4,6 +4,9 @@
4
4
  * License: Apache-2.0
5
5
  */
6
6
  export declare const CHIP_FIELD_CONSTANTS: {
7
+ attributes: {
8
+ ADD_ON_BLUR: string;
9
+ };
7
10
  elementName: "forge-chip-field";
8
11
  classes: {
9
12
  ROOT: string;
@@ -27,7 +27,11 @@ const events = {
27
27
  MEMBER_ADDED: `${elementName}-member-added`,
28
28
  MEMBER_REMOVED: `${elementName}-member-removed`
29
29
  };
30
+ const attributes = {
31
+ ADD_ON_BLUR: 'add-on-blur'
32
+ };
30
33
  export const CHIP_FIELD_CONSTANTS = {
34
+ attributes,
31
35
  elementName,
32
36
  classes,
33
37
  slots,
@@ -6,9 +6,11 @@
6
6
  import { IChipFieldAdapter } from './chip-field-adapter';
7
7
  import { IFieldFoundation, FieldFoundation } from '../field/field-foundation';
8
8
  export interface IChipFieldFoundation extends IFieldFoundation {
9
+ addOnBlur: boolean;
9
10
  }
10
11
  export declare class ChipFieldFoundation extends FieldFoundation implements IChipFieldFoundation {
11
12
  protected _adapter: IChipFieldAdapter;
13
+ private _addOnBlur;
12
14
  private _memberSlotListener;
13
15
  private _inputContainerMouseDownListener;
14
16
  private _handleRootKeyDown;
@@ -16,6 +18,9 @@ export declare class ChipFieldFoundation extends FieldFoundation implements IChi
16
18
  constructor(_adapter: IChipFieldAdapter);
17
19
  initialize(): void;
18
20
  disconnect(): void;
21
+ /** Controls adding a member of entered text on blur. */
22
+ get addOnBlur(): boolean;
23
+ set addOnBlur(value: boolean);
19
24
  private _onInputContainerMouseDown;
20
25
  protected _onBlur(event: FocusEvent): void;
21
26
  private _onRootKeyDown;
@@ -10,6 +10,7 @@ export class ChipFieldFoundation extends FieldFoundation {
10
10
  constructor(_adapter) {
11
11
  super(_adapter);
12
12
  this._adapter = _adapter;
13
+ this._addOnBlur = false;
13
14
  this._memberSlotListener = () => this._onMemberSlotChanged();
14
15
  this._inputContainerMouseDownListener = evt => this._onInputContainerMouseDown(evt);
15
16
  this._handleRootKeyDown = evt => this._onRootKeyDown(evt);
@@ -29,6 +30,17 @@ export class ChipFieldFoundation extends FieldFoundation {
29
30
  this._adapter.removeRootListener('keydown', this._handleRootKeyDown);
30
31
  this._adapter.removeInputListener('keydown', this._handleKeyDown);
31
32
  }
33
+ /** Controls adding a member of entered text on blur. */
34
+ get addOnBlur() {
35
+ return this._addOnBlur;
36
+ }
37
+ set addOnBlur(value) {
38
+ value = Boolean(value);
39
+ if (this._addOnBlur !== value) {
40
+ this._addOnBlur = value;
41
+ this._adapter.toggleHostAttribute(CHIP_FIELD_CONSTANTS.attributes.ADD_ON_BLUR, this._addOnBlur);
42
+ }
43
+ }
32
44
  _onInputContainerMouseDown(evt) {
33
45
  evt.preventDefault();
34
46
  this._adapter.focusInput();
@@ -36,6 +48,9 @@ export class ChipFieldFoundation extends FieldFoundation {
36
48
  }
37
49
  _onBlur(event) {
38
50
  const input = event.target;
51
+ if (this._addOnBlur) {
52
+ this._addMember(input);
53
+ }
39
54
  input.value = '';
40
55
  super._onBlur(event);
41
56
  }
@@ -69,9 +84,13 @@ export class ChipFieldFoundation extends FieldFoundation {
69
84
  break;
70
85
  case 'Esc':
71
86
  case 'Escape':
72
- case 'Tab':
73
87
  input.value = '';
74
88
  break;
89
+ case 'Tab':
90
+ if (!this._addOnBlur) {
91
+ input.value = '';
92
+ }
93
+ break;
75
94
  default:
76
95
  break;
77
96
  }
@@ -6,6 +6,7 @@
6
6
  import { ChipFieldFoundation } from './chip-field-foundation';
7
7
  import { FieldComponent, IFieldComponent } from '../field/field';
8
8
  export interface IChipFieldComponent extends IFieldComponent {
9
+ addOnBlur: boolean;
9
10
  }
10
11
  declare global {
11
12
  interface HTMLElementTagNameMap {
@@ -22,5 +23,9 @@ declare global {
22
23
  * @tag forge-chip-field
23
24
  */
24
25
  export declare class ChipFieldComponent extends FieldComponent<ChipFieldFoundation> implements IChipFieldComponent {
26
+ static get observedAttributes(): string[];
25
27
  constructor();
28
+ attributeChangedCallback(name: string, oldValue: string, newValue: string): void;
29
+ /** Controls whether or not the value should be set onBlur */
30
+ addOnBlur: boolean;
26
31
  }
@@ -4,7 +4,7 @@
4
4
  * License: Apache-2.0
5
5
  */
6
6
  import { __decorate } from "tslib";
7
- import { CustomElement, attachShadowTemplate } from '@tylertech/forge-core';
7
+ import { CustomElement, FoundationProperty, attachShadowTemplate, coerceBoolean } from '@tylertech/forge-core';
8
8
  import { ChipFieldAdapter } from './chip-field-adapter';
9
9
  import { ChipFieldFoundation } from './chip-field-foundation';
10
10
  import { CHIP_FIELD_CONSTANTS } from './chip-field-constants';
@@ -12,18 +12,36 @@ import { ChipComponent } from '../chips';
12
12
  import { FieldComponent } from '../field/field';
13
13
  const template = '<template><div class=\"forge-chip-field__wrapper\" part=\"root\"><div class=\"forge-chip-field forge-field\" part=\"container\"><div class=\"forge-field__leading-container\" part=\"leading-container\"><slot name=\"leading\"></slot></div><div class=\"forge-field__label-input-container\" part=\"label-input-container\"><slot name=\"label\"></slot><div class=\"forge-field__input-container\" part=\"input-container\"><slot name=\"member\"></slot><slot></slot></div></div><div class=\"forge-field__trailing-container\" part=\"trailing-container\"><slot name=\"trailing\"></slot></div><div class=\"forge-field__addon-end-container\" part=\"addon-end-container\"><slot name=\"addon-end\"></slot></div></div><slot name=\"helper-text\"></slot></div></template>';
14
14
  const styles = '.forge-field::before{content:\"\";display:-webkit-box;display:flex;position:absolute;top:0;right:0;left:0;z-index:-1;-webkit-box-sizing:border-box;box-sizing:border-box;width:100%;max-width:100%;height:100%;pointer-events:none;border-style:solid;border-style:var(--forge-chip-field-border-style,solid);border-width:1px;-webkit-transition:border-color .2s 0s cubic-bezier(0, 0, .2, 1);transition:border-color .2s 0s cubic-bezier(0, 0, .2, 1);background-color:transparent;background-color:var(--forge-chip-field-theme-background,transparent);text-align:left}.forge-field[dir=rtl]::before,[dir=rtl] .forge-field::before{text-align:right}.forge-field:not(.forge-field--disabled):not(.forge-field--invalid):not(.forge-field--focused)::before{border-color:rgba(0,0,0,.38);border-color:var(--mdc-theme-text-icon-on-background,rgba(0,0,0,.38))}.forge-field:not(.forge-field--disabled):not(.forge-field--invalid):not(.forge-field--focused):hover::before{border-color:rgba(0,0,0,.87);border-color:var(--mdc-theme-text-primary-on-background,rgba(0,0,0,.87))}.forge-field--focused:not(.forge-field--invalid):not(.forge-field--disabled)::before{border-color:#6200ee;border-color:var(--mdc-theme-primary,#6200ee)}.forge-field--invalid:not(.forge-field--disabled)::before{border-color:#b00020;border-color:var(--mdc-theme-error,#b00020)}.forge-field--invalid:not(.forge-field--disabled):not(.forge-field--focused):hover::before{border-color:#db8a98;border-color:var(--forge-theme-error-hover,#db8a98)}.forge-field--disabled::before{border-color:rgba(0,0,0,.38);border-color:var(--mdc-theme-text-disabled-on-background,rgba(0,0,0,.38))}.forge-field:not(.forge-field--shape-rounded){border-radius:4px}.forge-field:not(.forge-field--shape-rounded)::before{border-radius:4px}.forge-field--shape-rounded{border-radius:28px}.forge-field--shape-rounded::before{border-radius:28px}.forge-field--disabled::before{background-color:#f5f5f5;background-color:var(--forge-theme-form-field-disabled-on-background,#f5f5f5)}.forge-field--focused::before{border-color:#6200ee;border-color:var(--mdc-theme-primary,#6200ee);border-width:2px}.forge-field__label-input-container{position:relative;-webkit-box-flex:1;flex:1 1 0.0001px;height:100%;display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;-webkit-box-align:center;align-items:center;min-width:0}.forge-field ::slotted(label){color:rgba(0,0,0,.65);color:var(--forge-theme-form-field-label-on-background,rgba(0,0,0,.65));pointer-events:none;right:0;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-subtitle1-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-weight:400;font-weight:var(--mdc-typography-subtitle1-font-weight,400);letter-spacing:.009375em;letter-spacing:var(--mdc-typography-subtitle1-letter-spacing, .009375em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-subtitle1-text-decoration,inherit);text-decoration:var(--mdc-typography-subtitle1-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-subtitle1-text-transform,inherit);font-size:var(--mdc-typography-subtitle1-font-size, 1rem);position:absolute;left:0;-webkit-transform-origin:left top;transform-origin:left top;line-height:1.1rem;text-align:left;text-overflow:ellipsis;white-space:nowrap;cursor:text;overflow:hidden;will-change:transform;-webkit-transition:color 150ms cubic-bezier(.4, 0, .2, 1),-webkit-transform 150ms cubic-bezier(.4, 0, .2, 1);transition:color 150ms cubic-bezier(.4, 0, .2, 1),-webkit-transform 150ms cubic-bezier(.4, 0, .2, 1);transition:transform 150ms cubic-bezier(.4, 0, .2, 1),color 150ms cubic-bezier(.4, 0, .2, 1);transition:transform 150ms cubic-bezier(.4, 0, .2, 1),color 150ms cubic-bezier(.4, 0, .2, 1),-webkit-transform 150ms cubic-bezier(.4, 0, .2, 1)}.forge-field ::slotted(label[dir=rtl]),[dir=rtl] .forge-field ::slotted(label){right:0;left:auto;-webkit-transform-origin:right top;transform-origin:right top;text-align:right}.forge-field--dense:not(.forge-field--roomy) ::slotted(label){display:none}.forge-field--required ::slotted(label)::after{content:none}.forge-field--required ::slotted(label)::before{color:#b00020;color:var(--mdc-theme-error,#b00020);content:\"*\";margin-right:4px}.forge-field:not(.forge-field--dense):not(.forge-field--roomy) ::slotted(label){font-size:1rem}.forge-field--roomy:not(.forge-field--dense) ::slotted(label){font-size:1rem}.forge-field--disabled ::slotted(label){color:rgba(0,0,0,.38);color:var(--forge-theme-label-disabled-on-background,rgba(0,0,0,.38))}.forge-field--invalid:not(.forge-field--disabled) ::slotted(label){color:#b00020;color:var(--mdc-theme-error,#b00020)}.forge-field--focused:not(.forge-field--invalid):not(.forge-field--disabled) ::slotted(label){color:#6200ee;color:var(--mdc-theme-primary,#6200ee)}.forge-field:not(.forge-field--dense):not(.forge-field--roomy) ::slotted(label){top:1rem}.forge-field--roomy:not(.forge-field--dense) ::slotted(label){top:1.285rem}.forge-field:not(.forge-field--shape-rounded):not(.forge-field--leading) ::slotted(label){left:12px!important}.forge-field--shape-rounded:not(.forge-field--leading) ::slotted(label){left:32px!important}.forge-field:not(.forge-field--trailing):not(.forge-field--addon-end):not(.forge-field--shape-rounded) ::slotted(label){padding-right:12px}.forge-field:not(.forge-field--trailing):not(.forge-field--addon-end).forge-field--shape-rounded ::slotted(label){padding-right:32px}.forge-field ::slotted(label.forge-floating-label--float-above){color:rgba(0,0,0,.65);color:var(--forge-theme-form-field-label-on-background,rgba(0,0,0,.65))}.forge-field--disabled ::slotted(label.forge-floating-label--float-above){color:rgba(0,0,0,.6);color:var(--forge-theme-form-field-text-disabled-on-background,rgba(0,0,0,.6))}.forge-field--invalid:not(.forge-field--disabled) ::slotted(label.forge-floating-label--float-above){color:#b00020;color:var(--mdc-theme-error,#b00020)}.forge-field--focused:not(.forge-field--invalid):not(.forge-field--disabled) ::slotted(label.forge-floating-label--float-above){color:#6200ee;color:var(--mdc-theme-primary,#6200ee)}.forge-field:not(.forge-field--dense):not(.forge-field--roomy) ::slotted(label.forge-floating-label--float-above){-webkit-transform:translateY(-.54rem) scale(.8125);transform:translateY(-.54rem) scale(.8125);cursor:auto}.forge-field--roomy:not(.forge-field--dense) ::slotted(label.forge-floating-label--float-above){-webkit-transform:translateY(-.72rem) scale(.8125);transform:translateY(-.72rem) scale(.8125);cursor:auto}.forge-field:not(.forge-field--dense):not(.forge-field--roomy) ::slotted(label.forge-floating-label--float-above.forge-floating-label--float-above-end-keyframe){-webkit-transition:none;transition:none;font-size:.8125rem;-webkit-transform:translateY(-.62rem) scale(1);transform:translateY(-.62rem) scale(1);cursor:auto}.forge-field--roomy:not(.forge-field--dense) ::slotted(label.forge-floating-label--float-above.forge-floating-label--float-above-end-keyframe){-webkit-transition:none;transition:none;font-size:.8125rem;-webkit-transform:translateY(-.8rem) scale(1);transform:translateY(-.8rem) scale(1);cursor:auto}.forge-field:not(.forge-field--dense):not(.forge-field--roomy) ::slotted(label.forge-floating-label--unfloat-above-start-keyframe){-webkit-transition:none;transition:none;font-size:1rem;-webkit-transform:translateY(-.62rem) scale(.8125);transform:translateY(-.62rem) scale(.8125);cursor:auto}.forge-field--roomy:not(.forge-field--dense) ::slotted(label.forge-floating-label--unfloat-above-start-keyframe){-webkit-transition:none;transition:none;font-size:1rem;-webkit-transform:translateY(-.8rem) scale(.8125);transform:translateY(-.8rem) scale(.8125);cursor:auto}.forge-field~::slotted([slot=helper-text]){-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-caption-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));line-height:1.25rem;line-height:var(--mdc-typography-caption-line-height, 1.25rem);font-weight:400;font-weight:var(--mdc-typography-caption-font-weight,400);letter-spacing:.0333333333em;letter-spacing:var(--mdc-typography-caption-letter-spacing, .0333333333em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-caption-text-decoration,inherit);text-decoration:var(--mdc-typography-caption-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-caption-text-transform,inherit);display:block;min-height:1.5rem;line-height:normal;padding-top:4px;-webkit-box-sizing:border-box;box-sizing:border-box}.forge-field:not(.forge-field--dense):not(.forge-field--roomy)~::slotted([slot=helper-text]){font-size:.75rem}.forge-field--roomy:not(.forge-field--dense)~::slotted([slot=helper-text]){font-size:.875rem}.forge-field--dense:not(.forge-field--roomy)~::slotted([slot=helper-text]){font-size:.75rem}.forge-field~::slotted([slot=helper-text]){color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54))}.forge-field--invalid:not(.forge-field--disabled)~::slotted([slot=helper-text]){color:#b00020;color:var(--mdc-theme-error,#b00020)}.forge-field:not(.forge-field--shape-rounded)~::slotted([slot=helper-text]){margin-left:12px}.forge-field--shape-rounded~::slotted([slot=helper-text]){margin-left:32px}.forge-field ::slotted([slot=leading]){display:-webkit-box;display:flex;align-self:center}.forge-field:not(.forge-field--disabled):not(.forge-field--invalid) ::slotted([slot=leading]){color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54))}.forge-field--invalid:not(.forge-field--disabled) ::slotted([slot=leading]){color:#b00020;color:var(--mdc-theme-error,#b00020)}.forge-field--disabled ::slotted([slot=leading]){color:rgba(0,0,0,.38);color:var(--mdc-theme-text-disabled-on-light,rgba(0,0,0,.38));cursor:not-allowed;pointer-events:none}.forge-field ::slotted([slot=leading]){margin:0 4px}.forge-field ::slotted([slot=leading]:not(forge-icon-button)){padding:6px}.forge-field ::slotted([slot=trailing]){align-self:center}.forge-field:not(.forge-field--disabled):not(.forge-field--invalid) ::slotted([slot=trailing]){color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54))}.forge-field--invalid:not(.forge-field--disabled) ::slotted([slot=trailing]){color:#b00020;color:var(--mdc-theme-error,#b00020)}.forge-field--disabled ::slotted([slot=trailing]){color:rgba(0,0,0,.38);color:var(--mdc-theme-text-disabled-on-light,rgba(0,0,0,.38));cursor:not-allowed;pointer-events:none}.forge-field ::slotted([slot=trailing]){margin:0 4px}.forge-field ::slotted([slot=trailing]:not(forge-icon-button)){padding:6px}.forge-field__addon-end-container{display:none}.forge-field--addon-end .forge-field__addon-end-container{height:100%;width:auto;display:-webkit-box;display:flex;-webkit-box-pack:center;justify-content:center;-webkit-box-align:center;align-items:center;padding:0 4px;border-left-width:1px;border-left-style:solid;-webkit-transition:border-left-color .2s 0s cubic-bezier(0, 0, .2, 1);transition:border-left-color .2s 0s cubic-bezier(0, 0, .2, 1)}.forge-field:not(.forge-field--disabled):not(.forge-field--focused):not(.forge-field--invalid) .forge-field__addon-end-container{border-left-color:rgba(0,0,0,.54);border-left-color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54))}.forge-field:not(.forge-field--disabled):not(.forge-field--focused):not(.forge-field--invalid) .forge-field__addon-end-container:hover{border-left-color:rgba(0,0,0,.87);border-left-color:var(--mdc-theme-text-primary-on-background,rgba(0,0,0,.87))}.forge-field.forge-field--focused:not(.forge-field--invalid):not(.forge-field--disabled) .forge-field__addon-end-container{border-left-color:#6200ee;border-left-color:var(--mdc-theme-primary,#6200ee)}.forge-field.forge-field--invalid:not(.forge-field--disabled) .forge-field__addon-end-container{border-left-color:#b00020;border-left-color:var(--mdc-theme-error,#b00020)}.forge-field.forge-field--invalid:not(.forge-field--focused):not(.forge-field--disabled) .forge-field__addon-end-container:hover{border-left-color:#db8a98;border-left-color:var(--forge-theme-error-hover,#db8a98)}.forge-field.forge-field--disabled .forge-field__addon-end-container{border-left-color:rgba(0,0,0,.38);border-left-color:var(--mdc-theme-text-disabled-on-background,rgba(0,0,0,.38))}.forge-field:not(.forge-field--disabled):not(.forge-field--invalid) ::slotted([slot=addon-end]){color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54))}.forge-field--invalid:not(.forge-field--disabled) ::slotted([slot=addon-end]){color:#b00020;color:var(--mdc-theme-error,#b00020)}.forge-field--disabled ::slotted([slot=addon-end]){color:rgba(0,0,0,.38);color:var(--mdc-theme-text-disabled-on-light,rgba(0,0,0,.38));cursor:not-allowed;pointer-events:none}.forge-chip-field{-webkit-box-sizing:border-box;box-sizing:border-box;display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;position:relative;z-index:1;z-index:var(--forge-z-index-surface,1);margin-top:0;margin-top:var(--forge-chip-field-margin-top,0);display:grid;grid-template-columns:[leading] -webkit-min-content [input] 1fr [trailing] -webkit-min-content [addon-end] -webkit-min-content [end];grid-template-columns:[leading] min-content [input] 1fr [trailing] min-content [addon-end] min-content [end]}.forge-chip-field.forge-field--disabled{background-color:#f5f5f5;background-color:var(--forge-theme-form-field-disabled-on-background,#f5f5f5);cursor:not-allowed}.forge-chip-field:not(.forge-field--dense):not(.forge-field--roomy){height:auto;min-height:46px;min-height:var(--forge-chip-field-height,46px)}.forge-chip-field.forge-field--roomy:not(.forge-field--dense){height:auto;min-height:3.5rem;min-height:var(--forge-chip-field-height,3.5rem)}.forge-chip-field.forge-field--dense:not(.forge-field--roomy){height:auto;min-height:1.5rem;min-height:var(--forge-chip-field-height,1.5rem)}.forge-field__label-input-container{grid-column-start:input;grid-column-end:trailing}.forge-field__input-container{-webkit-box-flex:1;flex:1 1 0.0001px;display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;flex-wrap:wrap;-webkit-box-align:start;align-items:flex-start;-webkit-box-sizing:border-box;box-sizing:border-box}.forge-field__input-container{padding:2px 12px}.forge-field--label .forge-field__input-container{padding-top:22px}.forge-field--roomy.forge-field--label .forge-field__input-container{padding-top:22px}.forge-field--shape-rounded:not(.forge-field--leading) .forge-field__input-container{padding-left:32px}.forge-field--leading:not(.forge-field--shape-rounded) .forge-field__input-container{padding-left:0}.forge-field--shape-rounded.forge-field--leading .forge-field__input-container{padding-left:0}.forge-field--label .forge-field__input-container{padding-bottom:2px}.forge-field--roomy.forge-field--label .forge-field__input-container{padding-bottom:2px}.forge-field--shape-rounded:not(.forge-field--trailing):not(.forge-field--addon-end) .forge-field__input-container{padding-right:32px}.forge-field--addon-end:not(.forge-field--shape-rounded) .forge-field__input-container,.forge-field--trailing:not(.forge-field--shape-rounded) .forge-field__input-container{padding-right:0}.forge-field--shape-rounded.forge-field--addon-end .forge-field__input-container,.forge-field--shape-rounded.forge-field--trailing .forge-field__input-container{padding-right:0}.forge-field ::slotted([slot=member]){display:block}.forge-field--disabled ::slotted([slot=member]){--mdc-theme-primary:rgba(0, 0, 0, 0.38);--mdc-theme-primary:var(--mdc-theme-text-disabled-on-light, rgba(0, 0, 0, 0.38));cursor:not-allowed;pointer-events:none}.forge-field:not(.forge-field--dense):not(.forge-field--roomy) ::slotted([slot=member]){margin:2px 8px 2px 0}.forge-field--roomy:not(.forge-field--dense) ::slotted([slot=member]){margin:6px 12px 6px 0}.forge-field--dense:not(.forge-field--roomy) ::slotted([slot=member]){margin:2px 6px 2px 0}.forge-field:not(.forge-field--dense):not(.forge-field--roomy) ::slotted([slot=member]){--forge-chip-min-height:20px}.forge-field--dense:not(.forge-field--roomy) ::slotted([slot=member]){--forge-chip-min-height:16px}.forge-field ::slotted(input){-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-body1-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-weight:400;font-weight:var(--mdc-typography-body1-font-weight,400);letter-spacing:.03125em;letter-spacing:var(--mdc-typography-body1-letter-spacing, .03125em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-body1-text-decoration,inherit);text-decoration:var(--mdc-typography-body1-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-body1-text-transform,inherit);align-self:flex-end;-webkit-box-sizing:border-box;box-sizing:border-box;width:100%;height:100%;-webkit-transition:opacity 150ms 0s cubic-bezier(.4, 0, .2, 1);transition:opacity 150ms 0s cubic-bezier(.4, 0, .2, 1);border:none;background:0 0;-webkit-appearance:none;-moz-appearance:none;appearance:none;outline:0;line-height:normal;min-width:0}.forge-field ::slotted(input)::-webkit-input-placeholder{color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54));font-size:.875rem}.forge-field ::slotted(input)::-moz-placeholder{color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54));font-size:.875rem}.forge-field ::slotted(input):-ms-input-placeholder{color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54));font-size:.875rem}.forge-field ::slotted(input)::-ms-input-placeholder{color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54));font-size:.875rem}.forge-field ::slotted(input)::placeholder{color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54));font-size:.875rem}.forge-field ::slotted(input):invalid{-webkit-box-shadow:none;box-shadow:none}.forge-field ::slotted(input):-webkit-autofill{z-index:auto!important}.forge-field:not(.forge-field--disabled) ::slotted(input){color:rgba(0,0,0,.87);color:var(--mdc-theme-text-primary-on-background,rgba(0,0,0,.87))}.forge-field--disabled ::slotted(input){color:rgba(0,0,0,.6);color:var(--forge-theme-form-field-text-disabled-on-background,rgba(0,0,0,.6));cursor:not-allowed}.forge-field:not(.forge-field--dense):not(.forge-field--roomy) ::slotted(input){font-size:1rem;font-size:var(--forge-chip-field-font-size, 1rem)}.forge-field--roomy:not(.forge-field--dense) ::slotted(input){font-size:1rem;font-size:var(--forge-chip-field-font-size, 1rem)}.forge-field--dense:not(.forge-field--roomy) ::slotted(input){font-size:.875rem;font-size:var(--forge-chip-field-font-size, .875rem)}.forge-field ::slotted(input){-webkit-box-flex:1;flex:1 1 0.0001px;min-width:40px;display:block;align-self:flex-start;padding:0}.forge-field:not(.forge-field--dense):not(.forge-field--roomy) ::slotted(input){margin:4px 0}.forge-field--roomy:not(.forge-field--dense) ::slotted(input){margin:6px 0}.forge-field--dense:not(.forge-field--roomy) ::slotted(input){margin:2px 0}.forge-field:not(.forge-field--dense):not(.forge-field--roomy) ::slotted(input){height:1rem;line-height:1rem}.forge-field--roomy:not(.forge-field--dense) ::slotted(input){height:1.25rem;line-height:1.25rem}.forge-field--dense:not(.forge-field--roomy) ::slotted(input){height:1rem;line-height:1rem}.forge-field--leading .forge-field__leading-container{grid-column-start:leading;grid-column-end:input;align-self:flex-start;display:-webkit-box;display:flex}.forge-field:not(.forge-field--dense):not(.forge-field--roomy) ::slotted([slot=leading]){margin-top:5px;margin-bottom:5px}.forge-field--roomy:not(.forge-field--dense) ::slotted([slot=leading]){margin-top:10px;margin-bottom:10px}.forge-field--dense:not(.forge-field--roomy) ::slotted([slot=leading]){margin-top:0;margin-bottom:0}.forge-field--dense:not(.forge-field--roomy) ::slotted([slot=leading]){padding-top:0;padding-bottom:0}.forge-field--trailing .forge-field__trailing-container{grid-column-start:trailing;grid-column-end:addon-end;display:-webkit-box;display:flex;-webkit-box-align:start;align-items:flex-start;align-self:flex-start}.forge-field:not(.forge-field--dense):not(.forge-field--roomy) ::slotted([slot=trailing]){margin-top:5px;margin-bottom:5px}.forge-field--roomy:not(.forge-field--dense) ::slotted([slot=trailing]){margin-top:10px;margin-bottom:10px}.forge-field--dense:not(.forge-field--roomy) ::slotted([slot=trailing]){margin-top:0;margin-bottom:0}.forge-field--dense:not(.forge-field--roomy) ::slotted([slot=trailing]){padding-top:0;padding-bottom:0}.forge-field--addon-end .forge-field__addon-end-container{grid-column-start:addon-end;grid-column-end:end;display:-webkit-box;display:flex;-webkit-box-align:start;align-items:flex-start;align-self:flex-start}.forge-field:not(.forge-field--dense):not(.forge-field--roomy) ::slotted([slot=addon-end]){margin-top:5px;margin-bottom:5px}.forge-field--roomy:not(.forge-field--dense) ::slotted([slot=addon-end]){margin-top:10px;margin-bottom:10px}.forge-field--dense:not(.forge-field--roomy) ::slotted([slot=addon-end]){margin-top:0;margin-bottom:0}.forge-field ::slotted(forge-icon-button){display:-webkit-inline-box!important;display:inline-flex!important}:host{display:block;contain:layout}:host([hidden]){display:none}';
15
+ import { FIELD_CONSTANTS } from '../field/field-constants';
15
16
  /**
16
17
  * The web component class behind the `<forge-chip-field>` custom element.
17
18
  *
18
19
  * @tag forge-chip-field
19
20
  */
20
21
  let ChipFieldComponent = class ChipFieldComponent extends FieldComponent {
22
+ static get observedAttributes() {
23
+ return [
24
+ ...Object.values(FIELD_CONSTANTS.attributes),
25
+ CHIP_FIELD_CONSTANTS.attributes.ADD_ON_BLUR
26
+ ];
27
+ }
21
28
  constructor() {
22
29
  super();
23
30
  attachShadowTemplate(this, template, styles);
24
31
  this._foundation = new ChipFieldFoundation(new ChipFieldAdapter(this));
25
32
  }
33
+ attributeChangedCallback(name, oldValue, newValue) {
34
+ switch (name) {
35
+ case CHIP_FIELD_CONSTANTS.attributes.ADD_ON_BLUR:
36
+ this.addOnBlur = coerceBoolean(newValue);
37
+ return;
38
+ }
39
+ super.attributeChangedCallback(name, oldValue, newValue);
40
+ }
26
41
  };
42
+ __decorate([
43
+ FoundationProperty()
44
+ ], ChipFieldComponent.prototype, "addOnBlur", void 0);
27
45
  ChipFieldComponent = __decorate([
28
46
  CustomElement({
29
47
  name: CHIP_FIELD_CONSTANTS.elementName,