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

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 (517) hide show
  1. package/custom-elements.json +27366 -24598
  2. package/dist/esm/accordion/index.js +1 -1
  3. package/dist/esm/app-bar/app-bar/index.js +7 -0
  4. package/dist/esm/app-bar/app-bar/index.js.map +7 -0
  5. package/dist/esm/app-bar/help-button/index.js +1 -1
  6. package/dist/esm/app-bar/index.js +1 -1
  7. package/dist/esm/app-bar/menu-button/index.js +1 -1
  8. package/dist/esm/app-bar/notification-button/index.js +1 -1
  9. package/dist/esm/app-bar/profile-button/index.js +1 -1
  10. package/dist/esm/app-bar/search/index.js +1 -1
  11. package/dist/esm/autocomplete/index.js +1 -1
  12. package/dist/esm/avatar/index.js +1 -1
  13. package/dist/esm/backdrop/index.js +1 -1
  14. package/dist/esm/badge/index.js +1 -1
  15. package/dist/esm/banner/index.js +1 -1
  16. package/dist/esm/bottom-sheet/index.js +1 -1
  17. package/dist/esm/busy-indicator/index.js +1 -1
  18. package/dist/esm/button/index.js +1 -1
  19. package/dist/esm/button-area/index.js +1 -1
  20. package/dist/esm/button-toggle/button-toggle/index.js +1 -1
  21. package/dist/esm/button-toggle/button-toggle-group/index.js +1 -1
  22. package/dist/esm/button-toggle/index.js +1 -1
  23. package/dist/esm/calendar/calendar-dropdown/index.js +1 -1
  24. package/dist/esm/calendar/calendar-menu/index.js +1 -1
  25. package/dist/esm/calendar/index.js +1 -1
  26. package/dist/esm/card/index.js +1 -1
  27. package/dist/esm/checkbox/index.js +1 -1
  28. package/dist/esm/chip-field/index.js +1 -1
  29. package/dist/esm/chips/chip/index.js +1 -1
  30. package/dist/esm/chips/chip-set/index.js +1 -1
  31. package/dist/esm/chips/index.js +1 -1
  32. package/dist/esm/chunks/{chunk.FLWNOP42.js → chunk.26E4L52W.js} +2 -2
  33. package/dist/esm/chunks/chunk.2GJ54C3Q.js +7 -0
  34. package/dist/esm/chunks/chunk.2GJ54C3Q.js.map +7 -0
  35. package/dist/esm/chunks/{chunk.ZRSDTCSD.js → chunk.2GYZM6ZG.js} +2 -2
  36. package/dist/esm/chunks/chunk.2YDKRTKP.js +7 -0
  37. package/dist/esm/chunks/chunk.2YDKRTKP.js.map +7 -0
  38. package/dist/esm/chunks/chunk.3JCHXLPT.js +7 -0
  39. package/dist/esm/chunks/{chunk.LUNKNRRH.js.map → chunk.3JCHXLPT.js.map} +3 -3
  40. package/dist/esm/chunks/chunk.3PKNBYMG.js +6 -0
  41. package/dist/esm/chunks/chunk.3PKNBYMG.js.map +7 -0
  42. package/dist/esm/chunks/chunk.3RMBFRGC.js +7 -0
  43. package/dist/esm/chunks/{chunk.DTLZOIUQ.js → chunk.3UO6S3IK.js} +2 -2
  44. package/dist/esm/chunks/chunk.3ZRQFXQU.js +7 -0
  45. package/dist/esm/chunks/{chunk.XNFS7YIB.js.map → chunk.3ZRQFXQU.js.map} +1 -1
  46. package/dist/esm/chunks/{chunk.MWYQRG5W.js → chunk.4B5IOZAT.js} +2 -2
  47. package/dist/esm/chunks/{chunk.IDMDBMBR.js → chunk.4QDN5PM6.js} +2 -2
  48. package/dist/esm/chunks/{chunk.Z5RROENA.js → chunk.543K5Y4E.js} +2 -2
  49. package/dist/esm/chunks/{chunk.W2LN45WY.js → chunk.57PXXJA6.js} +2 -2
  50. package/dist/esm/chunks/{chunk.675V42JS.js → chunk.5C24LZNU.js} +2 -2
  51. package/dist/esm/chunks/{chunk.V24M62MC.js → chunk.5H4G6BWX.js} +2 -2
  52. package/dist/esm/chunks/{chunk.QLCVRJ3Q.js → chunk.5VHUMZYS.js} +2 -2
  53. package/dist/esm/chunks/{chunk.OWZREAT6.js → chunk.6DXDNQUR.js} +2 -2
  54. package/dist/esm/chunks/{chunk.7VMJLHQY.js → chunk.6Q3SV2R2.js} +2 -2
  55. package/dist/esm/chunks/chunk.6Y45DLA6.js +7 -0
  56. package/dist/esm/chunks/chunk.6Y45DLA6.js.map +7 -0
  57. package/dist/esm/chunks/{chunk.IHAHJPMB.js → chunk.7ABZUBTT.js} +2 -2
  58. package/dist/esm/chunks/{chunk.Z5ZLKM7W.js → chunk.7BGOH44S.js} +2 -2
  59. package/dist/esm/chunks/{chunk.LOG6GQOK.js → chunk.7DHDFH5L.js} +2 -2
  60. package/dist/esm/chunks/{chunk.3R4BUIQP.js → chunk.7PP6QHOM.js} +2 -2
  61. package/dist/esm/chunks/{chunk.YBZK6LJZ.js → chunk.7UXLLUTN.js} +2 -2
  62. package/dist/esm/chunks/{chunk.5RM65QPN.js → chunk.7W2UWAZX.js} +2 -2
  63. package/dist/esm/chunks/chunk.A72W7RW7.js +7 -0
  64. package/dist/esm/chunks/{chunk.STB2FEUA.js.map → chunk.A72W7RW7.js.map} +2 -2
  65. package/dist/esm/chunks/{chunk.6NTYTHAL.js → chunk.AEJGC4YG.js} +2 -2
  66. package/dist/esm/chunks/{chunk.BTXY3XMJ.js → chunk.B46Q3AFP.js} +2 -2
  67. package/dist/esm/chunks/{chunk.QJCNMYD3.js → chunk.BFUGFHEH.js} +2 -2
  68. package/dist/esm/chunks/chunk.BLW6QESQ.js +12 -0
  69. package/dist/esm/chunks/chunk.BLW6QESQ.js.map +7 -0
  70. package/dist/esm/chunks/{chunk.2ZU6LWHE.js → chunk.BMQYEYCT.js} +2 -2
  71. package/dist/esm/chunks/{chunk.HOLCNJXC.js → chunk.C5IB44HX.js} +2 -2
  72. package/dist/esm/chunks/chunk.CNRFOWHY.js +7 -0
  73. package/dist/esm/chunks/{chunk.QQRPV4RN.js.map → chunk.CNRFOWHY.js.map} +2 -2
  74. package/dist/esm/chunks/{chunk.G73KL7P2.js → chunk.CTZ3AWDW.js} +2 -2
  75. package/dist/esm/chunks/{chunk.YA3RDJCV.js → chunk.CZOABXEQ.js} +2 -2
  76. package/dist/esm/chunks/{chunk.YA3RDJCV.js.map → chunk.CZOABXEQ.js.map} +2 -2
  77. package/dist/esm/chunks/{chunk.QLOYOZN3.js → chunk.DD35U4AA.js} +2 -2
  78. package/dist/esm/chunks/{chunk.XEFWZKHQ.js → chunk.DDXIHZFX.js} +2 -2
  79. package/dist/esm/chunks/{chunk.MKJCHUJH.js → chunk.DOEG3DWJ.js} +2 -2
  80. package/dist/esm/chunks/{chunk.2MSL7CYM.js → chunk.DTKFE7YB.js} +2 -2
  81. package/dist/esm/chunks/{chunk.FXIWCHLW.js → chunk.E3GVKR4E.js} +2 -2
  82. package/dist/esm/chunks/{chunk.FFHSUJFM.js → chunk.EBSBAFCX.js} +2 -2
  83. package/dist/esm/chunks/{chunk.RES7WDKH.js → chunk.F2EBSV5Z.js} +2 -2
  84. package/dist/esm/chunks/chunk.F6KM5FO6.js +7 -0
  85. package/dist/esm/chunks/{chunk.5WMYF27O.js.map → chunk.F6KM5FO6.js.map} +2 -2
  86. package/dist/esm/chunks/{chunk.BBCZNGT3.js → chunk.FB6ZLH6P.js} +2 -2
  87. package/dist/esm/chunks/{chunk.VFKHRAWD.js → chunk.FQSL747N.js} +2 -2
  88. package/dist/esm/chunks/{chunk.JVLJH6PR.js → chunk.G2BNY5QQ.js} +2 -2
  89. package/dist/esm/chunks/{chunk.URJQNB3S.js → chunk.GS72TBUD.js} +2 -2
  90. package/dist/esm/chunks/{chunk.5PG6WIIX.js → chunk.GT3VPSXY.js} +2 -2
  91. package/dist/esm/chunks/{chunk.IMLJD35R.js → chunk.GWJ4QCSW.js} +2 -2
  92. package/dist/esm/chunks/{chunk.IISWKFCX.js → chunk.H7GW57Q6.js} +2 -2
  93. package/dist/esm/chunks/{chunk.BB4UF5RX.js → chunk.HHHBS6FB.js} +2 -2
  94. package/dist/esm/chunks/{chunk.KPJWP77R.js → chunk.I3NHK2S3.js} +2 -2
  95. package/dist/esm/chunks/{chunk.5N4N6DL6.js → chunk.IEB5KRFQ.js} +2 -2
  96. package/dist/esm/chunks/chunk.IT66AOX7.js +7 -0
  97. package/dist/esm/chunks/chunk.IT66AOX7.js.map +7 -0
  98. package/dist/esm/chunks/{chunk.BQ2X5SBP.js → chunk.IVUK3W34.js} +2 -2
  99. package/dist/esm/chunks/{chunk.ZGRQDDHO.js → chunk.IW7HALLT.js} +2 -2
  100. package/dist/esm/chunks/chunk.J2KHTGSB.js +7 -0
  101. package/dist/esm/chunks/chunk.J2KHTGSB.js.map +7 -0
  102. package/dist/esm/chunks/{chunk.7ZROQ6D3.js → chunk.J3B5CWKT.js} +2 -2
  103. package/dist/esm/chunks/{chunk.TBGMJQYJ.js → chunk.JVK64JDZ.js} +2 -2
  104. package/dist/esm/chunks/chunk.KFDYMENL.js +7 -0
  105. package/dist/esm/chunks/chunk.KFDYMENL.js.map +7 -0
  106. package/dist/esm/chunks/{chunk.AUBOJZQ7.js → chunk.KLPF4CNX.js} +2 -2
  107. package/dist/esm/chunks/chunk.KTYYBWTN.js +7 -0
  108. package/dist/esm/chunks/{chunk.QN5T26HH.js.map → chunk.KTYYBWTN.js.map} +2 -2
  109. package/dist/esm/chunks/{chunk.IT7XPDAV.js → chunk.L4Y4RO5O.js} +2 -2
  110. package/dist/esm/chunks/{chunk.IAWYYNUU.js → chunk.LCNR2RPT.js} +2 -2
  111. package/dist/esm/chunks/{chunk.TU74SREL.js → chunk.LMIKNDBS.js} +2 -2
  112. package/dist/esm/chunks/{chunk.5A2PA7TL.js → chunk.LOBKFTRM.js} +2 -2
  113. package/dist/esm/chunks/chunk.LOBKFTRM.js.map +7 -0
  114. package/dist/esm/chunks/{chunk.HSI7B43D.js → chunk.LS7WRRT2.js} +2 -2
  115. package/dist/esm/chunks/{chunk.HSI7B43D.js.map → chunk.LS7WRRT2.js.map} +2 -2
  116. package/dist/esm/chunks/{chunk.VO6YJCEU.js → chunk.LSNAGIIH.js} +2 -2
  117. package/dist/esm/chunks/{chunk.ARQMMZJL.js → chunk.LXX3YZYS.js} +2 -2
  118. package/dist/esm/chunks/chunk.MZZJY5NX.js +7 -0
  119. package/dist/esm/chunks/chunk.MZZJY5NX.js.map +7 -0
  120. package/dist/esm/chunks/{chunk.AMLT6XJP.js → chunk.NG6UZ4OL.js} +2 -2
  121. package/dist/esm/chunks/{chunk.YKIBREM5.js → chunk.NYYXUH3X.js} +2 -2
  122. package/dist/esm/chunks/{chunk.HRRJIFC5.js → chunk.NZKIFXBU.js} +2 -2
  123. package/dist/esm/chunks/{chunk.YAERJVPL.js → chunk.OED5UCYT.js} +2 -2
  124. package/dist/esm/chunks/{chunk.72JVXGHF.js → chunk.OUACQISE.js} +2 -2
  125. package/dist/esm/chunks/{chunk.72JVXGHF.js.map → chunk.OUACQISE.js.map} +1 -1
  126. package/dist/esm/chunks/{chunk.RP674CRC.js → chunk.OYO5O3NF.js} +2 -2
  127. package/dist/esm/chunks/{chunk.LCR4YH3O.js → chunk.P7LC3YYW.js} +2 -2
  128. package/dist/esm/chunks/{chunk.KV5IKYG2.js → chunk.PK7R6WDF.js} +2 -2
  129. package/dist/esm/chunks/{chunk.PYR2OCCH.js → chunk.PQQVUUHU.js} +2 -2
  130. package/dist/esm/chunks/{chunk.SLJ6HDK7.js → chunk.PSTGTQVK.js} +2 -2
  131. package/dist/esm/chunks/chunk.Q5Z6F3PI.js +7 -0
  132. package/dist/esm/chunks/chunk.Q5Z6F3PI.js.map +7 -0
  133. package/dist/esm/chunks/{chunk.36C6SIPW.js → chunk.QFY23EWU.js} +2 -2
  134. package/dist/esm/chunks/{chunk.S5QL4SPT.js → chunk.RCSBJQ4G.js} +2 -2
  135. package/dist/esm/chunks/chunk.RDW7Z4W5.js +7 -0
  136. package/dist/esm/chunks/chunk.RDW7Z4W5.js.map +7 -0
  137. package/dist/esm/chunks/{chunk.FYVDTZLF.js → chunk.RYNQDXFA.js} +2 -2
  138. package/dist/esm/chunks/{chunk.HAKF2T2D.js → chunk.RZZBM3AW.js} +2 -2
  139. package/dist/esm/chunks/{chunk.3ZPSN2QG.js → chunk.SNF35Y6C.js} +2 -2
  140. package/dist/esm/chunks/chunk.SOLF23NC.js +7 -0
  141. package/dist/esm/chunks/chunk.SOLF23NC.js.map +7 -0
  142. package/dist/esm/chunks/{chunk.XYAZVLPR.js → chunk.T34DG7BU.js} +2 -2
  143. package/dist/esm/chunks/chunk.TA3MVDUU.js +7 -0
  144. package/dist/esm/chunks/chunk.TA3MVDUU.js.map +7 -0
  145. package/dist/esm/chunks/{chunk.3HCYRDRI.js → chunk.THWSN3X4.js} +2 -2
  146. package/dist/esm/chunks/chunk.TLFCQSJN.js +7 -0
  147. package/dist/esm/chunks/chunk.TLFCQSJN.js.map +7 -0
  148. package/dist/esm/chunks/{chunk.R6LQBI42.js → chunk.TZFUKJ24.js} +2 -2
  149. package/dist/esm/chunks/{chunk.SIRXAA3O.js → chunk.U5WMRBSC.js} +2 -2
  150. package/dist/esm/chunks/chunk.URCJO73M.js +7 -0
  151. package/dist/esm/chunks/{chunk.WY3E33CW.js.map → chunk.URCJO73M.js.map} +2 -2
  152. package/dist/esm/chunks/{chunk.GNDKQPDV.js → chunk.UWZWXNTW.js} +2 -2
  153. package/dist/esm/chunks/{chunk.KV67JXOC.js → chunk.VD5ZL5ZN.js} +2 -2
  154. package/dist/esm/chunks/{chunk.G7SMCLHQ.js → chunk.VDZ7HBKM.js} +2 -2
  155. package/dist/esm/chunks/{chunk.NUMKGUCK.js → chunk.W324TWF2.js} +2 -2
  156. package/dist/esm/chunks/chunk.WQGPIOL6.js +7 -0
  157. package/dist/esm/chunks/chunk.WQGPIOL6.js.map +7 -0
  158. package/dist/esm/chunks/chunk.XDANTL6C.js +7 -0
  159. package/dist/esm/chunks/chunk.XDANTL6C.js.map +7 -0
  160. package/dist/esm/chunks/chunk.XNCBGWE4.js +7 -0
  161. package/dist/esm/chunks/chunk.XNCBGWE4.js.map +7 -0
  162. package/dist/esm/chunks/{chunk.HDG2GHKC.js → chunk.YKZ25J6B.js} +2 -2
  163. package/dist/esm/chunks/{chunk.7V4BDSA5.js → chunk.Z2RB75TN.js} +2 -2
  164. package/dist/esm/chunks/chunk.Z7PBGV4K.js +7 -0
  165. package/dist/esm/chunks/{chunk.AMZZKEAE.js.map → chunk.Z7PBGV4K.js.map} +4 -4
  166. package/dist/esm/chunks/{chunk.O6V3YNMO.js → chunk.ZSD7MMVB.js} +2 -2
  167. package/dist/esm/chunks/chunk.ZVJMIBUM.js +7 -0
  168. package/dist/esm/chunks/chunk.ZVJMIBUM.js.map +7 -0
  169. package/dist/esm/circular-progress/index.js +1 -1
  170. package/dist/esm/color-picker/index.js +1 -1
  171. package/dist/esm/core/base/index.js +1 -1
  172. package/dist/esm/core/index.js +1 -1
  173. package/dist/esm/core/utils/index.js +1 -1
  174. package/dist/esm/date-picker/index.js +1 -1
  175. package/dist/esm/date-range-picker/index.js +1 -1
  176. package/dist/esm/dialog/index.js +1 -1
  177. package/dist/esm/divider/index.js +1 -1
  178. package/dist/esm/drawer/base/index.js +1 -1
  179. package/dist/esm/drawer/drawer/index.js +1 -1
  180. package/dist/esm/drawer/index.js +1 -1
  181. package/dist/esm/drawer/mini-drawer/index.js +1 -1
  182. package/dist/esm/drawer/modal-drawer/index.js +1 -1
  183. package/dist/esm/expansion-panel/index.js +1 -1
  184. package/dist/esm/file-picker/index.js +1 -1
  185. package/dist/esm/floating-action-button/index.js +1 -1
  186. package/dist/esm/focus-indicator/index.js +1 -1
  187. package/dist/esm/icon/index.js +1 -1
  188. package/dist/esm/icon-button/index.js +1 -1
  189. package/dist/esm/index.js +1 -1
  190. package/dist/esm/inline-message/index.js +1 -1
  191. package/dist/esm/keyboard-shortcut/index.js +1 -1
  192. package/dist/esm/label/index.js +1 -1
  193. package/dist/esm/label-value/index.js +1 -1
  194. package/dist/esm/linear-progress/index.js +1 -1
  195. package/dist/esm/list/index.js +1 -1
  196. package/dist/esm/list/list/index.js +1 -1
  197. package/dist/esm/list/list-item/index.js +1 -1
  198. package/dist/esm/list-dropdown/index.js +1 -1
  199. package/dist/esm/menu/index.js +1 -1
  200. package/dist/esm/open-icon/index.js +1 -1
  201. package/dist/esm/page-state/index.js +1 -1
  202. package/dist/esm/paginator/index.js +1 -1
  203. package/dist/esm/popup/index.js +1 -1
  204. package/dist/esm/product-icon/index.js +1 -1
  205. package/dist/esm/profile-card/index.js +1 -1
  206. package/dist/esm/quantity-field/index.js +1 -1
  207. package/dist/esm/radio/index.js +1 -1
  208. package/dist/esm/ripple/index.js +1 -1
  209. package/dist/esm/scaffold/index.js +1 -1
  210. package/dist/esm/select/core/index.js +1 -1
  211. package/dist/esm/select/index.js +1 -1
  212. package/dist/esm/select/option/index.js +1 -1
  213. package/dist/esm/select/option-group/index.js +1 -1
  214. package/dist/esm/select/select/index.js +1 -1
  215. package/dist/esm/select/select-dropdown/index.js +1 -1
  216. package/dist/esm/skeleton/index.js +1 -1
  217. package/dist/esm/slider/index.js +1 -1
  218. package/dist/esm/split-button/index.js +1 -1
  219. package/dist/esm/split-view/index.js +1 -1
  220. package/dist/esm/split-view/split-view/index.js +1 -1
  221. package/dist/esm/split-view/split-view-panel/index.js +1 -1
  222. package/dist/esm/stack/index.js +1 -1
  223. package/dist/esm/state-layer/index.js +1 -1
  224. package/dist/esm/stepper/index.js +1 -1
  225. package/dist/esm/stepper/step/index.js +1 -1
  226. package/dist/esm/stepper/stepper/index.js +1 -1
  227. package/dist/esm/switch/index.js +1 -1
  228. package/dist/esm/table/index.js +1 -1
  229. package/dist/esm/tabs/index.js +1 -1
  230. package/dist/esm/tabs/tab/index.js +1 -1
  231. package/dist/esm/tabs/tab-bar/index.js +1 -1
  232. package/dist/esm/text-field/index.js +1 -1
  233. package/dist/esm/time-picker/index.js +1 -1
  234. package/dist/esm/toast/index.js +1 -1
  235. package/dist/esm/toolbar/index.js +1 -1
  236. package/dist/esm/tooltip/index.js +1 -1
  237. package/dist/esm/view-switcher/index.js +1 -1
  238. package/dist/esm/view-switcher/view/index.js +1 -1
  239. package/dist/forge-dark.css +1 -1
  240. package/dist/forge.css +1 -1
  241. package/dist/theme/forge-theme.css +1 -1
  242. package/esm/app-bar/app-bar/app-bar-adapter.d.ts +30 -0
  243. package/esm/app-bar/app-bar/app-bar-adapter.js +71 -0
  244. package/esm/app-bar/{app-bar-constants.d.ts → app-bar/app-bar-constants.d.ts} +7 -11
  245. package/esm/app-bar/app-bar/app-bar-constants.js +32 -0
  246. package/esm/app-bar/{app-bar-foundation.d.ts → app-bar/app-bar-foundation.d.ts} +17 -16
  247. package/esm/app-bar/app-bar/app-bar-foundation.js +71 -0
  248. package/esm/app-bar/app-bar/app-bar.d.ts +66 -0
  249. package/esm/app-bar/app-bar/app-bar.js +107 -0
  250. package/esm/app-bar/app-bar/index.d.ts +10 -0
  251. package/esm/app-bar/app-bar/index.js +14 -0
  252. package/esm/app-bar/help-button/app-bar-help-button-adapter.d.ts +8 -1
  253. package/esm/app-bar/help-button/app-bar-help-button-adapter.js +22 -1
  254. package/esm/app-bar/help-button/app-bar-help-button-constants.d.ts +7 -0
  255. package/esm/app-bar/help-button/app-bar-help-button-constants.js +11 -1
  256. package/esm/app-bar/help-button/app-bar-help-button-foundation.d.ts +4 -0
  257. package/esm/app-bar/help-button/app-bar-help-button-foundation.js +16 -0
  258. package/esm/app-bar/help-button/app-bar-help-button.d.ts +13 -2
  259. package/esm/app-bar/help-button/app-bar-help-button.js +26 -5
  260. package/esm/app-bar/index.d.ts +0 -4
  261. package/esm/app-bar/index.js +0 -8
  262. package/esm/app-bar/menu-button/app-bar-menu-button-constants.d.ts +7 -0
  263. package/esm/app-bar/menu-button/app-bar-menu-button-constants.js +9 -1
  264. package/esm/app-bar/menu-button/app-bar-menu-button.d.ts +19 -2
  265. package/esm/app-bar/menu-button/app-bar-menu-button.js +57 -8
  266. package/esm/app-bar/notification-button/app-bar-notification-button-adapter.d.ts +6 -2
  267. package/esm/app-bar/notification-button/app-bar-notification-button-adapter.js +17 -1
  268. package/esm/app-bar/notification-button/app-bar-notification-button-constants.d.ts +1 -0
  269. package/esm/app-bar/notification-button/app-bar-notification-button-constants.js +3 -1
  270. package/esm/app-bar/notification-button/app-bar-notification-button-foundation.d.ts +4 -4
  271. package/esm/app-bar/notification-button/app-bar-notification-button-foundation.js +9 -11
  272. package/esm/app-bar/notification-button/app-bar-notification-button.d.ts +17 -4
  273. package/esm/app-bar/notification-button/app-bar-notification-button.js +20 -5
  274. package/esm/app-bar/profile-button/app-bar-profile-button-adapter.d.ts +7 -1
  275. package/esm/app-bar/profile-button/app-bar-profile-button-adapter.js +26 -3
  276. package/esm/app-bar/profile-button/app-bar-profile-button-constants.d.ts +1 -3
  277. package/esm/app-bar/profile-button/app-bar-profile-button-constants.js +2 -4
  278. package/esm/app-bar/profile-button/app-bar-profile-button-foundation.d.ts +5 -2
  279. package/esm/app-bar/profile-button/app-bar-profile-button-foundation.js +20 -22
  280. package/esm/app-bar/profile-button/app-bar-profile-button.d.ts +31 -2
  281. package/esm/app-bar/profile-button/app-bar-profile-button.js +33 -6
  282. package/esm/button/base/base-button-adapter.d.ts +4 -8
  283. package/esm/button/base/base-button-adapter.js +5 -17
  284. package/esm/button/base/base-button-constants.d.ts +3 -0
  285. package/esm/button/base/base-button-foundation.d.ts +6 -7
  286. package/esm/button/base/base-button-foundation.js +10 -4
  287. package/esm/button/base/base-button.d.ts +3 -1
  288. package/esm/button/base/base-button.js +6 -0
  289. package/esm/button/button.js +3 -5
  290. package/esm/checkbox/checkbox.js +1 -1
  291. package/esm/circular-progress/circular-progress-adapter.d.ts +2 -2
  292. package/esm/circular-progress/circular-progress-adapter.js +15 -6
  293. package/esm/circular-progress/circular-progress-constants.d.ts +1 -2
  294. package/esm/circular-progress/circular-progress-constants.js +1 -2
  295. package/esm/circular-progress/circular-progress-foundation.d.ts +0 -1
  296. package/esm/circular-progress/circular-progress-foundation.js +3 -5
  297. package/esm/circular-progress/circular-progress.d.ts +1 -2
  298. package/esm/circular-progress/circular-progress.js +6 -11
  299. package/esm/constants.d.ts +9 -0
  300. package/esm/core/base/base-adapter.js +1 -1
  301. package/esm/core/utils/utils.d.ts +1 -1
  302. package/esm/floating-action-button/floating-action-button-adapter.d.ts +20 -0
  303. package/esm/floating-action-button/floating-action-button-adapter.js +49 -0
  304. package/esm/floating-action-button/floating-action-button-component-delegate.d.ts +19 -3
  305. package/esm/floating-action-button/floating-action-button-component-delegate.js +62 -14
  306. package/esm/floating-action-button/floating-action-button-constants.d.ts +19 -14
  307. package/esm/floating-action-button/floating-action-button-constants.js +15 -15
  308. package/esm/floating-action-button/floating-action-button-foundation.d.ts +27 -0
  309. package/esm/floating-action-button/floating-action-button-foundation.js +48 -0
  310. package/esm/floating-action-button/floating-action-button.d.ts +86 -25
  311. package/esm/floating-action-button/floating-action-button.js +117 -104
  312. package/esm/floating-action-button/index.d.ts +3 -1
  313. package/esm/floating-action-button/index.js +5 -3
  314. package/esm/focus-indicator/focus-indicator.js +2 -2
  315. package/esm/icon-button/icon-button-constants.d.ts +3 -3
  316. package/esm/icon-button/icon-button.d.ts +51 -0
  317. package/esm/icon-button/icon-button.js +54 -5
  318. package/esm/icon-button/index.d.ts +3 -1
  319. package/esm/icon-button/index.js +3 -1
  320. package/esm/index.js +2 -2
  321. package/esm/label/label-foundation.js +4 -2
  322. package/esm/linear-progress/linear-progress-adapter.d.ts +2 -2
  323. package/esm/linear-progress/linear-progress-adapter.js +14 -6
  324. package/esm/linear-progress/linear-progress-constants.d.ts +0 -1
  325. package/esm/linear-progress/linear-progress-constants.js +1 -2
  326. package/esm/linear-progress/linear-progress-foundation.d.ts +1 -1
  327. package/esm/linear-progress/linear-progress-foundation.js +2 -2
  328. package/esm/linear-progress/linear-progress.d.ts +1 -1
  329. package/esm/linear-progress/linear-progress.js +5 -7
  330. package/esm/list/list-item/list-item.js +2 -2
  331. package/esm/menu/menu-constants.js +1 -1
  332. package/esm/profile-card/profile-card-adapter.d.ts +5 -8
  333. package/esm/profile-card/profile-card-adapter.js +5 -16
  334. package/esm/profile-card/profile-card-constants.js +3 -3
  335. package/esm/profile-card/profile-card-foundation.d.ts +4 -1
  336. package/esm/profile-card/profile-card-foundation.js +24 -13
  337. package/esm/profile-card/profile-card.d.ts +1 -2
  338. package/esm/profile-card/profile-card.js +11 -8
  339. package/esm/slider/slider.js +1 -1
  340. package/esm/split-view/split-view-panel/split-view-panel.js +1 -1
  341. package/esm/switch/switch.js +1 -1
  342. package/esm/tabs/tab/tab.js +1 -1
  343. package/esm/toolbar/toolbar.js +1 -1
  344. package/package.json +1 -2
  345. package/styles/app-bar/app-bar/_configuration.scss +16 -0
  346. package/styles/app-bar/app-bar/_core.scss +95 -0
  347. package/styles/app-bar/app-bar/_token-utils.scss +30 -0
  348. package/styles/app-bar/app-bar/app-bar.scss +142 -0
  349. package/styles/app-bar/app-bar/index.scss +8 -0
  350. package/styles/button/button.scss +18 -5
  351. package/styles/circular-progress/_core.scss +2 -0
  352. package/styles/circular-progress/circular-progress.scss +2 -2
  353. package/styles/core/styles/elevation/index.scss +10 -0
  354. package/styles/core/styles/spacing/index.scss +1 -1
  355. package/styles/core/styles/theme/index.scss +2 -0
  356. package/styles/core/styles/tokens/app-bar/app-bar/_tokens.scss +35 -0
  357. package/styles/core/styles/tokens/circular-progress/_tokens.scss +2 -1
  358. package/styles/core/styles/tokens/floating-action-button/_tokens.scss +66 -0
  359. package/styles/core/styles/tokens/icon-button/_tokens.scss +1 -1
  360. package/styles/core/styles/tokens/profile-card/_tokens.scss +19 -0
  361. package/styles/core/styles/tokens/shape/_tokens.scss +6 -0
  362. package/styles/core/styles/tokens/spacing/_tokens.scss +2 -0
  363. package/styles/core/styles/tokens/theme/_token-utils.scss +2 -2
  364. package/styles/core/styles/tokens/theme/_tokens.brand.scss +22 -0
  365. package/styles/core/styles/tokens/theme/_tokens.scss +3 -0
  366. package/styles/floating-action-button/_configuration.scss +16 -0
  367. package/styles/floating-action-button/_core.scss +103 -0
  368. package/styles/floating-action-button/_token-utils.scss +30 -0
  369. package/styles/floating-action-button/floating-action-button.scss +129 -0
  370. package/styles/floating-action-button/index.scss +8 -0
  371. package/styles/focus-indicator/focus-indicator.scss +11 -28
  372. package/styles/forge.scss +0 -1
  373. package/styles/icon-button/_core.scss +0 -4
  374. package/styles/icon-button/icon-button.scss +45 -11
  375. package/styles/list/list-item/list-item.scss +2 -0
  376. package/styles/profile-card/_configuration.scss +10 -0
  377. package/styles/profile-card/_core.scss +58 -0
  378. package/styles/profile-card/_token-utils.scss +30 -0
  379. package/styles/profile-card/index.scss +8 -0
  380. package/styles/profile-card/profile-card.scss +55 -6
  381. package/styles/theme/_theme-dark.scss +0 -3
  382. package/styles/toolbar/_mixins.scss +0 -1
  383. package/dist/esm/chunks/chunk.36F2GVWS.js +0 -7
  384. package/dist/esm/chunks/chunk.36F2GVWS.js.map +0 -7
  385. package/dist/esm/chunks/chunk.4SPEX2GJ.js +0 -7
  386. package/dist/esm/chunks/chunk.4SPEX2GJ.js.map +0 -7
  387. package/dist/esm/chunks/chunk.4YFJVHXN.js +0 -7
  388. package/dist/esm/chunks/chunk.4YFJVHXN.js.map +0 -7
  389. package/dist/esm/chunks/chunk.5A2PA7TL.js.map +0 -7
  390. package/dist/esm/chunks/chunk.5CSXPRL3.js +0 -7
  391. package/dist/esm/chunks/chunk.5CSXPRL3.js.map +0 -7
  392. package/dist/esm/chunks/chunk.5LVZVQXB.js +0 -7
  393. package/dist/esm/chunks/chunk.5LVZVQXB.js.map +0 -7
  394. package/dist/esm/chunks/chunk.5WMYF27O.js +0 -7
  395. package/dist/esm/chunks/chunk.6M27ERWW.js +0 -12
  396. package/dist/esm/chunks/chunk.6M27ERWW.js.map +0 -7
  397. package/dist/esm/chunks/chunk.6ZNBFKNP.js +0 -7
  398. package/dist/esm/chunks/chunk.6ZNBFKNP.js.map +0 -7
  399. package/dist/esm/chunks/chunk.AMZZKEAE.js +0 -7
  400. package/dist/esm/chunks/chunk.APPY5AYL.js +0 -7
  401. package/dist/esm/chunks/chunk.APPY5AYL.js.map +0 -7
  402. package/dist/esm/chunks/chunk.AUCBR6CC.js +0 -7
  403. package/dist/esm/chunks/chunk.AUCBR6CC.js.map +0 -7
  404. package/dist/esm/chunks/chunk.EJX6RI4I.js +0 -7
  405. package/dist/esm/chunks/chunk.EJX6RI4I.js.map +0 -7
  406. package/dist/esm/chunks/chunk.EWK76SPH.js +0 -7
  407. package/dist/esm/chunks/chunk.EWK76SPH.js.map +0 -7
  408. package/dist/esm/chunks/chunk.FAXYCG55.js +0 -7
  409. package/dist/esm/chunks/chunk.FAXYCG55.js.map +0 -7
  410. package/dist/esm/chunks/chunk.LUNKNRRH.js +0 -7
  411. package/dist/esm/chunks/chunk.PMYQY3D3.js +0 -7
  412. package/dist/esm/chunks/chunk.QN5T26HH.js +0 -7
  413. package/dist/esm/chunks/chunk.QQRPV4RN.js +0 -7
  414. package/dist/esm/chunks/chunk.STB2FEUA.js +0 -7
  415. package/dist/esm/chunks/chunk.WMVYRDUJ.js +0 -7
  416. package/dist/esm/chunks/chunk.WMVYRDUJ.js.map +0 -7
  417. package/dist/esm/chunks/chunk.WY3E33CW.js +0 -7
  418. package/dist/esm/chunks/chunk.XLL7L2UB.js +0 -7
  419. package/dist/esm/chunks/chunk.XLL7L2UB.js.map +0 -7
  420. package/dist/esm/chunks/chunk.XNFS7YIB.js +0 -7
  421. package/dist/esm/chunks/chunk.YWAUEUAH.js +0 -7
  422. package/dist/esm/chunks/chunk.YWAUEUAH.js.map +0 -7
  423. package/dist/esm/chunks/chunk.ZKM667OT.js +0 -7
  424. package/dist/esm/chunks/chunk.ZKM667OT.js.map +0 -7
  425. package/dist/floating-action-button/forge-floating-action-button.css +0 -6
  426. package/esm/app-bar/app-bar-adapter.d.ts +0 -43
  427. package/esm/app-bar/app-bar-adapter.js +0 -60
  428. package/esm/app-bar/app-bar-constants.js +0 -37
  429. package/esm/app-bar/app-bar-foundation.js +0 -70
  430. package/esm/app-bar/app-bar.d.ts +0 -38
  431. package/esm/app-bar/app-bar.js +0 -75
  432. package/styles/app-bar/_mixins.scss +0 -254
  433. package/styles/app-bar/_variables.scss +0 -34
  434. package/styles/app-bar/app-bar.scss +0 -22
  435. package/styles/floating-action-button/_extended-fab-theme.scss +0 -238
  436. package/styles/floating-action-button/_fab-custom-properties.scss +0 -29
  437. package/styles/floating-action-button/_fab-theme.scss +0 -541
  438. package/styles/floating-action-button/_fab.mixins.scss +0 -351
  439. package/styles/floating-action-button/forge-floating-action-button.scss +0 -16
  440. package/styles/profile-card/_mixins.scss +0 -83
  441. /package/dist/esm/chunks/{chunk.FLWNOP42.js.map → chunk.26E4L52W.js.map} +0 -0
  442. /package/dist/esm/chunks/{chunk.ZRSDTCSD.js.map → chunk.2GYZM6ZG.js.map} +0 -0
  443. /package/dist/esm/chunks/{chunk.PMYQY3D3.js.map → chunk.3RMBFRGC.js.map} +0 -0
  444. /package/dist/esm/chunks/{chunk.DTLZOIUQ.js.map → chunk.3UO6S3IK.js.map} +0 -0
  445. /package/dist/esm/chunks/{chunk.MWYQRG5W.js.map → chunk.4B5IOZAT.js.map} +0 -0
  446. /package/dist/esm/chunks/{chunk.IDMDBMBR.js.map → chunk.4QDN5PM6.js.map} +0 -0
  447. /package/dist/esm/chunks/{chunk.Z5RROENA.js.map → chunk.543K5Y4E.js.map} +0 -0
  448. /package/dist/esm/chunks/{chunk.W2LN45WY.js.map → chunk.57PXXJA6.js.map} +0 -0
  449. /package/dist/esm/chunks/{chunk.675V42JS.js.map → chunk.5C24LZNU.js.map} +0 -0
  450. /package/dist/esm/chunks/{chunk.V24M62MC.js.map → chunk.5H4G6BWX.js.map} +0 -0
  451. /package/dist/esm/chunks/{chunk.QLCVRJ3Q.js.map → chunk.5VHUMZYS.js.map} +0 -0
  452. /package/dist/esm/chunks/{chunk.OWZREAT6.js.map → chunk.6DXDNQUR.js.map} +0 -0
  453. /package/dist/esm/chunks/{chunk.7VMJLHQY.js.map → chunk.6Q3SV2R2.js.map} +0 -0
  454. /package/dist/esm/chunks/{chunk.IHAHJPMB.js.map → chunk.7ABZUBTT.js.map} +0 -0
  455. /package/dist/esm/chunks/{chunk.Z5ZLKM7W.js.map → chunk.7BGOH44S.js.map} +0 -0
  456. /package/dist/esm/chunks/{chunk.LOG6GQOK.js.map → chunk.7DHDFH5L.js.map} +0 -0
  457. /package/dist/esm/chunks/{chunk.3R4BUIQP.js.map → chunk.7PP6QHOM.js.map} +0 -0
  458. /package/dist/esm/chunks/{chunk.YBZK6LJZ.js.map → chunk.7UXLLUTN.js.map} +0 -0
  459. /package/dist/esm/chunks/{chunk.5RM65QPN.js.map → chunk.7W2UWAZX.js.map} +0 -0
  460. /package/dist/esm/chunks/{chunk.6NTYTHAL.js.map → chunk.AEJGC4YG.js.map} +0 -0
  461. /package/dist/esm/chunks/{chunk.BTXY3XMJ.js.map → chunk.B46Q3AFP.js.map} +0 -0
  462. /package/dist/esm/chunks/{chunk.QJCNMYD3.js.map → chunk.BFUGFHEH.js.map} +0 -0
  463. /package/dist/esm/chunks/{chunk.2ZU6LWHE.js.map → chunk.BMQYEYCT.js.map} +0 -0
  464. /package/dist/esm/chunks/{chunk.HOLCNJXC.js.map → chunk.C5IB44HX.js.map} +0 -0
  465. /package/dist/esm/chunks/{chunk.G73KL7P2.js.map → chunk.CTZ3AWDW.js.map} +0 -0
  466. /package/dist/esm/chunks/{chunk.QLOYOZN3.js.map → chunk.DD35U4AA.js.map} +0 -0
  467. /package/dist/esm/chunks/{chunk.XEFWZKHQ.js.map → chunk.DDXIHZFX.js.map} +0 -0
  468. /package/dist/esm/chunks/{chunk.MKJCHUJH.js.map → chunk.DOEG3DWJ.js.map} +0 -0
  469. /package/dist/esm/chunks/{chunk.2MSL7CYM.js.map → chunk.DTKFE7YB.js.map} +0 -0
  470. /package/dist/esm/chunks/{chunk.FXIWCHLW.js.map → chunk.E3GVKR4E.js.map} +0 -0
  471. /package/dist/esm/chunks/{chunk.FFHSUJFM.js.map → chunk.EBSBAFCX.js.map} +0 -0
  472. /package/dist/esm/chunks/{chunk.RES7WDKH.js.map → chunk.F2EBSV5Z.js.map} +0 -0
  473. /package/dist/esm/chunks/{chunk.BBCZNGT3.js.map → chunk.FB6ZLH6P.js.map} +0 -0
  474. /package/dist/esm/chunks/{chunk.VFKHRAWD.js.map → chunk.FQSL747N.js.map} +0 -0
  475. /package/dist/esm/chunks/{chunk.JVLJH6PR.js.map → chunk.G2BNY5QQ.js.map} +0 -0
  476. /package/dist/esm/chunks/{chunk.URJQNB3S.js.map → chunk.GS72TBUD.js.map} +0 -0
  477. /package/dist/esm/chunks/{chunk.5PG6WIIX.js.map → chunk.GT3VPSXY.js.map} +0 -0
  478. /package/dist/esm/chunks/{chunk.IMLJD35R.js.map → chunk.GWJ4QCSW.js.map} +0 -0
  479. /package/dist/esm/chunks/{chunk.IISWKFCX.js.map → chunk.H7GW57Q6.js.map} +0 -0
  480. /package/dist/esm/chunks/{chunk.BB4UF5RX.js.map → chunk.HHHBS6FB.js.map} +0 -0
  481. /package/dist/esm/chunks/{chunk.KPJWP77R.js.map → chunk.I3NHK2S3.js.map} +0 -0
  482. /package/dist/esm/chunks/{chunk.5N4N6DL6.js.map → chunk.IEB5KRFQ.js.map} +0 -0
  483. /package/dist/esm/chunks/{chunk.BQ2X5SBP.js.map → chunk.IVUK3W34.js.map} +0 -0
  484. /package/dist/esm/chunks/{chunk.ZGRQDDHO.js.map → chunk.IW7HALLT.js.map} +0 -0
  485. /package/dist/esm/chunks/{chunk.7ZROQ6D3.js.map → chunk.J3B5CWKT.js.map} +0 -0
  486. /package/dist/esm/chunks/{chunk.TBGMJQYJ.js.map → chunk.JVK64JDZ.js.map} +0 -0
  487. /package/dist/esm/chunks/{chunk.AUBOJZQ7.js.map → chunk.KLPF4CNX.js.map} +0 -0
  488. /package/dist/esm/chunks/{chunk.IT7XPDAV.js.map → chunk.L4Y4RO5O.js.map} +0 -0
  489. /package/dist/esm/chunks/{chunk.IAWYYNUU.js.map → chunk.LCNR2RPT.js.map} +0 -0
  490. /package/dist/esm/chunks/{chunk.TU74SREL.js.map → chunk.LMIKNDBS.js.map} +0 -0
  491. /package/dist/esm/chunks/{chunk.VO6YJCEU.js.map → chunk.LSNAGIIH.js.map} +0 -0
  492. /package/dist/esm/chunks/{chunk.ARQMMZJL.js.map → chunk.LXX3YZYS.js.map} +0 -0
  493. /package/dist/esm/chunks/{chunk.AMLT6XJP.js.map → chunk.NG6UZ4OL.js.map} +0 -0
  494. /package/dist/esm/chunks/{chunk.YKIBREM5.js.map → chunk.NYYXUH3X.js.map} +0 -0
  495. /package/dist/esm/chunks/{chunk.HRRJIFC5.js.map → chunk.NZKIFXBU.js.map} +0 -0
  496. /package/dist/esm/chunks/{chunk.YAERJVPL.js.map → chunk.OED5UCYT.js.map} +0 -0
  497. /package/dist/esm/chunks/{chunk.RP674CRC.js.map → chunk.OYO5O3NF.js.map} +0 -0
  498. /package/dist/esm/chunks/{chunk.LCR4YH3O.js.map → chunk.P7LC3YYW.js.map} +0 -0
  499. /package/dist/esm/chunks/{chunk.KV5IKYG2.js.map → chunk.PK7R6WDF.js.map} +0 -0
  500. /package/dist/esm/chunks/{chunk.PYR2OCCH.js.map → chunk.PQQVUUHU.js.map} +0 -0
  501. /package/dist/esm/chunks/{chunk.SLJ6HDK7.js.map → chunk.PSTGTQVK.js.map} +0 -0
  502. /package/dist/esm/chunks/{chunk.36C6SIPW.js.map → chunk.QFY23EWU.js.map} +0 -0
  503. /package/dist/esm/chunks/{chunk.S5QL4SPT.js.map → chunk.RCSBJQ4G.js.map} +0 -0
  504. /package/dist/esm/chunks/{chunk.FYVDTZLF.js.map → chunk.RYNQDXFA.js.map} +0 -0
  505. /package/dist/esm/chunks/{chunk.HAKF2T2D.js.map → chunk.RZZBM3AW.js.map} +0 -0
  506. /package/dist/esm/chunks/{chunk.3ZPSN2QG.js.map → chunk.SNF35Y6C.js.map} +0 -0
  507. /package/dist/esm/chunks/{chunk.XYAZVLPR.js.map → chunk.T34DG7BU.js.map} +0 -0
  508. /package/dist/esm/chunks/{chunk.3HCYRDRI.js.map → chunk.THWSN3X4.js.map} +0 -0
  509. /package/dist/esm/chunks/{chunk.R6LQBI42.js.map → chunk.TZFUKJ24.js.map} +0 -0
  510. /package/dist/esm/chunks/{chunk.SIRXAA3O.js.map → chunk.U5WMRBSC.js.map} +0 -0
  511. /package/dist/esm/chunks/{chunk.GNDKQPDV.js.map → chunk.UWZWXNTW.js.map} +0 -0
  512. /package/dist/esm/chunks/{chunk.KV67JXOC.js.map → chunk.VD5ZL5ZN.js.map} +0 -0
  513. /package/dist/esm/chunks/{chunk.G7SMCLHQ.js.map → chunk.VDZ7HBKM.js.map} +0 -0
  514. /package/dist/esm/chunks/{chunk.NUMKGUCK.js.map → chunk.W324TWF2.js.map} +0 -0
  515. /package/dist/esm/chunks/{chunk.HDG2GHKC.js.map → chunk.YKZ25J6B.js.map} +0 -0
  516. /package/dist/esm/chunks/{chunk.7V4BDSA5.js.map → chunk.Z2RB75TN.js.map} +0 -0
  517. /package/dist/esm/chunks/{chunk.O6V3YNMO.js.map → chunk.ZSD7MMVB.js.map} +0 -0
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/circular-progress/circular-progress-constants.ts", "../../src/circular-progress/circular-progress-adapter.ts", "../../src/circular-progress/circular-progress-foundation.ts", "../../src/circular-progress/circular-progress.ts", "../../src/circular-progress/index.ts"],
4
+ "sourcesContent": ["import { COMPONENT_NAME_PREFIX, Theme } from '../constants';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}circular-progress`;\n\nconst attributes = {\n DETERMINATE: 'determinate',\n PROGRESS: 'progress',\n THEME: 'theme',\n TRACK: 'track'\n};\n\nconst classes = {\n INDETERMINATE: 'forge-circular-progress--indeterminate'\n};\n\nconst selectors = {\n ROOT: '.forge-circular-progress',\n DETERMINATE_PROGRESS_CIRCLE: '.progress',\n TEMPLATES: 'svg, .spinner'\n};\n\nexport const CIRCULAR_PROGRESS_CONSTANTS = {\n elementName,\n attributes,\n classes,\n selectors\n};\n\nexport type CircularProgressTheme = Theme;\n", "import { getShadowElement } from '@tylertech/forge-core';\n\nimport { ICircularProgressComponent } from './circular-progress';\nimport { CIRCULAR_PROGRESS_CONSTANTS } from './circular-progress-constants';\nimport { BaseAdapter, IBaseAdapter } from '../core/base/base-adapter';\n\nconst indeterminateTemplate = '<svg viewBox=\\\"0 0 4800 4800\\\"><circle class=\\\"track-background\\\" pathLength=\\\"100\\\"></circle></svg><div class=\\\"spinner\\\"><div class=\\\"left\\\"><div class=\\\"circle\\\"></div></div><div class=\\\"right\\\"><div class=\\\"circle\\\"></div></div></div>';\nconst determinateTemplate = '<svg viewBox=\\\"0 0 4800 4800\\\"><circle class=\\\"track-background\\\" pathLength=\\\"100\\\"></circle><circle class=\\\"track\\\" pathLength=\\\"100\\\"></circle><circle class=\\\"progress\\\" pathLength=\\\"100\\\" stroke-dashoffset=\\\"100\\\"></circle></svg>';\n\nexport interface ICircularProgressAdapter extends IBaseAdapter {\n initialize(): void;\n setDeterminate(value: boolean): void;\n setProgress(value: number): void;\n}\n\nexport class CircularProgressAdapter extends BaseAdapter<ICircularProgressComponent> implements ICircularProgressAdapter {\n private readonly _rootElement: HTMLElement;\n private _determinateProgressCircleElement: HTMLElement | undefined;\n\n constructor(component: ICircularProgressComponent) {\n super(component);\n this._rootElement = getShadowElement(this._component, CIRCULAR_PROGRESS_CONSTANTS.selectors.ROOT);\n }\n\n public initialize(): void {\n // TODO: Replace with ARIA mixin\n if (!this._component.hasAttribute('role')) {\n this._component.setAttribute('role', 'progressbar');\n }\n if (!this._component.hasAttribute('aria-valuemin')) {\n this._component.setAttribute('aria-valuemin', '0');\n }\n if (!this._component.hasAttribute('aria-valuemax')) {\n this._component.setAttribute('aria-valuemax', '1');\n }\n }\n\n public setDeterminate(value: boolean): void {\n this._tryResetTemplate();\n this._rootElement.classList.toggle(CIRCULAR_PROGRESS_CONSTANTS.classes.INDETERMINATE, !value);\n \n if (value) {\n this._rootElement.insertAdjacentHTML('beforeend', determinateTemplate);\n this._determinateProgressCircleElement = getShadowElement(this._component, CIRCULAR_PROGRESS_CONSTANTS.selectors.DETERMINATE_PROGRESS_CIRCLE);\n } else {\n this._rootElement.insertAdjacentHTML('beforeend', indeterminateTemplate);\n this._component.removeAttribute('aria-valuenow');\n this._determinateProgressCircleElement = undefined;\n }\n }\n\n public setProgress(value: number): void {\n this._component.setAttribute('aria-valuenow', `${value}`);\n this._determinateProgressCircleElement?.setAttribute('stroke-dashoffset', `${(1 - value) * 100}`);\n }\n\n private _tryResetTemplate(): void {\n const elements = this._component.shadowRoot?.querySelectorAll(CIRCULAR_PROGRESS_CONSTANTS.selectors.TEMPLATES);\n elements?.forEach(el => el.remove());\n }\n}\n", "import { ICustomElementFoundation } from '@tylertech/forge-core';\n\nimport { ICircularProgressAdapter } from './circular-progress-adapter';\nimport { CircularProgressTheme, CIRCULAR_PROGRESS_CONSTANTS } from './circular-progress-constants';\n\nexport interface ICircularProgressFoundation extends ICustomElementFoundation {\n determinate: boolean;\n progress: number;\n theme: CircularProgressTheme;\n track: boolean;\n}\n\nexport class CircularProgressFoundation implements ICircularProgressFoundation {\n private _determinate = false;\n private _progress = 0;\n private _theme: CircularProgressTheme = 'primary';\n private _track = false;\n\n constructor(private _adapter: ICircularProgressAdapter) {}\n\n public initialize(): void {\n this._adapter.initialize();\n this._applyDeterminate();\n }\n\n private _applyDeterminate(): void {\n this._adapter.setDeterminate(this._determinate);\n\n if (this._determinate) {\n this._adapter.setProgress(this._progress);\n }\n }\n\n public get determinate(): boolean {\n return this._determinate;\n }\n public set determinate(value: boolean) {\n value = Boolean(value);\n if (this._determinate !== value) {\n this._determinate = value;\n this._applyDeterminate();\n this._adapter.toggleHostAttribute(CIRCULAR_PROGRESS_CONSTANTS.attributes.DETERMINATE, this._determinate);\n }\n }\n\n public get progress(): number {\n return this._progress;\n }\n public set progress(value: number) {\n if (this._progress !== value) {\n this._progress = value;\n if (this._determinate) {\n this._adapter.setProgress(this._progress);\n }\n this._adapter.setHostAttribute(CIRCULAR_PROGRESS_CONSTANTS.attributes.PROGRESS, `${this._progress}`);\n }\n }\n\n public get theme(): CircularProgressTheme {\n return this._theme;\n }\n public set theme(value: CircularProgressTheme) {\n if (this._theme !== value) {\n this._theme = value;\n this._adapter.toggleHostAttribute(CIRCULAR_PROGRESS_CONSTANTS.attributes.THEME, !!this._theme, this._theme);\n }\n }\n\n public get track(): boolean {\n return this._track;\n }\n public set track(value: boolean) {\n value = Boolean(value);\n if (this._track !== value) {\n this._track = value;\n this._adapter.toggleHostAttribute(CIRCULAR_PROGRESS_CONSTANTS.attributes.TRACK, this._track);\n }\n }\n}\n", "import { CustomElement, attachShadowTemplate, FoundationProperty, coerceBoolean, coerceNumber } from '@tylertech/forge-core';\n\nimport { CircularProgressAdapter } from './circular-progress-adapter';\nimport { CircularProgressFoundation } from './circular-progress-foundation';\nimport { CircularProgressTheme, CIRCULAR_PROGRESS_CONSTANTS } from './circular-progress-constants';\nimport { BaseComponent, IBaseComponent } from '../core/base/base-component';\n\nconst template = '<template><div class=\\\"forge-circular-progress\\\" part=\\\"progressbar\\\"><slot class=\\\"center-content\\\"></slot></div></template>';\nconst styles = ':host{--_circular-progress-size:var(--forge-circular-progress-size, 48px)}:host{display:-webkit-inline-box;display:inline-flex;vertical-align:middle;min-block-size:var(--_circular-progress-size);min-inline-size:var(--_circular-progress-size);position:relative;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;-webkit-transition:background-color var(--_circular-progress-theme-transition-duration) var(--_circular-progress-theme-transition-timing);transition:background-color var(--_circular-progress-theme-transition-duration) var(--_circular-progress-theme-transition-timing);contain:strict;content-visibility:auto}:host([hidden]){display:none}.forge-circular-progress{--_circular-progress-padding:var(--forge-circular-progress-padding, 0);--_circular-progress-track-width:var(--forge-circular-progress-track-width, 12);--_circular-progress-track-color:var(--forge-circular-progress-track-color, transparent);--_circular-progress-track-fill-color:var(--forge-circular-progress-track-fill-color, var(--forge-theme-tertiary-container, #d0d7ff));--_circular-progress-indicator-color:var(--forge-circular-progress-indicator-color, var(--forge-theme-tertiary, #3d5afe));--_circular-progress-arc-duration:var(--forge-circular-progress-arc-duration, 1333ms);--_circular-progress-theme-transition-duration:var(--forge-circular-progress-theme-transition-duration, var(--forge-animation-duration-short3, 150ms));--_circular-progress-theme-transition-timing:var(--forge-circular-progress-theme-transition-timing, var(--forge-animation-easing-standard, cubic-bezier(0.2, 0, 0, 1)))}.forge-circular-progress{-webkit-box-flex:1;flex:1;align-self:stretch;margin:var(--_circular-progress-padding)}.forge-circular-progress--indeterminate{will-change:transform;-webkit-animation:linear infinite linear-rotate;animation:linear infinite linear-rotate;-webkit-animation-duration:calc(var(--_circular-progress-arc-duration) * 360 / 306);animation-duration:calc(var(--_circular-progress-arc-duration) * 360 / 306)}.circle,.forge-circular-progress,.left,.right,.spinner,svg{position:absolute;inset:0}.center-content{display:-webkit-box;display:flex;-webkit-box-pack:center;justify-content:center;-webkit-box-align:center;align-items:center;width:100%;height:100%}.left{overflow:hidden;inset:0 50% 0 0}.left .circle{rotate:135deg;inset:0 -100% 0 0}.right{overflow:hidden;inset:0 0 0 50%}.right .circle{rotate:100deg;inset:0 0 0 -100%;-webkit-animation-delay:calc(-.5 * var(--_circular-progress-arc-duration)),0s;animation-delay:calc(-.5 * var(--_circular-progress-arc-duration)),0s}.circle{-webkit-box-sizing:border-box;box-sizing:border-box;border-radius:50%;border:solid calc(var(--_circular-progress-size) * var(--_circular-progress-track-width)/ 100);border-color:var(--_circular-progress-indicator-color) var(--_circular-progress-indicator-color) transparent transparent;-webkit-transition:border-color var(--_circular-progress-theme-transition-duration) var(--_circular-progress-theme-transition-timing);transition:border-color var(--_circular-progress-theme-transition-duration) var(--_circular-progress-theme-transition-timing);will-change:transform;-webkit-animation:expand-arc;animation:expand-arc;-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite;-webkit-animation-fill-mode:both;animation-fill-mode:both;-webkit-animation-duration:var(--_circular-progress-arc-duration),calc(4 * var(--_circular-progress-arc-duration));animation-duration:var(--_circular-progress-arc-duration),calc(4 * var(--_circular-progress-arc-duration));-webkit-animation-timing-function:cubic-bezier(0.4,0,0.2,1);animation-timing-function:cubic-bezier(0.4,0,0.2,1)}svg{-webkit-transform:rotate(-90deg);transform:rotate(-90deg)}svg circle{cx:50%;cy:50%;r:calc(50% * (1 - var(--_circular-progress-track-width)/ 100));stroke-width:calc(var(--_circular-progress-track-width) * 1%);stroke-dasharray:100;fill:transparent}.progress{-webkit-transition:stroke-dashoffset .5s cubic-bezier(0, 0, .2, 1),stroke var(--_circular-progress-theme-transition-duration) var(--_circular-progress-theme-transition-timing);transition:stroke-dashoffset .5s cubic-bezier(0, 0, .2, 1),stroke var(--_circular-progress-theme-transition-duration) var(--_circular-progress-theme-transition-timing);stroke:var(--_circular-progress-indicator-color)}.track{stroke:transparent}.track-background{-webkit-transition:stroke var(--_circular-progress-theme-transition-duration) var(--_circular-progress-theme-transition-timing);transition:stroke var(--_circular-progress-theme-transition-duration) var(--_circular-progress-theme-transition-timing);stroke:var(--_circular-progress-track-color)}.spinner{will-change:transform;-webkit-animation:infinite both rotate-arc;animation:infinite both rotate-arc;-webkit-animation-duration:calc(4 * var(--_circular-progress-arc-duration));animation-duration:calc(4 * var(--_circular-progress-arc-duration));-webkit-animation-timing-function:cubic-bezier(0.4,0,0.2,1);animation-timing-function:cubic-bezier(0.4,0,0.2,1)}:host([theme=primary]) .forge-circular-progress{--_circular-progress-indicator-color:var(--forge-circular-progress-indicator-color, var(--forge-theme-primary, #3f51b5));--_circular-progress-track-color:var(--forge-circular-progress-track-color, var(--forge-theme-primary-container, #d1d5ed))}:host([theme=secondary]) .forge-circular-progress{--_circular-progress-indicator-color:var(--forge-circular-progress-indicator-color, var(--forge-theme-secondary, #ffc107));--_circular-progress-track-color:var(--forge-circular-progress-track-color, var(--forge-theme-secondary-container, #fff0c3))}:host([theme=success]) .forge-circular-progress{--_circular-progress-indicator-color:var(--forge-circular-progress-indicator-color, var(--forge-theme-success, #2e7d32));--_circular-progress-track-color:var(--forge-circular-progress-track-color, var(--forge-theme-success-container, #cde0ce))}:host([theme=error]) .forge-circular-progress{--_circular-progress-indicator-color:var(--forge-circular-progress-indicator-color, var(--forge-theme-error, #b00020));--_circular-progress-track-color:var(--forge-circular-progress-track-color, var(--forge-theme-error-container, #ecc2c9))}:host([theme=warning]) .forge-circular-progress{--_circular-progress-indicator-color:var(--forge-circular-progress-indicator-color, var(--forge-theme-warning, #d14900));--_circular-progress-track-color:var(--forge-circular-progress-track-color, var(--forge-theme-warning-container, #f4d3c2))}:host([theme=info]) .forge-circular-progress{--_circular-progress-indicator-color:var(--forge-circular-progress-indicator-color, var(--forge-theme-info, #1565c0));--_circular-progress-track-color:var(--forge-circular-progress-track-color, var(--forge-theme-info-container, #c7daf0))}:host([track]) .forge-circular-progress{--_circular-progress-track-color:var(--_circular-progress-track-fill-color)}@media screen and (forced-colors:active){.progress{stroke:CanvasText}.circle{border-color:CanvasText CanvasText Canvas Canvas}}@-webkit-keyframes expand-arc{0%{-webkit-transform:rotate(265deg);transform:rotate(265deg)}50%{-webkit-transform:rotate(130deg);transform:rotate(130deg)}100%{-webkit-transform:rotate(265deg);transform:rotate(265deg)}}@keyframes expand-arc{0%{-webkit-transform:rotate(265deg);transform:rotate(265deg)}50%{-webkit-transform:rotate(130deg);transform:rotate(130deg)}100%{-webkit-transform:rotate(265deg);transform:rotate(265deg)}}@-webkit-keyframes rotate-arc{12.5%{-webkit-transform:rotate(135deg);transform:rotate(135deg)}25%{-webkit-transform:rotate(270deg);transform:rotate(270deg)}37.5%{-webkit-transform:rotate(405deg);transform:rotate(405deg)}50%{-webkit-transform:rotate(540deg);transform:rotate(540deg)}62.5%{-webkit-transform:rotate(675deg);transform:rotate(675deg)}75%{-webkit-transform:rotate(810deg);transform:rotate(810deg)}87.5%{-webkit-transform:rotate(945deg);transform:rotate(945deg)}100%{-webkit-transform:rotate(1080deg);transform:rotate(1080deg)}}@keyframes rotate-arc{12.5%{-webkit-transform:rotate(135deg);transform:rotate(135deg)}25%{-webkit-transform:rotate(270deg);transform:rotate(270deg)}37.5%{-webkit-transform:rotate(405deg);transform:rotate(405deg)}50%{-webkit-transform:rotate(540deg);transform:rotate(540deg)}62.5%{-webkit-transform:rotate(675deg);transform:rotate(675deg)}75%{-webkit-transform:rotate(810deg);transform:rotate(810deg)}87.5%{-webkit-transform:rotate(945deg);transform:rotate(945deg)}100%{-webkit-transform:rotate(1080deg);transform:rotate(1080deg)}}@-webkit-keyframes linear-rotate{to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes linear-rotate{to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}';\n\nexport interface ICircularProgressComponent extends IBaseComponent {\n determinate: boolean;\n progress: number;\n theme: CircularProgressTheme;\n track: boolean;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'forge-circular-progress': ICircularProgressComponent;\n }\n}\n\n/**\n * @tag forge-circular-progress\n * \n * @summary\n * Circular progress indicators display progress by animating along a circular track in a clockwise direction.\n * \n * @description\n * Progress indicators inform users about the status of ongoing processes.\n * - Determinate indicators display how long a process will take.\n * - Indeterminate indicators express an unspecified amount of wait time.\n *\n * @property {boolean} determinate - Controls the determinate state.\n * @property {boolean} progress - Controls the progress while in a determinate state. Accepts values from `0` to `1`.\n * @property {CircularProgressTheme} theme - Controls the theme of the progress indicator.\n * @property {boolean} track - Controls the visibility of the track background.\n * \n * @attribute {boolean} determinate - Controls the determinate state.\n * @attribute {boolean} progress - Controls the progress while in a determinate state. Accepts values from `0` to `1`.\n * @attribute {CircularProgressTheme} theme - Controls the theme of the progress indicator.\n * @attribute {boolean} track - Controls the visibility of the track background.\n * \n * @slot - The is the default/unnamed slot. Renders content at the center of the progress indicator.\n * \n * @cssproperty --forge-circular-progress-size - The height and width of the indicator container.\n * @cssproperty --forge-circular-progress-padding - The padding inside the bounding box of the container.\n * @cssproperty --forge-circular-progress-track-width - The track indicator width.\n * @cssproperty --forge-circular-progress-track-color - The track background color.\n * @cssproperty --forge-circular-progress-indicator-color - The track indicator color.\n * @cssproperty --forge-circular-progress-arc-duration - The duration of the arc animation.\n * @cssproperty --forge-circular-progress-theme-transition-duration - The duration of the theme transition.\n * @cssproperty --forge-circular-progress-theme-transition-timing - The easing function to use for the theme transition.\n * \n * @csspart progressbar - Styles the progress bar container element\n */\n@CustomElement({\n name: CIRCULAR_PROGRESS_CONSTANTS.elementName\n})\nexport class CircularProgressComponent extends BaseComponent implements ICircularProgressComponent {\n public static get observedAttributes(): string[] {\n return [\n CIRCULAR_PROGRESS_CONSTANTS.attributes.DETERMINATE,\n CIRCULAR_PROGRESS_CONSTANTS.attributes.PROGRESS,\n CIRCULAR_PROGRESS_CONSTANTS.attributes.THEME,\n CIRCULAR_PROGRESS_CONSTANTS.attributes.TRACK\n ];\n }\n\n private _foundation: CircularProgressFoundation;\n\n constructor() {\n super();\n attachShadowTemplate(this, template, styles);\n this._foundation = new CircularProgressFoundation(new CircularProgressAdapter(this));\n }\n\n public connectedCallback(): void {\n this._foundation.initialize();\n }\n\n public attributeChangedCallback(name: string, oldValue: string, newValue: string): void {\n switch (name) {\n case CIRCULAR_PROGRESS_CONSTANTS.attributes.DETERMINATE:\n this.determinate = coerceBoolean(newValue);\n break;\n case CIRCULAR_PROGRESS_CONSTANTS.attributes.PROGRESS:\n this.progress = coerceNumber(newValue);\n break;\n case CIRCULAR_PROGRESS_CONSTANTS.attributes.THEME:\n this.theme = newValue as CircularProgressTheme;\n break;\n case CIRCULAR_PROGRESS_CONSTANTS.attributes.TRACK:\n this.track = coerceBoolean(newValue);\n break;\n }\n }\n \n @FoundationProperty()\n public declare determinate: boolean;\n\n @FoundationProperty()\n public declare progress: number;\n\n @FoundationProperty()\n public declare theme: CircularProgressTheme;\n\n @FoundationProperty()\n public declare track: boolean;\n}\n", "import { defineCustomElement } from '@tylertech/forge-core';\n\nimport { CircularProgressComponent } from './circular-progress';\n\nexport * from './circular-progress-adapter';\nexport * from './circular-progress-constants';\nexport * from './circular-progress-foundation';\nexport * from './circular-progress';\n\nexport function defineCircularProgressComponent(): void {\n defineCustomElement(CircularProgressComponent);\n}\n"],
5
+ "mappings": "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",
6
+ "names": ["elementName", "COMPONENT_NAME_PREFIX", "attributes", "classes", "selectors", "CIRCULAR_PROGRESS_CONSTANTS", "indeterminateTemplate", "determinateTemplate", "CircularProgressAdapter", "BaseAdapter", "component", "getShadowElement", "CIRCULAR_PROGRESS_CONSTANTS", "value", "_a", "elements", "el", "CircularProgressFoundation", "_adapter", "value", "CIRCULAR_PROGRESS_CONSTANTS", "template", "styles", "CircularProgressComponent", "BaseComponent", "attachShadowTemplate", "CircularProgressFoundation", "CircularProgressAdapter", "CIRCULAR_PROGRESS_CONSTANTS", "name", "oldValue", "newValue", "coerceBoolean", "coerceNumber", "__decorateClass", "FoundationProperty", "CustomElement", "defineCircularProgressComponent", "defineCustomElement", "CircularProgressComponent"]
7
+ }
@@ -3,5 +3,5 @@
3
3
  * Copyright 2023 Tyler Technologies, Inc.
4
4
  * License: Apache-2.0
5
5
  */
6
- import{a as L,b as i,c as g,f as v}from"./chunk.QN5T26HH.js";import{a as f}from"./chunk.HSI7B43D.js";import{a as r}from"./chunk.NVUMRW44.js";import{a as _}from"./chunk.36F2GVWS.js";import{a as h,e as m,k as I}from"./chunk.JAWV5Y5T.js";import{k as l,n as b}from"./chunk.J2M2MXP2.js";import{d as a}from"./chunk.M3QDAYD2.js";var d=class extends f{constructor(t){super(t)}initialize(){this._component.hasAttribute("role")||this._component.setAttribute("role","list")}focusNextListItem(){let t=this._getFocusableListItems();if(t.length){let e=t.findIndex(s=>s.matches(":focus")),n=e<t.length-1?e+1:0;n<=t.length-1&&t[n].focus({preventScroll:!0})}}focusPreviousListItem(){let t=this._getFocusableListItems();if(t.length){let e=t.findIndex(s=>s.matches(":focus")),n=e>0?e-1:t.length-1;n>=0&&t[n].focus({preventScroll:!0})}}focusFirstListItem(){let t=this._getFocusableListItems();t.length&&t[0].focus({preventScroll:!0})}focusLastListItem(){let t=this._getFocusableListItems();t.length&&t[t.length-1].focus({preventScroll:!0})}setSelectedListItems(t){let e=this._getListItems();if(e.length){let n=Array.isArray(t)?t:[t];for(let s of e)s.selected=n.some(c=>b(c,s.value))}}updateListItems(t){this._getListItems().forEach(t)}updateListItemRole(){var e;let t=(e=g[this._component.getAttribute("role")])!=null?e:"listitem";this.updateListItems(n=>n.role=t)}_getListItems(){return Array.from(this._component.querySelectorAll(L.elementName)).filter(e=>e.closest(i.elementName)===this._component)}_getFocusableListItems(){return this._getListItems().filter(t=>!t.disabled&&!t.nonInteractive&&!t.hidden)}};var p=class{constructor(t){this._adapter=t;this._nonInteractive=!1;this._disabled=!1;this._dense=!1;this._propagateClick=!0;this._indented=!1;this._twoLine=!1;this._threeLine=!1;this._wrap=!1;this._keydownListener=this._onKeydown.bind(this)}initialize(){this._adapter.initialize(),this._nonInteractive||this._adapter.addHostListener("keydown",this._keydownListener),this._selectedValue!==void 0&&this._selectedValue!==null&&this._adapter.setSelectedListItems(this._selectedValue)}_onKeydown(t){let{key:e,altKey:n,ctrlKey:s,shiftKey:c,metaKey:E}=t;n||s||c||E||(e==="Home"?(t.preventDefault(),this._adapter.focusFirstListItem()):e==="End"?(t.preventDefault(),this._adapter.focusLastListItem()):e==="ArrowUp"?(t.preventDefault(),this._adapter.focusPreviousListItem()):e==="ArrowDown"&&(t.preventDefault(),this._adapter.focusNextListItem()))}updateRole(){this._adapter.updateListItemRole()}get static(){return this.nonInteractive}set static(t){this.nonInteractive=t}get nonInteractive(){return this._nonInteractive}set nonInteractive(t){this._nonInteractive!==t&&(this._nonInteractive=t,this._adapter.toggleHostListener("keydown",this._keydownListener,!this._nonInteractive),this._adapter.updateListItems(e=>e.nonInteractive=this._nonInteractive),this._adapter.toggleHostAttribute(i.attributes.STATIC,this._nonInteractive),this._adapter.toggleHostAttribute(i.attributes.NON_INTERACTIVE,this._nonInteractive))}get disabled(){return this._disabled}set disabled(t){this._disabled!==t&&(this._disabled=t,this._adapter.updateListItems(e=>e.disabled=this._disabled),this._adapter.toggleHostAttribute(i.attributes.DISABLED,this._disabled))}get dense(){return this._dense}set dense(t){this._dense!==t&&(this._dense=t,this._adapter.updateListItems(e=>e.dense=this._dense),this._adapter.toggleHostAttribute(i.attributes.DENSE,this._dense))}get propagateClick(){return this._propagateClick}set propagateClick(t){this._propagateClick!==t&&(this._propagateClick=t,this._adapter.updateListItems(e=>e.propagateClick=this._propagateClick),this._adapter.setHostAttribute(i.attributes.PROPAGATE_CLICK,this._propagateClick?"true":"false"))}get indented(){return this._indented}set indented(t){this._indented!==t&&(this._indented=t,this._adapter.updateListItems(e=>e.indented=this._indented),this._adapter.toggleHostAttribute(i.attributes.INDENTED,this._indented))}get selectedValue(){return this._selectedValue}set selectedValue(t){this._selectedValue!==t&&(this._selectedValue=t,this._adapter.setSelectedListItems(this._selectedValue))}get twoLine(){return this._twoLine}set twoLine(t){this._twoLine!==t&&(this._twoLine=t,this._adapter.updateListItems(e=>e.twoLine=this._twoLine),this._adapter.toggleHostAttribute(i.attributes.TWO_LINE,this._twoLine))}get threeLine(){return this._threeLine}set threeLine(t){this._threeLine!==t&&(this._threeLine=t,this._adapter.updateListItems(e=>e.threeLine=this._threeLine),this._adapter.toggleHostAttribute(i.attributes.THREE_LINE,this._threeLine))}get wrap(){return this._wrap}set wrap(t){this._wrap!==t&&(this._wrap=t,this._adapter.updateListItems(e=>e.wrap=this._wrap),this._adapter.toggleHostAttribute(i.attributes.WRAP,this._wrap))}};var k='<template><div class="forge-list" part="root"><slot></slot></div></template>',A=":host{display:block}:host([hidden]){display:none}:host([navlist]){--forge-list-item-height:40px;--forge-list-item-margin:4px 8px;--forge-list-item-shape:4px;--forge-list-item-supporting-text-font-size:0.875rem;--forge-list-item-supporting-text-font-weight:500}.forge-list{--_list-container-color:var(--forge-list-container-color, transparent);--_list-block-padding:var(--forge-list-block-padding, 8px);--_list-inline-padding:var(--forge-list-inline-padding, 0)}.forge-list{display:block;outline:0;background-color:var(--_list-container-color);padding:var(--_list-block-padding) var(--_list-inline-padding);margin:0;border-radius:inherit;min-width:inherit}",o=class extends I{constructor(){super();m(this,k,A),this._foundation=new p(new d(this))}static get observedAttributes(){return[i.attributes.ROLE,i.attributes.STATIC,i.attributes.NON_INTERACTIVE,i.attributes.DISABLED,i.attributes.DENSE,i.attributes.PROPAGATE_CLICK,i.attributes.SELECTED_VALUE,i.attributes.INDENTED,i.attributes.TWO_LINE,i.attributes.THREE_LINE,i.attributes.WRAP]}connectedCallback(){this._foundation.initialize()}attributeChangedCallback(e,n,s){switch(e){case i.attributes.ROLE:this._foundation.updateRole();break;case i.attributes.STATIC:case i.attributes.NON_INTERACTIVE:this.nonInteractive=l(s);break;case i.attributes.DISABLED:this.disabled=l(s);break;case i.attributes.DENSE:this.dense=l(s);break;case i.attributes.PROPAGATE_CLICK:this.propagateClick=l(s);break;case i.attributes.INDENTED:this.indented=l(s);break;case i.attributes.SELECTED_VALUE:this.selectedValue=s;break;case i.attributes.TWO_LINE:this.twoLine=l(s);break;case i.attributes.THREE_LINE:this.threeLine=l(s);break;case i.attributes.WRAP:this.wrap=l(s);break}}};a([r()],o.prototype,"static",2),a([r()],o.prototype,"nonInteractive",2),a([r()],o.prototype,"disabled",2),a([r()],o.prototype,"dense",2),a([r()],o.prototype,"propagateClick",2),a([r()],o.prototype,"indented",2),a([r()],o.prototype,"selectedValue",2),a([r()],o.prototype,"twoLine",2),a([r()],o.prototype,"threeLine",2),a([r()],o.prototype,"wrap",2),o=a([_({name:i.elementName,dependencies:[v]})],o);function G(){h(o)}export{d as a,p as b,o as c,G as d};
7
- //# sourceMappingURL=chunk.ZRSDTCSD.js.map
6
+ import{a as L,b as i,c as g,f as v}from"./chunk.KTYYBWTN.js";import{a as f}from"./chunk.LS7WRRT2.js";import{a as r}from"./chunk.NVUMRW44.js";import{a as _}from"./chunk.IT66AOX7.js";import{a as h,e as m,k as I}from"./chunk.JAWV5Y5T.js";import{k as l,n as b}from"./chunk.J2M2MXP2.js";import{d as a}from"./chunk.M3QDAYD2.js";var d=class extends f{constructor(t){super(t)}initialize(){this._component.hasAttribute("role")||this._component.setAttribute("role","list")}focusNextListItem(){let t=this._getFocusableListItems();if(t.length){let e=t.findIndex(s=>s.matches(":focus")),n=e<t.length-1?e+1:0;n<=t.length-1&&t[n].focus({preventScroll:!0})}}focusPreviousListItem(){let t=this._getFocusableListItems();if(t.length){let e=t.findIndex(s=>s.matches(":focus")),n=e>0?e-1:t.length-1;n>=0&&t[n].focus({preventScroll:!0})}}focusFirstListItem(){let t=this._getFocusableListItems();t.length&&t[0].focus({preventScroll:!0})}focusLastListItem(){let t=this._getFocusableListItems();t.length&&t[t.length-1].focus({preventScroll:!0})}setSelectedListItems(t){let e=this._getListItems();if(e.length){let n=Array.isArray(t)?t:[t];for(let s of e)s.selected=n.some(c=>b(c,s.value))}}updateListItems(t){this._getListItems().forEach(t)}updateListItemRole(){var e;let t=(e=g[this._component.getAttribute("role")])!=null?e:"listitem";this.updateListItems(n=>n.role=t)}_getListItems(){return Array.from(this._component.querySelectorAll(L.elementName)).filter(e=>e.closest(i.elementName)===this._component)}_getFocusableListItems(){return this._getListItems().filter(t=>!t.disabled&&!t.nonInteractive&&!t.hidden)}};var p=class{constructor(t){this._adapter=t;this._nonInteractive=!1;this._disabled=!1;this._dense=!1;this._propagateClick=!0;this._indented=!1;this._twoLine=!1;this._threeLine=!1;this._wrap=!1;this._keydownListener=this._onKeydown.bind(this)}initialize(){this._adapter.initialize(),this._nonInteractive||this._adapter.addHostListener("keydown",this._keydownListener),this._selectedValue!==void 0&&this._selectedValue!==null&&this._adapter.setSelectedListItems(this._selectedValue)}_onKeydown(t){let{key:e,altKey:n,ctrlKey:s,shiftKey:c,metaKey:E}=t;n||s||c||E||(e==="Home"?(t.preventDefault(),this._adapter.focusFirstListItem()):e==="End"?(t.preventDefault(),this._adapter.focusLastListItem()):e==="ArrowUp"?(t.preventDefault(),this._adapter.focusPreviousListItem()):e==="ArrowDown"&&(t.preventDefault(),this._adapter.focusNextListItem()))}updateRole(){this._adapter.updateListItemRole()}get static(){return this.nonInteractive}set static(t){this.nonInteractive=t}get nonInteractive(){return this._nonInteractive}set nonInteractive(t){this._nonInteractive!==t&&(this._nonInteractive=t,this._adapter.toggleHostListener("keydown",this._keydownListener,!this._nonInteractive),this._adapter.updateListItems(e=>e.nonInteractive=this._nonInteractive),this._adapter.toggleHostAttribute(i.attributes.STATIC,this._nonInteractive),this._adapter.toggleHostAttribute(i.attributes.NON_INTERACTIVE,this._nonInteractive))}get disabled(){return this._disabled}set disabled(t){this._disabled!==t&&(this._disabled=t,this._adapter.updateListItems(e=>e.disabled=this._disabled),this._adapter.toggleHostAttribute(i.attributes.DISABLED,this._disabled))}get dense(){return this._dense}set dense(t){this._dense!==t&&(this._dense=t,this._adapter.updateListItems(e=>e.dense=this._dense),this._adapter.toggleHostAttribute(i.attributes.DENSE,this._dense))}get propagateClick(){return this._propagateClick}set propagateClick(t){this._propagateClick!==t&&(this._propagateClick=t,this._adapter.updateListItems(e=>e.propagateClick=this._propagateClick),this._adapter.setHostAttribute(i.attributes.PROPAGATE_CLICK,this._propagateClick?"true":"false"))}get indented(){return this._indented}set indented(t){this._indented!==t&&(this._indented=t,this._adapter.updateListItems(e=>e.indented=this._indented),this._adapter.toggleHostAttribute(i.attributes.INDENTED,this._indented))}get selectedValue(){return this._selectedValue}set selectedValue(t){this._selectedValue!==t&&(this._selectedValue=t,this._adapter.setSelectedListItems(this._selectedValue))}get twoLine(){return this._twoLine}set twoLine(t){this._twoLine!==t&&(this._twoLine=t,this._adapter.updateListItems(e=>e.twoLine=this._twoLine),this._adapter.toggleHostAttribute(i.attributes.TWO_LINE,this._twoLine))}get threeLine(){return this._threeLine}set threeLine(t){this._threeLine!==t&&(this._threeLine=t,this._adapter.updateListItems(e=>e.threeLine=this._threeLine),this._adapter.toggleHostAttribute(i.attributes.THREE_LINE,this._threeLine))}get wrap(){return this._wrap}set wrap(t){this._wrap!==t&&(this._wrap=t,this._adapter.updateListItems(e=>e.wrap=this._wrap),this._adapter.toggleHostAttribute(i.attributes.WRAP,this._wrap))}};var k='<template><div class="forge-list" part="root"><slot></slot></div></template>',A=":host{display:block}:host([hidden]){display:none}:host([navlist]){--forge-list-item-height:40px;--forge-list-item-margin:4px 8px;--forge-list-item-shape:4px;--forge-list-item-supporting-text-font-size:0.875rem;--forge-list-item-supporting-text-font-weight:500}.forge-list{--_list-container-color:var(--forge-list-container-color, transparent);--_list-block-padding:var(--forge-list-block-padding, 8px);--_list-inline-padding:var(--forge-list-inline-padding, 0)}.forge-list{display:block;outline:0;background-color:var(--_list-container-color);padding:var(--_list-block-padding) var(--_list-inline-padding);margin:0;border-radius:inherit;min-width:inherit}",o=class extends I{constructor(){super();m(this,k,A),this._foundation=new p(new d(this))}static get observedAttributes(){return[i.attributes.ROLE,i.attributes.STATIC,i.attributes.NON_INTERACTIVE,i.attributes.DISABLED,i.attributes.DENSE,i.attributes.PROPAGATE_CLICK,i.attributes.SELECTED_VALUE,i.attributes.INDENTED,i.attributes.TWO_LINE,i.attributes.THREE_LINE,i.attributes.WRAP]}connectedCallback(){this._foundation.initialize()}attributeChangedCallback(e,n,s){switch(e){case i.attributes.ROLE:this._foundation.updateRole();break;case i.attributes.STATIC:case i.attributes.NON_INTERACTIVE:this.nonInteractive=l(s);break;case i.attributes.DISABLED:this.disabled=l(s);break;case i.attributes.DENSE:this.dense=l(s);break;case i.attributes.PROPAGATE_CLICK:this.propagateClick=l(s);break;case i.attributes.INDENTED:this.indented=l(s);break;case i.attributes.SELECTED_VALUE:this.selectedValue=s;break;case i.attributes.TWO_LINE:this.twoLine=l(s);break;case i.attributes.THREE_LINE:this.threeLine=l(s);break;case i.attributes.WRAP:this.wrap=l(s);break}}};a([r()],o.prototype,"static",2),a([r()],o.prototype,"nonInteractive",2),a([r()],o.prototype,"disabled",2),a([r()],o.prototype,"dense",2),a([r()],o.prototype,"propagateClick",2),a([r()],o.prototype,"indented",2),a([r()],o.prototype,"selectedValue",2),a([r()],o.prototype,"twoLine",2),a([r()],o.prototype,"threeLine",2),a([r()],o.prototype,"wrap",2),o=a([_({name:i.elementName,dependencies:[v]})],o);function G(){h(o)}export{d as a,p as b,o as c,G as d};
7
+ //# sourceMappingURL=chunk.2GYZM6ZG.js.map
@@ -0,0 +1,7 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2023 Tyler Technologies, Inc.
4
+ * License: Apache-2.0
5
+ */
6
+ import{a as z}from"./chunk.3RMBFRGC.js";import{d as T}from"./chunk.A72W7RW7.js";import{j as I,k as L,n as x,o as S,p as O,q as C,r as A}from"./chunk.LUIKMPQR.js";import{a as k}from"./chunk.KVCDAZ6B.js";import{p as V}from"./chunk.FQSL747N.js";import{a as y}from"./chunk.LS7WRRT2.js";import{a as l}from"./chunk.NVUMRW44.js";import{a as m,b as E,f as n}from"./chunk.IT66AOX7.js";import{a as w,e as g,f as h}from"./chunk.JAWV5Y5T.js";import{t as p,u as d}from"./chunk.K7FPXAFS.js";import{b as u,c as f,k as c}from"./chunk.J2M2MXP2.js";import{d as s}from"./chunk.M3QDAYD2.js";var N=`${E}switch`,P={HIDDEN:"hidden"},F={ON:"on",SELECTED:"selected",DEFAULT_ON:"default-on",VALUE:"value",DENSE:"dense",DISABLED:"disabled",REQUIRED:"required",READONLY:"readonly",ICON:"icon",LABEL_POSITION:"label-position"},H={ROOT:".forge-switch",INPUT:"#input",LABEL:"#label",ICON_ON:"#icon-on",ICON_OFF:"#icon-off",INPUT_SLOT:"slot[name=input]",STATE_LAYER:"forge-state-layer",SLOTTED_INPUT:"input[type=checkbox]"},M={CHANGE:`${N}-change`},R={ON:"on",OFF:"off"},B=[...I],i={classes:P,selectors:H,attributes:F,elementName:N,events:M,state:R,forwardedAttributes:B};var b=class extends y{constructor(t){super(t);this._rootElement=h(t,i.selectors.ROOT),this._inputElement=h(t,i.selectors.INPUT),this._labelElement=h(t,i.selectors.LABEL),this._iconOnElement=h(t,i.selectors.ICON_ON),this._iconOffElement=h(t,i.selectors.ICON_OFF),this._stateLayerElement=h(t,i.selectors.STATE_LAYER),this._inputAdapter=new A}get _activeInputElement(){var t;return(t=this._inputAdapter.el)!=null?t:this._inputElement}initialize(){let t=this._component.querySelector(i.selectors.SLOTTED_INPUT);t?(t.slot="input",this._switchInput(t,this._inputElement)):this._initializeForwardObserver(this._inputElement),this._observeInput(t!=null?t:this._inputElement)}setOn(t){this._activeInputElement.checked=t}setDefaultOn(t){this._activeInputElement.toggleAttribute("checked",t)}setValue(t){this._activeInputElement.value=t}setDisabled(t){this._activeInputElement.disabled=t,this._stateLayerElement.disabled=t}setRequired(t){this._activeInputElement.required=t}setReadonly(t){this._activeInputElement.readOnly=t,d(this._activeInputElement,t,"aria-readonly",t.toString()),this._stateLayerElement.disabled=t}setIconVisibility(t){let o=t==="none"||t==="off",a=t==="none"||t==="on";p(this._iconOnElement,o,i.classes.HIDDEN),p(this._iconOffElement,a,i.classes.HIDDEN)}setLabelPosition(t){this._labelElement.remove(),t==="start"?this._rootElement.prepend(this._labelElement):this._rootElement.append(this._labelElement)}addRootListener(t,o){this._rootElement.addEventListener(t,o)}addInputSlotListener(t){this._inputElement.addEventListener("slotchange",t)}detectInputElement(){let t=this._inputSlotElement.assignedElements()[0];t?this._inputAdapter.attachElement(t):this._inputAdapter.attachElement(this._inputElement)}proxyClick(){this._activeInputElement.click(),this._activeInputElement.focus()}proxyLabel(t){this._labelElementText=t!=null?t:void 0,this._setAriaLabel()}syncValue(t){if(t===null){this._component[n].setFormValue(null,i.state.OFF);return}let o=new FormData;o.append(this._component.name,t),this._component[n].setFormValue(o,i.state.ON)}syncValidity(t){t?this._activeInputElement.setCustomValidity(this._component[n].validationMessage):this._activeInputElement.setCustomValidity(""),this._component[n].setValidity(this._activeInputElement.validity,this._activeInputElement.validationMessage,this._activeInputElement)}setValidity(t,o){this._component[n].setValidity(t,o,this._activeInputElement)}_initializeInput(){var t;(t=this._forwardObserver)==null||t.disconnect(),this._initializeForwardObserver(this._activeInputElement)}_initializeForwardObserver(t){this._forwardObserver=x(this._component,i.forwardedAttributes,(o,a)=>{if(o==="aria-label"){this._forwardedAriaLabel=a!=null?a:void 0,this._setAriaLabel();return}d(t,!!a,o,a!=null?a:void 0)})}_setAriaLabel(){var o;let t=!!this._forwardedAriaLabel||!!this._labelElementText;d(this._activeInputElement,t,"aria-label",(o=this._forwardedAriaLabel)!=null?o:this._labelElementText)}_switchInput(t,o){S(o,t,["type","role","checked","aria-readonly"]),O(o,t,L),C(o,t)}_observeInput(t=this._inputElement){this._inputAdapter.initialize(t,(o,a)=>{this._switchInput(o,a),this._initializeInput()})}};var v=class{constructor(e){this._adapter=e;this._on=!1;this._defaultOn=!1;this._value="on";this._dense=!1;this._disabled=!1;this._required=!1;this._readonly=!1;this._icon="on";this._labelPosition="end";this._changeListener=t=>this._handleChange(t),this._inputSlotListener=()=>this._handleInputSlotChange()}get _submittedValue(){return this._on?this._value:null}initialize(){this._adapter.initialize(),this._adapter.addRootListener("change",this._changeListener),this._adapter.addInputSlotListener(this._inputSlotListener),this._adapter.setIconVisibility(this._icon),this._adapter.syncValue(this._submittedValue)}proxyClick(){this._adapter.proxyClick()}proxyLabel(e){this._adapter.proxyLabel(e)}syncValidity(e){this._adapter.syncValidity(e)}setValidity(e,t){this._adapter.setValidity(e,t)}_handleChange(e){if(this._readonly){this._adapter.setOn(this._on);return}let o=e.target.checked,a=this._on;if(this._on=o,!this._adapter.emitHostEvent(i.events.CHANGE,o,!0,!0)){this._on=a,this._adapter.setOn(this._on);return}this._adapter.syncValue(this._submittedValue),this._setOnAttribute()}_handleInputSlotChange(){this._adapter.detectInputElement()}_setOnAttribute(){this._adapter.toggleHostAttribute(i.attributes.ON,this._on),this._adapter.toggleHostAttribute(i.attributes.SELECTED,this._on)}get on(){return this._on}set on(e){this._on!==e&&(this._on=e,this._adapter.setOn(this._on),this._adapter.syncValue(this._submittedValue),this._setOnAttribute())}get defaultOn(){return this._defaultOn}set defaultOn(e){this._defaultOn!==e&&(this._defaultOn=e,this._adapter.setDefaultOn(this._defaultOn),this._adapter.toggleHostAttribute(i.attributes.DEFAULT_ON,this._defaultOn))}get value(){return this._value}set value(e){this._value!==e&&(this._value=e,this._adapter.setValue(this._value),this._adapter.syncValue(this._submittedValue),this._adapter.toggleHostAttribute(i.attributes.VALUE,!0,this._value))}get dense(){return this._dense}set dense(e){this._dense!==e&&(this._dense=e,this._adapter.toggleHostAttribute(i.attributes.DENSE,this._dense))}get disabled(){return this._disabled}set disabled(e){this._disabled!==e&&(this._disabled=e,this._adapter.setDisabled(this._disabled),this._adapter.toggleHostAttribute(i.attributes.DISABLED,this._disabled))}get required(){return this._required}set required(e){this._required!==e&&(this._required=e,this._adapter.setRequired(this._required),this._adapter.toggleHostAttribute(i.attributes.REQUIRED,this._required))}get readonly(){return this._readonly}set readonly(e){this._readonly!==e&&(this._readonly=e,this._adapter.setReadonly(this._readonly),this._adapter.toggleHostAttribute(i.attributes.READONLY,this._readonly))}get icon(){return this._icon}set icon(e){this._icon!==e&&(this._icon=e,this._adapter.setIconVisibility(this._icon),this._adapter.setHostAttribute(i.attributes.ICON,this._icon))}get labelPosition(){return this._labelPosition}set labelPosition(e){this._labelPosition!==e&&(this._labelPosition=e,this._adapter.setLabelPosition(this._labelPosition),this._adapter.setHostAttribute(i.attributes.LABEL_POSITION,this._labelPosition))}};var q='<template><div class="forge-switch" part="switch"><div id="container" class="container"><slot name="input"><input id="input" class="input" type="checkbox" role="switch"></slot><div class="track" part="track"></div><div class="handle" part="handle"><div id="icon-off" class="icon icon__off" part="icon-off"><slot name="icon-off"><svg aria-hidden="true" viewBox="0 0 24 24"><path d="M20 13H4v-2h16v2z"/></svg></slot></div><div id="icon-on" class="icon icon__on" part="icon-on"><slot name="icon-on"><svg aria-hidden="true" viewBox="0 0 24 24"><path d="M19.69,5.23L8.96,15.96l-4.23-4.23L2.96,13.5l6,6L21.46,7L19.69,5.23z"/></svg></slot></div><forge-state-layer target="container" exportparts="surface:state-layer"></forge-state-layer></div><forge-focus-indicator target="container" part="focus-indicator"></forge-focus-indicator></div><label id="label" for="input" class="label" part="label"><slot></slot></label></div></template>',U=':host{display:inline-block}:host([hidden]){display:none}.forge-switch{--_switch-handle-size:var(--forge-switch-handle-size, 20px);--_switch-handle-scale:var(--forge-switch-handle-scale, 1);--_switch-handle-elevation:var(--forge-switch-handle-elevation, 0px 2px 1px -1px rgba(0, 0, 0, 0.2), 0px 1px 1px 0px rgba(0, 0, 0, 0.14), 0px 1px 3px 0px rgba(0, 0, 0, 0.12));--_switch-track-border-width:var(--forge-switch-track-border-width, 0);--_switch-track-border-color:var(--forge-switch-track-border-color, transparent);--_switch-icon-color:var(--forge-switch-icon-color, var(--forge-theme-on-tertiary, #ffffff));--_switch-icon-size:var(--forge-switch-icon-size, 16px);--_switch-icon-scale:var(--forge-switch-icon-scale, 1);--_switch-state-layer-size:var(--forge-switch-state-layer-size, 40px);--_switch-state-layer-dense-size:var(--forge-switch-handle-dense-size, 28px);--_switch-handle-on-color:var(--forge-switch-handle-on-color, var(--forge-theme-tertiary, #3d5afe));--_switch-handle-off-color:var(--forge-switch-handle-off-color, var(--forge-theme-surface-container-high, #9e9e9e));--_switch-handle-width:var(--forge-switch-handle-width, var(--_switch-handle-size));--_switch-handle-height:var(--forge-switch-handle-height, var(--_switch-handle-size));--_switch-handle-on-scale:var(--forge-switch-handle-on-scale, var(--_switch-handle-scale));--_switch-handle-off-scale:var(--forge-switch-handle-off-scale, var(--_switch-handle-scale));--_switch-handle-shape:var(--forge-switch-handle-shape, var(--forge-shape-round, 50%));--_switch-handle-on-elevation:var(--forge-switch-handle-on-elevation, var(--_switch-handle-elevation));--_switch-handle-off-elevation:var(--forge-switch-handle-off-elevation, var(--_switch-handle-elevation));--_switch-track-on-color:var(--forge-switch-track-on-color, var(--forge-theme-tertiary-container, #d0d7ff));--_switch-track-off-color:var(--forge-switch-track-off-color, var(--forge-theme-surface-container, #e0e0e0));--_switch-track-width:var(--forge-switch-track-width, 36px);--_switch-track-height:var(--forge-switch-track-height, 14px);--_switch-track-shape:var(--forge-switch-track-shape, var(--forge-shape-full, 9999px));--_switch-track-on-border-width:var(--forge-switch-track-on-border-width, var(--_switch-track-border-width));--_switch-track-off-border-width:var(--forge-switch-track-off-border-width, var(--_switch-track-border-width));--_switch-track-on-border-color:var(--forge-switch-track-on-border-color, var(--_switch-track-border-color));--_switch-track-off-border-color:var(--forge-switch-track-off-border-color, var(--_switch-track-border-color));--_switch-icon-on-color:var(--forge-switch-icon-on-color, var(--_switch-icon-color));--_switch-icon-off-color:var(--forge-switch-icon-off-color, var(--_switch-icon-color));--_switch-icon-on-size:var(--forge-switch-icon-on-size, var(--_switch-icon-size));--_switch-icon-off-size:var(--forge-switch-icon-off-size, var(--_switch-icon-size));--_switch-icon-on-scale:var(--forge-switch-icon-on-scale, var(--_switch-icon-scale));--_switch-icon-off-scale:var(--forge-switch-icon-off-scale, var(--_switch-icon-scale));--_switch-gap:var(--forge-switch-gap, 0);--_switch-justify:var(--forge-switch-justify, space-between);--_switch-direction:var(--forge-switch-direction, initial);--_switch-state-layer-width:var(--forge-switch-state-layer-width, var(--_switch-state-layer-size));--_switch-state-layer-height:var(--forge-switch-state-layer-height, var(--_switch-state-layer-size));--_switch-state-layer-on-color:var(--forge-switch-state-layer-on-color, var(--_switch-handle-on-color));--_switch-state-layer-off-color:var(--forge-state-layer-state-layer-off-color, var(--_state-layer-color));--_switch-state-layer-dense-width:var(--forge-switch-state-layer-dense-width, var(--_switch-state-layer-dense-size));--_switch-state-layer-dense-height:var(--forge-switch-state-layer-dense-height, var(--_switch-state-layer-dense-size));--_switch-disabled-opacity:var(--forge-switch-disabled-opacity, 0.38);--_switch-handle-active-on-color:var(--forge-switch-handle-active-on-color, var(--_switch-handle-on-color));--_switch-handle-active-off-color:var(--forge-switch-handle-active-off-color, var(--_switch-handle-off-color));--_switch-handle-active-scale:var(--forge-switch-handle-active-scale, 1.2);--_switch-handle-active-on-scale:var(--forge-switch-handle-active-on-scale, var(--_switch-handle-active-scale));--_switch-handle-active-off-scale:var(--forge-switch-handle-active-off-scale, var(--_switch-handle-active-scale));--_switch-handle-active-elevation:var(--forge-switch-handle-active-elevation, var(--_switch-handle-elevation));--_switch-handle-active-on-elevation:var(--forge-switch-handle-active-on-elevation, var(--_switch-handle-active-elevation));--_switch-handle-active-off-elevation:var(--forge-switch-handle-active-on-elevation, var(--_switch-handle-active-elevation));--_switch-track-active-on-color:var(--forge-switch-track-active-on-color, var(--_switch-track-on-color));--_switch-track-active-off-color:var(--forge-switch-track-active-off-color, var(--_switch-track-off-color));--_switch-track-active-on-border-width:var(--forge-switch-track-active-on-border-width, var(--_switch-track-on-border-width));--_switch-track-active-off-border-width:var(--forge-switch-track-active-off-border-width, var(--_switch-track-off-border-width));--_switch-track-active-on-border-color:var(--forge-switch-track-active-on-border-color, var(--_switch-track-on-border-color));--_switch-track-active-off-border-color:var(--forge-switch-track-active-off-border-color, var(--_switch-track-off-border-color));--_switch-icon-active-on-color:var(--forge-switch-icon-active-on-color, var(--_switch-icon-on-color));--_switch-icon-active-off-color:var(--forge-switch-icon-active-off-color, var(--_switch-icon-off-color));--_switch-icon-active-on-scale:var(--forge-switch-icon-active-on-scale, var(--_switch-icon-on-scale));--_switch-icon-active-off-scale:var(--forge-switch-icon-active-off-scale, var(--_switch-icon-off-scale));--_switch-animation-duration:var(--forge-switch-animation-duration, var(--forge-animation-duration-short2, 100ms));--_switch-animation-timing:var(--forge-switch-animation-timing, var(--forge-animation-easing-standard, cubic-bezier(0.2, 0, 0, 1)));--_switch-active-animation-timing:var(--forge-switch-active-animation-timing, var(--forge-animation-easing-linear, cubic-bezier(0, 0, 1, 1)))}.forge-switch{position:relative;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:var(--_switch-direction);flex-shrink:0;-webkit-box-align:center;align-items:center;-webkit-box-pack:var(--_switch-justify);justify-content:var(--_switch-justify);gap:var(--_switch-gap);display:-webkit-box;display:flex;--_switch-current-state-layer-width:var(--_switch-state-layer-width);--_switch-current-state-layer-height:var(--_switch-state-layer-height)}.forge-switch .container{position:relative;-webkit-box-align:center;align-items:center;display:-webkit-box;display:flex;block-size:max(var(--_switch-handle-height),var(--_switch-track-height),var(--_switch-current-state-layer-height));cursor:pointer}.forge-switch .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-switch .track{-webkit-transition-property:background-color,border-color,border-width;transition-property:background-color,border-color,border-width;-webkit-transition-duration:var(--_switch-animation-duration);transition-duration:var(--_switch-animation-duration);-webkit-transition-timing-function:var(--_switch-animation-timing);transition-timing-function:var(--_switch-animation-timing);-webkit-box-sizing:border-box;box-sizing:border-box;margin-inline:calc(max(var(--_switch-handle-width),var(--_switch-current-state-layer-width))/ 2 - calc(var(--_switch-track-height)/ 2));border-width:var(--_switch-track-off-border-width);border-color:var(--_switch-track-off-border-color);border-style:solid;border-radius:var(--_switch-track-shape);inline-size:var(--_switch-track-width);block-size:var(--_switch-track-height);background-color:var(--_switch-track-off-color)}.forge-switch .handle{position:absolute;-webkit-box-pack:center;justify-content:center;-webkit-box-align:center;align-items:center;display:-webkit-box;display:flex;-webkit-transition-property:translate;transition-property:translate;-webkit-transition-duration:var(--_switch-animation-duration);transition-duration:var(--_switch-animation-duration);-webkit-transition-timing-function:var(--_switch-animation-timing);transition-timing-function:var(--_switch-animation-timing);border-radius:var(--_switch-handle-shape);inline-size:var(--_switch-current-state-layer-width);block-size:var(--_switch-current-state-layer-height)}.forge-switch .handle::before{content:"";position:relative;display:block;scale:var(--_switch-handle-off-scale);-webkit-transition:background-color var(--_switch-animation-duration) var(--_switch-animation-timing),scale var(--_switch-animation-duration) var(--_switch-active-animation-timing),-webkit-box-shadow var(--_switch-animation-duration) var(--_switch-animation-timing);transition:background-color var(--_switch-animation-duration) var(--_switch-animation-timing),scale var(--_switch-animation-duration) var(--_switch-active-animation-timing),-webkit-box-shadow var(--_switch-animation-duration) var(--_switch-animation-timing);transition:background-color var(--_switch-animation-duration) var(--_switch-animation-timing),box-shadow var(--_switch-animation-duration) var(--_switch-animation-timing),scale var(--_switch-animation-duration) var(--_switch-active-animation-timing);transition:background-color var(--_switch-animation-duration) var(--_switch-animation-timing),box-shadow var(--_switch-animation-duration) var(--_switch-animation-timing),scale var(--_switch-animation-duration) var(--_switch-active-animation-timing),-webkit-box-shadow var(--_switch-animation-duration) var(--_switch-animation-timing);-webkit-box-shadow:var(--_switch-handle-off-elevation);box-shadow:var(--_switch-handle-off-elevation);border-radius:var(--_switch-handle-shape);inline-size:var(--_switch-handle-width);block-size:var(--_switch-handle-height);background-color:var(--_switch-handle-off-color)}.forge-switch .icon{position:absolute;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;display:-webkit-box;display:flex;-webkit-transition-property:opacity,scale;transition-property:opacity,scale;-webkit-transition-duration:var(--_switch-animation-duration);transition-duration:var(--_switch-animation-duration);-webkit-transition-timing-function:var(--_switch-animation-timing);transition-timing-function:var(--_switch-animation-timing);inline-size:var(--_switch-icon-off-size);block-size:var(--_switch-icon-off-size);color:var(--_switch-icon-off-color);fill:var(--_switch-icon-off-color);font-size:var(--_switch-icon-off-size);--forge-icon-font-size:var(--_switch-icon-off-size)}.forge-switch .icon__on{--forge-icon-font-size:var(--_switch-icon-on-size);inline-size:var(--_switch-icon-on-size);block-size:var(--_switch-icon-on-size);color:var(--_switch-icon-on-color);fill:var(--_switch-icon-on-color);font-size:var(--_switch-icon-on-size);opacity:0;scale:0.4}.forge-switch .icon__off{opacity:1;scale:var(--_switch-icon-off-scale)}.forge-switch .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-switch .label:empty{display:none}.forge-switch .hidden{display:none}.forge-switch ::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([on]) .track{border-width:var(--_switch-track-on-border-width);border-color:var(--_switch-track-on-border-color);background-color:var(--_switch-track-on-color)}:host([on]) .handle{translate:calc(var(--_switch-track-width) - calc(var(--_switch-track-height)/ 2) * 2)}:host([on]) .handle::before{scale:var(--_switch-handle-on-scale);-webkit-box-shadow:var(--_switch-handle-on-elevation);box-shadow:var(--_switch-handle-on-elevation);background-color:var(--_switch-handle-on-color)}:host([on]) .handle .icon__on{opacity:1;scale:var(--_switch-icon-on-scale)}:host([on]) .handle .icon__off{opacity:0;scale:0.4}:host([on]) forge-state-layer{--forge-state-layer-color:var(--_switch-state-layer-on-color)}:host(:not([disabled]):not([readonly])) .forge-switch .container:active .track{border-width:var(--_switch-track-active-off-border-width);border-color:var(--_switch-track-active-off-border-color);background-color:var(--_switch-track-active-off-color)}:host(:not([disabled]):not([readonly])) .forge-switch .container:active .handle::before{scale:var(--_switch-handle-active-off-scale);-webkit-box-shadow:var(--_switch-handle-active-off-elevation);box-shadow:var(--_switch-handle-active-off-elevation);background-color:var(--_switch-handle-active-off-color)}:host(:not([disabled]):not([readonly])) .forge-switch .container:active .handle .icon{scale:var(--_switch-icon-active-off-scale);color:var(--_switch-icon-active-off-color);fill:var(--_switch-icon-active-off-color)}:host(:not([disabled]):not([readonly])[on]) .forge-switch .container:active .track{border-width:var(--_switch-track-active-on-border-width);border-color:var(--_switch-track-active-on-border-color);background-color:var(--_switch-track-active-on-color)}:host(:not([disabled]):not([readonly])[on]) .forge-switch .container:active .handle::before{scale:var(--_switch-handle-active-on-scale);-webkit-box-shadow:var(--_switch-handle-active-on-elevation);box-shadow:var(--_switch-handle-active-on-elevation);background-color:var(--_switch-handle-active-on-color)}:host(:not([disabled]):not([readonly])[on]) .forge-switch .container:active .handle .icon{scale:var(--_switch-icon-active-on-scale);color:var(--_switch-icon-active-on-color);fill:var(--_switch-icon-active-on-color)}:host([dense]) .forge-switch{--_switch-current-state-layer-width:var(--_switch-state-layer-dense-width);--_switch-current-state-layer-height:var(--_switch-state-layer-dense-height)}:host([disabled]) .forge-switch{opacity:var(--_switch-disabled-opacity)}:host([disabled]) .forge-switch .container{cursor:not-allowed}:host([disabled]) .forge-switch .handle::before{-webkit-box-shadow:none;box-shadow:none}:host([readonly]) .forge-switch .container{cursor:not-allowed}@media (prefers-reduced-motion){.switch{--_switch-animation-duration:var(--forge-switch-animation-duration, 0s)}}forge-state-layer{--forge-state-layer-color:var(--_switch-state-layer-off-color)}forge-focus-indicator{--forge-focus-indicator-shape:var(--_switch-track-shape);--forge-focus-indicator-outward-offset:0px}',r=class extends z{constructor(){super();g(this,q,U,!0),this[n]=this.attachInternals(),this._foundation=new v(new b(this))}static get observedAttributes(){return[i.attributes.ON,i.attributes.SELECTED,i.attributes.DEFAULT_ON,i.attributes.VALUE,i.attributes.DENSE,i.attributes.DISABLED,i.attributes.REQUIRED,i.attributes.READONLY,i.attributes.ICON,i.attributes.LABEL_POSITION]}get form(){return this[n].form}get labels(){return this[n].labels}get name(){var t;return(t=this.getAttribute("name"))!=null?t:""}set name(t){d(this,!!t,"name",t!=null?t:"")}get validity(){return this._foundation.syncValidity(this._hasCustomValidityError),this[n].validity}get validationMessage(){return this._foundation.syncValidity(this._hasCustomValidityError),this[n].validationMessage}get willValidate(){return this[n].willValidate}connectedCallback(){this._foundation.initialize()}attributeChangedCallback(t,o,a){switch(t){case i.attributes.ON:case i.attributes.SELECTED:this.on=c(a);break;case i.attributes.DEFAULT_ON:this.defaultOn=c(a);break;case i.attributes.VALUE:this.value=a;break;case i.attributes.DENSE:this.dense=c(a);break;case i.attributes.DISABLED:this.disabled=c(a);break;case i.attributes.REQUIRED:this.required=c(a);break;case i.attributes.READONLY:this.readonly=c(a);break;case i.attributes.ICON:this.icon=a;break;case i.attributes.LABEL_POSITION:this.labelPosition=a;break}}setFormValue(t,o){if(this[n].setFormValue(t,o),o){let a=f(o)?o:o[this.name];this.on=a===i.state.ON;return}f(t)?this.on=!!t:t!=null&&t[this.name]?this.on=!!t[this.name]:this.on=!1}checkValidity(){return this._foundation.syncValidity(this._hasCustomValidityError),this[n].checkValidity()}reportValidity(){return this._foundation.syncValidity(this._hasCustomValidityError),this[n].reportValidity()}setCustomValidity(t){this._hasCustomValidityError=!!t,this._foundation.setValidity({customError:!!t},t)}formResetCallback(){this.on=this.defaultOn}formStateRestoreCallback(t){this.on=t===i.state.ON}formDisabledCallback(t){this.disabled=t}labelClickedCallback(){this._foundation.proxyClick()}labelChangedCallback(t){this._foundation.proxyLabel(t)}toggle(t){u(t)?this._foundation.on=t:this._foundation.on=!this._foundation.on}};n,s([l()],r.prototype,"on",2),s([l({name:"on"})],r.prototype,"selected",2),s([l()],r.prototype,"defaultOn",2),s([l()],r.prototype,"value",2),s([l()],r.prototype,"dense",2),s([l()],r.prototype,"disabled",2),s([l()],r.prototype,"required",2),s([l()],r.prototype,"readonly",2),s([l()],r.prototype,"icon",2),s([l()],r.prototype,"labelPosition",2),r=s([m({name:i.elementName,dependencies:[T,V]})],r);var D=class extends k{constructor(e){super(e)}get value(){return this._element.value}set value(e){this._element.value=e}get on(){return this._element.on}set on(e){this._element.on=e}get selected(){return this._element.selected}set selected(e){this._element.selected=e}get defaultOn(){return this._element.defaultOn}set defaultOn(e){this._element.defaultOn=e}get icon(){return this._element.icon}set icon(e){this._element.icon=e}get disabled(){return this._element.disabled}set disabled(e){this._element.disabled=e}get dense(){return this._element.dense}set dense(e){this._element.dense=e}get required(){return this._element.required}set required(e){this._element.required=e}get readonly(){return this._element.readonly}set readonly(e){this._element.readonly=e}get name(){return this._element.name}set name(e){this._element.name=e}get labelPosition(){return this._element.labelPosition}set labelPosition(e){this._element.labelPosition=e}onChange(e){this._element.addEventListener("forge-switch-change",({detail:t})=>e(t))}onFocus(e){this._element.addEventListener("focus",t=>e(t))}onBlur(e){this._element.addEventListener("blur",t=>e(t))}setLabel(e){this._element.innerText=e!=null?e:""}toggle(e){this._element.toggle(e)}_build(){return document.createElement(i.elementName)}_configure(){var e,t;(e=this._config.options)!=null&&e.id&&(this._element.id=this._config.options.id),(t=this._config.options)!=null&&t.label&&(this._element.innerText=this._config.options.label)}};function St(){w(r)}export{i as a,b,v as c,r as d,D as e,St as f};
7
+ //# sourceMappingURL=chunk.2YDKRTKP.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/switch/switch-constants.ts", "../../src/switch/switch-adapter.ts", "../../src/switch/switch-foundation.ts", "../../src/switch/switch.ts", "../../src/switch/switch-component-delegate.ts", "../../src/switch/index.ts"],
4
+ "sourcesContent": ["import { COMPONENT_NAME_PREFIX } from '../constants';\nimport { INPUT_ARIA_ATTRIBUTES } from '../core';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}switch`;\n\nconst classes = {\n HIDDEN: 'hidden'\n};\n\nconst attributes = {\n ON: 'on',\n SELECTED: 'selected',\n DEFAULT_ON: 'default-on',\n VALUE: 'value',\n DENSE: 'dense',\n DISABLED: 'disabled',\n REQUIRED: 'required',\n READONLY: 'readonly',\n ICON: 'icon',\n LABEL_POSITION: 'label-position'\n};\n\nconst selectors = {\n ROOT: '.forge-switch',\n INPUT: '#input',\n LABEL: '#label',\n ICON_ON: '#icon-on',\n ICON_OFF: '#icon-off',\n INPUT_SLOT: 'slot[name=input]',\n STATE_LAYER: 'forge-state-layer',\n SLOTTED_INPUT: 'input[type=checkbox]'\n};\n\nconst events = {\n CHANGE: `${elementName}-change`\n};\n\nconst state = {\n ON: 'on',\n OFF: 'off'\n};\n\nconst forwardedAttributes = [...INPUT_ARIA_ATTRIBUTES];\n\nexport const SWITCH_CONSTANTS = {\n classes,\n selectors,\n attributes,\n elementName,\n events,\n state,\n forwardedAttributes\n};\n\nexport type SwitchLabelPosition = 'start' | 'end';\nexport type SwitchIconVisibility = 'both' | 'none' | 'off' | 'on';\n", "import { getShadowElement, toggleAttribute, toggleClass } from '@tylertech/forge-core';\nimport { internals } from '../constants';\nimport { BaseAdapter, IBaseAdapter, INPUT_PROPERTIES, SlottedElementAdapter, cloneAttributes, cloneProperties, cloneValidationMessage, forwardAttributes } from '../core';\nimport { StateLayerComponent } from '../state-layer';\nimport { ISwitchComponent } from './switch';\nimport { SWITCH_CONSTANTS, SwitchIconVisibility, SwitchLabelPosition } from './switch-constants';\n\nexport interface ISwitchAdapter extends IBaseAdapter {\n initialize(): void;\n setOn(value: boolean): void;\n setDefaultOn(value: boolean): void;\n setValue(value: string): void;\n setDisabled(value: boolean): void;\n setRequired(value: boolean): void;\n setReadonly(value: boolean): void;\n setIconVisibility(value: SwitchIconVisibility): void;\n setLabelPosition(value: SwitchLabelPosition): void;\n addRootListener(event: string, callback: EventListener): void;\n addInputSlotListener(callback: EventListener): void;\n detectInputElement(): void;\n proxyClick(): void;\n proxyLabel(value: string | null): void;\n syncValue(value: string | null): void;\n syncValidity(hasCustomValidityError: boolean): void;\n setValidity(flags?: ValidityStateFlags | undefined, message?: string | undefined): void;\n}\n\nexport class SwitchAdapter extends BaseAdapter<ISwitchComponent> implements ISwitchAdapter {\n private readonly _rootElement: HTMLElement;\n private readonly _inputElement: HTMLInputElement;\n private readonly _labelElement: HTMLElement;\n private readonly _iconOnElement: HTMLElement;\n private readonly _iconOffElement: HTMLElement;\n private readonly _inputSlotElement: HTMLSlotElement;\n private readonly _stateLayerElement: StateLayerComponent;\n private readonly _inputAdapter: SlottedElementAdapter<HTMLInputElement>;\n private _forwardObserver?: MutationObserver;\n private _forwardedAriaLabel?: string;\n private _labelElementText?: string;\n\n private get _activeInputElement(): HTMLInputElement {\n return this._inputAdapter.el ?? this._inputElement;\n }\n\n constructor(component: ISwitchComponent) {\n super(component);\n \n this._rootElement = getShadowElement(component, SWITCH_CONSTANTS.selectors.ROOT);\n this._inputElement = getShadowElement(component, SWITCH_CONSTANTS.selectors.INPUT) as HTMLInputElement;\n this._labelElement = getShadowElement(component, SWITCH_CONSTANTS.selectors.LABEL);\n this._iconOnElement = getShadowElement(component, SWITCH_CONSTANTS.selectors.ICON_ON);\n this._iconOffElement = getShadowElement(component, SWITCH_CONSTANTS.selectors.ICON_OFF);\n this._stateLayerElement = getShadowElement(component, SWITCH_CONSTANTS.selectors.STATE_LAYER) as StateLayerComponent;\n this._inputAdapter = new SlottedElementAdapter();\n }\n\n public initialize(): void {\n const slottedInput = this._component.querySelector(SWITCH_CONSTANTS.selectors.SLOTTED_INPUT) as HTMLInputElement;\n if (slottedInput) {\n slottedInput.slot = 'input';\n this._switchInput(slottedInput, this._inputElement);\n } else {\n this._initializeForwardObserver(this._inputElement);\n }\n this._observeInput(slottedInput ?? this._inputElement);\n }\n\n public setOn(value: boolean): void {\n this._activeInputElement.checked = value;\n }\n\n public setDefaultOn(value: boolean): void {\n this._activeInputElement.toggleAttribute('checked', value);\n }\n\n public setValue(value: string): void {\n this._activeInputElement.value = value;\n }\n\n public setDisabled(value: boolean): void {\n this._activeInputElement.disabled = value;\n this._stateLayerElement.disabled = value;\n }\n\n public setRequired(value: boolean): void {\n this._activeInputElement.required = value;\n }\n\n public setReadonly(value: boolean): void {\n this._activeInputElement.readOnly = value;\n toggleAttribute(this._activeInputElement, value, 'aria-readonly', value.toString());\n this._stateLayerElement.disabled = value;\n }\n\n public setIconVisibility(value: SwitchIconVisibility): void {\n const hideOn = value === 'none' || value === 'off';\n const hideOff = value === 'none' || value === 'on';\n toggleClass(this._iconOnElement, hideOn, SWITCH_CONSTANTS.classes.HIDDEN);\n toggleClass(this._iconOffElement, hideOff, SWITCH_CONSTANTS.classes.HIDDEN);\n }\n\n public setLabelPosition(value: SwitchLabelPosition): void {\n this._labelElement.remove();\n\n if (value === 'start') {\n this._rootElement.prepend(this._labelElement);\n } else {\n this._rootElement.append(this._labelElement);\n }\n }\n\n public addRootListener(event: string, callback: EventListener): void {\n this._rootElement.addEventListener(event, callback);\n }\n\n public addInputSlotListener(callback: EventListener): void {\n this._inputElement.addEventListener('slotchange', callback);\n }\n\n public detectInputElement(): void {\n const inputElement = this._inputSlotElement.assignedElements()[0] as HTMLInputElement;\n if (inputElement) {\n this._inputAdapter.attachElement(inputElement);\n } else {\n this._inputAdapter.attachElement(this._inputElement);\n }\n }\n\n public proxyClick(): void {\n this._activeInputElement.click();\n // TODO: use `{ focusVisble: false }` when supported.\n this._activeInputElement.focus();\n }\n\n public proxyLabel(value: string | null): void {\n this._labelElementText = value ?? undefined;\n this._setAriaLabel();\n }\n\n public syncValue(value: string | null): void {\n if (value === null) {\n this._component[internals].setFormValue(null, SWITCH_CONSTANTS.state.OFF);\n return;\n }\n\n const data = new FormData();\n data.append(this._component.name, value);\n this._component[internals].setFormValue(data, SWITCH_CONSTANTS.state.ON);\n }\n\n public syncValidity(hasCustomValidityError: boolean): void {\n if (hasCustomValidityError) {\n this._activeInputElement.setCustomValidity(this._component[internals].validationMessage);\n } else {\n this._activeInputElement.setCustomValidity('');\n }\n\n this._component[internals].setValidity(this._activeInputElement.validity, this._activeInputElement.validationMessage, this._activeInputElement);\n }\n\n public setValidity(flags?: ValidityStateFlags | undefined, message?: string | undefined): void {\n this._component[internals].setValidity(flags, message, this._activeInputElement);\n }\n\n private _initializeInput(): void {\n this._forwardObserver?.disconnect();\n this._initializeForwardObserver(this._activeInputElement);\n }\n\n private _initializeForwardObserver(el: HTMLElement): void {\n this._forwardObserver = forwardAttributes(this._component, SWITCH_CONSTANTS.forwardedAttributes, (name, value) => {\n // Use the connected label element as a fallback if aria-label is removed. Store the value so\n // it can be used to determine whether an updated label element should take effect.\n if (name === 'aria-label') {\n this._forwardedAriaLabel = value ?? undefined;\n this._setAriaLabel();\n return;\n }\n // Otherwise forward the attribute to the element.\n toggleAttribute(el, !!value, name, value ?? undefined);\n });\n }\n\n private _setAriaLabel(): void {\n const hasAriaLabel = !!this._forwardedAriaLabel || !!this._labelElementText;\n toggleAttribute(this._activeInputElement, hasAriaLabel, 'aria-label', this._forwardedAriaLabel ?? this._labelElementText);\n }\n \n private _switchInput(newEl: HTMLInputElement, oldEl: HTMLInputElement): void {\n cloneAttributes(oldEl, newEl, ['type', 'role', 'checked', 'aria-readonly']);\n cloneProperties(oldEl, newEl, INPUT_PROPERTIES);\n cloneValidationMessage(oldEl, newEl);\n }\n\n private _observeInput(el: HTMLInputElement = this._inputElement): void {\n this._inputAdapter.initialize(el, (newEl, oldEl) => {\n this._switchInput(newEl, oldEl);\n this._initializeInput();\n });\n }\n}\n", "import { ICustomElementFoundation } from '@tylertech/forge-core';\n\nimport { ISwitchAdapter } from './switch-adapter';\nimport { SWITCH_CONSTANTS, SwitchIconVisibility, SwitchLabelPosition } from './switch-constants';\n\nexport interface ISwitchFoundation extends ICustomElementFoundation {\n on: boolean;\n defaultOn: boolean;\n value: string;\n dense: boolean;\n disabled: boolean;\n required: boolean;\n readonly: boolean;\n icon: SwitchIconVisibility;\n labelPosition: SwitchLabelPosition;\n proxyClick(): void;\n proxyLabel(value: string | null): void;\n syncValidity(hasCustomValidityError: boolean): void;\n setValidity(flags?: ValidityStateFlags | undefined, message?: string | undefined): void;\n}\n\nexport class SwitchFoundation implements ISwitchFoundation {\n // State\n private _on = false;\n private _defaultOn = false;\n private _value = 'on';\n private _dense = false;\n private _disabled = false;\n private _required = false;\n private _readonly = false;\n private _icon: SwitchIconVisibility = 'on';\n private _labelPosition: SwitchLabelPosition = 'end';\n\n private get _submittedValue(): string | null {\n return this._on ? this._value : null;\n }\n\n // Listeners\n private readonly _changeListener: EventListener;\n private readonly _inputSlotListener: EventListener;\n\n constructor(private readonly _adapter: ISwitchAdapter) {\n this._changeListener = (evt: Event) => this._handleChange(evt);\n this._inputSlotListener = () => this._handleInputSlotChange();\n }\n\n public initialize(): void {\n this._adapter.initialize();\n this._adapter.addRootListener('change', this._changeListener);\n this._adapter.addInputSlotListener(this._inputSlotListener);\n this._adapter.setIconVisibility(this._icon);\n this._adapter.syncValue(this._submittedValue);\n }\n\n public proxyClick(): void {\n this._adapter.proxyClick();\n }\n\n public proxyLabel(value: string | null): void {\n this._adapter.proxyLabel(value);\n }\n\n public syncValidity(hasCustomValidityError: boolean): void {\n this._adapter.syncValidity(hasCustomValidityError);\n }\n\n public setValidity(flags?: ValidityStateFlags | undefined, message?: string | undefined): void {\n this._adapter.setValidity(flags, message);\n }\n\n private _handleChange(evt: Event): void {\n if (this._readonly) {\n this._adapter.setOn(this._on);\n return;\n }\n\n const target = evt.target as HTMLInputElement;\n const newValue = target.checked;\n const oldValue = this._on;\n\n this._on = newValue;\n\n const isCancelled = !this._adapter.emitHostEvent(SWITCH_CONSTANTS.events.CHANGE, newValue, true, true);\n if (isCancelled) {\n this._on = oldValue;\n this._adapter.setOn(this._on);\n return;\n }\n\n this._adapter.syncValue(this._submittedValue);\n this._setOnAttribute();\n }\n\n private _handleInputSlotChange(): void {\n this._adapter.detectInputElement();\n }\n\n private _setOnAttribute(): void {\n this._adapter.toggleHostAttribute(SWITCH_CONSTANTS.attributes.ON, this._on);\n // Also set selected for backwards compatibility\n this._adapter.toggleHostAttribute(SWITCH_CONSTANTS.attributes.SELECTED, this._on);\n }\n\n public get on(): boolean {\n return this._on;\n }\n public set on(value: boolean) {\n if (this._on !== value) {\n this._on = value;\n this._adapter.setOn(this._on);\n this._adapter.syncValue(this._submittedValue);\n this._setOnAttribute();\n }\n }\n\n public get defaultOn(): boolean {\n return this._defaultOn;\n }\n public set defaultOn(value: boolean) {\n if (this._defaultOn !== value) {\n this._defaultOn = value;\n this._adapter.setDefaultOn(this._defaultOn);\n this._adapter.toggleHostAttribute(SWITCH_CONSTANTS.attributes.DEFAULT_ON, this._defaultOn);\n }\n }\n\n public get value(): string {\n return this._value;\n }\n public set value(value: string) {\n if (this._value !== value) {\n this._value = value;\n this._adapter.setValue(this._value);\n this._adapter.syncValue(this._submittedValue);\n this._adapter.toggleHostAttribute(SWITCH_CONSTANTS.attributes.VALUE, true, this._value);\n }\n }\n\n public get dense(): boolean {\n return this._dense;\n }\n public set dense(value: boolean) {\n if (this._dense !== value) {\n this._dense = value;\n this._adapter.toggleHostAttribute(SWITCH_CONSTANTS.attributes.DENSE, this._dense);\n }\n }\n\n public get disabled(): boolean {\n return this._disabled;\n }\n public set disabled(value: boolean) {\n if (this._disabled !== value) {\n this._disabled = value;\n this._adapter.setDisabled(this._disabled);\n this._adapter.toggleHostAttribute(SWITCH_CONSTANTS.attributes.DISABLED, this._disabled);\n }\n }\n\n public get required(): boolean {\n return this._required;\n }\n public set required(value: boolean) {\n if (this._required !== value) {\n this._required = value;\n this._adapter.setRequired(this._required);\n this._adapter.toggleHostAttribute(SWITCH_CONSTANTS.attributes.REQUIRED, this._required);\n }\n }\n\n public get readonly(): boolean {\n return this._readonly;\n }\n public set readonly(value: boolean) {\n if (this._readonly !== value) {\n this._readonly = value;\n this._adapter.setReadonly(this._readonly);\n this._adapter.toggleHostAttribute(SWITCH_CONSTANTS.attributes.READONLY, this._readonly);\n }\n }\n\n public get icon(): SwitchIconVisibility {\n return this._icon;\n }\n public set icon(value: SwitchIconVisibility) {\n if (this._icon !== value) {\n this._icon = value;\n this._adapter.setIconVisibility(this._icon);\n this._adapter.setHostAttribute(SWITCH_CONSTANTS.attributes.ICON, this._icon);\n }\n }\n\n public get labelPosition(): SwitchLabelPosition {\n return this._labelPosition;\n }\n public set labelPosition(value: SwitchLabelPosition) {\n if (this._labelPosition !== value) {\n this._labelPosition = value;\n this._adapter.setLabelPosition(this._labelPosition);\n this._adapter.setHostAttribute(SWITCH_CONSTANTS.attributes.LABEL_POSITION, this._labelPosition);\n }\n }\n}\n", "import { CustomElement, FoundationProperty, attachShadowTemplate, coerceBoolean, isDefined, isString, toggleAttribute } from '@tylertech/forge-core';\nimport { BaseNullableFormComponent, IBaseNullableFormComponent } from '../core/base/base-nullable-form-component';\nimport { FocusIndicatorComponent } from '../focus-indicator/focus-indicator';\nimport { StateLayerComponent } from '../state-layer/state-layer';\nimport { SwitchAdapter } from './switch-adapter';\nimport { SWITCH_CONSTANTS, SwitchIconVisibility, SwitchLabelPosition } from './switch-constants';\nimport { SwitchFoundation } from './switch-foundation';\nimport { ILabelAware } from '../label/label-aware';\nimport { internals } from '../constants';\n\nconst template = '<template><div class=\\\"forge-switch\\\" part=\\\"switch\\\"><div id=\\\"container\\\" class=\\\"container\\\"><slot name=\\\"input\\\"><input id=\\\"input\\\" class=\\\"input\\\" type=\\\"checkbox\\\" role=\\\"switch\\\"></slot><div class=\\\"track\\\" part=\\\"track\\\"></div><div class=\\\"handle\\\" part=\\\"handle\\\"><div id=\\\"icon-off\\\" class=\\\"icon icon__off\\\" part=\\\"icon-off\\\"><slot name=\\\"icon-off\\\"><svg aria-hidden=\\\"true\\\" viewBox=\\\"0 0 24 24\\\"><path d=\\\"M20 13H4v-2h16v2z\\\"/></svg></slot></div><div id=\\\"icon-on\\\" class=\\\"icon icon__on\\\" part=\\\"icon-on\\\"><slot name=\\\"icon-on\\\"><svg aria-hidden=\\\"true\\\" viewBox=\\\"0 0 24 24\\\"><path d=\\\"M19.69,5.23L8.96,15.96l-4.23-4.23L2.96,13.5l6,6L21.46,7L19.69,5.23z\\\"/></svg></slot></div><forge-state-layer target=\\\"container\\\" exportparts=\\\"surface:state-layer\\\"></forge-state-layer></div><forge-focus-indicator target=\\\"container\\\" part=\\\"focus-indicator\\\"></forge-focus-indicator></div><label id=\\\"label\\\" for=\\\"input\\\" class=\\\"label\\\" part=\\\"label\\\"><slot></slot></label></div></template>';\nconst styles = ':host{display:inline-block}:host([hidden]){display:none}.forge-switch{--_switch-handle-size:var(--forge-switch-handle-size, 20px);--_switch-handle-scale:var(--forge-switch-handle-scale, 1);--_switch-handle-elevation:var(--forge-switch-handle-elevation, 0px 2px 1px -1px rgba(0, 0, 0, 0.2), 0px 1px 1px 0px rgba(0, 0, 0, 0.14), 0px 1px 3px 0px rgba(0, 0, 0, 0.12));--_switch-track-border-width:var(--forge-switch-track-border-width, 0);--_switch-track-border-color:var(--forge-switch-track-border-color, transparent);--_switch-icon-color:var(--forge-switch-icon-color, var(--forge-theme-on-tertiary, #ffffff));--_switch-icon-size:var(--forge-switch-icon-size, 16px);--_switch-icon-scale:var(--forge-switch-icon-scale, 1);--_switch-state-layer-size:var(--forge-switch-state-layer-size, 40px);--_switch-state-layer-dense-size:var(--forge-switch-handle-dense-size, 28px);--_switch-handle-on-color:var(--forge-switch-handle-on-color, var(--forge-theme-tertiary, #3d5afe));--_switch-handle-off-color:var(--forge-switch-handle-off-color, var(--forge-theme-surface-container-high, #9e9e9e));--_switch-handle-width:var(--forge-switch-handle-width, var(--_switch-handle-size));--_switch-handle-height:var(--forge-switch-handle-height, var(--_switch-handle-size));--_switch-handle-on-scale:var(--forge-switch-handle-on-scale, var(--_switch-handle-scale));--_switch-handle-off-scale:var(--forge-switch-handle-off-scale, var(--_switch-handle-scale));--_switch-handle-shape:var(--forge-switch-handle-shape, var(--forge-shape-round, 50%));--_switch-handle-on-elevation:var(--forge-switch-handle-on-elevation, var(--_switch-handle-elevation));--_switch-handle-off-elevation:var(--forge-switch-handle-off-elevation, var(--_switch-handle-elevation));--_switch-track-on-color:var(--forge-switch-track-on-color, var(--forge-theme-tertiary-container, #d0d7ff));--_switch-track-off-color:var(--forge-switch-track-off-color, var(--forge-theme-surface-container, #e0e0e0));--_switch-track-width:var(--forge-switch-track-width, 36px);--_switch-track-height:var(--forge-switch-track-height, 14px);--_switch-track-shape:var(--forge-switch-track-shape, var(--forge-shape-full, 9999px));--_switch-track-on-border-width:var(--forge-switch-track-on-border-width, var(--_switch-track-border-width));--_switch-track-off-border-width:var(--forge-switch-track-off-border-width, var(--_switch-track-border-width));--_switch-track-on-border-color:var(--forge-switch-track-on-border-color, var(--_switch-track-border-color));--_switch-track-off-border-color:var(--forge-switch-track-off-border-color, var(--_switch-track-border-color));--_switch-icon-on-color:var(--forge-switch-icon-on-color, var(--_switch-icon-color));--_switch-icon-off-color:var(--forge-switch-icon-off-color, var(--_switch-icon-color));--_switch-icon-on-size:var(--forge-switch-icon-on-size, var(--_switch-icon-size));--_switch-icon-off-size:var(--forge-switch-icon-off-size, var(--_switch-icon-size));--_switch-icon-on-scale:var(--forge-switch-icon-on-scale, var(--_switch-icon-scale));--_switch-icon-off-scale:var(--forge-switch-icon-off-scale, var(--_switch-icon-scale));--_switch-gap:var(--forge-switch-gap, 0);--_switch-justify:var(--forge-switch-justify, space-between);--_switch-direction:var(--forge-switch-direction, initial);--_switch-state-layer-width:var(--forge-switch-state-layer-width, var(--_switch-state-layer-size));--_switch-state-layer-height:var(--forge-switch-state-layer-height, var(--_switch-state-layer-size));--_switch-state-layer-on-color:var(--forge-switch-state-layer-on-color, var(--_switch-handle-on-color));--_switch-state-layer-off-color:var(--forge-state-layer-state-layer-off-color, var(--_state-layer-color));--_switch-state-layer-dense-width:var(--forge-switch-state-layer-dense-width, var(--_switch-state-layer-dense-size));--_switch-state-layer-dense-height:var(--forge-switch-state-layer-dense-height, var(--_switch-state-layer-dense-size));--_switch-disabled-opacity:var(--forge-switch-disabled-opacity, 0.38);--_switch-handle-active-on-color:var(--forge-switch-handle-active-on-color, var(--_switch-handle-on-color));--_switch-handle-active-off-color:var(--forge-switch-handle-active-off-color, var(--_switch-handle-off-color));--_switch-handle-active-scale:var(--forge-switch-handle-active-scale, 1.2);--_switch-handle-active-on-scale:var(--forge-switch-handle-active-on-scale, var(--_switch-handle-active-scale));--_switch-handle-active-off-scale:var(--forge-switch-handle-active-off-scale, var(--_switch-handle-active-scale));--_switch-handle-active-elevation:var(--forge-switch-handle-active-elevation, var(--_switch-handle-elevation));--_switch-handle-active-on-elevation:var(--forge-switch-handle-active-on-elevation, var(--_switch-handle-active-elevation));--_switch-handle-active-off-elevation:var(--forge-switch-handle-active-on-elevation, var(--_switch-handle-active-elevation));--_switch-track-active-on-color:var(--forge-switch-track-active-on-color, var(--_switch-track-on-color));--_switch-track-active-off-color:var(--forge-switch-track-active-off-color, var(--_switch-track-off-color));--_switch-track-active-on-border-width:var(--forge-switch-track-active-on-border-width, var(--_switch-track-on-border-width));--_switch-track-active-off-border-width:var(--forge-switch-track-active-off-border-width, var(--_switch-track-off-border-width));--_switch-track-active-on-border-color:var(--forge-switch-track-active-on-border-color, var(--_switch-track-on-border-color));--_switch-track-active-off-border-color:var(--forge-switch-track-active-off-border-color, var(--_switch-track-off-border-color));--_switch-icon-active-on-color:var(--forge-switch-icon-active-on-color, var(--_switch-icon-on-color));--_switch-icon-active-off-color:var(--forge-switch-icon-active-off-color, var(--_switch-icon-off-color));--_switch-icon-active-on-scale:var(--forge-switch-icon-active-on-scale, var(--_switch-icon-on-scale));--_switch-icon-active-off-scale:var(--forge-switch-icon-active-off-scale, var(--_switch-icon-off-scale));--_switch-animation-duration:var(--forge-switch-animation-duration, var(--forge-animation-duration-short2, 100ms));--_switch-animation-timing:var(--forge-switch-animation-timing, var(--forge-animation-easing-standard, cubic-bezier(0.2, 0, 0, 1)));--_switch-active-animation-timing:var(--forge-switch-active-animation-timing, var(--forge-animation-easing-linear, cubic-bezier(0, 0, 1, 1)))}.forge-switch{position:relative;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:var(--_switch-direction);flex-shrink:0;-webkit-box-align:center;align-items:center;-webkit-box-pack:var(--_switch-justify);justify-content:var(--_switch-justify);gap:var(--_switch-gap);display:-webkit-box;display:flex;--_switch-current-state-layer-width:var(--_switch-state-layer-width);--_switch-current-state-layer-height:var(--_switch-state-layer-height)}.forge-switch .container{position:relative;-webkit-box-align:center;align-items:center;display:-webkit-box;display:flex;block-size:max(var(--_switch-handle-height),var(--_switch-track-height),var(--_switch-current-state-layer-height));cursor:pointer}.forge-switch .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-switch .track{-webkit-transition-property:background-color,border-color,border-width;transition-property:background-color,border-color,border-width;-webkit-transition-duration:var(--_switch-animation-duration);transition-duration:var(--_switch-animation-duration);-webkit-transition-timing-function:var(--_switch-animation-timing);transition-timing-function:var(--_switch-animation-timing);-webkit-box-sizing:border-box;box-sizing:border-box;margin-inline:calc(max(var(--_switch-handle-width),var(--_switch-current-state-layer-width))/ 2 - calc(var(--_switch-track-height)/ 2));border-width:var(--_switch-track-off-border-width);border-color:var(--_switch-track-off-border-color);border-style:solid;border-radius:var(--_switch-track-shape);inline-size:var(--_switch-track-width);block-size:var(--_switch-track-height);background-color:var(--_switch-track-off-color)}.forge-switch .handle{position:absolute;-webkit-box-pack:center;justify-content:center;-webkit-box-align:center;align-items:center;display:-webkit-box;display:flex;-webkit-transition-property:translate;transition-property:translate;-webkit-transition-duration:var(--_switch-animation-duration);transition-duration:var(--_switch-animation-duration);-webkit-transition-timing-function:var(--_switch-animation-timing);transition-timing-function:var(--_switch-animation-timing);border-radius:var(--_switch-handle-shape);inline-size:var(--_switch-current-state-layer-width);block-size:var(--_switch-current-state-layer-height)}.forge-switch .handle::before{content:\\\"\\\";position:relative;display:block;scale:var(--_switch-handle-off-scale);-webkit-transition:background-color var(--_switch-animation-duration) var(--_switch-animation-timing),scale var(--_switch-animation-duration) var(--_switch-active-animation-timing),-webkit-box-shadow var(--_switch-animation-duration) var(--_switch-animation-timing);transition:background-color var(--_switch-animation-duration) var(--_switch-animation-timing),scale var(--_switch-animation-duration) var(--_switch-active-animation-timing),-webkit-box-shadow var(--_switch-animation-duration) var(--_switch-animation-timing);transition:background-color var(--_switch-animation-duration) var(--_switch-animation-timing),box-shadow var(--_switch-animation-duration) var(--_switch-animation-timing),scale var(--_switch-animation-duration) var(--_switch-active-animation-timing);transition:background-color var(--_switch-animation-duration) var(--_switch-animation-timing),box-shadow var(--_switch-animation-duration) var(--_switch-animation-timing),scale var(--_switch-animation-duration) var(--_switch-active-animation-timing),-webkit-box-shadow var(--_switch-animation-duration) var(--_switch-animation-timing);-webkit-box-shadow:var(--_switch-handle-off-elevation);box-shadow:var(--_switch-handle-off-elevation);border-radius:var(--_switch-handle-shape);inline-size:var(--_switch-handle-width);block-size:var(--_switch-handle-height);background-color:var(--_switch-handle-off-color)}.forge-switch .icon{position:absolute;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;display:-webkit-box;display:flex;-webkit-transition-property:opacity,scale;transition-property:opacity,scale;-webkit-transition-duration:var(--_switch-animation-duration);transition-duration:var(--_switch-animation-duration);-webkit-transition-timing-function:var(--_switch-animation-timing);transition-timing-function:var(--_switch-animation-timing);inline-size:var(--_switch-icon-off-size);block-size:var(--_switch-icon-off-size);color:var(--_switch-icon-off-color);fill:var(--_switch-icon-off-color);font-size:var(--_switch-icon-off-size);--forge-icon-font-size:var(--_switch-icon-off-size)}.forge-switch .icon__on{--forge-icon-font-size:var(--_switch-icon-on-size);inline-size:var(--_switch-icon-on-size);block-size:var(--_switch-icon-on-size);color:var(--_switch-icon-on-color);fill:var(--_switch-icon-on-color);font-size:var(--_switch-icon-on-size);opacity:0;scale:0.4}.forge-switch .icon__off{opacity:1;scale:var(--_switch-icon-off-scale)}.forge-switch .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-switch .label:empty{display:none}.forge-switch .hidden{display:none}.forge-switch ::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([on]) .track{border-width:var(--_switch-track-on-border-width);border-color:var(--_switch-track-on-border-color);background-color:var(--_switch-track-on-color)}:host([on]) .handle{translate:calc(var(--_switch-track-width) - calc(var(--_switch-track-height)/ 2) * 2)}:host([on]) .handle::before{scale:var(--_switch-handle-on-scale);-webkit-box-shadow:var(--_switch-handle-on-elevation);box-shadow:var(--_switch-handle-on-elevation);background-color:var(--_switch-handle-on-color)}:host([on]) .handle .icon__on{opacity:1;scale:var(--_switch-icon-on-scale)}:host([on]) .handle .icon__off{opacity:0;scale:0.4}:host([on]) forge-state-layer{--forge-state-layer-color:var(--_switch-state-layer-on-color)}:host(:not([disabled]):not([readonly])) .forge-switch .container:active .track{border-width:var(--_switch-track-active-off-border-width);border-color:var(--_switch-track-active-off-border-color);background-color:var(--_switch-track-active-off-color)}:host(:not([disabled]):not([readonly])) .forge-switch .container:active .handle::before{scale:var(--_switch-handle-active-off-scale);-webkit-box-shadow:var(--_switch-handle-active-off-elevation);box-shadow:var(--_switch-handle-active-off-elevation);background-color:var(--_switch-handle-active-off-color)}:host(:not([disabled]):not([readonly])) .forge-switch .container:active .handle .icon{scale:var(--_switch-icon-active-off-scale);color:var(--_switch-icon-active-off-color);fill:var(--_switch-icon-active-off-color)}:host(:not([disabled]):not([readonly])[on]) .forge-switch .container:active .track{border-width:var(--_switch-track-active-on-border-width);border-color:var(--_switch-track-active-on-border-color);background-color:var(--_switch-track-active-on-color)}:host(:not([disabled]):not([readonly])[on]) .forge-switch .container:active .handle::before{scale:var(--_switch-handle-active-on-scale);-webkit-box-shadow:var(--_switch-handle-active-on-elevation);box-shadow:var(--_switch-handle-active-on-elevation);background-color:var(--_switch-handle-active-on-color)}:host(:not([disabled]):not([readonly])[on]) .forge-switch .container:active .handle .icon{scale:var(--_switch-icon-active-on-scale);color:var(--_switch-icon-active-on-color);fill:var(--_switch-icon-active-on-color)}:host([dense]) .forge-switch{--_switch-current-state-layer-width:var(--_switch-state-layer-dense-width);--_switch-current-state-layer-height:var(--_switch-state-layer-dense-height)}:host([disabled]) .forge-switch{opacity:var(--_switch-disabled-opacity)}:host([disabled]) .forge-switch .container{cursor:not-allowed}:host([disabled]) .forge-switch .handle::before{-webkit-box-shadow:none;box-shadow:none}:host([readonly]) .forge-switch .container{cursor:not-allowed}@media (prefers-reduced-motion){.switch{--_switch-animation-duration:var(--forge-switch-animation-duration, 0s)}}forge-state-layer{--forge-state-layer-color:var(--_switch-state-layer-off-color)}forge-focus-indicator{--forge-focus-indicator-shape:var(--_switch-track-shape);--forge-focus-indicator-outward-offset:0px}';\n\nexport interface ISwitchComponent extends IBaseNullableFormComponent, ILabelAware {\n on: boolean;\n /**\n * @deprecated use `on` instead\n */\n selected: boolean;\n defaultOn: boolean;\n dense: boolean;\n icon: SwitchIconVisibility;\n labelPosition: SwitchLabelPosition;\n toggle(force?: boolean): void;\n setFormValue(value: string | File | FormData | null, state?: string | File | FormData | null | undefined): void;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'forge-switch': ISwitchComponent;\n }\n\n interface HTMLElementEventMap {\n 'forge-switch-change': CustomEvent<boolean>;\n }\n}\n\n/**\n * @tag forge-switch\n * \n * @summary Switches toggle the state of a single setting on or off.\n * \n * @description\n * Use switches to:\n * - Toggle a single item on or off, on mobile and tablet\n * - Immediately activate or deactivate something\n * \n * @property {boolean} on - Whether the switch is on the on or off state.\n * @property {boolean} selected - Deprecated. Alias for `on`.\n * @property {boolean} defaultOn - Whether the switch is on or off by default.\n * @property {string} value - The value of the switch.\n * @property {boolean} dense - The density state.\n * @property {boolean} disabled - Controls if the switch is disabled.\n * @property {boolean} required = Controls if the switch is required.\n * @property {boolean} readonly - Controls if the switch is readonly.\n * @property {SwitchIconVisibility} icon - Controls the presence of the off and on icons.\n * @property {SwitchLabelPosition} labelPosition - Whether the label appears before or after the switch.\n * \n * @attribute {string} on - Controls whether the switch is in the on or off state.\n * @attribute {string} selected - Deprecated. Alias for `on`.\n * @attribute {string} default-on - Controls whether the switch is in the on or off state by default.\n * @attribute {string} value - The value of the switch.\n * @attribute {string} dense - Sets the density state.\n * @attribute {string} disabled - Controls if the switch is disabled.\n * @attribute {string} required - Controls if the switch is required.\n * @attribute {string} readonly - Controls if the switch is readonly.\n * @attribute {string} icon - Controls the presence of the off and on icons.\n * @attribute {string} label-position - Sets whether the label appears before or after the switch.\n * \n * @method {(force?: boolean) => void} toggle - Toggles whether the switch is selected or forces a selected state.\n * \n * @event {CustomEvent} forge-switch-change - Dispatches when the switch's value changes.\n * \n * @cssproperty --forge-theme-primary - The primary color of the switch.\n * @cssproperty --forge-theme-on-primary - The color of elements placed on top of the primary color (the handle icons for example).\n * @cssproperty --forge-switch-handle-on-color - The color of the handle in the switch's on state.\n * @cssproperty --forge-switch-handle-off-color - The color of the handle in the switch's off state.\n * @cssproperty --forge-switch-handle-active-on-color - The color of the handle when the switch is active (pressed) in its on state.\n * @cssproperty --forge-switch-handle-active-off-color - The color of the handle when the switch is active (pressed) in its off state.\n * @cssproperty --forge-switch-handle-size - The inline and block size of the handle.\n * @cssproperty --forge-switch-handle-width - The inline size of the handle.\n * @cssproperty --forge-switch-handle-height - The block size of the handle.\n * @cssproperty --forge-switch-handle-scale - The scale transformation applied to the handle.\n * @cssproperty --forge-switch-handle-on-scale - The scale transformation applied to the handle in the switch's on state.\n * @cssproperty --forge-switch-handle-off-scale - The scale transformation applied to the handle in the switch's off state.\n * @cssproperty --forge-switch-handle-active-scale - The scale transformation applied to the handle when the switch is active (pressed).\n * @cssproperty --forge-switch-handle-active-on-scale - The scale transformation applied to the handle when the switch is active (pressed) in its on state.\n * @cssproperty --forge-switch-handle-active-off-scale - The scale transformation applied to the handle when the switch is active (pressed) in its off state.\n * @cssproperty --forge-switch-handle-shape - The shape of the handle.\n * @cssproperty --forge-switch-handle-elevation - The handle's shadow.\n * @cssproperty --forge-switch-handle-on-elevation - The handle's shadow in the switch's on state.\n * @cssproperty --forge-switch-handle-off-elevation - The handle's shadow in the switch's off state.\n * @cssproperty --forge-switch-handle-active-elevation - The handle's shadow when the switch is active (pressed).\n * @cssproperty --forge-switch-handle-active-on-elevation - The handle's shadow when the switch is active (pressed) in its on state.\n * @cssproperty --forge-switch-handle-active-off-elevation - The handle's shadow when the switch is active (pressed) in its off state.\n * @cssproperty --forge-switch-track-on-color - The color of the track in the switch's on state.\n * @cssproperty --forge-switch-track-off-color - The color fo the track in the switch's off state.\n * @cssproperty --forge-switch-track-active-on-color - The color of the track when the switch is active (pressed) in its on state.\n * @cssproperty --forge-switch-track-active-off-color - The color fo the track when the switch is active (pressed) in its off state.\n * @cssproperty --forge-switch-track-width - The inline size of the track.\n * @cssproperty --forge-switch-track-height - The block size of the track.\n * @cssproperty --forge-switch-track-shape - The shape of the track.\n * @cssproperty --forge-switch-track-border-width - The width of the track border.\n * @cssproperty --forge-switch-track-on-border-width - The width of the track border in the switch's on state.\n * @cssproperty --forge-switch-track-off-border-width - The width of the track border in the switch's off state.\n * @cssproperty --forge-switch-track-active-on-border-width - The width of the track border when the switch is active (pressed) in its on state.\n * @cssproperty --forge-switch-track-active-off-border-width - The width of the track border when the switch is active (pressed) in its off state.\n * @cssproperty --forge-switch-track-border-color - The color of the track border.\n * @cssproperty --forge-switch-track-on-border-color - The color of the track border in the switch's on state.\n * @cssproperty --forge-switch-track-off-border-color - The color of the track border in the switch's off state.\n * @cssproperty --forge-switch-track-active-on-border-color - The color of the track border when the switch is active (pressed) in its on state.\n * @cssproperty --forge-switch-track-active-off-border-color - The color of the track border when the switch is active (pressed) in its off state.\n * @cssproperty --forge-switch-icon-color - The color of the handle icons.\n * @cssproperty --forge-switch-icon-on-color - The color of the handle icon in the switch's on state.\n * @cssproperty --forge-switch-icon-off-color - The color of the handle icon in the switch's off state.\n * @cssproperty --forge-switch-icon-active-on-color - The color of the handle icon when the switch is active (pressed) in its on state.\n * @cssproperty --forge-switch-icon-active-off-color - The color of the handle icon when the switch is active (pressed) in its off state.\n * @cssproperty --forge-switch-icon-size - The size of the handle icon.\n * @cssproperty --forge-switch-icon-on-size - The size of the handle icon in the switch's on state.\n * @cssproperty --forge-switch-icon-off-size - The size of the handle icon in the switch's off state.\n * @cssproperty --forge-switch-icon-scale - The scale transformation applied to the handle icons.\n * @cssproperty --forge-switch-icon-on-scale - The scale transformation applied to the handle icons in the switch's on state.\n * @cssproperty --forge-switch-icon-off-scale - The scale transformation applied to the handle icons in the switch's off state.\n * @cssproperty --forge-switch-icon-active-on-scale - The scale transformation applied to the handle icons when the switch is active (pressed) in its on state.\n * @cssproperty --forge-switch-icon-active-off-scale - The scale transformation applied to the handle icons when the switch is active (pressed) in its off state.\n * @cssproperty --forge-switch-gap - The space between the switch and label.\n * @cssproperty --forge-switch-justify - How the switch and label are distributed along their main axis.\n * @cssproperty --forge-switch-direction - Whether the switch and label are arranged along the inline or block axis.\n * @cssproperty --forge-switch-state-layer-size - The inline and block size of the handle's state layer.\n * @cssproperty --forge-switch-state-layer-width - The inline size of the handle's state layer.\n * @cssproperty --forge-switch-state-layer-height - The block size of the handle's state layer.\n * @cssproperty --forge-switch-state-layer-on-color - The color of the handle's state layer when the switch is in its on state.\n * @cssproperty --forge-switch-state-layer-off-color - The color of the handle's state layer when the switch is in its off state.\n * @cssproperty --forge-switch-state-layer-dense-size - The inline and block size of the handle's state layer when the dense switch is used.\n * @cssproperty --forge-switch-state-layer-dense-width - The inline size of the handle's state layer when the dense switch is used.\n * @cssproperty --forge-switch-state-layer-dense-height - The block size of the handle's state layer when the dense switch is used.\n * @cssproperty --forge-switch-disabled-opacity - The opacity of the switch when disabled.\n * @cssproperty --forge-switch-animation-duration - The duration of animations.\n * @cssproperty --forge-switch-animation-timing - The timing function used in most animations.\n * @cssproperty --forge-switch-active-animation-timing - The timing function used in active state animations.\n * \n * @csspart switch - Styles the switch container element.\n * @csspart track - Styles the track element.\n * @csspart handle - Styles the handle element.\n * @csspart icon-on - Styles the on icon element.\n * @csspart icon-off - Styles the off icon element.\n * @csspart label - Styles the label element.\n * @csspart state-layer - Styles the state layer root element.\n * @csspart focus-indicator - Styles the focus indicator root element.\n */\n@CustomElement({\n name: SWITCH_CONSTANTS.elementName,\n dependencies: [\n FocusIndicatorComponent,\n StateLayerComponent\n ]\n})\nexport class SwitchComponent extends BaseNullableFormComponent implements ISwitchComponent {\n public static get observedAttributes(): string[] {\n return [\n SWITCH_CONSTANTS.attributes.ON,\n SWITCH_CONSTANTS.attributes.SELECTED,\n SWITCH_CONSTANTS.attributes.DEFAULT_ON,\n SWITCH_CONSTANTS.attributes.VALUE,\n SWITCH_CONSTANTS.attributes.DENSE,\n SWITCH_CONSTANTS.attributes.DISABLED,\n SWITCH_CONSTANTS.attributes.REQUIRED,\n SWITCH_CONSTANTS.attributes.READONLY,\n SWITCH_CONSTANTS.attributes.ICON,\n SWITCH_CONSTANTS.attributes.LABEL_POSITION\n ];\n }\n\n public get form(): HTMLFormElement | null {\n return this[internals].form;\n }\n\n public get labels(): NodeList {\n return this[internals].labels;\n }\n\n public get name(): string {\n return this.getAttribute('name') ?? '';\n }\n public set name(value: string) {\n toggleAttribute(this, !!value, 'name', value ?? '');\n }\n\n public get validity(): ValidityState {\n this._foundation.syncValidity(this._hasCustomValidityError);\n return this[internals].validity;\n }\n\n public get validationMessage(): string {\n this._foundation.syncValidity(this._hasCustomValidityError);\n return this[internals].validationMessage;\n }\n\n public get willValidate(): boolean {\n return this[internals].willValidate;\n }\n\n public readonly [internals]: ElementInternals;\n private readonly _foundation: SwitchFoundation;\n\n constructor() {\n super();\n attachShadowTemplate(this, template, styles, true);\n this[internals] = this.attachInternals();\n this._foundation = new SwitchFoundation(new SwitchAdapter(this));\n }\n\n public connectedCallback(): void {\n this._foundation.initialize();\n }\n\n public attributeChangedCallback(name: string, oldValue: string, newValue: string): void {\n switch (name) {\n case SWITCH_CONSTANTS.attributes.ON:\n case SWITCH_CONSTANTS.attributes.SELECTED:\n this.on = coerceBoolean(newValue);\n break;\n case SWITCH_CONSTANTS.attributes.DEFAULT_ON:\n this.defaultOn = coerceBoolean(newValue);\n break;\n case SWITCH_CONSTANTS.attributes.VALUE:\n this.value = newValue;\n break;\n case SWITCH_CONSTANTS.attributes.DENSE:\n this.dense = coerceBoolean(newValue);\n break;\n case SWITCH_CONSTANTS.attributes.DISABLED:\n this.disabled = coerceBoolean(newValue);\n break;\n case SWITCH_CONSTANTS.attributes.REQUIRED:\n this.required = coerceBoolean(newValue);\n break;\n case SWITCH_CONSTANTS.attributes.READONLY:\n this.readonly = coerceBoolean(newValue);\n break;\n case SWITCH_CONSTANTS.attributes.ICON:\n this.icon = newValue as SwitchIconVisibility;\n break;\n case SWITCH_CONSTANTS.attributes.LABEL_POSITION:\n this.labelPosition = newValue as SwitchLabelPosition;\n break;\n }\n }\n\n public setFormValue(value: string | File | FormData | null, state?: string | File | FormData | null | undefined): void {\n this[internals].setFormValue(value, state);\n\n if (state) {\n const stateValue = isString(state) ? state : state[this.name];\n this.on = stateValue === SWITCH_CONSTANTS.state.ON;\n return;\n }\n\n if (isString(value)) {\n this.on = !!value;\n } else if (value?.[this.name]) {\n this.on = !!value[this.name];\n } else {\n this.on = false;\n }\n }\n\n public checkValidity(): boolean {\n this._foundation.syncValidity(this._hasCustomValidityError);\n return this[internals].checkValidity();\n }\n\n public reportValidity(): boolean {\n this._foundation.syncValidity(this._hasCustomValidityError);\n return this[internals].reportValidity();\n }\n\n public setCustomValidity(error: string): void {\n this._hasCustomValidityError = !!error;\n this._foundation.setValidity({ customError: !!error }, error);\n }\n\n public formResetCallback(): void {\n this.on = this.defaultOn;\n }\n\n public formStateRestoreCallback(state: string): void {\n this.on = state === SWITCH_CONSTANTS.state.ON;\n }\n\n public formDisabledCallback(isDisabled: boolean): void {\n this.disabled = isDisabled;\n }\n\n public labelClickedCallback(): void {\n this._foundation.proxyClick();\n }\n\n public labelChangedCallback(value: string | null): void {\n this._foundation.proxyLabel(value);\n }\n\n @FoundationProperty()\n public declare on: boolean;\n\n /**\n * @deprecated use `on` instead\n */\n @FoundationProperty({ name: 'on' })\n public declare selected: boolean;\n\n @FoundationProperty()\n public declare defaultOn: boolean;\n\n @FoundationProperty()\n public declare value: string;\n\n @FoundationProperty()\n public declare dense: boolean;\n\n @FoundationProperty()\n public declare disabled: boolean;\n\n @FoundationProperty()\n public declare required: boolean;\n\n @FoundationProperty()\n public declare readonly: boolean;\n\n @FoundationProperty()\n public declare icon: SwitchIconVisibility;\n\n @FoundationProperty()\n public declare labelPosition: SwitchLabelPosition;\n\n /**\n * Toggles the switch on or off.\n * @param force Whether to set the switch on or off.\n */\n public toggle(force?: boolean): void {\n if (isDefined(force)) {\n this._foundation.on = force as boolean;\n } else {\n this._foundation.on = !this._foundation.on;\n }\n }\n}\n", "import { FormFieldComponentDelegate, IFormFieldComponentDelegateOptions } from '../core';\nimport { IBaseComponentDelegateConfig } from '../core/delegates/base-component-delegate';\nimport { ISwitchComponent } from './switch';\nimport { SWITCH_CONSTANTS, SwitchIconVisibility, SwitchLabelPosition } from './switch-constants';\n\nexport type SwitchComponentDelegateProps = Partial<ISwitchComponent>;\nexport interface ISwitchComponentDelegateOptions extends IFormFieldComponentDelegateOptions {\n id?: string;\n label?: string;\n}\nexport interface ISwitchComponentDelegateConfig extends IBaseComponentDelegateConfig<ISwitchComponent, ISwitchComponentDelegateOptions> {}\n\nexport class SwitchComponentDelegate extends FormFieldComponentDelegate<ISwitchComponent, ISwitchComponentDelegateOptions> {\n constructor(config?: ISwitchComponentDelegateConfig) {\n super(config);\n }\n\n public get value(): string {\n return this._element.value;\n }\n public set value(value: string) {\n this._element.value = value;\n }\n\n public get on(): boolean {\n return this._element.on;\n }\n public set on(value: boolean) {\n this._element.on = value;\n }\n\n public get selected(): boolean {\n return this._element.selected;\n }\n public set selected(value: boolean) {\n this._element.selected = value;\n }\n\n public get defaultOn(): boolean {\n return this._element.defaultOn;\n }\n public set defaultOn(value: boolean) {\n this._element.defaultOn = value;\n }\n\n public get icon(): SwitchIconVisibility {\n return this._element.icon;\n }\n public set icon(value: SwitchIconVisibility) {\n this._element.icon = value;\n }\n\n public get disabled(): boolean {\n return this._element.disabled;\n }\n public set disabled(value: boolean) {\n this._element.disabled = value;\n }\n\n public get dense(): boolean {\n return this._element.dense;\n }\n public set dense(value: boolean) {\n this._element.dense = value;\n }\n\n public get required(): boolean {\n return this._element.required;\n }\n public set required(value: boolean) {\n this._element.required = value;\n }\n\n public get readonly(): boolean {\n return this._element.readonly;\n }\n public set readonly(value: boolean) {\n this._element.readonly = value;\n }\n\n public get name(): string {\n return this._element.name;\n }\n public set name(value: string) {\n this._element.name = value;\n }\n\n public get labelPosition(): SwitchLabelPosition {\n return this._element.labelPosition;\n }\n public set labelPosition(value: SwitchLabelPosition) {\n this._element.labelPosition = value;\n }\n\n public onChange(listener: (value: boolean) => void): void {\n this._element.addEventListener('forge-switch-change', ({ detail }: CustomEvent<boolean>) => listener(detail));\n }\n\n public onFocus(listener: (evt: Event) => void): void {\n this._element.addEventListener('focus', evt => listener(evt));\n }\n\n public onBlur(listener: (evt: Event) => void): void {\n this._element.addEventListener('blur', evt => listener(evt));\n }\n\n public setLabel(text: string | null): void {\n this._element.innerText = text ?? '';\n }\n\n public toggle(force?: boolean): void {\n this._element.toggle(force);\n }\n\n protected _build(): ISwitchComponent {\n return document.createElement(SWITCH_CONSTANTS.elementName);\n }\n\n protected override _configure(): void {\n if (this._config.options?.id) {\n this._element.id = this._config.options.id;\n }\n if (this._config.options?.label) {\n this._element.innerText = this._config.options.label;\n }\n }\n}\n", "import { defineCustomElement } from '@tylertech/forge-core';\n\nimport { SwitchComponent } from './switch';\n\nexport * from './switch-adapter';\nexport * from './switch-constants';\nexport * from './switch-foundation';\nexport * from './switch';\nexport * from './switch-component-delegate';\n\nexport function defineSwitchComponent(): void {\n defineCustomElement(SwitchComponent);\n}\n"],
5
+ "mappings": "2jBAGA,IAAMA,EAA2C,GAAGC,UAE9CC,EAAU,CACd,OAAQ,QACV,EAEMC,EAAa,CACjB,GAAI,KACJ,SAAU,WACV,WAAY,aACZ,MAAO,QACP,MAAO,QACP,SAAU,WACV,SAAU,WACV,SAAU,WACV,KAAM,OACN,eAAgB,gBAClB,EAEMC,EAAY,CAChB,KAAM,gBACN,MAAO,SACP,MAAO,SACP,QAAS,WACT,SAAU,YACV,WAAY,mBACZ,YAAa,oBACb,cAAe,sBACjB,EAEMC,EAAS,CACb,OAAQ,GAAGL,UACb,EAEMM,EAAQ,CACZ,GAAI,KACJ,IAAK,KACP,EAEMC,EAAsB,CAAC,GAAGC,CAAqB,EAExCC,EAAmB,CAC9B,QAAAP,EACA,UAAAE,EACA,WAAAD,EACA,YAAAH,EACA,OAAAK,EACA,MAAAC,EACA,oBAAAC,CACF,ECzBO,IAAMG,EAAN,cAA4BC,CAAwD,CAiBzF,YAAYC,EAA6B,CACvC,MAAMA,CAAS,EAEf,KAAK,aAAeC,EAAiBD,EAAWE,EAAiB,UAAU,IAAI,EAC/E,KAAK,cAAgBD,EAAiBD,EAAWE,EAAiB,UAAU,KAAK,EACjF,KAAK,cAAgBD,EAAiBD,EAAWE,EAAiB,UAAU,KAAK,EACjF,KAAK,eAAiBD,EAAiBD,EAAWE,EAAiB,UAAU,OAAO,EACpF,KAAK,gBAAkBD,EAAiBD,EAAWE,EAAiB,UAAU,QAAQ,EACtF,KAAK,mBAAqBD,EAAiBD,EAAWE,EAAiB,UAAU,WAAW,EAC5F,KAAK,cAAgB,IAAIC,CAC3B,CAdA,IAAY,qBAAwC,CAxCtD,IAAAC,EAyCI,OAAOA,EAAA,KAAK,cAAc,KAAnB,KAAAA,EAAyB,KAAK,aACvC,CAcO,YAAmB,CACxB,IAAMC,EAAe,KAAK,WAAW,cAAcH,EAAiB,UAAU,aAAa,EACvFG,GACFA,EAAa,KAAO,QACpB,KAAK,aAAaA,EAAc,KAAK,aAAa,GAElD,KAAK,2BAA2B,KAAK,aAAa,EAEpD,KAAK,cAAcA,GAAA,KAAAA,EAAgB,KAAK,aAAa,CACvD,CAEO,MAAMC,EAAsB,CACjC,KAAK,oBAAoB,QAAUA,CACrC,CAEO,aAAaA,EAAsB,CACxC,KAAK,oBAAoB,gBAAgB,UAAWA,CAAK,CAC3D,CAEO,SAASA,EAAqB,CACnC,KAAK,oBAAoB,MAAQA,CACnC,CAEO,YAAYA,EAAsB,CACvC,KAAK,oBAAoB,SAAWA,EACpC,KAAK,mBAAmB,SAAWA,CACrC,CAEO,YAAYA,EAAsB,CACvC,KAAK,oBAAoB,SAAWA,CACtC,CAEO,YAAYA,EAAsB,CACvC,KAAK,oBAAoB,SAAWA,EACpCC,EAAgB,KAAK,oBAAqBD,EAAO,gBAAiBA,EAAM,SAAS,CAAC,EAClF,KAAK,mBAAmB,SAAWA,CACrC,CAEO,kBAAkBA,EAAmC,CAC1D,IAAME,EAASF,IAAU,QAAUA,IAAU,MACvCG,EAAUH,IAAU,QAAUA,IAAU,KAC9CI,EAAY,KAAK,eAAgBF,EAAQN,EAAiB,QAAQ,MAAM,EACxEQ,EAAY,KAAK,gBAAiBD,EAASP,EAAiB,QAAQ,MAAM,CAC5E,CAEO,iBAAiBI,EAAkC,CACxD,KAAK,cAAc,OAAO,EAEtBA,IAAU,QACZ,KAAK,aAAa,QAAQ,KAAK,aAAa,EAE5C,KAAK,aAAa,OAAO,KAAK,aAAa,CAE/C,CAEO,gBAAgBK,EAAeC,EAA+B,CACnE,KAAK,aAAa,iBAAiBD,EAAOC,CAAQ,CACpD,CAEO,qBAAqBA,EAA+B,CACzD,KAAK,cAAc,iBAAiB,aAAcA,CAAQ,CAC5D,CAEO,oBAA2B,CAChC,IAAMC,EAAe,KAAK,kBAAkB,iBAAiB,EAAE,CAAC,EAC5DA,EACF,KAAK,cAAc,cAAcA,CAAY,EAE7C,KAAK,cAAc,cAAc,KAAK,aAAa,CAEvD,CAEO,YAAmB,CACxB,KAAK,oBAAoB,MAAM,EAE/B,KAAK,oBAAoB,MAAM,CACjC,CAEO,WAAWP,EAA4B,CAC5C,KAAK,kBAAoBA,GAAA,KAAAA,EAAS,OAClC,KAAK,cAAc,CACrB,CAEO,UAAUA,EAA4B,CAC3C,GAAIA,IAAU,KAAM,CAClB,KAAK,WAAWQ,CAAS,EAAE,aAAa,KAAMZ,EAAiB,MAAM,GAAG,EACxE,OAGF,IAAMa,EAAO,IAAI,SACjBA,EAAK,OAAO,KAAK,WAAW,KAAMT,CAAK,EACvC,KAAK,WAAWQ,CAAS,EAAE,aAAaC,EAAMb,EAAiB,MAAM,EAAE,CACzE,CAEO,aAAac,EAAuC,CACrDA,EACF,KAAK,oBAAoB,kBAAkB,KAAK,WAAWF,CAAS,EAAE,iBAAiB,EAEvF,KAAK,oBAAoB,kBAAkB,EAAE,EAG/C,KAAK,WAAWA,CAAS,EAAE,YAAY,KAAK,oBAAoB,SAAU,KAAK,oBAAoB,kBAAmB,KAAK,mBAAmB,CAChJ,CAEO,YAAYG,EAAwCC,EAAoC,CAC7F,KAAK,WAAWJ,CAAS,EAAE,YAAYG,EAAOC,EAAS,KAAK,mBAAmB,CACjF,CAEQ,kBAAyB,CApKnC,IAAAd,GAqKIA,EAAA,KAAK,mBAAL,MAAAA,EAAuB,aACvB,KAAK,2BAA2B,KAAK,mBAAmB,CAC1D,CAEQ,2BAA2Be,EAAuB,CACxD,KAAK,iBAAmBC,EAAkB,KAAK,WAAYlB,EAAiB,oBAAqB,CAACmB,EAAMf,IAAU,CAGhH,GAAIe,IAAS,aAAc,CACzB,KAAK,oBAAsBf,GAAA,KAAAA,EAAS,OACpC,KAAK,cAAc,EACnB,OAGFC,EAAgBY,EAAI,CAAC,CAACb,EAAOe,EAAMf,GAAA,KAAAA,EAAS,MAAS,CACvD,CAAC,CACH,CAEQ,eAAsB,CAvLhC,IAAAF,EAwLI,IAAMkB,EAAe,CAAC,CAAC,KAAK,qBAAuB,CAAC,CAAC,KAAK,kBAC1Df,EAAgB,KAAK,oBAAqBe,EAAc,cAAclB,EAAA,KAAK,sBAAL,KAAAA,EAA4B,KAAK,iBAAiB,CAC1H,CAEQ,aAAamB,EAAyBC,EAA+B,CAC3EC,EAAgBD,EAAOD,EAAO,CAAC,OAAQ,OAAQ,UAAW,eAAe,CAAC,EAC1EG,EAAgBF,EAAOD,EAAOI,CAAgB,EAC9CC,EAAuBJ,EAAOD,CAAK,CACrC,CAEQ,cAAcJ,EAAuB,KAAK,cAAqB,CACrE,KAAK,cAAc,WAAWA,EAAI,CAACI,EAAOC,IAAU,CAClD,KAAK,aAAaD,EAAOC,CAAK,EAC9B,KAAK,iBAAiB,CACxB,CAAC,CACH,CACF,ECnLO,IAAMK,EAAN,KAAoD,CAoBzD,YAA6BC,EAA0B,CAA1B,cAAAA,EAlB7B,KAAQ,IAAM,GACd,KAAQ,WAAa,GACrB,KAAQ,OAAS,KACjB,KAAQ,OAAS,GACjB,KAAQ,UAAY,GACpB,KAAQ,UAAY,GACpB,KAAQ,UAAY,GACpB,KAAQ,MAA8B,KACtC,KAAQ,eAAsC,MAW5C,KAAK,gBAAmBC,GAAe,KAAK,cAAcA,CAAG,EAC7D,KAAK,mBAAqB,IAAM,KAAK,uBAAuB,CAC9D,CAXA,IAAY,iBAAiC,CAC3C,OAAO,KAAK,IAAM,KAAK,OAAS,IAClC,CAWO,YAAmB,CACxB,KAAK,SAAS,WAAW,EACzB,KAAK,SAAS,gBAAgB,SAAU,KAAK,eAAe,EAC5D,KAAK,SAAS,qBAAqB,KAAK,kBAAkB,EAC1D,KAAK,SAAS,kBAAkB,KAAK,KAAK,EAC1C,KAAK,SAAS,UAAU,KAAK,eAAe,CAC9C,CAEO,YAAmB,CACxB,KAAK,SAAS,WAAW,CAC3B,CAEO,WAAWC,EAA4B,CAC5C,KAAK,SAAS,WAAWA,CAAK,CAChC,CAEO,aAAaC,EAAuC,CACzD,KAAK,SAAS,aAAaA,CAAsB,CACnD,CAEO,YAAYC,EAAwCC,EAAoC,CAC7F,KAAK,SAAS,YAAYD,EAAOC,CAAO,CAC1C,CAEQ,cAAcJ,EAAkB,CACtC,GAAI,KAAK,UAAW,CAClB,KAAK,SAAS,MAAM,KAAK,GAAG,EAC5B,OAIF,IAAMK,EADSL,EAAI,OACK,QAClBM,EAAW,KAAK,IAKtB,GAHA,KAAK,IAAMD,EAES,CAAC,KAAK,SAAS,cAAcE,EAAiB,OAAO,OAAQF,EAAU,GAAM,EAAI,EACpF,CACf,KAAK,IAAMC,EACX,KAAK,SAAS,MAAM,KAAK,GAAG,EAC5B,OAGF,KAAK,SAAS,UAAU,KAAK,eAAe,EAC5C,KAAK,gBAAgB,CACvB,CAEQ,wBAA+B,CACrC,KAAK,SAAS,mBAAmB,CACnC,CAEQ,iBAAwB,CAC9B,KAAK,SAAS,oBAAoBC,EAAiB,WAAW,GAAI,KAAK,GAAG,EAE1E,KAAK,SAAS,oBAAoBA,EAAiB,WAAW,SAAU,KAAK,GAAG,CAClF,CAEA,IAAW,IAAc,CACvB,OAAO,KAAK,GACd,CACA,IAAW,GAAGN,EAAgB,CACxB,KAAK,MAAQA,IACf,KAAK,IAAMA,EACX,KAAK,SAAS,MAAM,KAAK,GAAG,EAC5B,KAAK,SAAS,UAAU,KAAK,eAAe,EAC5C,KAAK,gBAAgB,EAEzB,CAEA,IAAW,WAAqB,CAC9B,OAAO,KAAK,UACd,CACA,IAAW,UAAUA,EAAgB,CAC/B,KAAK,aAAeA,IACtB,KAAK,WAAaA,EAClB,KAAK,SAAS,aAAa,KAAK,UAAU,EAC1C,KAAK,SAAS,oBAAoBM,EAAiB,WAAW,WAAY,KAAK,UAAU,EAE7F,CAEA,IAAW,OAAgB,CACzB,OAAO,KAAK,MACd,CACA,IAAW,MAAMN,EAAe,CAC1B,KAAK,SAAWA,IAClB,KAAK,OAASA,EACd,KAAK,SAAS,SAAS,KAAK,MAAM,EAClC,KAAK,SAAS,UAAU,KAAK,eAAe,EAC5C,KAAK,SAAS,oBAAoBM,EAAiB,WAAW,MAAO,GAAM,KAAK,MAAM,EAE1F,CAEA,IAAW,OAAiB,CAC1B,OAAO,KAAK,MACd,CACA,IAAW,MAAMN,EAAgB,CAC3B,KAAK,SAAWA,IAClB,KAAK,OAASA,EACd,KAAK,SAAS,oBAAoBM,EAAiB,WAAW,MAAO,KAAK,MAAM,EAEpF,CAEA,IAAW,UAAoB,CAC7B,OAAO,KAAK,SACd,CACA,IAAW,SAASN,EAAgB,CAC9B,KAAK,YAAcA,IACrB,KAAK,UAAYA,EACjB,KAAK,SAAS,YAAY,KAAK,SAAS,EACxC,KAAK,SAAS,oBAAoBM,EAAiB,WAAW,SAAU,KAAK,SAAS,EAE1F,CAEA,IAAW,UAAoB,CAC7B,OAAO,KAAK,SACd,CACA,IAAW,SAASN,EAAgB,CAC9B,KAAK,YAAcA,IACrB,KAAK,UAAYA,EACjB,KAAK,SAAS,YAAY,KAAK,SAAS,EACxC,KAAK,SAAS,oBAAoBM,EAAiB,WAAW,SAAU,KAAK,SAAS,EAE1F,CAEA,IAAW,UAAoB,CAC7B,OAAO,KAAK,SACd,CACA,IAAW,SAASN,EAAgB,CAC9B,KAAK,YAAcA,IACrB,KAAK,UAAYA,EACjB,KAAK,SAAS,YAAY,KAAK,SAAS,EACxC,KAAK,SAAS,oBAAoBM,EAAiB,WAAW,SAAU,KAAK,SAAS,EAE1F,CAEA,IAAW,MAA6B,CACtC,OAAO,KAAK,KACd,CACA,IAAW,KAAKN,EAA6B,CACvC,KAAK,QAAUA,IACjB,KAAK,MAAQA,EACb,KAAK,SAAS,kBAAkB,KAAK,KAAK,EAC1C,KAAK,SAAS,iBAAiBM,EAAiB,WAAW,KAAM,KAAK,KAAK,EAE/E,CAEA,IAAW,eAAqC,CAC9C,OAAO,KAAK,cACd,CACA,IAAW,cAAcN,EAA4B,CAC/C,KAAK,iBAAmBA,IAC1B,KAAK,eAAiBA,EACtB,KAAK,SAAS,iBAAiB,KAAK,cAAc,EAClD,KAAK,SAAS,iBAAiBM,EAAiB,WAAW,eAAgB,KAAK,cAAc,EAElG,CACF,EChMA,IAAMC,EAAW,i6BACXC,EAAS,soeAkJFC,EAAN,cAA8BC,CAAsD,CAgDzF,aAAc,CACZ,MAAM,EACNC,EAAqB,KAAMJ,EAAUC,EAAQ,EAAI,EACjD,KAAKI,CAAS,EAAI,KAAK,gBAAgB,EACvC,KAAK,YAAc,IAAIC,EAAiB,IAAIC,EAAc,IAAI,CAAC,CACjE,CApDA,WAAkB,oBAA+B,CAC/C,MAAO,CACLC,EAAiB,WAAW,GAC5BA,EAAiB,WAAW,SAC5BA,EAAiB,WAAW,WAC5BA,EAAiB,WAAW,MAC5BA,EAAiB,WAAW,MAC5BA,EAAiB,WAAW,SAC5BA,EAAiB,WAAW,SAC5BA,EAAiB,WAAW,SAC5BA,EAAiB,WAAW,KAC5BA,EAAiB,WAAW,cAC9B,CACF,CAEA,IAAW,MAA+B,CACxC,OAAO,KAAKH,CAAS,EAAE,IACzB,CAEA,IAAW,QAAmB,CAC5B,OAAO,KAAKA,CAAS,EAAE,MACzB,CAEA,IAAW,MAAe,CArL5B,IAAAI,EAsLI,OAAOA,EAAA,KAAK,aAAa,MAAM,IAAxB,KAAAA,EAA6B,EACtC,CACA,IAAW,KAAKC,EAAe,CAC7BC,EAAgB,KAAM,CAAC,CAACD,EAAO,OAAQA,GAAA,KAAAA,EAAS,EAAE,CACpD,CAEA,IAAW,UAA0B,CACnC,YAAK,YAAY,aAAa,KAAK,uBAAuB,EACnD,KAAKL,CAAS,EAAE,QACzB,CAEA,IAAW,mBAA4B,CACrC,YAAK,YAAY,aAAa,KAAK,uBAAuB,EACnD,KAAKA,CAAS,EAAE,iBACzB,CAEA,IAAW,cAAwB,CACjC,OAAO,KAAKA,CAAS,EAAE,YACzB,CAYO,mBAA0B,CAC/B,KAAK,YAAY,WAAW,CAC9B,CAEO,yBAAyBO,EAAcC,EAAkBC,EAAwB,CACtF,OAAQF,EAAM,CACZ,KAAKJ,EAAiB,WAAW,GACjC,KAAKA,EAAiB,WAAW,SAC/B,KAAK,GAAKO,EAAcD,CAAQ,EAChC,MACF,KAAKN,EAAiB,WAAW,WAC/B,KAAK,UAAYO,EAAcD,CAAQ,EACvC,MACF,KAAKN,EAAiB,WAAW,MAC/B,KAAK,MAAQM,EACb,MACF,KAAKN,EAAiB,WAAW,MAC/B,KAAK,MAAQO,EAAcD,CAAQ,EACnC,MACF,KAAKN,EAAiB,WAAW,SAC/B,KAAK,SAAWO,EAAcD,CAAQ,EACtC,MACF,KAAKN,EAAiB,WAAW,SAC/B,KAAK,SAAWO,EAAcD,CAAQ,EACtC,MACF,KAAKN,EAAiB,WAAW,SAC/B,KAAK,SAAWO,EAAcD,CAAQ,EACtC,MACF,KAAKN,EAAiB,WAAW,KAC/B,KAAK,KAAOM,EACZ,MACF,KAAKN,EAAiB,WAAW,eAC/B,KAAK,cAAgBM,EACrB,KACJ,CACF,CAEO,aAAaJ,EAAwCM,EAA2D,CAGrH,GAFA,KAAKX,CAAS,EAAE,aAAaK,EAAOM,CAAK,EAErCA,EAAO,CACT,IAAMC,EAAaC,EAASF,CAAK,EAAIA,EAAQA,EAAM,KAAK,IAAI,EAC5D,KAAK,GAAKC,IAAeT,EAAiB,MAAM,GAChD,OAGEU,EAASR,CAAK,EAChB,KAAK,GAAK,CAAC,CAACA,EACHA,GAAA,MAAAA,EAAQ,KAAK,MACtB,KAAK,GAAK,CAAC,CAACA,EAAM,KAAK,IAAI,EAE3B,KAAK,GAAK,EAEd,CAEO,eAAyB,CAC9B,YAAK,YAAY,aAAa,KAAK,uBAAuB,EACnD,KAAKL,CAAS,EAAE,cAAc,CACvC,CAEO,gBAA0B,CAC/B,YAAK,YAAY,aAAa,KAAK,uBAAuB,EACnD,KAAKA,CAAS,EAAE,eAAe,CACxC,CAEO,kBAAkBc,EAAqB,CAC5C,KAAK,wBAA0B,CAAC,CAACA,EACjC,KAAK,YAAY,YAAY,CAAE,YAAa,CAAC,CAACA,CAAM,EAAGA,CAAK,CAC9D,CAEO,mBAA0B,CAC/B,KAAK,GAAK,KAAK,SACjB,CAEO,yBAAyBH,EAAqB,CACnD,KAAK,GAAKA,IAAUR,EAAiB,MAAM,EAC7C,CAEO,qBAAqBY,EAA2B,CACrD,KAAK,SAAWA,CAClB,CAEO,sBAA6B,CAClC,KAAK,YAAY,WAAW,CAC9B,CAEO,qBAAqBV,EAA4B,CACtD,KAAK,YAAY,WAAWA,CAAK,CACnC,CAuCO,OAAOW,EAAuB,CAC/BC,EAAUD,CAAK,EACjB,KAAK,YAAY,GAAKA,EAEtB,KAAK,YAAY,GAAK,CAAC,KAAK,YAAY,EAE5C,CACF,EAhJmBhB,EAqGFkB,EAAA,CADdC,EAAmB,GAjJTtB,EAkJI,kBAMAqB,EAAA,CADdC,EAAmB,CAAE,KAAM,IAAK,CAAC,GAvJvBtB,EAwJI,wBAGAqB,EAAA,CADdC,EAAmB,GA1JTtB,EA2JI,yBAGAqB,EAAA,CADdC,EAAmB,GA7JTtB,EA8JI,qBAGAqB,EAAA,CADdC,EAAmB,GAhKTtB,EAiKI,qBAGAqB,EAAA,CADdC,EAAmB,GAnKTtB,EAoKI,wBAGAqB,EAAA,CADdC,EAAmB,GAtKTtB,EAuKI,wBAGAqB,EAAA,CADdC,EAAmB,GAzKTtB,EA0KI,wBAGAqB,EAAA,CADdC,EAAmB,GA5KTtB,EA6KI,oBAGAqB,EAAA,CADdC,EAAmB,GA/KTtB,EAgLI,6BAhLJA,EAANqB,EAAA,CAPNE,EAAc,CACb,KAAMjB,EAAiB,YACvB,aAAc,CACZkB,EACAC,CACF,CACF,CAAC,GACYzB,GCjJN,IAAM0B,EAAN,cAAsCC,CAA8E,CACzH,YAAYC,EAAyC,CACnD,MAAMA,CAAM,CACd,CAEA,IAAW,OAAgB,CACzB,OAAO,KAAK,SAAS,KACvB,CACA,IAAW,MAAMC,EAAe,CAC9B,KAAK,SAAS,MAAQA,CACxB,CAEA,IAAW,IAAc,CACvB,OAAO,KAAK,SAAS,EACvB,CACA,IAAW,GAAGA,EAAgB,CAC5B,KAAK,SAAS,GAAKA,CACrB,CAEA,IAAW,UAAoB,CAC7B,OAAO,KAAK,SAAS,QACvB,CACA,IAAW,SAASA,EAAgB,CAClC,KAAK,SAAS,SAAWA,CAC3B,CAEA,IAAW,WAAqB,CAC9B,OAAO,KAAK,SAAS,SACvB,CACA,IAAW,UAAUA,EAAgB,CACnC,KAAK,SAAS,UAAYA,CAC5B,CAEA,IAAW,MAA6B,CACtC,OAAO,KAAK,SAAS,IACvB,CACA,IAAW,KAAKA,EAA6B,CAC3C,KAAK,SAAS,KAAOA,CACvB,CAEA,IAAW,UAAoB,CAC7B,OAAO,KAAK,SAAS,QACvB,CACA,IAAW,SAASA,EAAgB,CAClC,KAAK,SAAS,SAAWA,CAC3B,CAEA,IAAW,OAAiB,CAC1B,OAAO,KAAK,SAAS,KACvB,CACA,IAAW,MAAMA,EAAgB,CAC/B,KAAK,SAAS,MAAQA,CACxB,CAEA,IAAW,UAAoB,CAC7B,OAAO,KAAK,SAAS,QACvB,CACA,IAAW,SAASA,EAAgB,CAClC,KAAK,SAAS,SAAWA,CAC3B,CAEA,IAAW,UAAoB,CAC7B,OAAO,KAAK,SAAS,QACvB,CACA,IAAW,SAASA,EAAgB,CAClC,KAAK,SAAS,SAAWA,CAC3B,CAEA,IAAW,MAAe,CACxB,OAAO,KAAK,SAAS,IACvB,CACA,IAAW,KAAKA,EAAe,CAC7B,KAAK,SAAS,KAAOA,CACvB,CAEA,IAAW,eAAqC,CAC9C,OAAO,KAAK,SAAS,aACvB,CACA,IAAW,cAAcA,EAA4B,CACnD,KAAK,SAAS,cAAgBA,CAChC,CAEO,SAASC,EAA0C,CACxD,KAAK,SAAS,iBAAiB,sBAAuB,CAAC,CAAE,OAAAC,CAAO,IAA4BD,EAASC,CAAM,CAAC,CAC9G,CAEO,QAAQD,EAAsC,CACnD,KAAK,SAAS,iBAAiB,QAASE,GAAOF,EAASE,CAAG,CAAC,CAC9D,CAEO,OAAOF,EAAsC,CAClD,KAAK,SAAS,iBAAiB,OAAQE,GAAOF,EAASE,CAAG,CAAC,CAC7D,CAEO,SAASC,EAA2B,CACzC,KAAK,SAAS,UAAYA,GAAA,KAAAA,EAAQ,EACpC,CAEO,OAAOC,EAAuB,CACnC,KAAK,SAAS,OAAOA,CAAK,CAC5B,CAEU,QAA2B,CACnC,OAAO,SAAS,cAAcC,EAAiB,WAAW,CAC5D,CAEmB,YAAmB,CAtHxC,IAAAC,EAAAC,GAuHQD,EAAA,KAAK,QAAQ,UAAb,MAAAA,EAAsB,KACxB,KAAK,SAAS,GAAK,KAAK,QAAQ,QAAQ,KAEtCC,EAAA,KAAK,QAAQ,UAAb,MAAAA,EAAsB,QACxB,KAAK,SAAS,UAAY,KAAK,QAAQ,QAAQ,MAEnD,CACF,ECpHO,SAASC,IAA8B,CAC5CC,EAAoBC,CAAe,CACrC",
6
+ "names": ["elementName", "COMPONENT_NAME_PREFIX", "classes", "attributes", "selectors", "events", "state", "forwardedAttributes", "INPUT_ARIA_ATTRIBUTES", "SWITCH_CONSTANTS", "SwitchAdapter", "BaseAdapter", "component", "getShadowElement", "SWITCH_CONSTANTS", "SlottedElementAdapter", "_a", "slottedInput", "value", "toggleAttribute", "hideOn", "hideOff", "toggleClass", "event", "callback", "inputElement", "internals", "data", "hasCustomValidityError", "flags", "message", "el", "forwardAttributes", "name", "hasAriaLabel", "newEl", "oldEl", "cloneAttributes", "cloneProperties", "INPUT_PROPERTIES", "cloneValidationMessage", "SwitchFoundation", "_adapter", "evt", "value", "hasCustomValidityError", "flags", "message", "newValue", "oldValue", "SWITCH_CONSTANTS", "template", "styles", "SwitchComponent", "BaseNullableFormComponent", "attachShadowTemplate", "internals", "SwitchFoundation", "SwitchAdapter", "SWITCH_CONSTANTS", "_a", "value", "toggleAttribute", "name", "oldValue", "newValue", "coerceBoolean", "state", "stateValue", "isString", "error", "isDisabled", "force", "isDefined", "__decorateClass", "FoundationProperty", "CustomElement", "FocusIndicatorComponent", "StateLayerComponent", "SwitchComponentDelegate", "FormFieldComponentDelegate", "config", "value", "listener", "detail", "evt", "text", "force", "SWITCH_CONSTANTS", "_a", "_b", "defineSwitchComponent", "defineCustomElement", "SwitchComponent"]
7
+ }
@@ -0,0 +1,7 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2023 Tyler Technologies, Inc.
4
+ * License: Apache-2.0
5
+ */
6
+ import{a as E}from"./chunk.F6KM5FO6.js";import{a as T}from"./chunk.2YDKRTKP.js";import{b as L}from"./chunk.LOBKFTRM.js";import{a as v}from"./chunk.KFDYMENL.js";import{a as g}from"./chunk.LS7WRRT2.js";import{a as s}from"./chunk.NVUMRW44.js";import{a as b,b as _}from"./chunk.IT66AOX7.js";import{a as p,e as u,f as h,k as f}from"./chunk.JAWV5Y5T.js";import{k as m}from"./chunk.J2M2MXP2.js";import{d as l}from"./chunk.M3QDAYD2.js";var C=r=>typeof r.labelClickedCallback=="function"&&typeof r.labelChangedCallback=="function";var y=`${_}label`,k={FOR:"for",DYNAMIC:"dynamic"},M={ROOT:".forge-label",SLOT:"slot"},A=[E.elementName,T.elementName,L.elementName,v.elementName],n={elementName:y,selectors:M,attributes:k,labelableChildSelectors:A};var d=class extends g{constructor(e){super(e);this._targetElement=null;this._slotElement=h(e,n.selectors.SLOT)}destroy(){var e;(e=this._targetElement)==null||e.labelChangedCallback(null),this._targetElement=null}hasTargetElement(){return!!this._targetElement}getTargetElement(){return this._targetElement}setTargetElement(e){if(e&&this._checkLabelAwareness(e)){this._targetElement=e;return}this._targetElement=null}trySetTarget(e){this._targetElement=this._locateTargetElement(e)}clickTarget(){var e;(e=this._targetElement)==null||e.labelClickedCallback()}updateTargetLabel(){var a;let e=this._component.innerText.trim();(a=this._targetElement)==null||a.labelChangedCallback(e)}addSlotChangeListener(e){this._slotElement.addEventListener("slotchange",e)}addMutationObserver(e){this._mutationObserver=new MutationObserver(e),this._mutationObserver.observe(this._component,{subtree:!0,characterData:!0,childList:!0}),e([],this._mutationObserver)}removeMutationObserver(){var e;(e=this._mutationObserver)==null||e.disconnect(),this._mutationObserver=void 0}_checkLabelAwareness(e){return C(e)?!0:(console.warn("Label target element is not label aware.",e),!1)}_locateTargetElement(e){let a;if(e)a=this._component.getRootNode().querySelector(`#${e}`);else{let o=n.labelableChildSelectors.join(",");a=this._component.querySelector(o)}return a&&!this._checkLabelAwareness(a)?null:a}};var c=class{constructor(t){this._adapter=t;this._dynamic=!1;this._isConnected=!1;this._clickListener=e=>this._handleClick(e),this._slotChangeListener=()=>this._handleSlotChange(),this._mutationCallback=()=>this._handleMutation()}initialize(){var t;this._adapter.addSlotChangeListener(this._slotChangeListener),this._adapter.trySetTarget((t=this._for)!=null?t:null),this._adapter.hasTargetElement()&&this._connect()}disconnect(){this._disconnect(),this._adapter.destroy()}update(){this._adapter.updateTargetLabel()}_handleClick(t){let e=this._adapter.getTargetElement();t.target===e||e!=null&&e.contains(t.target)||this._adapter.clickTarget()}_handleSlotChange(){!this._for&&!this._forElement&&(this._adapter.trySetTarget(null),this._tryConnect())}_handleMutation(){this._adapter.updateTargetLabel()}_connect(){this._adapter.addHostListener("click",this._clickListener),this._adapter.updateTargetLabel(),this._dynamic&&this._adapter.addMutationObserver(this._mutationCallback),this._isConnected=!0}_disconnect(){this._adapter.removeHostListener("click",this._clickListener),this._adapter.removeMutationObserver(),this._isConnected=!1}_tryConnect(){this._adapter.hasTargetElement()?this._isConnected||this._connect():this._disconnect()}get for(){return this._for}set for(t){var e,a;this._for!==t&&(this._for=t,this._adapter.toggleHostAttribute(n.attributes.FOR,!!this.for,(e=this.for)!=null?e:void 0),this._adapter.trySetTarget((a=this._for)!=null?a:null),this._tryConnect())}get forElement(){return this._forElement}set forElement(t){var e;this._forElement!==t&&(this._forElement=t,this._adapter.setTargetElement((e=this._forElement)!=null?e:null),this._tryConnect())}get dynamic(){return this._dynamic}set dynamic(t){this._dynamic!==t&&(this._dynamic=t,this._adapter.toggleHostAttribute(n.attributes.DYNAMIC,this._dynamic),this._dynamic?this._adapter.hasTargetElement()&&this._adapter.addMutationObserver(this._mutationCallback):this._adapter.removeMutationObserver())}};var N='<template><span class="forge-label" part="label"><slot></slot></span></template>',O=':host{display:inline-block}:host([hidden]){display:none}.forge-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);display:contents;cursor:default}',i=class extends f{constructor(){super();u(this,N,O),this._foundation=new c(new d(this))}static get observedAttributes(){return[n.attributes.FOR,n.attributes.DYNAMIC]}connectedCallback(){this._foundation.initialize()}disconnectedCallback(){this._foundation.disconnect()}attributeChangedCallback(e,a,o){switch(e){case n.attributes.FOR:this.for=o;break;case n.attributes.DYNAMIC:this.dynamic=m(o);break}}update(){this._foundation.update()}};l([s()],i.prototype,"for",2),l([s()],i.prototype,"forElement",2),l([s()],i.prototype,"dynamic",2),i=l([b({name:n.elementName})],i);function ae(){p(i)}export{C as a,n as b,d as c,c as d,i as e,ae as f};
7
+ //# sourceMappingURL=chunk.3JCHXLPT.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/label/label-aware.ts", "../../src/label/label-constants.ts", "../../src/label/label-adapter.ts", "../../src/label/label-foundation.ts", "../../src/label/label.ts", "../../src/label/index.ts"],
4
- "sourcesContent": ["export interface ILabelAware {\n labelClickedCallback(): void;\n labelChangedCallback(value: string | null): void;\n}\n\n/**\n * Determines if an object is label aware.\n * @param obj - The object to check.\n * @returns True if the object is label aware, false otherwise.\n */\nexport const isLabelAware = (obj: any): obj is ILabelAware => {\n return typeof obj.labelClickedCallback === 'function' && typeof obj.labelChangedCallback === 'function';\n};\n", "import { BUTTON_CONSTANTS } from '../button';\nimport { CHECKBOX_CONSTANTS } from '../checkbox';\nimport { COMPONENT_NAME_PREFIX } from '../constants';\nimport { ICON_BUTTON_CONSTANTS } from '../icon-button';\nimport { SWITCH_CONSTANTS } from '../switch';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}label`;\n\nconst attributes = {\n FOR: 'for',\n DYNAMIC: 'dynamic'\n};\n\nconst selectors = {\n ROOT: '.forge-label',\n SLOT: 'slot'\n};\n\nconst labelableChildSelectors = [\n CHECKBOX_CONSTANTS.elementName,\n SWITCH_CONSTANTS.elementName,\n BUTTON_CONSTANTS.elementName,\n ICON_BUTTON_CONSTANTS.elementName\n];\n\nexport const LABEL_CONSTANTS = {\n elementName,\n selectors,\n attributes,\n labelableChildSelectors\n};\n", "import { getShadowElement } from '@tylertech/forge-core';\nimport { BaseAdapter, IBaseAdapter } from '../core';\nimport { ILabelComponent } from './label';\nimport { ILabelAware, isLabelAware } from './label-aware';\nimport { LABEL_CONSTANTS } from './label-constants';\n\nexport interface ILabelAdapter extends IBaseAdapter {\n destroy(): void;\n hasTargetElement(): boolean;\n getTargetElement(): HTMLElement | null;\n setTargetElement(el: HTMLElement | null): void;\n trySetTarget(value: string | null): void;\n clickTarget(): void;\n updateTargetLabel(): void;\n addSlotChangeListener(callback: EventListener): void;\n addMutationObserver(callback: MutationCallback): void;\n removeMutationObserver(): void;\n}\n\nexport class LabelAdapter extends BaseAdapter<ILabelComponent> implements ILabelAdapter {\n private _slotElement: HTMLElement;\n private _targetElement: ILabelAware & HTMLElement | null = null;\n private _mutationObserver?: MutationObserver;\n\n constructor(component: ILabelComponent) {\n super(component);\n this._slotElement = getShadowElement(component, LABEL_CONSTANTS.selectors.SLOT);\n }\n\n public destroy(): void {\n this._targetElement?.labelChangedCallback(null);\n this._targetElement = null;\n }\n\n public hasTargetElement(): boolean {\n return !!this._targetElement;\n }\n\n public getTargetElement(): HTMLElement | null {\n return this._targetElement;\n }\n\n public setTargetElement(el: HTMLElement | null): void {\n if (el && this._checkLabelAwareness(el)) {\n this._targetElement = el;\n return;\n }\n this._targetElement = null;\n }\n\n public trySetTarget(value: string | null): void {\n this._targetElement = this._locateTargetElement(value);\n }\n\n /**\n * Calls the target's `labelClickedCallback`.\n */\n public clickTarget(): void {\n this._targetElement?.labelClickedCallback();\n }\n\n /**\n * Computes the text content of the label then passes it to the target's `labelChangedCallback`.\n */\n public updateTargetLabel(): void {\n const value = this._component.innerText.trim();\n this._targetElement?.labelChangedCallback(value);\n }\n\n public addSlotChangeListener(callback: EventListener): void {\n this._slotElement.addEventListener('slotchange', callback);\n }\n\n public addMutationObserver(callback: MutationCallback): void {\n this._mutationObserver = new MutationObserver(callback);\n this._mutationObserver.observe(this._component, {\n subtree: true,\n characterData: true,\n childList: true\n });\n\n // Run the callback once to capture the current state of the label\n callback([], this._mutationObserver);\n };\n\n public removeMutationObserver(): void {\n this._mutationObserver?.disconnect();\n this._mutationObserver = undefined;\n }\n\n /**\n * Returns `true` if the provided element is label aware, `false` otherwise. If `false` a warning\n * is logged to the console.\n */\n private _checkLabelAwareness(el: HTMLElement): el is (ILabelAware & HTMLElement) {\n if (!isLabelAware(el)) {\n console.warn('Label target element is not label aware.', el);\n return false;\n }\n return true;\n }\n\n /**\n * Returns a label aware element queried from the provided id or a child element of the\n * component or `null` if none exists.\n */\n private _locateTargetElement(id: string | null): ILabelAware & HTMLElement | null {\n let targetEl: HTMLElement | null;\n\n if (id) {\n const rootNode = this._component.getRootNode() as Document | ShadowRoot;\n targetEl = rootNode.querySelector(`#${id}`);\n } else {\n // Used for nested elements within the label component\n const selector = LABEL_CONSTANTS.labelableChildSelectors.join(',');\n targetEl = this._component.querySelector(selector);\n }\n\n if (targetEl && !this._checkLabelAwareness(targetEl)) {\n return null;\n }\n\n return targetEl;\n }\n}\n", "import { ICustomElementFoundation } from '@tylertech/forge-core';\nimport { ILabelAdapter } from './label-adapter';\nimport { LABEL_CONSTANTS } from './label-constants';\n\nexport interface ILabelFoundation extends ICustomElementFoundation {\n for: string | null | undefined;\n forElement: HTMLElement | null | undefined;\n dynamic: boolean;\n disconnect(): void;\n update(): void;\n}\n\nexport class LabelFoundation implements ILabelFoundation {\n // State\n private _for: string | null | undefined;\n private _forElement: HTMLElement | null | undefined;\n private _dynamic = false;\n private _isConnected = false;\n\n // Listeners\n private readonly _clickListener: EventListener;\n private readonly _slotChangeListener: EventListener;\n private readonly _mutationCallback: MutationCallback;\n\n constructor(private _adapter: ILabelAdapter) {\n this._clickListener = (evt: PointerEvent) => this._handleClick(evt);\n this._slotChangeListener = () => this._handleSlotChange();\n this._mutationCallback = () => this._handleMutation();\n }\n\n public initialize(): void {\n this._adapter.addSlotChangeListener(this._slotChangeListener);\n this._adapter.trySetTarget(this._for ?? null);\n if (this._adapter.hasTargetElement()) {\n this._connect();\n }\n }\n\n public disconnect(): void {\n this._disconnect();\n this._adapter.destroy();\n }\n\n public update(): void {\n this._adapter.updateTargetLabel();\n }\n\n private _handleClick(evt: PointerEvent): void {\n // Prevent duplicate clicks from a nested target element\n if (evt.target === this._adapter.getTargetElement()) {\n return;\n }\n this._adapter.clickTarget();\n }\n\n private _handleSlotChange(): void {\n if (!this._for && !this._forElement) {\n this._adapter.trySetTarget(null);\n this._tryConnect();\n }\n }\n\n private _handleMutation(): void {\n this._adapter.updateTargetLabel();\n }\n\n private _connect(): void {\n this._adapter.addHostListener('click', this._clickListener);\n this._adapter.updateTargetLabel();\n if (this._dynamic) {\n this._adapter.addMutationObserver(this._mutationCallback);\n }\n this._isConnected = true;\n }\n\n private _disconnect(): void {\n this._adapter.removeHostListener('click', this._clickListener);\n this._adapter.removeMutationObserver();\n this._isConnected = false;\n }\n\n private _tryConnect(): void {\n if (!this._adapter.hasTargetElement()) {\n this._disconnect();\n } else if (!this._isConnected) {\n this._connect();\n }\n }\n\n public get for(): string | null | undefined {\n return this._for;\n }\n public set for(value: string | null | undefined) {\n if (this._for !== value) {\n this._for = value;\n this._adapter.toggleHostAttribute(LABEL_CONSTANTS.attributes.FOR, !!this.for, this.for ?? undefined);\n this._adapter.trySetTarget(this._for ?? null);\n this._tryConnect();\n }\n }\n\n public get forElement(): HTMLElement | null | undefined {\n return this._forElement;\n }\n public set forElement(value: HTMLElement | null | undefined) {\n if (this._forElement !== value) {\n this._forElement = value;\n this._adapter.setTargetElement(this._forElement ?? null);\n this._tryConnect();\n }\n }\n\n public get dynamic(): boolean {\n return this._dynamic;\n }\n public set dynamic(value: boolean) {\n if (this._dynamic !== value) {\n this._dynamic = value;\n this._adapter.toggleHostAttribute(LABEL_CONSTANTS.attributes.DYNAMIC, this._dynamic);\n\n if (!this._dynamic) {\n this._adapter.removeMutationObserver();\n } else if (this._adapter.hasTargetElement()) {\n this._adapter.addMutationObserver(this._mutationCallback);\n }\n }\n }\n}\n", "import { CustomElement, FoundationProperty, attachShadowTemplate, coerceBoolean } from '@tylertech/forge-core';\nimport { BaseComponent, IBaseComponent } from '../core';\nimport { LabelAdapter } from './label-adapter';\nimport { LABEL_CONSTANTS } from './label-constants';\nimport { LabelFoundation } from './label-foundation';\n\nconst template = '<template><span class=\\\"forge-label\\\" part=\\\"label\\\"><slot></slot></span></template>';\nconst style = ':host{display:inline-block}:host([hidden]){display:none}.forge-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);display:contents;cursor:default}';\n\nexport interface ILabelComponent extends IBaseComponent {\n for: string | null | undefined;\n forElement: HTMLElement | null | undefined;\n dynamic: boolean;\n update(): void;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'forge-label': ILabelComponent;\n }\n}\n\n/**\n * @tag forge-label\n * \n * @summary The Forge Label component is used to associate a text label with a compatible Forge\n * component.\n * \n * @property {string | null | undefined} for - The id of the associated element.\n * @property {HTMLElement | null | undefined} forElement - The associated element.\n * @property {boolean} dynamic - Propagates changes in the label's text content to the associated element.\n * \n * @attribute {string} for - The id of the associated form component.\n * @attribute {boolean} dynamic - Propagates changes in the label's text content to the associated element.\n * \n * @method update - Updates the targetted element with the label's current text content.\n * \n * @csspart label - Styles the label's root element.\n */\n@CustomElement({\n name: LABEL_CONSTANTS.elementName\n})\nexport class LabelComponent extends BaseComponent implements ILabelComponent {\n public static get observedAttributes(): string[] {\n return [\n LABEL_CONSTANTS.attributes.FOR,\n LABEL_CONSTANTS.attributes.DYNAMIC\n ];\n }\n\n private _foundation: LabelFoundation;\n\n constructor() {\n super();\n attachShadowTemplate(this, template, style);\n this._foundation = new LabelFoundation(new LabelAdapter(this));\n }\n\n public connectedCallback(): void {\n this._foundation.initialize();\n }\n\n public disconnectedCallback(): void {\n this._foundation.disconnect();\n }\n\n public attributeChangedCallback(name: string, oldValue: string, newValue: string): void {\n switch (name) {\n case LABEL_CONSTANTS.attributes.FOR:\n this.for = newValue;\n break;\n case LABEL_CONSTANTS.attributes.DYNAMIC:\n this.dynamic = coerceBoolean(newValue);\n break;\n }\n }\n\n @FoundationProperty()\n public for: string | null | undefined;\n\n @FoundationProperty()\n public forElement: HTMLElement | null | undefined;\n\n @FoundationProperty()\n public dynamic: boolean;\n\n /**\n * Updates the targetted element with the label's current text content.\n */\n public update(): void {\n this._foundation.update();\n }\n}\n", "import { defineCustomElement } from '@tylertech/forge-core';\n\nimport { LabelComponent } from './label';\n\nexport * from './label-adapter';\nexport * from './label-constants';\nexport * from './label-foundation';\nexport * from './label';\nexport * from './label-aware';\n\nexport function defineLabelComponent(): void {\n defineCustomElement(LabelComponent);\n}\n"],
5
- "mappings": "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",
6
- "names": ["isLabelAware", "obj", "elementName", "COMPONENT_NAME_PREFIX", "attributes", "selectors", "labelableChildSelectors", "CHECKBOX_CONSTANTS", "SWITCH_CONSTANTS", "BUTTON_CONSTANTS", "ICON_BUTTON_CONSTANTS", "LABEL_CONSTANTS", "LabelAdapter", "BaseAdapter", "component", "getShadowElement", "LABEL_CONSTANTS", "_a", "el", "value", "callback", "isLabelAware", "id", "targetEl", "selector", "LabelFoundation", "_adapter", "evt", "_a", "value", "_b", "LABEL_CONSTANTS", "template", "style", "LabelComponent", "BaseComponent", "attachShadowTemplate", "LabelFoundation", "LabelAdapter", "LABEL_CONSTANTS", "name", "oldValue", "newValue", "coerceBoolean", "__decorateClass", "FoundationProperty", "CustomElement", "defineLabelComponent", "defineCustomElement", "LabelComponent"]
4
+ "sourcesContent": ["export interface ILabelAware {\n labelClickedCallback(): void;\n labelChangedCallback(value: string | null): void;\n}\n\n/**\n * Determines if an object is label aware.\n * @param obj - The object to check.\n * @returns True if the object is label aware, false otherwise.\n */\nexport const isLabelAware = (obj: any): obj is ILabelAware => {\n return typeof obj.labelClickedCallback === 'function' && typeof obj.labelChangedCallback === 'function';\n};\n", "import { BUTTON_CONSTANTS } from '../button';\nimport { CHECKBOX_CONSTANTS } from '../checkbox';\nimport { COMPONENT_NAME_PREFIX } from '../constants';\nimport { ICON_BUTTON_CONSTANTS } from '../icon-button';\nimport { SWITCH_CONSTANTS } from '../switch';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}label`;\n\nconst attributes = {\n FOR: 'for',\n DYNAMIC: 'dynamic'\n};\n\nconst selectors = {\n ROOT: '.forge-label',\n SLOT: 'slot'\n};\n\nconst labelableChildSelectors = [\n CHECKBOX_CONSTANTS.elementName,\n SWITCH_CONSTANTS.elementName,\n BUTTON_CONSTANTS.elementName,\n ICON_BUTTON_CONSTANTS.elementName\n];\n\nexport const LABEL_CONSTANTS = {\n elementName,\n selectors,\n attributes,\n labelableChildSelectors\n};\n", "import { getShadowElement } from '@tylertech/forge-core';\nimport { BaseAdapter, IBaseAdapter } from '../core';\nimport { ILabelComponent } from './label';\nimport { ILabelAware, isLabelAware } from './label-aware';\nimport { LABEL_CONSTANTS } from './label-constants';\n\nexport interface ILabelAdapter extends IBaseAdapter {\n destroy(): void;\n hasTargetElement(): boolean;\n getTargetElement(): HTMLElement | null;\n setTargetElement(el: HTMLElement | null): void;\n trySetTarget(value: string | null): void;\n clickTarget(): void;\n updateTargetLabel(): void;\n addSlotChangeListener(callback: EventListener): void;\n addMutationObserver(callback: MutationCallback): void;\n removeMutationObserver(): void;\n}\n\nexport class LabelAdapter extends BaseAdapter<ILabelComponent> implements ILabelAdapter {\n private _slotElement: HTMLElement;\n private _targetElement: ILabelAware & HTMLElement | null = null;\n private _mutationObserver?: MutationObserver;\n\n constructor(component: ILabelComponent) {\n super(component);\n this._slotElement = getShadowElement(component, LABEL_CONSTANTS.selectors.SLOT);\n }\n\n public destroy(): void {\n this._targetElement?.labelChangedCallback(null);\n this._targetElement = null;\n }\n\n public hasTargetElement(): boolean {\n return !!this._targetElement;\n }\n\n public getTargetElement(): HTMLElement | null {\n return this._targetElement;\n }\n\n public setTargetElement(el: HTMLElement | null): void {\n if (el && this._checkLabelAwareness(el)) {\n this._targetElement = el;\n return;\n }\n this._targetElement = null;\n }\n\n public trySetTarget(value: string | null): void {\n this._targetElement = this._locateTargetElement(value);\n }\n\n /**\n * Calls the target's `labelClickedCallback`.\n */\n public clickTarget(): void {\n this._targetElement?.labelClickedCallback();\n }\n\n /**\n * Computes the text content of the label then passes it to the target's `labelChangedCallback`.\n */\n public updateTargetLabel(): void {\n const value = this._component.innerText.trim();\n this._targetElement?.labelChangedCallback(value);\n }\n\n public addSlotChangeListener(callback: EventListener): void {\n this._slotElement.addEventListener('slotchange', callback);\n }\n\n public addMutationObserver(callback: MutationCallback): void {\n this._mutationObserver = new MutationObserver(callback);\n this._mutationObserver.observe(this._component, {\n subtree: true,\n characterData: true,\n childList: true\n });\n\n // Run the callback once to capture the current state of the label\n callback([], this._mutationObserver);\n };\n\n public removeMutationObserver(): void {\n this._mutationObserver?.disconnect();\n this._mutationObserver = undefined;\n }\n\n /**\n * Returns `true` if the provided element is label aware, `false` otherwise. If `false` a warning\n * is logged to the console.\n */\n private _checkLabelAwareness(el: HTMLElement): el is (ILabelAware & HTMLElement) {\n if (!isLabelAware(el)) {\n console.warn('Label target element is not label aware.', el);\n return false;\n }\n return true;\n }\n\n /**\n * Returns a label aware element queried from the provided id or a child element of the\n * component or `null` if none exists.\n */\n private _locateTargetElement(id: string | null): ILabelAware & HTMLElement | null {\n let targetEl: HTMLElement | null;\n\n if (id) {\n const rootNode = this._component.getRootNode() as Document | ShadowRoot;\n targetEl = rootNode.querySelector(`#${id}`);\n } else {\n // Used for nested elements within the label component\n const selector = LABEL_CONSTANTS.labelableChildSelectors.join(',');\n targetEl = this._component.querySelector(selector);\n }\n\n if (targetEl && !this._checkLabelAwareness(targetEl)) {\n return null;\n }\n\n return targetEl;\n }\n}\n", "import { ICustomElementFoundation } from '@tylertech/forge-core';\nimport { ILabelAdapter } from './label-adapter';\nimport { LABEL_CONSTANTS } from './label-constants';\n\nexport interface ILabelFoundation extends ICustomElementFoundation {\n for: string | null | undefined;\n forElement: HTMLElement | null | undefined;\n dynamic: boolean;\n disconnect(): void;\n update(): void;\n}\n\nexport class LabelFoundation implements ILabelFoundation {\n // State\n private _for: string | null | undefined;\n private _forElement: HTMLElement | null | undefined;\n private _dynamic = false;\n private _isConnected = false;\n\n // Listeners\n private readonly _clickListener: EventListener;\n private readonly _slotChangeListener: EventListener;\n private readonly _mutationCallback: MutationCallback;\n\n constructor(private _adapter: ILabelAdapter) {\n this._clickListener = (evt: PointerEvent) => this._handleClick(evt);\n this._slotChangeListener = () => this._handleSlotChange();\n this._mutationCallback = () => this._handleMutation();\n }\n\n public initialize(): void {\n this._adapter.addSlotChangeListener(this._slotChangeListener);\n this._adapter.trySetTarget(this._for ?? null);\n if (this._adapter.hasTargetElement()) {\n this._connect();\n }\n }\n\n public disconnect(): void {\n this._disconnect();\n this._adapter.destroy();\n }\n\n public update(): void {\n this._adapter.updateTargetLabel();\n }\n\n private _handleClick(evt: PointerEvent): void {\n // Prevent duplicate clicks from a nested target element or if the event originates\n // from within the target element\n const targetEl = this._adapter.getTargetElement();\n if (evt.target === targetEl || targetEl?.contains(evt.target as Node)) {\n return;\n }\n this._adapter.clickTarget();\n }\n\n private _handleSlotChange(): void {\n if (!this._for && !this._forElement) {\n this._adapter.trySetTarget(null);\n this._tryConnect();\n }\n }\n\n private _handleMutation(): void {\n this._adapter.updateTargetLabel();\n }\n\n private _connect(): void {\n this._adapter.addHostListener('click', this._clickListener);\n this._adapter.updateTargetLabel();\n if (this._dynamic) {\n this._adapter.addMutationObserver(this._mutationCallback);\n }\n this._isConnected = true;\n }\n\n private _disconnect(): void {\n this._adapter.removeHostListener('click', this._clickListener);\n this._adapter.removeMutationObserver();\n this._isConnected = false;\n }\n\n private _tryConnect(): void {\n if (!this._adapter.hasTargetElement()) {\n this._disconnect();\n } else if (!this._isConnected) {\n this._connect();\n }\n }\n\n public get for(): string | null | undefined {\n return this._for;\n }\n public set for(value: string | null | undefined) {\n if (this._for !== value) {\n this._for = value;\n this._adapter.toggleHostAttribute(LABEL_CONSTANTS.attributes.FOR, !!this.for, this.for ?? undefined);\n this._adapter.trySetTarget(this._for ?? null);\n this._tryConnect();\n }\n }\n\n public get forElement(): HTMLElement | null | undefined {\n return this._forElement;\n }\n public set forElement(value: HTMLElement | null | undefined) {\n if (this._forElement !== value) {\n this._forElement = value;\n this._adapter.setTargetElement(this._forElement ?? null);\n this._tryConnect();\n }\n }\n\n public get dynamic(): boolean {\n return this._dynamic;\n }\n public set dynamic(value: boolean) {\n if (this._dynamic !== value) {\n this._dynamic = value;\n this._adapter.toggleHostAttribute(LABEL_CONSTANTS.attributes.DYNAMIC, this._dynamic);\n\n if (!this._dynamic) {\n this._adapter.removeMutationObserver();\n } else if (this._adapter.hasTargetElement()) {\n this._adapter.addMutationObserver(this._mutationCallback);\n }\n }\n }\n}\n", "import { CustomElement, FoundationProperty, attachShadowTemplate, coerceBoolean } from '@tylertech/forge-core';\nimport { BaseComponent, IBaseComponent } from '../core';\nimport { LabelAdapter } from './label-adapter';\nimport { LABEL_CONSTANTS } from './label-constants';\nimport { LabelFoundation } from './label-foundation';\n\nconst template = '<template><span class=\\\"forge-label\\\" part=\\\"label\\\"><slot></slot></span></template>';\nconst style = ':host{display:inline-block}:host([hidden]){display:none}.forge-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);display:contents;cursor:default}';\n\nexport interface ILabelComponent extends IBaseComponent {\n for: string | null | undefined;\n forElement: HTMLElement | null | undefined;\n dynamic: boolean;\n update(): void;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'forge-label': ILabelComponent;\n }\n}\n\n/**\n * @tag forge-label\n * \n * @summary The Forge Label component is used to associate a text label with a compatible Forge\n * component.\n * \n * @property {string | null | undefined} for - The id of the associated element.\n * @property {HTMLElement | null | undefined} forElement - The associated element.\n * @property {boolean} dynamic - Propagates changes in the label's text content to the associated element.\n * \n * @attribute {string} for - The id of the associated form component.\n * @attribute {boolean} dynamic - Propagates changes in the label's text content to the associated element.\n * \n * @method update - Updates the targetted element with the label's current text content.\n * \n * @csspart label - Styles the label's root element.\n */\n@CustomElement({\n name: LABEL_CONSTANTS.elementName\n})\nexport class LabelComponent extends BaseComponent implements ILabelComponent {\n public static get observedAttributes(): string[] {\n return [\n LABEL_CONSTANTS.attributes.FOR,\n LABEL_CONSTANTS.attributes.DYNAMIC\n ];\n }\n\n private _foundation: LabelFoundation;\n\n constructor() {\n super();\n attachShadowTemplate(this, template, style);\n this._foundation = new LabelFoundation(new LabelAdapter(this));\n }\n\n public connectedCallback(): void {\n this._foundation.initialize();\n }\n\n public disconnectedCallback(): void {\n this._foundation.disconnect();\n }\n\n public attributeChangedCallback(name: string, oldValue: string, newValue: string): void {\n switch (name) {\n case LABEL_CONSTANTS.attributes.FOR:\n this.for = newValue;\n break;\n case LABEL_CONSTANTS.attributes.DYNAMIC:\n this.dynamic = coerceBoolean(newValue);\n break;\n }\n }\n\n @FoundationProperty()\n public for: string | null | undefined;\n\n @FoundationProperty()\n public forElement: HTMLElement | null | undefined;\n\n @FoundationProperty()\n public dynamic: boolean;\n\n /**\n * Updates the targetted element with the label's current text content.\n */\n public update(): void {\n this._foundation.update();\n }\n}\n", "import { defineCustomElement } from '@tylertech/forge-core';\n\nimport { LabelComponent } from './label';\n\nexport * from './label-adapter';\nexport * from './label-constants';\nexport * from './label-foundation';\nexport * from './label';\nexport * from './label-aware';\n\nexport function defineLabelComponent(): void {\n defineCustomElement(LabelComponent);\n}\n"],
5
+ "mappings": "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",
6
+ "names": ["isLabelAware", "obj", "elementName", "COMPONENT_NAME_PREFIX", "attributes", "selectors", "labelableChildSelectors", "CHECKBOX_CONSTANTS", "SWITCH_CONSTANTS", "BUTTON_CONSTANTS", "ICON_BUTTON_CONSTANTS", "LABEL_CONSTANTS", "LabelAdapter", "BaseAdapter", "component", "getShadowElement", "LABEL_CONSTANTS", "_a", "el", "value", "callback", "isLabelAware", "id", "targetEl", "selector", "LabelFoundation", "_adapter", "evt", "_a", "targetEl", "value", "_b", "LABEL_CONSTANTS", "template", "style", "LabelComponent", "BaseComponent", "attachShadowTemplate", "LabelFoundation", "LabelAdapter", "LABEL_CONSTANTS", "name", "oldValue", "newValue", "coerceBoolean", "__decorateClass", "FoundationProperty", "CustomElement", "defineLabelComponent", "defineCustomElement", "LabelComponent"]
7
7
  }
@@ -0,0 +1,6 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2023 Tyler Technologies, Inc.
4
+ * License: Apache-2.0
5
+ */
6
+ //# sourceMappingURL=chunk.3PKNBYMG.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "sourcesContent": [],
5
+ "mappings": "",
6
+ "names": []
7
+ }
@@ -0,0 +1,7 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2023 Tyler Technologies, Inc.
4
+ * License: Apache-2.0
5
+ */
6
+ import{a as t}from"./chunk.RCSBJQ4G.js";import{a as e}from"./chunk.6DXDNQUR.js";var a=class extends t{constructor(){super(...arguments);this._hasCustomValidityError=!1}},o=class extends e(t){};export{a};
7
+ //# sourceMappingURL=chunk.3RMBFRGC.js.map
@@ -3,5 +3,5 @@
3
3
  * Copyright 2023 Tyler Technologies, Inc.
4
4
  * License: Apache-2.0
5
5
  */
6
- import{q as g,r as u}from"./chunk.FYWPZFLJ.js";import{a as h,d as C,l as T}from"./chunk.AMZZKEAE.js";import{a as _}from"./chunk.HSI7B43D.js";import{a as p}from"./chunk.NVUMRW44.js";import{a as f,b}from"./chunk.36F2GVWS.js";import{a as O,e as d,f as s,k as N}from"./chunk.JAWV5Y5T.js";import{t as I}from"./chunk.K7FPXAFS.js";import{k as l}from"./chunk.J2M2MXP2.js";import{d as i}from"./chunk.M3QDAYD2.js";var E=`${b}open-icon`,A={ICON:"forge-open-icon",ICON_OPEN:"forge-open-icon--open"},x={OPEN:"open",ORIENTATION:"orientation"},S={ORIENTATION_VERTICAL:"vertical",ORIENTATION_HORIZONTAL:"horizontal"},e={elementName:E,classes:A,attributes:x,strings:S};var r=class{constructor(o){this._adapter=o;this._open=!1;this._orientation=e.strings.ORIENTATION_VERTICAL}initialize(){this._adapter.setOrientation(this._orientation),this._adapter.setOpenState(this._open)}get open(){return this._open}set open(o){o=!!o,this._open!==o&&(this._open=o,this._adapter.setOpenState(this._open))}get orientation(){return this._orientation}set orientation(o){this._orientation=o,this._adapter.setOrientation(this._orientation)}};var a=class extends _{constructor(t){super(t);this._openIcon=s(t,`.${e.classes.ICON}`),this._iconElement=s(t,h.elementName)}setOrientation(t){t===e.strings.ORIENTATION_HORIZONTAL?this._iconElement.name="keyboard_arrow_right":this._iconElement.name="keyboard_arrow_down"}setOpenState(t){I(this._openIcon,t,e.classes.ICON_OPEN)}};var w='<template><span class="forge-open-icon" part="root"><forge-icon class="icon" part="icon"></forge-icon></span></template>',v=".forge-open-icon{color:#757575;color:var(--forge-theme-icon-color,#757575)}.forge-open-icon .icon{-webkit-transition:-webkit-transform .4s;transition:-webkit-transform .4s;transition:transform .4s;transition:transform .4s,-webkit-transform .4s}.forge-open-icon.forge-open-icon--open .icon{-webkit-transform:rotate(180deg);transform:rotate(180deg)}:host{line-height:.5}:host([hidden]){display:none}",n=class extends N{constructor(){super();C.define([u,g]),d(this,w,v),this._foundation=new r(new a(this))}static get observedAttributes(){return[e.attributes.OPEN,e.attributes.ORIENTATION]}initializedCallback(){this._foundation.initialize()}attributeChangedCallback(t,R,m){switch(t){case e.attributes.OPEN:this.open=l(m);break;case e.attributes.ORIENTATION:this.orientation=m;break}}};i([p()],n.prototype,"open",2),i([p()],n.prototype,"orientation",2),n=i([f({name:e.elementName,dependencies:[T]})],n);function ee(){O(n)}export{e as a,r as b,a as c,n as d,ee as e};
7
- //# sourceMappingURL=chunk.DTLZOIUQ.js.map
6
+ import{q as g,r as u}from"./chunk.FYWPZFLJ.js";import{a as h,d as C,l as T}from"./chunk.Z7PBGV4K.js";import{a as _}from"./chunk.LS7WRRT2.js";import{a as p}from"./chunk.NVUMRW44.js";import{a as f,b}from"./chunk.IT66AOX7.js";import{a as O,e as d,f as s,k as N}from"./chunk.JAWV5Y5T.js";import{t as I}from"./chunk.K7FPXAFS.js";import{k as l}from"./chunk.J2M2MXP2.js";import{d as i}from"./chunk.M3QDAYD2.js";var E=`${b}open-icon`,A={ICON:"forge-open-icon",ICON_OPEN:"forge-open-icon--open"},x={OPEN:"open",ORIENTATION:"orientation"},S={ORIENTATION_VERTICAL:"vertical",ORIENTATION_HORIZONTAL:"horizontal"},e={elementName:E,classes:A,attributes:x,strings:S};var r=class{constructor(o){this._adapter=o;this._open=!1;this._orientation=e.strings.ORIENTATION_VERTICAL}initialize(){this._adapter.setOrientation(this._orientation),this._adapter.setOpenState(this._open)}get open(){return this._open}set open(o){o=!!o,this._open!==o&&(this._open=o,this._adapter.setOpenState(this._open))}get orientation(){return this._orientation}set orientation(o){this._orientation=o,this._adapter.setOrientation(this._orientation)}};var a=class extends _{constructor(t){super(t);this._openIcon=s(t,`.${e.classes.ICON}`),this._iconElement=s(t,h.elementName)}setOrientation(t){t===e.strings.ORIENTATION_HORIZONTAL?this._iconElement.name="keyboard_arrow_right":this._iconElement.name="keyboard_arrow_down"}setOpenState(t){I(this._openIcon,t,e.classes.ICON_OPEN)}};var w='<template><span class="forge-open-icon" part="root"><forge-icon class="icon" part="icon"></forge-icon></span></template>',v=".forge-open-icon{color:#757575;color:var(--forge-theme-icon-color,#757575)}.forge-open-icon .icon{-webkit-transition:-webkit-transform .4s;transition:-webkit-transform .4s;transition:transform .4s;transition:transform .4s,-webkit-transform .4s}.forge-open-icon.forge-open-icon--open .icon{-webkit-transform:rotate(180deg);transform:rotate(180deg)}:host{line-height:.5}:host([hidden]){display:none}",n=class extends N{constructor(){super();C.define([u,g]),d(this,w,v),this._foundation=new r(new a(this))}static get observedAttributes(){return[e.attributes.OPEN,e.attributes.ORIENTATION]}initializedCallback(){this._foundation.initialize()}attributeChangedCallback(t,R,m){switch(t){case e.attributes.OPEN:this.open=l(m);break;case e.attributes.ORIENTATION:this.orientation=m;break}}};i([p()],n.prototype,"open",2),i([p()],n.prototype,"orientation",2),n=i([f({name:e.elementName,dependencies:[T]})],n);function ee(){O(n)}export{e as a,r as b,a as c,n as d,ee as e};
7
+ //# sourceMappingURL=chunk.3UO6S3IK.js.map