@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
@@ -3,5 +3,5 @@
3
3
  * Copyright 2023 Tyler Technologies, Inc.
4
4
  * License: Apache-2.0
5
5
  */
6
- import{a as c,d as w}from"./chunk.JVLJH6PR.js";import{a as A}from"./chunk.HSI7B43D.js";import{a as n}from"./chunk.NVUMRW44.js";import{a as x,b as O}from"./chunk.36F2GVWS.js";import{a as k,e as M,f as u,k as D}from"./chunk.JAWV5Y5T.js";import{i as C,r as T,s as y,t as p}from"./chunk.K7FPXAFS.js";import{c as f,d as E,k as m}from"./chunk.J2M2MXP2.js";import{a as _,d as s}from"./chunk.M3QDAYD2.js";var l=`${O}dialog`,S={ANIMATING:"forge-dialog--animating",OPEN:"forge-dialog--open",ACTION_BUTTON:"forge-dialog__action__button",BUTTON_TEXT:"forge-button__text",SCROLLABLE:"forge-dialog--scrollable",FULLSCREEN:"forge-dialog--fullscreen",MOVEABLE:"forge-dialog--moveable"},v={BACKDROP_CLOSE:"backdrop-close",ESCAPE_CLOSE:"escape-close",FULLSCREEN:"fullscreen",POSITION_TYPE:"position-type",POSITION_X:"position-x",POSITION_Y:"position-y",MOVEABLE:"moveable",MOVE_TARGET:"move-target",OPEN:"forge-dialog-open",INITIAL_FOCUS:"forge-dialog-focus",DFEAULT_MOVE_TARGET:"forge-dialog-move-target"},L={CONTAINER:".forge-dialog",SURFACE:".forge-dialog__surface",BACKDROP:c.elementName,INITIAL_FOCUS:`[${v.INITIAL_FOCUS}]`,DFEAULT_MOVE_TARGET:`[${v.DFEAULT_MOVE_TARGET}]`,CONTENT:".forge-dialog__body"},I={BEFORE_CLOSE:`${l}-before-close`,OPEN:`${l}-open`,CLOSE:`${l}-close`,READY:`${l}-ready`,MOVE_START:`${l}-move-start`,MOVED:`${l}-move`,MOVE_END:`${l}-move-end`},H={ANIMATION_DURATION:150,BACKDROP_MAX_OPACITY:.3},i={elementName:l,classes:S,selectors:L,attributes:v,events:I,numbers:H};var b=class{constructor(t){this._adapter=t;this._open=!1;this._backdropClose=!0;this._escapeClose=!0;this._fullscreen=!1;this._positionType="absolute";this._positionX=null;this._positionY=null;this._moveable=!1;this._moveTarget=i.selectors.DFEAULT_MOVE_TARGET;this._isAnimating=!1;this._isMoving=!1;this._transitionEndHandler=e=>this._onTransitionEnd(),this._documentKeydownHandler=e=>this._onDocumentKeydown(e),this._backdropClickHandler=e=>this._onBackdropClick(e),this._moveTargetMouseDownHandler=e=>this._onMoveTargetMouseDown(e),this._moveTargetMouseMoveHandler=e=>this._onMoveTargetMouseMove(e),this._moveTargetMouseUpHandler=e=>this._onMoveTargetMouseUp(e)}initialize(){this._adapter.initializeAccessibility(),this._open&&this._moveable&&(this._adapter.setMoveable(this._moveable),this._initMoveTarget())}destroy(){this._open&&(this._removeDragHandlers(),this._adapter.deregisterTransitionEndHandler(this._transitionEndHandler),this._adapter.removeDocumentListener("keydown",this._documentKeydownHandler),this._adapter.deregisterBackdropClickHandler(this._backdropClickHandler))}async _applyOpen(t){if(t){if(typeof this._openCallback=="function"&&!await this._executeOpenCallback())return;this._open=t,this._openDialog()}else{if(typeof this._closeCallback=="function"&&!await this._executeCloseCallback())return;this._open=t,this._closeDialog()}this._adapter.toggleHostAttribute(i.attributes.OPEN,this._open)}async _executeOpenCallback(){try{return await Promise.resolve(this._openCallback())!==!1}catch(t){return!1}}async _executeCloseCallback(){try{return await Promise.resolve(this._closeCallback())!==!1}catch(t){return!1}}initializeMoveTarget(){this._moveTarget||(this._moveTarget=i.selectors.DFEAULT_MOVE_TARGET),this._initMoveTarget()}resetPosition(){this._adapter.setSurfacePosition(this._positionX,this._positionY,this._positionType)}async show(t){this._open||(this._open=!0,this._adapter.isConnected||this._adapter.attach(t),await this._openDialog())}async hide(t){this._open&&(this._open=!1,await this._closeDialog(),t&&this._adapter.detach())}_normalizePositionValue(t){return E(t)?`${t}px`:f(t)?t:null}_openDialog(){return this._fullscreen||(this._moveable&&this._adapter.setMoveable(this._moveable),(this._positionX!==null||this._positionY!==null)&&this._adapter.setSurfacePosition(this._positionX,this._positionY,this._positionType)),this._adapter.setBodyAttribute(i.attributes.OPEN,"true"),this._adapter.registerTransitionEndHandler(this._transitionEndHandler),this._setDocumentKeydownListener(this._escapeClose),this._adapter.setAnimating(!0),this._isAnimating=!0,window.requestAnimationFrame(()=>{window.requestAnimationFrame(()=>{this._adapter.setVisibility(!0),this._setBackdropClickListener(this._backdropClose),this._adapter.emitHostEvent(i.events.OPEN),this._adapter.trySetInitialFocus(),this._adapter.isScrollable()&&this._adapter.addRootClass(i.classes.SCROLLABLE)})}),new Promise(t=>{window.setTimeout(()=>{window.requestAnimationFrame(()=>{this._open&&this._isAnimating&&(this._onTransitionEnd(),t())})},i.numbers.ANIMATION_DURATION)})}_closeDialog(){return this._moveTarget&&this._removeDragHandlers(),this._adapter.deregisterTransitionEndHandler(this._transitionEndHandler),this._escapeClose&&this._adapter.removeDocumentListener("keydown",this._documentKeydownHandler),this._backdropClose&&this._adapter.deregisterBackdropClickHandler(this._backdropClickHandler),this._isAnimating=!1,this._moveContext=void 0,this._lastPosition=void 0,this._adapter.setAnimating(!0),this._adapter.setVisibility(!1),this._adapter.setSurfacePosition(null,null,null),new Promise(t=>{setTimeout(()=>{this._adapter.emitHostEvent(i.events.CLOSE),this._adapter.getOpenDialogs(`${i.elementName}[${i.attributes.OPEN}]`).length||this._adapter.removeBodyAttribute(i.attributes.OPEN),this._adapter.setAnimating(!1),t()},i.numbers.ANIMATION_DURATION)})}_onTransitionEnd(){this._isAnimating&&(this._adapter.deregisterTransitionEndHandler(this._transitionEndHandler),this._adapter.setAnimating(!1),this._adapter.emitHostEvent(i.events.READY),this._moveable&&this._initMoveTarget(),this._isAnimating=!1)}_initMoveTarget(){!this._fullscreen&&this._moveable&&this._moveTarget&&this._adapter.setMoveTarget(this._moveTarget)&&this._adapter.setMoveTargetHandler("mousedown",this._moveTargetMouseDownHandler)}_removeDragHandlers(){this._adapter.removeDragTargetHandler("mousedown",this._moveTargetMouseDownHandler),this._adapter.removeDocumentListener("mousemove",this._moveTargetMouseMoveHandler),this._adapter.removeDocumentListener("mouseup",this._moveTargetMouseUpHandler)}_onMoveTargetMouseDown(t){t.preventDefault(),this._adapter.captureActiveElement();let e=this._adapter.getSurfaceBounds();this._moveContext={top:t.pageY-e.top,left:t.pageX-e.left,height:e.height,width:e.width},this._adapter.setDocumentListener("mousemove",this._moveTargetMouseMoveHandler),this._adapter.setDocumentListener("mouseup",this._moveTargetMouseUpHandler)}_onMoveTargetMouseMove(t){t.preventDefault();let e=this._calculateOffsetPosition(t.pageX,t.pageY,this._moveContext);if(!this._isMoving&&(this._isMoving=!0,!this._adapter.emitHostEvent(i.events.MOVE_START,e,!0,!0)))return;let o=this._clampPosition(e,this._moveContext);if((!this._lastPosition||o.x!==this._lastPosition.x||o.y!==this._lastPosition.y)&&this._adapter.emitHostEvent(i.events.MOVED,o,!0,!0)){this._lastPosition=_({},o);let d=this._normalizePositionValue(o.x),P=this._normalizePositionValue(o.y);this._adapter.setSurfacePosition(d,P,"absolute")}}_onMoveTargetMouseUp(t){this._isMoving&&this._adapter.emitHostEvent(i.events.MOVE_END),this._moveComplete()}_moveComplete(){this._adapter.tryRestoreActiveElement(),this._adapter.removeDocumentListener("mousemove",this._moveTargetMouseMoveHandler),this._adapter.removeDocumentListener("mouseup",this._moveTargetMouseUpHandler),this._lastPosition=void 0,this._moveContext=void 0,this._isMoving=!1}_onDocumentKeydown(t){t.stopPropagation(),t.key&&(t.key==="Escape"||t.key==="Esc")&&this._tryClose()}_onBackdropClick(t){t.stopPropagation(),this._tryClose()}async _tryClose(){if(this._adapter.emitHostEvent(i.events.BEFORE_CLOSE,void 0,void 0,!0)){if(!this._beforeCloseCallback){this.open=!1;return}try{if(await Promise.resolve(this._beforeCloseCallback())!==!1){this.open=!1;return}}catch(e){return}}}_setBackdropClickListener(t){this._open&&(t&&this._backdropClose?this._adapter.registerBackdropClickHandler(this._backdropClickHandler):t||this._adapter.deregisterBackdropClickHandler(this._backdropClickHandler))}_setDocumentKeydownListener(t){this._open&&(t&&this._escapeClose?this._adapter.setDocumentListener("keydown",this._documentKeydownHandler):t||this._adapter.removeDocumentListener("keydown",this._documentKeydownHandler))}_calculateOffsetPosition(t,e,o){return{x:t-((o==null?void 0:o.left)||0),y:e-((o==null?void 0:o.top)||0)}}_clampPosition({x:t,y:e},o){let a=0,d=0;return o&&(a=o.width,d=o.height),t<=0?t=0:t+a>=window.innerWidth&&(t=window.innerWidth-a),e<=0?e=0:e+d>=window.innerHeight&&(e=window.innerHeight-d),{x:t,y:e}}set backdropClose(t){t=!!t,this._backdropClose!==t&&(this._backdropClose=t,this._setBackdropClickListener(this._backdropClose),this._adapter.toggleHostAttribute(i.attributes.BACKDROP_CLOSE,this._backdropClose))}get backdropClose(){return this._backdropClose}set escapeClose(t){t=!!t,this._escapeClose!==t&&(this._escapeClose=!!t,this._setDocumentKeydownListener(this._escapeClose),this._adapter.toggleHostAttribute(i.attributes.ESCAPE_CLOSE,this._escapeClose))}get escapeClose(){return this._escapeClose}get open(){return this._open}set open(t){this._open!==t&&(t=!!t,t!==this._open&&this._applyOpen(t))}get fullscreen(){return this._fullscreen}set fullscreen(t){this._fullscreen!==t&&(this._fullscreen=!!t,this._adapter.setFullscreen(this._fullscreen),this._adapter.toggleHostAttribute(i.attributes.FULLSCREEN,this._fullscreen))}get openCallback(){return this._openCallback}set openCallback(t){this._openCallback=t}get closeCallback(){return this._closeCallback}set closeCallback(t){this._closeCallback=t}get beforeCloseCallback(){return this._beforeCloseCallback}set beforeCloseCallback(t){this._beforeCloseCallback=t}get positionType(){return this._positionType}set positionType(t){this._positionType!==t&&(this._positionType=t,this._open&&this._adapter.setSurfacePosition(this._positionX,this._positionY,this._positionType))}get positionX(){return this._positionX}set positionX(t){this._positionX!==t&&(this._positionX=this._normalizePositionValue(t),this._open&&this._adapter.setSurfacePosition(this._positionX,this._positionY,this._positionType))}get positionY(){return this._positionY}set positionY(t){this._positionY!==t&&(this._positionY=this._normalizePositionValue(t),this._open&&this._adapter.setSurfacePosition(this._positionX,this._positionY,this._positionType))}get moveable(){return this._moveable}set moveable(t){this._moveable!==t&&(this._moveable=!!t,this._open&&(this._adapter.setMoveable(this._moveable),this._moveable?this._initMoveTarget():(this._removeDragHandlers(),this._isMoving=!1)),this._adapter.toggleHostAttribute(i.attributes.MOVEABLE,this._moveable))}get moveTarget(){return this._moveTarget}set moveTarget(t){this._moveTarget=t}};var g=class extends A{constructor(e){super(e);this._containerElement=u(e,i.selectors.CONTAINER),this._surfaceElement=u(e,i.selectors.SURFACE)}initializeAccessibility(){this._component.hasAttribute("role")||this._component.setAttribute("role","dialog"),this._component.setAttribute("aria-modal","true")}setAnimating(e){p(this._containerElement,e,i.classes.ANIMATING)}setVisibility(e){p(this._containerElement,e,i.classes.OPEN),this._backdropElement||(this._backdropElement=document.createElement("forge-backdrop"),this._backdropElement.setAttribute("part","scrim"),this._containerElement.appendChild(this._backdropElement)),e?this._backdropElement.fadeIn():this._backdropElement.fadeOut()}attach(e=document.body){e.appendChild(this._component)}detach(){this._activeElement&&(this._activeElement=void 0),C(this._component)}registerTransitionEndHandler(e){this._surfaceElement.addEventListener("transitionend",e)}deregisterTransitionEndHandler(e){this._surfaceElement.removeEventListener("transitionend",e)}setDocumentListener(e,o){document.addEventListener(e,o)}removeDocumentListener(e,o){document.removeEventListener(e,o)}registerBackdropClickHandler(e){var o;(o=this._backdropElement)==null||o.addEventListener(c.events.BACKDROP_CLICK,e)}deregisterBackdropClickHandler(e){var o;(o=this._backdropElement)==null||o.removeEventListener(c.events.BACKDROP_CLICK,e)}getOpenDialogs(e){return document.querySelectorAll(e)}setBodyAttribute(e,o){document.body.setAttribute(e,o)}removeBodyAttribute(e){document.body.removeAttribute(e)}trySetInitialFocus(){let e=T(this._component,i.selectors.INITIAL_FOCUS);e&&e.length&&e[e.length-1].focus()}isScrollable(){let e=this._component.querySelector(i.selectors.CONTENT);return e?e.scrollHeight>e.offsetHeight:!1}addRootClass(e){this._component.classList.add(e)}setFullscreen(e){p(this._containerElement,e,i.classes.FULLSCREEN)}setMoveable(e){p(this._containerElement,e,i.classes.MOVEABLE)}setMoveTarget(e){return e?(this._moveTargetElement=this._component.querySelector(e),!!this._moveTargetElement):!1}setMoveTargetHandler(e,o){var a;(a=this._moveTargetElement)==null||a.addEventListener(e,o)}removeDragTargetHandler(e,o){var a;(a=this._moveTargetElement)==null||a.removeEventListener(e,o)}getSurfaceBounds(){return this._surfaceElement.getBoundingClientRect()}setSurfacePosition(e,o,a){a?this._surfaceElement.style.position=a==="absolute"?a:"relative":this._surfaceElement.style.removeProperty("position"),o!==null?this._surfaceElement.style.top=o:this._surfaceElement.style.removeProperty("top"),e!==null?this._surfaceElement.style.left=e:this._surfaceElement.style.removeProperty("left")}captureActiveElement(){var e;this._activeElement=y(this._component.ownerDocument),(e=this._activeElement)==null||e.blur()}tryRestoreActiveElement(){this._activeElement&&(this._activeElement.isConnected&&this._activeElement.focus(),this._activeElement=void 0)}};var N='<template><div class="forge-dialog" part="root"><div class="forge-dialog__surface" part="surface"><slot></slot></div></div></template>',B='.forge-dialog{position:fixed;top:0;bottom:0;left:0;right:0;z-index:8;z-index:var(--forge-z-index-dialog,8);-webkit-box-align:center;align-items:center;-webkit-box-align:var(--forge-dialog-align-items,center);align-items:var(--forge-dialog-align-items,center);top:0;top:var(--forge-dialog-top,0);padding:24px;padding:var(--forge-dialog-padding,24px);display:-webkit-box;display:flex;-webkit-box-pack:center;justify-content:center;visibility:hidden}@media (max-width:599px){.forge-dialog{padding:0}}.forge-dialog--moveable:not(.forge-dialog--fullscreen) ::slotted([forge-dialog-move-target]){cursor:move}.forge-dialog--animating{visibility:visible}.forge-dialog--animating .forge-dialog--open .forge-dialog__surface{-webkit-transition:-webkit-transform 150ms 0s cubic-bezier(0, 0, .2, 1);transition:-webkit-transform 150ms 0s cubic-bezier(0, 0, .2, 1);transition:transform 150ms 0s cubic-bezier(0, 0, .2, 1);transition:transform 150ms 0s cubic-bezier(0, 0, .2, 1),-webkit-transform 150ms 0s cubic-bezier(0, 0, .2, 1)}.forge-dialog--animating .forge-dialog__surface{-webkit-transition:-webkit-transform 150ms 0s cubic-bezier(0, 0, .2, 1);transition:-webkit-transform 150ms 0s cubic-bezier(0, 0, .2, 1);transition:transform 150ms 0s cubic-bezier(0, 0, .2, 1);transition:transform 150ms 0s cubic-bezier(0, 0, .2, 1),-webkit-transform 150ms 0s cubic-bezier(0, 0, .2, 1)}.forge-dialog--scrollable .forge-dialog__footer,.forge-dialog--scrollable .forge-dialog__title{border-color:rgba(0,0,0,.12)}.forge-dialog--open{visibility:visible!important}.forge-dialog--open .forge-dialog__surface{-webkit-transform:scale(1);transform:scale(1);opacity:1}.forge-dialog__surface{-webkit-box-shadow:0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12);box-shadow:0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12);background-color:#fff;background-color:var(--mdc-theme-surface,#fff);width:auto;width:var(--forge-dialog-width,auto);height:auto;height:var(--forge-dialog-height,auto);min-width:280px;min-width:var(--forge-dialog-min-width,280px);max-width:100%;max-width:var(--forge-dialog-max-width,100%);max-height:100%;max-height:var(--forge-dialog-max-height,100%);border-radius:4px;border-radius:var(--forge-dialog-border-radius,var(--mdc-shape-medium,4px));display:-webkit-inline-box;display:inline-flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-transform:scale(.8);transform:scale(.8);opacity:0;overflow:hidden;z-index:inherit}.forge-dialog__header{margin:0;padding:0 24px 9px;border-bottom:1px solid transparent}.forge-dialog__title{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-size:1.25rem;font-size:var(--forge-typography-title-font-size, 1.25rem);line-height:2rem;line-height:var(--forge-typography-title-line-height, 2rem);font-weight:400;font-weight:var(--forge-typography-title-font-weight,400);letter-spacing:.0125em;letter-spacing:var(--forge-typography-title-letter-spacing, .0125em);text-decoration:inherit;-webkit-text-decoration:var(--forge-typography-title-text-decoration,inherit);text-decoration:var(--forge-typography-title-text-decoration,inherit);text-transform:inherit;text-transform:var(--forge-typography-title-text-transform,inherit);-webkit-box-sizing:border-box;box-sizing:border-box;margin:0}.forge-dialog__title::before{display:inline-block;width:0;height:40px;content:"";vertical-align:0}.forge-dialog__body{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-body1-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:1rem;font-size:var(--mdc-typography-body1-font-size, 1rem);line-height:1.5rem;line-height:var(--mdc-typography-body1-line-height, 1.5rem);font-weight:400;font-weight:var(--mdc-typography-body1-font-weight,400);letter-spacing:.03125em;letter-spacing:var(--mdc-typography-body1-letter-spacing, .03125em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-body1-text-decoration,inherit);text-decoration:var(--mdc-typography-body1-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-body1-text-transform,inherit);padding-top:20px;padding:0 24px 24px;overflow:auto}.forge-dialog__body--scrollable{max-height:195px;border-top:1px solid rgba(0,0,0,.1);border-bottom:1px solid rgba(0,0,0,.1);overflow-x:auto;overflow-y:scroll;-webkit-overflow-scrolling:touch}.forge-dialog__footer{display:-webkit-box;display:flex;position:relative;flex-shrink:0;flex-wrap:wrap;-webkit-box-align:center;align-items:center;-webkit-box-pack:end;justify-content:flex-end;-webkit-box-sizing:border-box;box-sizing:border-box;min-height:52px;margin:0;padding:8px;border-top:1px solid transparent}.forge-dialog--fullscreen{padding:0}.forge-dialog--fullscreen .forge-dialog__surface{height:100%;width:100%;min-width:auto;max-width:100%;border-radius:0}:host{display:block}:host([hidden]){display:none}',r=class extends D{constructor(){super();M(this,N,B),this._foundation=new b(new g(this))}static get observedAttributes(){return[i.attributes.BACKDROP_CLOSE,i.attributes.ESCAPE_CLOSE,i.attributes.OPEN,i.attributes.FULLSCREEN,i.attributes.POSITION_TYPE,i.attributes.POSITION_X,i.attributes.POSITION_Y,i.attributes.MOVEABLE,i.attributes.MOVE_TARGET]}connectedCallback(){this._foundation.initialize()}disconnectedCallback(){this._foundation.destroy()}attributeChangedCallback(e,o,a){switch(e){case i.attributes.BACKDROP_CLOSE:this.backdropClose=a==="true";break;case i.attributes.ESCAPE_CLOSE:this.escapeClose=a==="true";break;case i.attributes.OPEN:this.open=m(a);break;case i.attributes.FULLSCREEN:this.fullscreen=m(a);break;case i.attributes.POSITION_TYPE:this.positionType=a;break;case i.attributes.POSITION_X:this.positionX=a;break;case i.attributes.POSITION_Y:this.positionY=a;break;case i.attributes.MOVEABLE:this.moveable=m(a);break;case i.attributes.MOVE_TARGET:this.moveTarget=a;break}}initializeMoveTarget(){this._foundation.initializeMoveTarget()}resetPosition(){this._foundation.resetPosition()}show(e){return this._foundation.show(e)}hide(e){return this._foundation.hide(e)}};s([n()],r.prototype,"backdropClose",2),s([n()],r.prototype,"escapeClose",2),s([n()],r.prototype,"open",2),s([n()],r.prototype,"fullscreen",2),s([n()],r.prototype,"openCallback",2),s([n()],r.prototype,"closeCallback",2),s([n()],r.prototype,"beforeCloseCallback",2),s([n()],r.prototype,"positionType",2),s([n()],r.prototype,"positionX",2),s([n()],r.prototype,"positionY",2),s([n()],r.prototype,"moveable",2),s([n()],r.prototype,"moveTarget",2),r=s([x({name:i.elementName,dependencies:[w]})],r);function Ee(){k(r)}export{i as a,b,g as c,r as d,Ee as e};
7
- //# sourceMappingURL=chunk.3ZPSN2QG.js.map
6
+ import{a as c,d as w}from"./chunk.G2BNY5QQ.js";import{a as A}from"./chunk.LS7WRRT2.js";import{a as n}from"./chunk.NVUMRW44.js";import{a as x,b as O}from"./chunk.IT66AOX7.js";import{a as k,e as M,f as u,k as D}from"./chunk.JAWV5Y5T.js";import{i as C,r as T,s as y,t as p}from"./chunk.K7FPXAFS.js";import{c as f,d as E,k as m}from"./chunk.J2M2MXP2.js";import{a as _,d as s}from"./chunk.M3QDAYD2.js";var l=`${O}dialog`,S={ANIMATING:"forge-dialog--animating",OPEN:"forge-dialog--open",ACTION_BUTTON:"forge-dialog__action__button",BUTTON_TEXT:"forge-button__text",SCROLLABLE:"forge-dialog--scrollable",FULLSCREEN:"forge-dialog--fullscreen",MOVEABLE:"forge-dialog--moveable"},v={BACKDROP_CLOSE:"backdrop-close",ESCAPE_CLOSE:"escape-close",FULLSCREEN:"fullscreen",POSITION_TYPE:"position-type",POSITION_X:"position-x",POSITION_Y:"position-y",MOVEABLE:"moveable",MOVE_TARGET:"move-target",OPEN:"forge-dialog-open",INITIAL_FOCUS:"forge-dialog-focus",DFEAULT_MOVE_TARGET:"forge-dialog-move-target"},L={CONTAINER:".forge-dialog",SURFACE:".forge-dialog__surface",BACKDROP:c.elementName,INITIAL_FOCUS:`[${v.INITIAL_FOCUS}]`,DFEAULT_MOVE_TARGET:`[${v.DFEAULT_MOVE_TARGET}]`,CONTENT:".forge-dialog__body"},I={BEFORE_CLOSE:`${l}-before-close`,OPEN:`${l}-open`,CLOSE:`${l}-close`,READY:`${l}-ready`,MOVE_START:`${l}-move-start`,MOVED:`${l}-move`,MOVE_END:`${l}-move-end`},H={ANIMATION_DURATION:150,BACKDROP_MAX_OPACITY:.3},i={elementName:l,classes:S,selectors:L,attributes:v,events:I,numbers:H};var b=class{constructor(t){this._adapter=t;this._open=!1;this._backdropClose=!0;this._escapeClose=!0;this._fullscreen=!1;this._positionType="absolute";this._positionX=null;this._positionY=null;this._moveable=!1;this._moveTarget=i.selectors.DFEAULT_MOVE_TARGET;this._isAnimating=!1;this._isMoving=!1;this._transitionEndHandler=e=>this._onTransitionEnd(),this._documentKeydownHandler=e=>this._onDocumentKeydown(e),this._backdropClickHandler=e=>this._onBackdropClick(e),this._moveTargetMouseDownHandler=e=>this._onMoveTargetMouseDown(e),this._moveTargetMouseMoveHandler=e=>this._onMoveTargetMouseMove(e),this._moveTargetMouseUpHandler=e=>this._onMoveTargetMouseUp(e)}initialize(){this._adapter.initializeAccessibility(),this._open&&this._moveable&&(this._adapter.setMoveable(this._moveable),this._initMoveTarget())}destroy(){this._open&&(this._removeDragHandlers(),this._adapter.deregisterTransitionEndHandler(this._transitionEndHandler),this._adapter.removeDocumentListener("keydown",this._documentKeydownHandler),this._adapter.deregisterBackdropClickHandler(this._backdropClickHandler))}async _applyOpen(t){if(t){if(typeof this._openCallback=="function"&&!await this._executeOpenCallback())return;this._open=t,this._openDialog()}else{if(typeof this._closeCallback=="function"&&!await this._executeCloseCallback())return;this._open=t,this._closeDialog()}this._adapter.toggleHostAttribute(i.attributes.OPEN,this._open)}async _executeOpenCallback(){try{return await Promise.resolve(this._openCallback())!==!1}catch(t){return!1}}async _executeCloseCallback(){try{return await Promise.resolve(this._closeCallback())!==!1}catch(t){return!1}}initializeMoveTarget(){this._moveTarget||(this._moveTarget=i.selectors.DFEAULT_MOVE_TARGET),this._initMoveTarget()}resetPosition(){this._adapter.setSurfacePosition(this._positionX,this._positionY,this._positionType)}async show(t){this._open||(this._open=!0,this._adapter.isConnected||this._adapter.attach(t),await this._openDialog())}async hide(t){this._open&&(this._open=!1,await this._closeDialog(),t&&this._adapter.detach())}_normalizePositionValue(t){return E(t)?`${t}px`:f(t)?t:null}_openDialog(){return this._fullscreen||(this._moveable&&this._adapter.setMoveable(this._moveable),(this._positionX!==null||this._positionY!==null)&&this._adapter.setSurfacePosition(this._positionX,this._positionY,this._positionType)),this._adapter.setBodyAttribute(i.attributes.OPEN,"true"),this._adapter.registerTransitionEndHandler(this._transitionEndHandler),this._setDocumentKeydownListener(this._escapeClose),this._adapter.setAnimating(!0),this._isAnimating=!0,window.requestAnimationFrame(()=>{window.requestAnimationFrame(()=>{this._adapter.setVisibility(!0),this._setBackdropClickListener(this._backdropClose),this._adapter.emitHostEvent(i.events.OPEN),this._adapter.trySetInitialFocus(),this._adapter.isScrollable()&&this._adapter.addRootClass(i.classes.SCROLLABLE)})}),new Promise(t=>{window.setTimeout(()=>{window.requestAnimationFrame(()=>{this._open&&this._isAnimating&&(this._onTransitionEnd(),t())})},i.numbers.ANIMATION_DURATION)})}_closeDialog(){return this._moveTarget&&this._removeDragHandlers(),this._adapter.deregisterTransitionEndHandler(this._transitionEndHandler),this._escapeClose&&this._adapter.removeDocumentListener("keydown",this._documentKeydownHandler),this._backdropClose&&this._adapter.deregisterBackdropClickHandler(this._backdropClickHandler),this._isAnimating=!1,this._moveContext=void 0,this._lastPosition=void 0,this._adapter.setAnimating(!0),this._adapter.setVisibility(!1),this._adapter.setSurfacePosition(null,null,null),new Promise(t=>{setTimeout(()=>{this._adapter.emitHostEvent(i.events.CLOSE),this._adapter.getOpenDialogs(`${i.elementName}[${i.attributes.OPEN}]`).length||this._adapter.removeBodyAttribute(i.attributes.OPEN),this._adapter.setAnimating(!1),t()},i.numbers.ANIMATION_DURATION)})}_onTransitionEnd(){this._isAnimating&&(this._adapter.deregisterTransitionEndHandler(this._transitionEndHandler),this._adapter.setAnimating(!1),this._adapter.emitHostEvent(i.events.READY),this._moveable&&this._initMoveTarget(),this._isAnimating=!1)}_initMoveTarget(){!this._fullscreen&&this._moveable&&this._moveTarget&&this._adapter.setMoveTarget(this._moveTarget)&&this._adapter.setMoveTargetHandler("mousedown",this._moveTargetMouseDownHandler)}_removeDragHandlers(){this._adapter.removeDragTargetHandler("mousedown",this._moveTargetMouseDownHandler),this._adapter.removeDocumentListener("mousemove",this._moveTargetMouseMoveHandler),this._adapter.removeDocumentListener("mouseup",this._moveTargetMouseUpHandler)}_onMoveTargetMouseDown(t){t.preventDefault(),this._adapter.captureActiveElement();let e=this._adapter.getSurfaceBounds();this._moveContext={top:t.pageY-e.top,left:t.pageX-e.left,height:e.height,width:e.width},this._adapter.setDocumentListener("mousemove",this._moveTargetMouseMoveHandler),this._adapter.setDocumentListener("mouseup",this._moveTargetMouseUpHandler)}_onMoveTargetMouseMove(t){t.preventDefault();let e=this._calculateOffsetPosition(t.pageX,t.pageY,this._moveContext);if(!this._isMoving&&(this._isMoving=!0,!this._adapter.emitHostEvent(i.events.MOVE_START,e,!0,!0)))return;let o=this._clampPosition(e,this._moveContext);if((!this._lastPosition||o.x!==this._lastPosition.x||o.y!==this._lastPosition.y)&&this._adapter.emitHostEvent(i.events.MOVED,o,!0,!0)){this._lastPosition=_({},o);let d=this._normalizePositionValue(o.x),P=this._normalizePositionValue(o.y);this._adapter.setSurfacePosition(d,P,"absolute")}}_onMoveTargetMouseUp(t){this._isMoving&&this._adapter.emitHostEvent(i.events.MOVE_END),this._moveComplete()}_moveComplete(){this._adapter.tryRestoreActiveElement(),this._adapter.removeDocumentListener("mousemove",this._moveTargetMouseMoveHandler),this._adapter.removeDocumentListener("mouseup",this._moveTargetMouseUpHandler),this._lastPosition=void 0,this._moveContext=void 0,this._isMoving=!1}_onDocumentKeydown(t){t.stopPropagation(),t.key&&(t.key==="Escape"||t.key==="Esc")&&this._tryClose()}_onBackdropClick(t){t.stopPropagation(),this._tryClose()}async _tryClose(){if(this._adapter.emitHostEvent(i.events.BEFORE_CLOSE,void 0,void 0,!0)){if(!this._beforeCloseCallback){this.open=!1;return}try{if(await Promise.resolve(this._beforeCloseCallback())!==!1){this.open=!1;return}}catch(e){return}}}_setBackdropClickListener(t){this._open&&(t&&this._backdropClose?this._adapter.registerBackdropClickHandler(this._backdropClickHandler):t||this._adapter.deregisterBackdropClickHandler(this._backdropClickHandler))}_setDocumentKeydownListener(t){this._open&&(t&&this._escapeClose?this._adapter.setDocumentListener("keydown",this._documentKeydownHandler):t||this._adapter.removeDocumentListener("keydown",this._documentKeydownHandler))}_calculateOffsetPosition(t,e,o){return{x:t-((o==null?void 0:o.left)||0),y:e-((o==null?void 0:o.top)||0)}}_clampPosition({x:t,y:e},o){let a=0,d=0;return o&&(a=o.width,d=o.height),t<=0?t=0:t+a>=window.innerWidth&&(t=window.innerWidth-a),e<=0?e=0:e+d>=window.innerHeight&&(e=window.innerHeight-d),{x:t,y:e}}set backdropClose(t){t=!!t,this._backdropClose!==t&&(this._backdropClose=t,this._setBackdropClickListener(this._backdropClose),this._adapter.toggleHostAttribute(i.attributes.BACKDROP_CLOSE,this._backdropClose))}get backdropClose(){return this._backdropClose}set escapeClose(t){t=!!t,this._escapeClose!==t&&(this._escapeClose=!!t,this._setDocumentKeydownListener(this._escapeClose),this._adapter.toggleHostAttribute(i.attributes.ESCAPE_CLOSE,this._escapeClose))}get escapeClose(){return this._escapeClose}get open(){return this._open}set open(t){this._open!==t&&(t=!!t,t!==this._open&&this._applyOpen(t))}get fullscreen(){return this._fullscreen}set fullscreen(t){this._fullscreen!==t&&(this._fullscreen=!!t,this._adapter.setFullscreen(this._fullscreen),this._adapter.toggleHostAttribute(i.attributes.FULLSCREEN,this._fullscreen))}get openCallback(){return this._openCallback}set openCallback(t){this._openCallback=t}get closeCallback(){return this._closeCallback}set closeCallback(t){this._closeCallback=t}get beforeCloseCallback(){return this._beforeCloseCallback}set beforeCloseCallback(t){this._beforeCloseCallback=t}get positionType(){return this._positionType}set positionType(t){this._positionType!==t&&(this._positionType=t,this._open&&this._adapter.setSurfacePosition(this._positionX,this._positionY,this._positionType))}get positionX(){return this._positionX}set positionX(t){this._positionX!==t&&(this._positionX=this._normalizePositionValue(t),this._open&&this._adapter.setSurfacePosition(this._positionX,this._positionY,this._positionType))}get positionY(){return this._positionY}set positionY(t){this._positionY!==t&&(this._positionY=this._normalizePositionValue(t),this._open&&this._adapter.setSurfacePosition(this._positionX,this._positionY,this._positionType))}get moveable(){return this._moveable}set moveable(t){this._moveable!==t&&(this._moveable=!!t,this._open&&(this._adapter.setMoveable(this._moveable),this._moveable?this._initMoveTarget():(this._removeDragHandlers(),this._isMoving=!1)),this._adapter.toggleHostAttribute(i.attributes.MOVEABLE,this._moveable))}get moveTarget(){return this._moveTarget}set moveTarget(t){this._moveTarget=t}};var g=class extends A{constructor(e){super(e);this._containerElement=u(e,i.selectors.CONTAINER),this._surfaceElement=u(e,i.selectors.SURFACE)}initializeAccessibility(){this._component.hasAttribute("role")||this._component.setAttribute("role","dialog"),this._component.setAttribute("aria-modal","true")}setAnimating(e){p(this._containerElement,e,i.classes.ANIMATING)}setVisibility(e){p(this._containerElement,e,i.classes.OPEN),this._backdropElement||(this._backdropElement=document.createElement("forge-backdrop"),this._backdropElement.setAttribute("part","scrim"),this._containerElement.appendChild(this._backdropElement)),e?this._backdropElement.fadeIn():this._backdropElement.fadeOut()}attach(e=document.body){e.appendChild(this._component)}detach(){this._activeElement&&(this._activeElement=void 0),C(this._component)}registerTransitionEndHandler(e){this._surfaceElement.addEventListener("transitionend",e)}deregisterTransitionEndHandler(e){this._surfaceElement.removeEventListener("transitionend",e)}setDocumentListener(e,o){document.addEventListener(e,o)}removeDocumentListener(e,o){document.removeEventListener(e,o)}registerBackdropClickHandler(e){var o;(o=this._backdropElement)==null||o.addEventListener(c.events.BACKDROP_CLICK,e)}deregisterBackdropClickHandler(e){var o;(o=this._backdropElement)==null||o.removeEventListener(c.events.BACKDROP_CLICK,e)}getOpenDialogs(e){return document.querySelectorAll(e)}setBodyAttribute(e,o){document.body.setAttribute(e,o)}removeBodyAttribute(e){document.body.removeAttribute(e)}trySetInitialFocus(){let e=T(this._component,i.selectors.INITIAL_FOCUS);e&&e.length&&e[e.length-1].focus()}isScrollable(){let e=this._component.querySelector(i.selectors.CONTENT);return e?e.scrollHeight>e.offsetHeight:!1}addRootClass(e){this._component.classList.add(e)}setFullscreen(e){p(this._containerElement,e,i.classes.FULLSCREEN)}setMoveable(e){p(this._containerElement,e,i.classes.MOVEABLE)}setMoveTarget(e){return e?(this._moveTargetElement=this._component.querySelector(e),!!this._moveTargetElement):!1}setMoveTargetHandler(e,o){var a;(a=this._moveTargetElement)==null||a.addEventListener(e,o)}removeDragTargetHandler(e,o){var a;(a=this._moveTargetElement)==null||a.removeEventListener(e,o)}getSurfaceBounds(){return this._surfaceElement.getBoundingClientRect()}setSurfacePosition(e,o,a){a?this._surfaceElement.style.position=a==="absolute"?a:"relative":this._surfaceElement.style.removeProperty("position"),o!==null?this._surfaceElement.style.top=o:this._surfaceElement.style.removeProperty("top"),e!==null?this._surfaceElement.style.left=e:this._surfaceElement.style.removeProperty("left")}captureActiveElement(){var e;this._activeElement=y(this._component.ownerDocument),(e=this._activeElement)==null||e.blur()}tryRestoreActiveElement(){this._activeElement&&(this._activeElement.isConnected&&this._activeElement.focus(),this._activeElement=void 0)}};var N='<template><div class="forge-dialog" part="root"><div class="forge-dialog__surface" part="surface"><slot></slot></div></div></template>',B='.forge-dialog{position:fixed;top:0;bottom:0;left:0;right:0;z-index:8;z-index:var(--forge-z-index-dialog,8);-webkit-box-align:center;align-items:center;-webkit-box-align:var(--forge-dialog-align-items,center);align-items:var(--forge-dialog-align-items,center);top:0;top:var(--forge-dialog-top,0);padding:24px;padding:var(--forge-dialog-padding,24px);display:-webkit-box;display:flex;-webkit-box-pack:center;justify-content:center;visibility:hidden}@media (max-width:599px){.forge-dialog{padding:0}}.forge-dialog--moveable:not(.forge-dialog--fullscreen) ::slotted([forge-dialog-move-target]){cursor:move}.forge-dialog--animating{visibility:visible}.forge-dialog--animating .forge-dialog--open .forge-dialog__surface{-webkit-transition:-webkit-transform 150ms 0s cubic-bezier(0, 0, .2, 1);transition:-webkit-transform 150ms 0s cubic-bezier(0, 0, .2, 1);transition:transform 150ms 0s cubic-bezier(0, 0, .2, 1);transition:transform 150ms 0s cubic-bezier(0, 0, .2, 1),-webkit-transform 150ms 0s cubic-bezier(0, 0, .2, 1)}.forge-dialog--animating .forge-dialog__surface{-webkit-transition:-webkit-transform 150ms 0s cubic-bezier(0, 0, .2, 1);transition:-webkit-transform 150ms 0s cubic-bezier(0, 0, .2, 1);transition:transform 150ms 0s cubic-bezier(0, 0, .2, 1);transition:transform 150ms 0s cubic-bezier(0, 0, .2, 1),-webkit-transform 150ms 0s cubic-bezier(0, 0, .2, 1)}.forge-dialog--scrollable .forge-dialog__footer,.forge-dialog--scrollable .forge-dialog__title{border-color:rgba(0,0,0,.12)}.forge-dialog--open{visibility:visible!important}.forge-dialog--open .forge-dialog__surface{-webkit-transform:scale(1);transform:scale(1);opacity:1}.forge-dialog__surface{-webkit-box-shadow:0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12);box-shadow:0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12);background-color:#fff;background-color:var(--mdc-theme-surface,#fff);width:auto;width:var(--forge-dialog-width,auto);height:auto;height:var(--forge-dialog-height,auto);min-width:280px;min-width:var(--forge-dialog-min-width,280px);max-width:100%;max-width:var(--forge-dialog-max-width,100%);max-height:100%;max-height:var(--forge-dialog-max-height,100%);border-radius:4px;border-radius:var(--forge-dialog-border-radius,var(--mdc-shape-medium,4px));display:-webkit-inline-box;display:inline-flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-transform:scale(.8);transform:scale(.8);opacity:0;overflow:hidden;z-index:inherit}.forge-dialog__header{margin:0;padding:0 24px 9px;border-bottom:1px solid transparent}.forge-dialog__title{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-size:1.25rem;font-size:var(--forge-typography-title-font-size, 1.25rem);line-height:2rem;line-height:var(--forge-typography-title-line-height, 2rem);font-weight:400;font-weight:var(--forge-typography-title-font-weight,400);letter-spacing:.0125em;letter-spacing:var(--forge-typography-title-letter-spacing, .0125em);text-decoration:inherit;-webkit-text-decoration:var(--forge-typography-title-text-decoration,inherit);text-decoration:var(--forge-typography-title-text-decoration,inherit);text-transform:inherit;text-transform:var(--forge-typography-title-text-transform,inherit);-webkit-box-sizing:border-box;box-sizing:border-box;margin:0}.forge-dialog__title::before{display:inline-block;width:0;height:40px;content:"";vertical-align:0}.forge-dialog__body{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-body1-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:1rem;font-size:var(--mdc-typography-body1-font-size, 1rem);line-height:1.5rem;line-height:var(--mdc-typography-body1-line-height, 1.5rem);font-weight:400;font-weight:var(--mdc-typography-body1-font-weight,400);letter-spacing:.03125em;letter-spacing:var(--mdc-typography-body1-letter-spacing, .03125em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-body1-text-decoration,inherit);text-decoration:var(--mdc-typography-body1-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-body1-text-transform,inherit);padding-top:20px;padding:0 24px 24px;overflow:auto}.forge-dialog__body--scrollable{max-height:195px;border-top:1px solid rgba(0,0,0,.1);border-bottom:1px solid rgba(0,0,0,.1);overflow-x:auto;overflow-y:scroll;-webkit-overflow-scrolling:touch}.forge-dialog__footer{display:-webkit-box;display:flex;position:relative;flex-shrink:0;flex-wrap:wrap;-webkit-box-align:center;align-items:center;-webkit-box-pack:end;justify-content:flex-end;-webkit-box-sizing:border-box;box-sizing:border-box;min-height:52px;margin:0;padding:8px;border-top:1px solid transparent}.forge-dialog--fullscreen{padding:0}.forge-dialog--fullscreen .forge-dialog__surface{height:100%;width:100%;min-width:auto;max-width:100%;border-radius:0}:host{display:block}:host([hidden]){display:none}',r=class extends D{constructor(){super();M(this,N,B),this._foundation=new b(new g(this))}static get observedAttributes(){return[i.attributes.BACKDROP_CLOSE,i.attributes.ESCAPE_CLOSE,i.attributes.OPEN,i.attributes.FULLSCREEN,i.attributes.POSITION_TYPE,i.attributes.POSITION_X,i.attributes.POSITION_Y,i.attributes.MOVEABLE,i.attributes.MOVE_TARGET]}connectedCallback(){this._foundation.initialize()}disconnectedCallback(){this._foundation.destroy()}attributeChangedCallback(e,o,a){switch(e){case i.attributes.BACKDROP_CLOSE:this.backdropClose=a==="true";break;case i.attributes.ESCAPE_CLOSE:this.escapeClose=a==="true";break;case i.attributes.OPEN:this.open=m(a);break;case i.attributes.FULLSCREEN:this.fullscreen=m(a);break;case i.attributes.POSITION_TYPE:this.positionType=a;break;case i.attributes.POSITION_X:this.positionX=a;break;case i.attributes.POSITION_Y:this.positionY=a;break;case i.attributes.MOVEABLE:this.moveable=m(a);break;case i.attributes.MOVE_TARGET:this.moveTarget=a;break}}initializeMoveTarget(){this._foundation.initializeMoveTarget()}resetPosition(){this._foundation.resetPosition()}show(e){return this._foundation.show(e)}hide(e){return this._foundation.hide(e)}};s([n()],r.prototype,"backdropClose",2),s([n()],r.prototype,"escapeClose",2),s([n()],r.prototype,"open",2),s([n()],r.prototype,"fullscreen",2),s([n()],r.prototype,"openCallback",2),s([n()],r.prototype,"closeCallback",2),s([n()],r.prototype,"beforeCloseCallback",2),s([n()],r.prototype,"positionType",2),s([n()],r.prototype,"positionX",2),s([n()],r.prototype,"positionY",2),s([n()],r.prototype,"moveable",2),s([n()],r.prototype,"moveTarget",2),r=s([x({name:i.elementName,dependencies:[w]})],r);function Ee(){k(r)}export{i as a,b,g as c,r as d,Ee as e};
7
+ //# sourceMappingURL=chunk.SNF35Y6C.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 t,b as o,d as m,l as r}from"./chunk.Z7PBGV4K.js";import{a as n}from"./chunk.PADPL4L3.js";import{a as e}from"./chunk.JAWV5Y5T.js";var p=class extends n{constructor(i){super(i)}_build(){return document.createElement(t.elementName)}};function D(){e(r)}window&&!window[o]&&(window[o]=m);export{p as a,D as b};
7
+ //# sourceMappingURL=chunk.SOLF23NC.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/icon/icon-component-delegate.ts", "../../src/icon/index.ts"],
4
+ "sourcesContent": ["import { BaseComponentDelegate, IBaseComponentDelegateOptions, IBaseComponentDelegateConfig } from '../core/delegates/base-component-delegate';\nimport { ICON_CONSTANTS } from './icon-constants';\nimport { IIconComponent } from './icon';\n\nexport interface IIconComponentDelegateOptions extends IBaseComponentDelegateOptions {}\nexport interface IIconComponentDelegateConfig extends IBaseComponentDelegateConfig<IIconComponent, IIconComponentDelegateOptions> {}\n\nexport class IconComponentDelegate extends BaseComponentDelegate<IIconComponent, IIconComponentDelegateOptions> {\n constructor(config?: IIconComponentDelegateConfig) {\n super(config);\n }\n\n protected _build(): IIconComponent {\n return document.createElement(ICON_CONSTANTS.elementName);\n }\n}\n", "import { defineCustomElement } from '@tylertech/forge-core';\n\nimport { IconComponent } from './icon';\nimport { IconRegistry } from './icon-registry';\nimport { ICON_REGISTRY_KEY } from './icon-constants';\n\nexport * from './icon-adapter';\nexport * from './icon-constants';\nexport * from './icon-foundation';\nexport * from './icon-registry';\nexport * from './icon-utils';\nexport * from './icon';\nexport * from './icon-component-delegate';\n\nexport function defineIconComponent(): void {\n defineCustomElement(IconComponent);\n}\n\n// Store a reference to the icon registry on `window`.\nif (window && !window[ICON_REGISTRY_KEY]) {\n window[ICON_REGISTRY_KEY] = IconRegistry;\n}\n"],
5
+ "mappings": "6IAOO,IAAMA,EAAN,cAAoCC,CAAqE,CAC9G,YAAYC,EAAuC,CACjD,MAAMA,CAAM,CACd,CAEU,QAAyB,CACjC,OAAO,SAAS,cAAcC,EAAe,WAAW,CAC1D,CACF,ECDO,SAASC,GAA4B,CAC1CC,EAAoBC,CAAa,CACnC,CAGI,QAAU,CAAC,OAAOC,CAAiB,IACrC,OAAOA,CAAiB,EAAIC",
6
+ "names": ["IconComponentDelegate", "BaseComponentDelegate", "config", "ICON_CONSTANTS", "defineIconComponent", "defineCustomElement", "IconComponent", "ICON_REGISTRY_KEY", "IconRegistry"]
7
+ }
@@ -3,5 +3,5 @@
3
3
  * Copyright 2023 Tyler Technologies, Inc.
4
4
  * License: Apache-2.0
5
5
  */
6
- import{f as e}from"./chunk.QQRPV4RN.js";import{a as o}from"./chunk.JAWV5Y5T.js";function t(){o(e)}export{t as a};
7
- //# sourceMappingURL=chunk.XYAZVLPR.js.map
6
+ import{f as e}from"./chunk.CNRFOWHY.js";import{a as o}from"./chunk.JAWV5Y5T.js";function t(){o(e)}export{t as a};
7
+ //# sourceMappingURL=chunk.T34DG7BU.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 k}from"./chunk.NZKIFXBU.js";import{d as K}from"./chunk.2GJ54C3Q.js";import{e as V,h as B,j as H}from"./chunk.DOEG3DWJ.js";import{c as x}from"./chunk.2GYZM6ZG.js";import{a as N,b as m}from"./chunk.KTYYBWTN.js";import{b as A}from"./chunk.XNCBGWE4.js";import{e as F}from"./chunk.GT3VPSXY.js";import{d as P}from"./chunk.FYWPZFLJ.js";import{d as w}from"./chunk.Z7PBGV4K.js";import{a as S}from"./chunk.LS7WRRT2.js";import{a as p}from"./chunk.NVUMRW44.js";import{a as T,b as D,d as y}from"./chunk.IT66AOX7.js";import{a as L,e as C}from"./chunk.JAWV5Y5T.js";import{m as M}from"./chunk.K7FPXAFS.js";import{a as g,b as O,i as I,k as _}from"./chunk.J2M2MXP2.js";import{a as c,b,d as a}from"./chunk.M3QDAYD2.js";var l=`${D}menu`,U={POPUP:"forge-menu__popup",MENU:"mdc-menu"},G={TOGGLE:`.${l}__toggle,[${l}-toggle],forge-button,forge-icon-button,forge-fab,button,[type=button],[role=button],a,[tabindex]:not([tabindex^="-"])`,MENU_LIST:"forge-list"},R={OPEN:"open",PLACEMENT:"placement",SELECTED_INDEX:"selected-index",SELECTED_VALUE:"selected-value",DENSE:"dense",ICON_CLASS:"icon-class",PERSIST_SELECTION:"persist-selection",MODE:"mode",SYNC_POPUP_WIDTH:"sync-popup-width",POPUP_CLASSES:"popup-classes",OPTION_LIMIT:"option-limit",OBSERVE_SCROLL:"observe-scroll",OBSERVE_SCROLL_THRESHOLD:"observe-scroll-threshold"},$={SELECT:`${l}-select`,OPEN:`${l}-open`,CLOSE:`${l}-close`,ACTIVE_CHANGE:`${l}-active-change`},z={CHILD_MOUSE_LEAVE_TIMEOUT:300,POPUP_MOUSE_LEAVE_TIMEOUT:500},i={elementName:l,classes:U,selectors:G,attributes:R,events:$,numbers:z};var u=class extends S{constructor(e){super(e);this._childMenus=new Map}getDropdownElement(){var e,t;return(t=(e=this._listDropdown)==null?void 0:e.dropdownElement)!=null?t:null}hasTargetElement(){return!!this._targetElement}initializeTarget(){this._targetElement=this._component.querySelector(i.selectors.TOGGLE),this._targetElement||(this._targetElement=this._component.firstElementChild)}initializeAccessibility(e){this._targetElement&&(this._targetElement.setAttribute("aria-atomic","true"),this._targetElement.setAttribute("aria-live","assertive"),this._targetElement.setAttribute("aria-haspopup","true"),this._targetElement.setAttribute("aria-expanded","false"),this._targetElement.hasAttribute("aria-label")||this._targetElement.setAttribute("aria-label",this._targetElement.textContent||""))}addTargetListener(e,t,n=!1){this._targetElement&&this._targetElement.addEventListener(e,t,n)}removeTargetListener(e,t){this._targetElement&&this._targetElement.removeEventListener(e,t)}attachMenu(e){this._listDropdown||!this._targetElement||(this._listDropdown=new B(this._targetElement,e),this._listDropdown.open(),this._targetElement.setAttribute("aria-expanded","true"),this._targetElement.setAttribute("aria-controls",`list-dropdown-popup-${e.id}`))}setOptions(e){this._listDropdown&&this._listDropdown.setOptions(e)}detachMenu(){this._targetElement&&(this._targetElement.removeAttribute("aria-activedescendant"),this._targetElement.removeAttribute("aria-expanded"),this._targetElement.removeAttribute("aria-controls")),this._listDropdown&&(this._listDropdown.close(),this._listDropdown.destroy(),this._listDropdown=void 0)}setActiveOption(e){var t;(t=this._listDropdown)==null||t.activateOption(e)}activateFirstOption(){var e;(e=this._listDropdown)==null||e.activateFirstOption()}setCascadeTargetInactive(){let e=this._targetElement;e!=null&&e.active&&(e.active=!1)}getActiveOptionIndex(){var e,t;return(t=(e=this._listDropdown)==null?void 0:e.getActiveOptionIndex())!=null?t:-1}focusTarget(){this._targetElement&&this._targetElement.focus()}isTargetFocused(){return document.activeElement===this._targetElement}updateActiveDescendant(e){this._targetElement&&(e?this._targetElement.setAttribute("aria-activedescendant",e):this._targetElement.removeAttribute("aria-activedescendant"))}addDropdownListener(e,t){!this._listDropdown||!this._listDropdown.dropdownElement||this._listDropdown.dropdownElement.addEventListener(e,t)}isOwnElement(e){return!this._targetElement||!this._listDropdown||!this._listDropdown.dropdownElement?!1:this._targetElement.contains(e)||!!this._listDropdown.dropdownElement.contains(e)}propagateKey(e){var t;(t=this._listDropdown)==null||t.handleKey(e)}proxyKeyboardEventToChild(e,t){if(!this.getDropdownElement())return;let n=this._getOpenChildMenu(t);n&&n.propagateKeyEvent(e)}toggleChildMenu(e,t){let r=this._getListItems()[e].parentElement;r&&r.tagName.toLowerCase()===i.elementName&&(t===void 0?r.open=!r.open:r.open=t,r.activateFirstOption())}createChildMenu(e,t,n,o,r){let d=document.createElement("forge-menu");return d.style.display="block",d.addEventListener(i.events.OPEN,()=>{this._childMenus.set(e,d),n(e)}),d.addEventListener(i.events.CLOSE,()=>{this._childMenus.delete(e),o(e)}),d.addEventListener(i.events.SELECT,f=>{f.stopPropagation(),r(b(c({},f.detail),{parentValue:t}))}),d}closeOtherChildMenus(e){let t=[];this._childMenus.forEach((n,o)=>{o!==e&&(n.open=!1,t.push(o))}),t.forEach(n=>this._childMenus.delete(n))}setSelectedValues(e){var t;(t=this._listDropdown)==null||t.setSelectedValues(e)}_getOpenChildMenu(e){if(!this.getDropdownElement())return null;let t=this._getOwnList(e);return t?t.querySelector(`${i.elementName}[${i.attributes.OPEN}]`):null}_getOwnList(e){let t=this.getDropdownElement();return t?t.querySelector(`${m.elementName}[id="list-dropdown-list-${e}"]`):null}_getListItems(){let e=this.getDropdownElement();if(!e)return[];let t=e.querySelector(m.elementName);return t?Array.from(t.querySelectorAll(N.elementName)):[]}};var h=class extends H{constructor(e){super({popupTimeout:i.numbers.POPUP_MOUSE_LEAVE_TIMEOUT,targetTimeout:i.numbers.CHILD_MOUSE_LEAVE_TIMEOUT});this._adapter=e;this._placement="bottom-start";this._fallbackPlacements=[];this._dense=!1;this._iconClass=y;this._persistSelection=!1;this._mode="click";this._identifier=g(),this._clickListener=t=>this._onTargetClick(t),this._blurListener=t=>this._onTargetBlur(t),this._selectListener=t=>this._handleSelectEvent(t),this._keydownListener=t=>this.onKeydown(t),this._activeChangeListener=t=>this._onActiveOptionChanged(t)}initialize(){this._adapter.initializeTarget(),this._adapter.initializeAccessibility(this._identifier),this._initializeInteractionListeners()}disconnect(){this._open&&this._closeDropdown(),this._destroyInteractionListeners()}activateFirstOption(){this._adapter.activateFirstOption()}_applyMode(){this._adapter.hasTargetElement()&&(this._mode!=="cascade"?this._adapter.addTargetListener("click",this._clickListener):this._attachCascadingListeners())}_initializeInteractionListeners(){this._adapter.hasTargetElement()&&(this._applyMode(),this._adapter.addTargetListener("keydown",this._keydownListener,!0),this._adapter.addTargetListener("focusout",this._blurListener))}_destroyInteractionListeners(){this._adapter.hasTargetElement()&&(this._adapter.removeTargetListener("keydown",this._clickListener),this._adapter.removeTargetListener("focusout",this._blurListener),this._adapter.removeTargetListener("click",this._clickListener),this._detachCascadingListeners())}_attachCascadingListeners(){this._adapter.addTargetListener("mouseenter",this._targetMouseEnterListener),this._adapter.addTargetListener("mouseleave",this._targetMouseLeaveListener),this._adapter.addDocumentListener("mousemove",this._documentMouseMoveListener)}_detachCascadingListeners(){this._adapter.removeTargetListener("mouseenter",this._targetMouseEnterListener),this._adapter.removeTargetListener("mouseleave",this._targetMouseLeaveListener),this._adapter.removeDocumentListener("mousemove",this._documentMouseMoveListener)}get _nonDividerOptions(){return this._flatOptions.filter(e=>!e.divider)}get _flatOptions(){return V(this._options,1)?this._options.reduce((e,t)=>e.concat(t.options),[]):this._options}_onTargetClick(e){if(this._open){this._closeDropdown();return}this.open=!this._open,this._open&&this._adapter.focusTarget()}_onTargetBlur(e){this._open&&this._closeDropdown()}_onActiveOptionChanged(e){let t={id:e},n=this._adapter.emitHostEvent(i.events.ACTIVE_CHANGE,t,!0,!0);this._mode!=="cascade"&&n&&this._adapter.updateActiveDescendant(e)}onKeydown(e){if(this._childOpen){this._adapter.proxyKeyboardEventToChild(e,this._identifier);return}switch(e.code){case"Tab":this._open&&this._selectActiveOption();break;case"Escape":this._open&&(e.preventDefault(),e.stopPropagation(),this._closeDropdown());break;case"Space":e.preventDefault(),this._open?this._closeDropdown():this._openDropdown({fromKeyboard:!0});break;case"Home":case"End":this._open&&(e.preventDefault(),this._adapter.propagateKey(e.code));break;case"Enter":if(e.preventDefault(),!this._open){e.preventDefault(),this._openDropdown({fromKeyboard:!0});return}e.stopImmediatePropagation(),this._adapter.propagateKey(e.code);let t=this._adapter.getActiveOptionIndex(),n=this._nonDividerOptions[t];n&&n.options&&n.options.length&&this._adapter.toggleChildMenu(t);break;case"ArrowUp":case"ArrowDown":if(this._open&&e.stopImmediatePropagation(),e.preventDefault(),!this._open&&e.code==="ArrowDown"){this._openDropdown({fromKeyboard:!0}),this._adapter.activateFirstOption();return}this._adapter.propagateKey(e.code);break;case"ArrowLeft":this._open&&e.stopImmediatePropagation(),this._mode==="cascade"&&this._open&&this._closeDropdown();break;case"ArrowRight":if(this._open&&e.stopImmediatePropagation(),!this._open)return;let o=this._adapter.getActiveOptionIndex(),r=this._nonDividerOptions[o];if(r&&r.options){this._adapter.toggleChildMenu(o,e.code==="ArrowRight");return}break}}async _openMenu({fromKeyboard:e}={}){this._open=!0;let t=[];if(typeof this._optionsFactory=="function")this._loadOptionsAsync(),this._options=[];else{if(!this._options||!this._options.length)return;t=this._options}this._persistSelection||t.forEach(r=>r.selected=!1),this._mapIconToLeadingIcon();let n=this._persistSelection?this._getSelectedValues():[],o={id:this._identifier,type:"menu",options:this._options,selectedValues:n,iconClass:this._iconClass,dense:this._dense,multiple:!1,popupStatic:!0,allowBusy:!0,asyncStyle:"spinner",optionBuilder:this._optionBuilder,optionLimit:this._optionLimit,headerBuilder:this._popupHeaderBuilder,footerBuilder:this._popupFooterBuilder,observeScroll:this._observeScroll,observeScrollThreshold:this._observeScrollThreshold,popupPlacement:this._placement,popupFallbackPlacements:this._fallbackPlacements,activeStartIndex:e?0:void 0,popupClasses:[i.classes.POPUP,i.classes.MENU,...this._popupClasses],syncWidth:this._syncPopupWidth,activeChangeCallback:this._activeChangeListener,selectCallback:this._selectListener,popupOffset:this._popupOffset,cascadingElementFactory:r=>this._createCascadingElement(r)};this._adapter.setHostAttribute(i.attributes.OPEN,""),this._adapter.attachMenu(o),this._mode==="cascade"&&(this._adapter.addDropdownListener("mouseenter",this._childPopupMouseEnterListener),this._adapter.addDropdownListener("mouseleave",this._childPopupMouseLeaveListener)),this._adapter.addDropdownListener(i.events.ACTIVE_CHANGE,r=>{this._onActiveOptionChanged(r.detail.id)}),this._adapter.emitHostEvent(i.events.OPEN)}_closeMenu(){this._open=!1,this._childOpen=!1,this._adapter.detachMenu(),this._activeMouseLeaveTimeout!==void 0&&window.clearTimeout(this._activeMouseLeaveTimeout),this._adapter.removeHostAttribute(i.attributes.OPEN),this._adapter.emitHostEvent(i.events.CLOSE)}_loadOptionsAsync(){return this._optionsFactory?Promise.resolve(this._optionsFactory()).then(e=>{if(this._persistSelection||e.forEach(t=>t.selected=!1),this._open)if(e&&I(e)&&e.length){this._options=e,this._adapter.setOptions(e);let t=this._getSelectedValues();t.length&&this._adapter.setSelectedValues(t)}else this._open&&this._closeDropdown()}).catch(e=>{console.error("An unexpected error ocurred while opening the menu:",e),this._open&&this._closeDropdown()}):(this._open&&this._closeMenu(),Promise.resolve())}_handleSelectEvent(e){let t=this._nonDividerOptions.findIndex(n=>n.value===e);t<0||this._selectOptionByIndex(t)}_selectActiveOption(){let e=this._adapter.getActiveOptionIndex();e>=0&&this._nonDividerOptions[e]&&this._selectOptionByIndex(e)}_selectOptionByIndex(e){let{options:t,value:n}=this._nonDividerOptions[e];if(t){this._adapter.setActiveOption(e);return}this._closeDropdown();let o={index:e,value:n};!this._adapter.emitHostEvent(i.events.SELECT,o,!0,!0)||(this._selectedValue=this._persistSelection?n:void 0)}_getSelectedValues(){let e=this._flatOptions.filter(t=>t.selected).map(t=>t.value);return this._selectedValue!==void 0&&e.push(this._selectedValue),e}_onCascadingOptionSelected(e){this._persistSelection&&(this._selectedValue=e.value),this._adapter.emitHostEvent(i.events.SELECT,e),this._closeDropdown()}_onCascadingChildOpen(e){super._clearMouseLeaveTimeout(),this._adapter.closeOtherChildMenus(e),this._childOpen=!0,this._adapter.setActiveOption(e)}_onCascadingChildClose(e){this._childOpen=!1}_closeDropdown(){this._closeMenu()}_openDropdown({fromKeyboard:e}={}){this._openMenu({fromKeyboard:e})}_setCascadeTargetInactive(){this._adapter.setCascadeTargetInactive()}_isOwnElement(e){return this._adapter.isOwnElement(e)}_createCascadingElement({index:e,options:t,parentValue:n}){let o=this._adapter.createChildMenu(e,n,this._onCascadingChildOpen.bind(this),this._onCascadingChildClose.bind(this),this._onCascadingOptionSelected.bind(this));return o.mode="cascade",o.popupOffset={x:0,y:-8},o.dense=this._dense,o.placement="right-start",o.fallbackPlacements=["left-start","right-start"],o.persistSelection=this._persistSelection,this._persistSelection&&(o.selectedValue=this._selectedValue),o.options=t,o.optionBuilder=this._optionBuilder,o.iconClass=this._iconClass,o}_mapIconToLeadingIcon(){this._flatOptions.filter(e=>e.icon).forEach(e=>e.leadingIcon=e.icon)}get open(){return this._open}set open(e){e=!!e,this._open!==e&&(this._open=e,e?this._openDropdown():this._closeDropdown())}set options(e){if(typeof e=="function")this.optionsFactory=e;else if(this.optionsFactory=void 0,this._options=e.map(t=>c({},t)),this._open&&(this._mapIconToLeadingIcon(),this._adapter.setOptions(this._options),this._persistSelection)){let t=this._getSelectedValues();t.length&&this._adapter.setSelectedValues(t)}}get options(){return this._options?this._flatOptions.map(e=>c({},e)):[]}set optionsFactory(e){this._optionsFactory=e}set selectedIndex(e){let t=this._nonDividerOptions[e];t&&t.value!==this._selectedValue&&(this.selectedValue=t.value)}get selectedIndex(){return this._selectedValue!==void 0?this._nonDividerOptions.findIndex(e=>e.value===this._selectedValue):-1}set selectedValue(e){this._selectedValue!==e&&(this._selectedValue=e,this._adapter.setSelectedValues(this._selectedValue))}get selectedValue(){return this._selectedValue}get placement(){return this._placement}set placement(e){this._placement!==e&&(this._placement=e||"bottom-start",this._adapter.setHostAttribute(i.attributes.PLACEMENT,this._placement))}get fallbackPlacements(){return this._fallbackPlacements}set fallbackPlacements(e){this._fallbackPlacements=Array.isArray(e)?e:[]}get dense(){return this._dense}set dense(e){this._dense=e}get iconClass(){return this._iconClass}set iconClass(e){this._iconClass=e}get persistSelection(){return this._persistSelection}set persistSelection(e){this._persistSelection!==e&&(this._persistSelection=e,this._adapter.toggleHostAttribute(i.attributes.PERSIST_SELECTION,this._persistSelection),this._persistSelection||(this._flatOptions.forEach(t=>t.selected=!1),this._selectedValue=void 0))}get mode(){return this._mode}set mode(e){this._mode!==e&&(this._mode=e,this._destroyInteractionListeners(),this._applyMode(),this._adapter.setHostAttribute(i.attributes.MODE,this._mode))}get popupOffset(){return this._popupOffset}set popupOffset(e){this._popupOffset=e}get optionBuilder(){return this._optionBuilder}set optionBuilder(e){this._optionBuilder=e}get popupElement(){return this._adapter.getDropdownElement()}};var q="<template><slot></slot></template>",W=":host{display:-webkit-inline-box;display:inline-flex}:host([hidden]){display:none}",s=class extends k{constructor(){super();w.define(P),this._foundation=new h(new u(this)),C(this,q,W)}static get observedAttributes(){return[i.attributes.OPEN,i.attributes.PLACEMENT,i.attributes.SELECTED_INDEX,i.attributes.SELECTED_VALUE,i.attributes.DENSE,i.attributes.ICON_CLASS,i.attributes.PERSIST_SELECTION,i.attributes.MODE,i.attributes.SYNC_POPUP_WIDTH,i.attributes.POPUP_CLASSES,i.attributes.OPTION_LIMIT,i.attributes.OBSERVE_SCROLL,i.attributes.OBSERVE_SCROLL_THRESHOLD]}connectedCallback(){this.querySelector(i.selectors.TOGGLE)?this._foundation.initialize():M(this,i.selectors.TOGGLE).then(()=>this._foundation.initialize())}attributeChangedCallback(e,t,n){switch(super.attributeChangedCallback(e,t,n),e){case i.attributes.OPEN:this._foundation.open=O(n);break;case i.attributes.PLACEMENT:this._foundation.placement=n;break;case i.attributes.SELECTED_INDEX:this._foundation.selectedIndex=Number(n);break;case i.attributes.SELECTED_VALUE:this._foundation.selectedValue=n;break;case i.attributes.DENSE:this._foundation.dense=_(n);break;case i.attributes.ICON_CLASS:this._foundation.iconClass=n;break;case i.attributes.PERSIST_SELECTION:this.persistSelection=_(n);break;case i.attributes.MODE:this.mode=n;break}}disconnectedCallback(){this._foundation.disconnect()}propagateKeyEvent(e){this._foundation.onKeydown(e)}activateFirstOption(){this._foundation.activateFirstOption()}};a([p()],s.prototype,"open",2),a([p()],s.prototype,"options",2),a([p()],s.prototype,"selectedIndex",2),a([p()],s.prototype,"selectedValue",2),a([p()],s.prototype,"placement",2),a([p()],s.prototype,"fallbackPlacements",2),a([p()],s.prototype,"dense",2),a([p()],s.prototype,"iconClass",2),a([p()],s.prototype,"persistSelection",2),a([p()],s.prototype,"mode",2),a([p()],s.prototype,"popupOffset",2),a([p()],s.prototype,"optionBuilder",2),a([p({set:!1})],s.prototype,"popupElement",2),s=a([T({name:i.elementName,dependencies:[F,x,K,A]})],s);function Qe(){L(s)}export{i as a,u as b,h as c,s as d,Qe as e};
7
+ //# sourceMappingURL=chunk.TA3MVDUU.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/menu/menu-constants.ts", "../../src/menu/menu-adapter.ts", "../../src/menu/menu-foundation.ts", "../../src/menu/menu.ts", "../../src/menu/index.ts"],
4
+ "sourcesContent": ["import { COMPONENT_NAME_PREFIX } from '../constants';\nimport { IListDropdownOption, IListDropdownOptionGroup } from '../list-dropdown';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}menu`;\n\nconst classes = {\n POPUP: 'forge-menu__popup',\n MENU: 'mdc-menu'\n};\n\nconst selectors = {\n TOGGLE: `.${elementName}__toggle,[${elementName}-toggle],forge-button,forge-icon-button,forge-fab,button,[type=button],[role=button],a,[tabindex]:not([tabindex^=\"-\"])`,\n MENU_LIST: 'forge-list'\n};\n\nconst attributes = {\n OPEN: 'open',\n PLACEMENT: 'placement',\n SELECTED_INDEX: 'selected-index',\n SELECTED_VALUE: 'selected-value',\n DENSE: 'dense',\n ICON_CLASS: 'icon-class',\n PERSIST_SELECTION: 'persist-selection',\n MODE: 'mode',\n SYNC_POPUP_WIDTH: 'sync-popup-width',\n POPUP_CLASSES: 'popup-classes',\n OPTION_LIMIT: 'option-limit',\n OBSERVE_SCROLL: 'observe-scroll',\n OBSERVE_SCROLL_THRESHOLD: 'observe-scroll-threshold'\n};\n\nconst events = {\n SELECT: `${elementName}-select`,\n OPEN: `${elementName}-open`,\n CLOSE: `${elementName}-close`,\n ACTIVE_CHANGE: `${elementName}-active-change`\n};\n\nconst numbers = {\n CHILD_MOUSE_LEAVE_TIMEOUT: 300,\n POPUP_MOUSE_LEAVE_TIMEOUT: 500\n};\n\nexport const MENU_CONSTANTS = {\n elementName,\n classes,\n selectors,\n attributes,\n events,\n numbers\n};\n\nexport interface IMenuSelectEventData<T = any, K = any> {\n index: number;\n value?: T;\n parentValue?: K;\n}\n\nexport interface IMenuActiveChangeEventData {\n id: string;\n}\n\nexport interface IMenuOption<T = any> extends IListDropdownOption<T> {\n icon?: string;\n selected?: boolean;\n}\n\nexport interface IMenuOptionGroup extends IListDropdownOptionGroup {}\n\nexport type MenuOptionBuilder = (option: IMenuOption, parentElement: HTMLElement) => HTMLElement | string | void;\nexport type MenuOptionFactory = (() => IMenuOption[]) | (() => Promise<IMenuOption[]>);\nexport type MenuMode = 'click' | 'cascade';\n", "import { BaseAdapter, IBaseAdapter } from '../core/base/base-adapter';\nimport { IMenuOption } from './index';\nimport { IMenuComponent } from './menu';\nimport { MENU_CONSTANTS, IMenuSelectEventData } from './menu-constants';\nimport { IListDropdownConfig, IListDropdown, ListDropdown } from '../list-dropdown';\nimport { IListComponent, IListItemComponent, LIST_CONSTANTS, LIST_ITEM_CONSTANTS } from '../list';\n\nexport interface IMenuAdapter extends IBaseAdapter {\n getDropdownElement(): HTMLElement | null;\n initializeTarget(): void;\n initializeAccessibility(id: string): void;\n hasTargetElement(): boolean;\n addTargetListener(event: string, callback: (event: Event) => void, bubbles?: boolean): void;\n removeTargetListener(event: string, callback: (event: Event) => void): void;\n attachMenu(config: IListDropdownConfig): void;\n detachMenu(): void;\n setOptions(options: IMenuOption[]): void;\n getActiveOptionIndex(): number;\n setActiveOption(index: number): void;\n activateFirstOption(): void;\n setCascadeTargetInactive(): void;\n propagateKey(key: string): void;\n proxyKeyboardEventToChild(evt: KeyboardEvent, id: string): void;\n toggleChildMenu(index: number, open?: boolean): void;\n focusTarget(): void;\n isTargetFocused(): boolean;\n updateActiveDescendant(id: string): void;\n isOwnElement(element: Element): boolean;\n addDropdownListener(type: string, listener: (evt: any) => void): void;\n createChildMenu(index: number, parentValue: any, openCb: (index: number) => void, closeCb: (index: number) => void, selectCb: (data: IMenuSelectEventData) => void): IMenuComponent;\n closeOtherChildMenus(excludeIndex?: number): void;\n setSelectedValues(values: any[]): void;\n}\n\nexport class MenuAdapter extends BaseAdapter<IMenuComponent> implements IMenuAdapter {\n private _targetElement: HTMLElement | null;\n private _listDropdown?: IListDropdown;\n private _childMenus = new Map<number, IMenuComponent>();\n\n constructor(component: IMenuComponent) {\n super(component);\n }\n\n public getDropdownElement(): HTMLElement | null {\n return this._listDropdown?.dropdownElement ?? null;\n }\n\n public hasTargetElement(): boolean {\n return !!this._targetElement;\n }\n\n public initializeTarget(): void {\n this._targetElement = this._component.querySelector(MENU_CONSTANTS.selectors.TOGGLE);\n if (!this._targetElement) {\n this._targetElement = this._component.firstElementChild as HTMLElement;\n }\n }\n\n public initializeAccessibility(id: string): void {\n if (!this._targetElement) {\n return;\n }\n\n this._targetElement.setAttribute('aria-atomic', 'true');\n this._targetElement.setAttribute('aria-live', 'assertive');\n this._targetElement.setAttribute('aria-haspopup', 'true');\n this._targetElement.setAttribute('aria-expanded', 'false');\n\n if (!this._targetElement.hasAttribute('aria-label')) {\n this._targetElement.setAttribute('aria-label', this._targetElement.textContent || '');\n }\n }\n\n public addTargetListener(event: string, callback: (event: Event) => void, bubbles = false): void {\n if (this._targetElement) {\n this._targetElement.addEventListener(event, callback, bubbles);\n }\n }\n\n public removeTargetListener(event: string, callback: (event: Event) => void): void {\n if (this._targetElement) {\n this._targetElement.removeEventListener(event, callback);\n }\n }\n\n public attachMenu(config: IListDropdownConfig): void {\n if (this._listDropdown || !this._targetElement) {\n return;\n }\n this._listDropdown = new ListDropdown(this._targetElement as HTMLElement, config);\n this._listDropdown.open();\n this._targetElement.setAttribute('aria-expanded', 'true');\n this._targetElement.setAttribute('aria-controls', `list-dropdown-popup-${config.id}`);\n }\n\n public setOptions(options: IMenuOption[]): void {\n if (this._listDropdown) {\n this._listDropdown.setOptions(options);\n }\n }\n\n public detachMenu(): void {\n if (this._targetElement) {\n this._targetElement.removeAttribute('aria-activedescendant');\n this._targetElement.removeAttribute('aria-expanded');\n this._targetElement.removeAttribute('aria-controls');\n }\n\n if (this._listDropdown) {\n this._listDropdown.close();\n this._listDropdown.destroy();\n this._listDropdown = undefined;\n }\n }\n\n public setActiveOption(index: number): void {\n this._listDropdown?.activateOption(index);\n }\n\n public activateFirstOption(): void {\n this._listDropdown?.activateFirstOption();\n }\n\n public setCascadeTargetInactive(): void {\n const listItem = this._targetElement as IListItemComponent;\n if (listItem?.active) {\n listItem.active = false;\n }\n }\n\n public getActiveOptionIndex(): number {\n return this._listDropdown?.getActiveOptionIndex() ?? -1;\n }\n\n public focusTarget(): void {\n if (this._targetElement) {\n this._targetElement.focus();\n }\n }\n\n public isTargetFocused(): boolean {\n return document.activeElement === this._targetElement;\n }\n\n public updateActiveDescendant(id: string): void {\n if (!this._targetElement) {\n return;\n }\n if (id) {\n this._targetElement.setAttribute('aria-activedescendant', id);\n } else {\n this._targetElement.removeAttribute('aria-activedescendant');\n }\n }\n\n public addDropdownListener(type: string, listener: (evt: any) => void): void {\n if (!this._listDropdown || !this._listDropdown.dropdownElement) {\n return;\n }\n this._listDropdown.dropdownElement.addEventListener(type, listener);\n }\n\n public isOwnElement(el: Element): boolean {\n if (!this._targetElement || !this._listDropdown || !this._listDropdown.dropdownElement) {\n return false;\n }\n return this._targetElement.contains(el) || !!this._listDropdown.dropdownElement.contains(el);\n }\n\n public propagateKey(key: string): void {\n this._listDropdown?.handleKey(key);\n }\n\n public proxyKeyboardEventToChild(evt: KeyboardEvent, id: string): void {\n if (!this.getDropdownElement()) {\n return;\n }\n const openMenu = this._getOpenChildMenu(id);\n if (openMenu) {\n openMenu.propagateKeyEvent(evt);\n }\n }\n\n public toggleChildMenu(index: number, open?: boolean): void {\n const listItems = this._getListItems();\n const listItem = listItems[index];\n const childMenu = listItem.parentElement as IMenuComponent;\n if (childMenu && childMenu.tagName.toLowerCase() === MENU_CONSTANTS.elementName) {\n if (open === undefined) {\n childMenu.open = !childMenu.open;\n } else {\n childMenu.open = open;\n }\n childMenu.activateFirstOption();\n }\n }\n\n public createChildMenu(index: number, parentValue: any, openCb: (index: number) => void, closeCb: (index: number) => void, selectCb: (data: IMenuSelectEventData) => void): IMenuComponent {\n const menu = document.createElement('forge-menu');\n menu.style.display = 'block';\n\n // Set listeners to notify the parent menu when anything important happens within a child menu that needs to be propagated to the root menu\n menu.addEventListener(MENU_CONSTANTS.events.OPEN, () => {\n this._childMenus.set(index, menu);\n openCb(index);\n });\n menu.addEventListener(MENU_CONSTANTS.events.CLOSE, () => {\n this._childMenus.delete(index);\n closeCb(index);\n });\n menu.addEventListener(MENU_CONSTANTS.events.SELECT, (evt: CustomEvent<IMenuSelectEventData>) => {\n evt.stopPropagation();\n selectCb({ ...evt.detail, parentValue });\n });\n\n return menu;\n }\n\n public closeOtherChildMenus(excludeIndex?: number): void {\n const menusToRemove: number[] = [];\n this._childMenus.forEach((menu, index) => {\n if (index !== excludeIndex) {\n menu.open = false;\n menusToRemove.push(index);\n }\n });\n menusToRemove.forEach(index => this._childMenus.delete(index));\n }\n\n public setSelectedValues(values: any[]): void {\n this._listDropdown?.setSelectedValues(values);\n }\n\n private _getOpenChildMenu(id: string): IMenuComponent | null {\n if (!this.getDropdownElement()) {\n return null;\n }\n const list = this._getOwnList(id);\n return list ? list.querySelector(`${MENU_CONSTANTS.elementName}[${MENU_CONSTANTS.attributes.OPEN}]`) : null;\n }\n\n private _getOwnList(id: string): IListComponent | null {\n const popup = this.getDropdownElement();\n if (!popup) {\n return null;\n }\n return popup.querySelector(`${LIST_CONSTANTS.elementName}[id=\"list-dropdown-list-${id}\"]`);\n }\n\n private _getListItems(): IListItemComponent[] {\n const popup = this.getDropdownElement();\n if (!popup) {\n return [];\n }\n const listElement = popup.querySelector(LIST_CONSTANTS.elementName);\n if (listElement) {\n return Array.from(listElement.querySelectorAll(LIST_ITEM_CONSTANTS.elementName)) as IListItemComponent[];\n }\n return [];\n }\n}\n", "import { ICustomElementFoundation, isArray, randomChars } from '@tylertech/forge-core';\nimport { ICON_CLASS_NAME } from '../constants';\nimport { CascadingListDropdownAwareFoundation, IListDropdownCascadingElementFactoryConfig, IListDropdownConfig, ListDropdownAsyncStyle, ListDropdownType } from '../list-dropdown';\nimport { isListDropdownOptionType, ListDropdownOptionType } from '../list-dropdown/list-dropdown-utils';\nimport { IPopupPosition, PopupPlacement } from '../popup';\nimport { IMenuOption } from './index';\nimport { IMenuAdapter } from './menu-adapter';\nimport { IMenuActiveChangeEventData, IMenuOptionGroup, IMenuSelectEventData, MenuMode, MenuOptionBuilder, MenuOptionFactory, MENU_CONSTANTS } from './menu-constants';\n\nexport interface IMenuFoundation extends ICustomElementFoundation {\n initialize(): void;\n disconnect(): void;\n onKeydown(evt: KeyboardEvent): void;\n open: boolean;\n options: Array<IMenuOption | IMenuOptionGroup>;\n optionsFactory: MenuOptionFactory | undefined;\n selectedIndex: number;\n selectedValue: any;\n placement: PopupPlacement;\n fallbackPlacements: PopupPlacement[];\n dense: boolean;\n iconClass: string;\n persistSelection: boolean;\n mode: MenuMode;\n popupOffset: IPopupPosition;\n optionBuilder: MenuOptionBuilder | undefined;\n activateFirstOption(): void;\n}\n\nexport class MenuFoundation extends CascadingListDropdownAwareFoundation<IMenuOption | IMenuOptionGroup> implements IMenuFoundation {\n private _optionsFactory: MenuOptionFactory | undefined;\n private _placement: PopupPlacement = 'bottom-start';\n private _fallbackPlacements: PopupPlacement[] = [];\n private _dense = false;\n private _selectedValue: any;\n private _iconClass = ICON_CLASS_NAME;\n private _persistSelection = false;\n private _mode: MenuMode = 'click';\n private _popupOffset: IPopupPosition;\n private _optionBuilder: MenuOptionBuilder | undefined;\n private _identifier: string;\n private _clickListener: (evt: MouseEvent) => void;\n private _blurListener: (evt: MouseEvent) => void;\n private _selectListener: (value: any) => void;\n private _keydownListener: (evt: KeyboardEvent) => void;\n private _activeChangeListener: (id: string) => void;\n \n constructor(private _adapter: IMenuAdapter) {\n super({\n popupTimeout: MENU_CONSTANTS.numbers.POPUP_MOUSE_LEAVE_TIMEOUT,\n targetTimeout: MENU_CONSTANTS.numbers.CHILD_MOUSE_LEAVE_TIMEOUT\n });\n this._identifier = randomChars();\n this._clickListener = evt => this._onTargetClick(evt);\n this._blurListener = evt => this._onTargetBlur(evt);\n this._selectListener = value => this._handleSelectEvent(value);\n this._keydownListener = evt => this.onKeydown(evt);\n this._activeChangeListener = id => this._onActiveOptionChanged(id);\n }\n\n public initialize(): void {\n this._adapter.initializeTarget();\n this._adapter.initializeAccessibility(this._identifier);\n this._initializeInteractionListeners();\n }\n\n public disconnect(): void {\n if (this._open) {\n this._closeDropdown();\n }\n this._destroyInteractionListeners();\n }\n\n public activateFirstOption(): void {\n this._adapter.activateFirstOption();\n }\n\n private _applyMode(): void {\n if (!this._adapter.hasTargetElement()) {\n return;\n }\n\n if (this._mode !== 'cascade') {\n this._adapter.addTargetListener('click', this._clickListener);\n } else {\n this._attachCascadingListeners();\n }\n }\n\n private _initializeInteractionListeners(): void {\n if (!this._adapter.hasTargetElement()) {\n return;\n }\n this._applyMode();\n this._adapter.addTargetListener('keydown', this._keydownListener, true);\n this._adapter.addTargetListener('focusout', this._blurListener);\n }\n\n private _destroyInteractionListeners(): void {\n if (!this._adapter.hasTargetElement()) {\n return;\n }\n this._adapter.removeTargetListener('keydown', this._clickListener);\n this._adapter.removeTargetListener('focusout', this._blurListener);\n this._adapter.removeTargetListener('click', this._clickListener);\n this._detachCascadingListeners();\n }\n\n protected _attachCascadingListeners(): void {\n this._adapter.addTargetListener('mouseenter', this._targetMouseEnterListener);\n this._adapter.addTargetListener('mouseleave', this._targetMouseLeaveListener);\n\n // We listen for document mousemove events only to track mouse coords for use when determining\n // if popups should open/close after specific delays\n this._adapter.addDocumentListener('mousemove', this._documentMouseMoveListener);\n }\n\n protected _detachCascadingListeners(): void {\n this._adapter.removeTargetListener('mouseenter', this._targetMouseEnterListener);\n this._adapter.removeTargetListener('mouseleave', this._targetMouseLeaveListener);\n this._adapter.removeDocumentListener('mousemove', this._documentMouseMoveListener);\n }\n\n private get _nonDividerOptions(): IMenuOption[] {\n return this._flatOptions.filter(o => !o.divider);\n }\n\n private get _flatOptions(): IMenuOption[] {\n if (isListDropdownOptionType(this._options, ListDropdownOptionType.Group)) {\n return (this._options as IMenuOptionGroup[]).reduce((previousValue, currentValue) => previousValue.concat(currentValue.options), [] as IMenuOption[]) as IMenuOption[];\n }\n return this._options as IMenuOption[];\n }\n\n private _onTargetClick(evt: MouseEvent): void {\n if (this._open) {\n this._closeDropdown();\n return;\n }\n this.open = !this._open;\n if (this._open) {\n this._adapter.focusTarget();\n }\n }\n\n private _onTargetBlur(evt: Event): void {\n if (this._open) {\n this._closeDropdown();\n }\n }\n\n private _onActiveOptionChanged(id: string): void {\n // We need to dispatch an event when the active descendant changes to propagate that to the proper target element\n const data: IMenuActiveChangeEventData = { id };\n const canSetActiveDescendant = this._adapter.emitHostEvent(MENU_CONSTANTS.events.ACTIVE_CHANGE, data, true, true);\n if (this._mode !== 'cascade' && canSetActiveDescendant) {\n this._adapter.updateActiveDescendant(id);\n }\n }\n\n public onKeydown(evt: KeyboardEvent): void {\n // If we have any child menus open, we need to proxy the keyboard events to those and exit\n if (this._childOpen) {\n this._adapter.proxyKeyboardEventToChild(evt, this._identifier);\n return;\n }\n\n switch (evt.code) {\n case 'Tab':\n if (this._open) {\n this._selectActiveOption();\n }\n break;\n case 'Escape':\n if (this._open) {\n evt.preventDefault();\n evt.stopPropagation();\n this._closeDropdown();\n }\n break;\n case 'Space':\n evt.preventDefault();\n\n if (this._open) {\n this._closeDropdown();\n } else {\n this._openDropdown({ fromKeyboard: true });\n }\n break;\n case 'Home':\n case 'End':\n if (this._open) {\n evt.preventDefault();\n this._adapter.propagateKey(evt.code);\n }\n break;\n case 'Enter':\n evt.preventDefault();\n\n if (!this._open) {\n evt.preventDefault();\n this._openDropdown({ fromKeyboard: true });\n return;\n }\n\n evt.stopImmediatePropagation();\n\n this._adapter.propagateKey(evt.code);\n\n // Check if we need to toggle the child menu open state\n const activeIndex = this._adapter.getActiveOptionIndex();\n const activeOption = this._nonDividerOptions[activeIndex];\n if (activeOption && activeOption.options && activeOption.options.length) {\n this._adapter.toggleChildMenu(activeIndex);\n }\n break;\n case 'ArrowUp':\n case 'ArrowDown':\n if (this._open) {\n evt.stopImmediatePropagation();\n }\n\n evt.preventDefault();\n\n if (!this._open && evt.code === 'ArrowDown') {\n this._openDropdown({ fromKeyboard: true });\n this._adapter.activateFirstOption();\n return;\n }\n\n this._adapter.propagateKey(evt.code);\n break;\n case 'ArrowLeft':\n if (this._open) {\n evt.stopImmediatePropagation();\n }\n if (this._mode === 'cascade' && this._open) {\n this._closeDropdown();\n }\n break;\n case 'ArrowRight':\n if (this._open) {\n evt.stopImmediatePropagation();\n }\n if (!this._open) {\n return;\n }\n const hoveredIndex = this._adapter.getActiveOptionIndex();\n const hoveredOption = this._nonDividerOptions[hoveredIndex];\n if (hoveredOption && hoveredOption.options) {\n this._adapter.toggleChildMenu(hoveredIndex, evt.code === 'ArrowRight');\n return;\n }\n break;\n }\n }\n\n private async _openMenu({ fromKeyboard }: { fromKeyboard?: boolean } = {}): Promise<void> {\n this._open = true;\n let options: IMenuOption[] = [];\n\n if (typeof this._optionsFactory === 'function') {\n this._loadOptionsAsync();\n this._options = [];\n } else {\n if (!this._options || !this._options.length) {\n return;\n }\n options = this._options as IMenuOption[];\n }\n\n if (!this._persistSelection) {\n options.forEach(o => o.selected = false);\n }\n\n this._mapIconToLeadingIcon();\n\n const selectedValues = this._persistSelection ? this._getSelectedValues() : [];\n\n const config: IListDropdownConfig = {\n id: this._identifier,\n type: ListDropdownType.Menu,\n options: this._options,\n selectedValues,\n iconClass: this._iconClass,\n dense: this._dense,\n multiple: false,\n popupStatic: true,\n allowBusy: true,\n asyncStyle: ListDropdownAsyncStyle.Spinner,\n optionBuilder: this._optionBuilder,\n optionLimit: this._optionLimit,\n headerBuilder: this._popupHeaderBuilder,\n footerBuilder: this._popupFooterBuilder,\n observeScroll: this._observeScroll,\n observeScrollThreshold: this._observeScrollThreshold,\n popupPlacement: this._placement,\n popupFallbackPlacements: this._fallbackPlacements,\n activeStartIndex: fromKeyboard ? 0 : undefined,\n popupClasses: [\n MENU_CONSTANTS.classes.POPUP,\n MENU_CONSTANTS.classes.MENU,\n ...this._popupClasses as string[]\n ],\n syncWidth: this._syncPopupWidth,\n activeChangeCallback: this._activeChangeListener,\n selectCallback: this._selectListener,\n popupOffset: this._popupOffset,\n cascadingElementFactory: params => this._createCascadingElement(params)\n };\n\n this._adapter.setHostAttribute(MENU_CONSTANTS.attributes.OPEN, '');\n this._adapter.attachMenu(config);\n\n // If this menu is in a hover mode, we need to listen for mouse enter/leave events to know when the user is hovering over the popup\n if (this._mode === 'cascade') {\n this._adapter.addDropdownListener('mouseenter', this._childPopupMouseEnterListener);\n this._adapter.addDropdownListener('mouseleave', this._childPopupMouseLeaveListener);\n }\n \n this._adapter.addDropdownListener(MENU_CONSTANTS.events.ACTIVE_CHANGE, (evt: CustomEvent<IMenuActiveChangeEventData>) => {\n this._onActiveOptionChanged(evt.detail.id);\n });\n this._adapter.emitHostEvent(MENU_CONSTANTS.events.OPEN);\n }\n\n private _closeMenu(): void {\n this._open = false;\n this._childOpen = false;\n this._adapter.detachMenu();\n\n if (this._activeMouseLeaveTimeout !== undefined) {\n window.clearTimeout(this._activeMouseLeaveTimeout);\n }\n\n this._adapter.removeHostAttribute(MENU_CONSTANTS.attributes.OPEN);\n this._adapter.emitHostEvent(MENU_CONSTANTS.events.CLOSE);\n }\n\n private _loadOptionsAsync(): Promise<void> {\n if (!this._optionsFactory) {\n if (this._open) {\n this._closeMenu();\n }\n return Promise.resolve();\n }\n\n return Promise.resolve(this._optionsFactory())\n .then(results => {\n if (!this._persistSelection) {\n results.forEach(o => o.selected = false);\n }\n\n if (this._open) {\n if (results && isArray(results) && results.length) {\n this._options = results;\n this._adapter.setOptions(results);\n const selectedValues = this._getSelectedValues();\n if (selectedValues.length) {\n this._adapter.setSelectedValues(selectedValues);\n }\n } else if (this._open) {\n this._closeDropdown();\n }\n }\n })\n .catch(e => {\n console.error('An unexpected error ocurred while opening the menu:', e);\n if (this._open) {\n this._closeDropdown();\n }\n });\n }\n\n private _handleSelectEvent(value: any): void {\n const index = this._nonDividerOptions.findIndex(o => o.value === value);\n if (index < 0) {\n return;\n }\n this._selectOptionByIndex(index);\n }\n\n private _selectActiveOption(): void {\n const index = this._adapter.getActiveOptionIndex();\n if (index >= 0 && this._nonDividerOptions[index]) {\n this._selectOptionByIndex(index);\n }\n }\n\n private _selectOptionByIndex(index: number): void {\n const { options, value } = this._nonDividerOptions[index];\n\n // We ignore selections if the option has child options\n if (options) {\n this._adapter.setActiveOption(index);\n return;\n }\n\n this._closeDropdown();\n \n const data: IMenuSelectEventData = { index, value };\n const isCancelled = !this._adapter.emitHostEvent(MENU_CONSTANTS.events.SELECT, data, true, true);\n if (!isCancelled) {\n this._selectedValue = this._persistSelection ? value : undefined;\n }\n }\n\n private _getSelectedValues(): any[] {\n const values = this._flatOptions.filter(o => o.selected).map(o => o.value);\n if (this._selectedValue !== undefined) {\n values.push(this._selectedValue);\n }\n return values;\n }\n\n /** Called when a child menu option is selected. */\n protected _onCascadingOptionSelected(data: IMenuSelectEventData): void {\n if (this._persistSelection) {\n this._selectedValue = data.value;\n }\n this._adapter.emitHostEvent(MENU_CONSTANTS.events.SELECT, data);\n this._closeDropdown();\n }\n\n /** Called when a child menu is opened off of one of our menu options. */\n protected _onCascadingChildOpen(index: number): void {\n super._clearMouseLeaveTimeout();\n this._adapter.closeOtherChildMenus(index);\n this._childOpen = true;\n this._adapter.setActiveOption(index);\n }\n\n /** Called when a child menu is closed off of one of our menu options. */\n protected _onCascadingChildClose(index: number): void {\n this._childOpen = false;\n }\n\n protected _closeDropdown(): void {\n this._closeMenu();\n }\n\n protected _openDropdown({ fromKeyboard }: { fromKeyboard?: boolean } = {}): void {\n this._openMenu({ fromKeyboard });\n }\n\n protected _setCascadeTargetInactive(): void {\n this._adapter.setCascadeTargetInactive();\n }\n\n protected _isOwnElement(element: Element): boolean {\n return this._adapter.isOwnElement(element);\n }\n\n private _createCascadingElement({ index, options, parentValue }: IListDropdownCascadingElementFactoryConfig): HTMLElement {\n const menu = this._adapter.createChildMenu(\n index,\n parentValue,\n this._onCascadingChildOpen.bind(this),\n this._onCascadingChildClose.bind(this),\n this._onCascadingOptionSelected.bind(this)\n );\n menu.mode = 'cascade';\n menu.popupOffset = { x: 0, y: -8 };\n menu.dense = this._dense;\n menu.placement = 'right-start';\n menu.fallbackPlacements = ['left-start', 'right-start']; // Cascading menus should only fallback to left or right placement if needed\n menu.persistSelection = this._persistSelection;\n if (this._persistSelection) {\n menu.selectedValue = this._selectedValue;\n }\n menu.options = options;\n menu.optionBuilder = this._optionBuilder;\n menu.iconClass = this._iconClass;\n\n return menu;\n }\n\n private _mapIconToLeadingIcon(): void {\n // For backwards compatibility with old API, map the old \"icon\" property to the new \"leadingIcon\" property (if exists)\n this._flatOptions.filter(o => o.icon).forEach(o => o.leadingIcon = o.icon);\n }\n\n public get open(): boolean {\n return this._open;\n }\n public set open(value: boolean) {\n value = Boolean(value);\n if (this._open !== value) {\n this._open = value;\n if (value) {\n this._openDropdown();\n } else {\n this._closeDropdown();\n }\n }\n }\n\n public set options(options: IMenuOption[]) {\n if (typeof options === 'function') {\n this.optionsFactory = options;\n } else {\n this.optionsFactory = undefined;\n // Intentional shallow copy of member properties. These member objects have properties that are references to functions.\n this._options = options.map(o => ({ ...o }));\n \n if (this._open) {\n this._mapIconToLeadingIcon();\n this._adapter.setOptions(this._options as IMenuOption[]);\n if (this._persistSelection) {\n const selectedValues = this._getSelectedValues();\n if (selectedValues.length) {\n this._adapter.setSelectedValues(selectedValues);\n }\n }\n }\n }\n }\n public get options(): IMenuOption[] {\n if (!this._options) {\n return [];\n }\n\n // Intentional shallow copy of member properties. These member objects have properties that are references to functions.\n return this._flatOptions.map(o => ({ ...o }));\n }\n\n public set optionsFactory(factory: MenuOptionFactory | undefined) {\n this._optionsFactory = factory;\n }\n\n public set selectedIndex(value: number) {\n const option = this._nonDividerOptions[value];\n if (option && option.value !== this._selectedValue) {\n this.selectedValue = option.value;\n }\n }\n public get selectedIndex(): number {\n return this._selectedValue !== undefined ? this._nonDividerOptions.findIndex(o => o.value === this._selectedValue) : -1;\n }\n\n public set selectedValue(value: any) {\n if (this._selectedValue !== value) {\n this._selectedValue = value;\n this._adapter.setSelectedValues(this._selectedValue);\n }\n }\n public get selectedValue(): any {\n return this._selectedValue;\n }\n\n public get placement(): PopupPlacement {\n return this._placement;\n }\n public set placement(value: PopupPlacement) {\n if (this._placement !== value) {\n this._placement = value || 'bottom-start';\n this._adapter.setHostAttribute(MENU_CONSTANTS.attributes.PLACEMENT, this._placement);\n }\n }\n\n public get fallbackPlacements(): PopupPlacement[] {\n return this._fallbackPlacements;\n }\n public set fallbackPlacements(value: PopupPlacement[]) {\n this._fallbackPlacements = Array.isArray(value) ? value : [];\n }\n\n public get dense(): boolean {\n return this._dense;\n }\n public set dense(value: boolean) {\n this._dense = value;\n }\n\n public get iconClass(): string {\n return this._iconClass;\n }\n public set iconClass(value: string) {\n this._iconClass = value;\n }\n\n public get persistSelection(): boolean {\n return this._persistSelection;\n }\n public set persistSelection(value: boolean) {\n if (this._persistSelection === value) {\n return;\n }\n\n this._persistSelection = value;\n this._adapter.toggleHostAttribute(MENU_CONSTANTS.attributes.PERSIST_SELECTION, this._persistSelection);\n\n if (!this._persistSelection) {\n this._flatOptions.forEach(o => o.selected = false);\n this._selectedValue = undefined;\n }\n }\n\n public get mode(): MenuMode {\n return this._mode;\n }\n public set mode(value: MenuMode) {\n if (this._mode !== value) {\n this._mode = value;\n this._destroyInteractionListeners();\n this._applyMode();\n this._adapter.setHostAttribute(MENU_CONSTANTS.attributes.MODE, this._mode);\n }\n }\n\n public get popupOffset(): IPopupPosition {\n return this._popupOffset;\n }\n public set popupOffset(value: IPopupPosition) {\n this._popupOffset = value;\n }\n\n public get optionBuilder(): MenuOptionBuilder | undefined {\n return this._optionBuilder;\n }\n public set optionBuilder(cb: MenuOptionBuilder | undefined) {\n this._optionBuilder = cb;\n }\n\n public get popupElement(): HTMLElement | null {\n return this._adapter.getDropdownElement();\n }\n}\n", "import { attachShadowTemplate, coerceBoolean, CustomElement, ensureChild, FoundationProperty, isDefined } from '@tylertech/forge-core';\nimport { tylIconArrowRight } from '@tylertech/tyler-icons/standard';\nimport { CircularProgressComponent } from '../circular-progress';\nimport { IconRegistry } from '../icon';\nimport { LinearProgressComponent } from '../linear-progress';\nimport { ListComponent } from '../list';\nimport { IListDropdownAware, ListDropdownAware } from '../list-dropdown/list-dropdown-aware';\nimport { IPopupPosition, PopupComponent, PopupPlacement } from '../popup';\nimport { MenuAdapter } from './menu-adapter';\nimport { IMenuActiveChangeEventData, IMenuOption, IMenuOptionGroup, IMenuSelectEventData, MenuMode, MenuOptionBuilder, MenuOptionFactory, MENU_CONSTANTS } from './menu-constants';\nimport { MenuFoundation } from './menu-foundation';\nconst template = '<template><slot></slot></template>';\nconst styles = ':host{display:-webkit-inline-box;display:inline-flex}:host([hidden]){display:none}';\n\nexport interface IMenuComponent extends IListDropdownAware {\n open: boolean;\n options: Array<IMenuOption | IMenuOptionGroup> | MenuOptionFactory;\n selectedIndex: number;\n selectedValue: number;\n placement: PopupPlacement;\n fallbackPlacements: PopupPlacement[];\n dense: boolean;\n iconClass: string;\n persistSelection: boolean;\n mode: MenuMode;\n popupOffset: IPopupPosition;\n optionBuilder: MenuOptionBuilder | undefined;\n popupElement: HTMLElement | undefined;\n propagateKeyEvent(evt: KeyboardEvent): void;\n activateFirstOption(): void;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'forge-menu': IMenuComponent;\n }\n\n interface HTMLElementEventMap {\n 'forge-menu-select': CustomEvent<IMenuSelectEventData>;\n 'forge-menu-open': CustomEvent<void>;\n 'forge-menu-close': CustomEvent<void>;\n 'forge-menu-active-change': CustomEvent<IMenuActiveChangeEventData>;\n }\n}\n\n/**\n * The web component class behind the `<forge-menu>` custom element.\n * \n * @tag forge-menu\n */\n@CustomElement({\n name: MENU_CONSTANTS.elementName,\n dependencies: [\n PopupComponent,\n ListComponent,\n CircularProgressComponent,\n LinearProgressComponent\n ]\n})\nexport class MenuComponent extends ListDropdownAware implements IMenuComponent {\n public static get observedAttributes(): string[] {\n return [\n MENU_CONSTANTS.attributes.OPEN,\n MENU_CONSTANTS.attributes.PLACEMENT,\n MENU_CONSTANTS.attributes.SELECTED_INDEX,\n MENU_CONSTANTS.attributes.SELECTED_VALUE,\n MENU_CONSTANTS.attributes.DENSE,\n MENU_CONSTANTS.attributes.ICON_CLASS,\n MENU_CONSTANTS.attributes.PERSIST_SELECTION,\n MENU_CONSTANTS.attributes.MODE,\n MENU_CONSTANTS.attributes.SYNC_POPUP_WIDTH,\n MENU_CONSTANTS.attributes.POPUP_CLASSES,\n MENU_CONSTANTS.attributes.OPTION_LIMIT,\n MENU_CONSTANTS.attributes.OBSERVE_SCROLL,\n MENU_CONSTANTS.attributes.OBSERVE_SCROLL_THRESHOLD\n ];\n }\n\n private _foundation: MenuFoundation;\n\n constructor() {\n super();\n IconRegistry.define(tylIconArrowRight);\n this._foundation = new MenuFoundation(new MenuAdapter(this));\n attachShadowTemplate(this, template, styles);\n }\n\n public connectedCallback(): void {\n if (this.querySelector(MENU_CONSTANTS.selectors.TOGGLE)) {\n this._foundation.initialize();\n } else {\n ensureChild(this, MENU_CONSTANTS.selectors.TOGGLE).then(() => this._foundation.initialize());\n }\n }\n\n public attributeChangedCallback(name: string, oldValue: string, newValue: string): void {\n super.attributeChangedCallback(name, oldValue, newValue);\n switch (name) {\n case MENU_CONSTANTS.attributes.OPEN:\n this._foundation.open = isDefined(newValue);\n break;\n case MENU_CONSTANTS.attributes.PLACEMENT:\n this._foundation.placement = newValue as PopupPlacement;\n break;\n case MENU_CONSTANTS.attributes.SELECTED_INDEX:\n this._foundation.selectedIndex = Number(newValue);\n break;\n case MENU_CONSTANTS.attributes.SELECTED_VALUE:\n this._foundation.selectedValue = newValue;\n break;\n case MENU_CONSTANTS.attributes.DENSE:\n this._foundation.dense = coerceBoolean(newValue);\n break;\n case MENU_CONSTANTS.attributes.ICON_CLASS:\n this._foundation.iconClass = newValue;\n break;\n case MENU_CONSTANTS.attributes.PERSIST_SELECTION:\n this.persistSelection = coerceBoolean(newValue);\n break;\n case MENU_CONSTANTS.attributes.MODE:\n this.mode = newValue as MenuMode;\n break;\n }\n }\n\n public disconnectedCallback(): void {\n this._foundation.disconnect();\n }\n\n /** Gets/sets the open state. */\n @FoundationProperty()\n public declare open: boolean;\n\n /** Gets/sets the array of options to display in the menu. */\n @FoundationProperty()\n public declare options: Array<IMenuOption | IMenuOptionGroup> | MenuOptionFactory;\n\n /** Gets/sets the selected option to the index. Does not support cascading menus. */\n @FoundationProperty()\n public declare selectedIndex: number;\n\n /** Gets/sets the value of the option to select. */\n @FoundationProperty()\n public declare selectedValue: any;\n\n /** Gets/sets the menu placement (default is bottom-left). */\n @FoundationProperty()\n public declare placement: `${PopupPlacement}`;\n\n /** Gets/sets the fallback menu placement for overriding the default of any side. */\n @FoundationProperty()\n public declare fallbackPlacements: `${PopupPlacement}`[];\n\n /** Gets/sets dense state of the list options used in the menu popup. */\n @FoundationProperty()\n public declare dense: boolean;\n\n /** Gets/sets the class name to use for option icons. */\n @FoundationProperty()\n public declare iconClass: string;\n\n /**\n * Gets/sets whether selection of menu items is persisted.\n * @deprecated Please use `<forge-select-dropdown>` for handling selection states.\n */\n @FoundationProperty()\n public declare persistSelection: boolean;\n\n /** Gets/sets the mode that this menu is using. */\n @FoundationProperty()\n public declare mode: MenuMode;\n\n /** Sets the position adjustment on the internal popup element. */\n @FoundationProperty()\n public declare popupOffset: IPopupPosition;\n\n /** Sets the callback that will be executed for each option in the dropdown for producing custom option templates. */\n @FoundationProperty()\n public declare optionBuilder: MenuOptionBuilder;\n\n /** Gets the currently active popup element when the dropdown is open. */\n @FoundationProperty({ set: false })\n public declare popupElement: HTMLElement | undefined;\n\n /** Force propagates the key event from another element this component. */\n public propagateKeyEvent(evt: KeyboardEvent): void {\n this._foundation.onKeydown(evt);\n }\n\n public activateFirstOption(): void {\n this._foundation.activateFirstOption();\n }\n}\n", "import { defineCustomElement } from '@tylertech/forge-core';\n\nimport { MenuComponent } from './menu';\n\nexport * from './menu-adapter';\nexport * from './menu-constants';\nexport * from './menu-foundation';\nexport * from './menu';\n\nexport function defineMenuComponent(): void {\n defineCustomElement(MenuComponent);\n}\n"],
5
+ "mappings": "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",
6
+ "names": ["elementName", "COMPONENT_NAME_PREFIX", "classes", "selectors", "attributes", "events", "numbers", "MENU_CONSTANTS", "MenuAdapter", "BaseAdapter", "component", "_a", "_b", "MENU_CONSTANTS", "id", "event", "callback", "bubbles", "config", "ListDropdown", "options", "index", "listItem", "type", "listener", "el", "key", "evt", "openMenu", "open", "childMenu", "parentValue", "openCb", "closeCb", "selectCb", "menu", "__spreadProps", "__spreadValues", "excludeIndex", "menusToRemove", "values", "list", "popup", "LIST_CONSTANTS", "listElement", "LIST_ITEM_CONSTANTS", "MenuFoundation", "CascadingListDropdownAwareFoundation", "_adapter", "MENU_CONSTANTS", "ICON_CLASS_NAME", "randomChars", "evt", "value", "id", "o", "isListDropdownOptionType", "previousValue", "currentValue", "data", "canSetActiveDescendant", "activeIndex", "activeOption", "hoveredIndex", "hoveredOption", "fromKeyboard", "options", "selectedValues", "config", "params", "results", "isArray", "index", "values", "element", "parentValue", "menu", "__spreadValues", "factory", "option", "cb", "template", "styles", "MenuComponent", "ListDropdownAware", "IconRegistry", "tylIconArrowRight", "MenuFoundation", "MenuAdapter", "attachShadowTemplate", "MENU_CONSTANTS", "ensureChild", "name", "oldValue", "newValue", "isDefined", "coerceBoolean", "evt", "__decorateClass", "FoundationProperty", "CustomElement", "PopupComponent", "ListComponent", "CircularProgressComponent", "LinearProgressComponent", "defineMenuComponent", "defineCustomElement", "MenuComponent"]
7
+ }
@@ -3,5 +3,5 @@
3
3
  * Copyright 2023 Tyler Technologies, Inc.
4
4
  * License: Apache-2.0
5
5
  */
6
- import{a as u}from"./chunk.HSI7B43D.js";import{a as o}from"./chunk.NVUMRW44.js";import{a as d,b as k}from"./chunk.36F2GVWS.js";import{a as g,e as b,f as h,k as f}from"./chunk.JAWV5Y5T.js";import{k as c}from"./chunk.J2M2MXP2.js";import{d as a}from"./chunk.M3QDAYD2.js";var _=`${k}stack`,A={DEFAULT:"forge-stack"},x={ROOT:`.${A.DEFAULT}`},S={INLINE:"inline",WRAP:"wrap",STRETCH:"stretch",GAP:"gap",ALIGNMENT:"alignment"},T={DEFAULT_GAP:"16"},e={elementName:_,classes:A,attributes:S,selectors:x,strings:T},E=(n=>(n.Start="start",n.Center="center",n.End="end",n))(E||{});var l=class extends u{constructor(r){super(r);this._rootElement=h(r,e.selectors.ROOT)}setGap(r){let n=/^\d+$/.test(r)?`${r}px`:r;this._rootElement.style.gap=`var(--forge-stack-gap, ${n})`}};var p=class{constructor(t){this._adapter=t;this._inline=!1;this._wrap=!1;this._stretch=!1;this._gap=e.strings.DEFAULT_GAP;this._alignment="start"}get inline(){return this._inline}set inline(t){t=!!t,this._inline!==t&&(this._inline=t,this._adapter.toggleHostAttribute(e.attributes.INLINE,this._inline))}get wrap(){return this._wrap}set wrap(t){t=!!t,this._wrap!==t&&(this._wrap=t,this._adapter.toggleHostAttribute(e.attributes.WRAP,this._wrap))}get stretch(){return this._stretch}set stretch(t){t=!!t,this._stretch!==t&&(this._stretch=t,this._adapter.toggleHostAttribute(e.attributes.STRETCH,this._stretch))}get gap(){return this._gap}set gap(t){this._gap!==t&&(this._gap=t,this._adapter.setGap(this._gap),this._adapter.setHostAttribute(e.attributes.GAP,this._gap))}get alignment(){return this._alignment}set alignment(t){this._alignment!==t&&(this._alignment=t,this._adapter.setHostAttribute(e.attributes.ALIGNMENT,this._alignment))}};var I='<template><div class="forge-stack" part="root"><slot></slot></div></template>',N=".forge-stack{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;width:100%;gap:16px;gap:var(--forge-stack-gap,16px);height:100%;height:var(--forge-stack-height,100%)}.forge-stack ::slotted(*){-webkit-box-flex:var(--forge-stack-stretch,initial);flex:var(--forge-stack-stretch,initial)}:host{display:block}:host([inline]) .forge-stack{-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;--forge-stack-height:auto}:host([inline][wrap]) .forge-stack{flex-wrap:wrap}:host([stretch]:not([inline])){height:100%}:host([stretch]){--forge-stack-stretch:1}:host([alignment=start]) .forge-stack{-webkit-box-pack:start;justify-content:start}:host([alignment=center]) .forge-stack{-webkit-box-pack:center;justify-content:center}:host([alignment=end]) .forge-stack{-webkit-box-pack:end;justify-content:end}",i=class extends f{constructor(){super();b(this,I,N),this._foundation=new p(new l(this))}static get observedAttributes(){return[e.attributes.INLINE,e.attributes.WRAP,e.attributes.STRETCH,e.attributes.GAP,e.attributes.ALIGNMENT]}attributeChangedCallback(r,n,s){switch(r){case e.attributes.INLINE:this.inline=c(s);break;case e.attributes.WRAP:this.wrap=c(s);break;case e.attributes.STRETCH:this.stretch=c(s);break;case e.attributes.GAP:this.gap=s;break;case e.attributes.ALIGNMENT:this.alignment=s;break}}};a([o()],i.prototype,"inline",2),a([o()],i.prototype,"wrap",2),a([o()],i.prototype,"stretch",2),a([o()],i.prototype,"gap",2),a([o()],i.prototype,"alignment",2),i=a([d({name:e.elementName})],i);function J(){g(i)}export{e as a,E as b,l as c,p as d,i as e,J as f};
7
- //# sourceMappingURL=chunk.3HCYRDRI.js.map
6
+ import{a as u}from"./chunk.LS7WRRT2.js";import{a as o}from"./chunk.NVUMRW44.js";import{a as d,b as k}from"./chunk.IT66AOX7.js";import{a as g,e as b,f as h,k as f}from"./chunk.JAWV5Y5T.js";import{k as c}from"./chunk.J2M2MXP2.js";import{d as a}from"./chunk.M3QDAYD2.js";var _=`${k}stack`,A={DEFAULT:"forge-stack"},x={ROOT:`.${A.DEFAULT}`},S={INLINE:"inline",WRAP:"wrap",STRETCH:"stretch",GAP:"gap",ALIGNMENT:"alignment"},T={DEFAULT_GAP:"16"},e={elementName:_,classes:A,attributes:S,selectors:x,strings:T},E=(n=>(n.Start="start",n.Center="center",n.End="end",n))(E||{});var l=class extends u{constructor(r){super(r);this._rootElement=h(r,e.selectors.ROOT)}setGap(r){let n=/^\d+$/.test(r)?`${r}px`:r;this._rootElement.style.gap=`var(--forge-stack-gap, ${n})`}};var p=class{constructor(t){this._adapter=t;this._inline=!1;this._wrap=!1;this._stretch=!1;this._gap=e.strings.DEFAULT_GAP;this._alignment="start"}get inline(){return this._inline}set inline(t){t=!!t,this._inline!==t&&(this._inline=t,this._adapter.toggleHostAttribute(e.attributes.INLINE,this._inline))}get wrap(){return this._wrap}set wrap(t){t=!!t,this._wrap!==t&&(this._wrap=t,this._adapter.toggleHostAttribute(e.attributes.WRAP,this._wrap))}get stretch(){return this._stretch}set stretch(t){t=!!t,this._stretch!==t&&(this._stretch=t,this._adapter.toggleHostAttribute(e.attributes.STRETCH,this._stretch))}get gap(){return this._gap}set gap(t){this._gap!==t&&(this._gap=t,this._adapter.setGap(this._gap),this._adapter.setHostAttribute(e.attributes.GAP,this._gap))}get alignment(){return this._alignment}set alignment(t){this._alignment!==t&&(this._alignment=t,this._adapter.setHostAttribute(e.attributes.ALIGNMENT,this._alignment))}};var I='<template><div class="forge-stack" part="root"><slot></slot></div></template>',N=".forge-stack{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;width:100%;gap:16px;gap:var(--forge-stack-gap,16px);height:100%;height:var(--forge-stack-height,100%)}.forge-stack ::slotted(*){-webkit-box-flex:var(--forge-stack-stretch,initial);flex:var(--forge-stack-stretch,initial)}:host{display:block}:host([inline]) .forge-stack{-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;--forge-stack-height:auto}:host([inline][wrap]) .forge-stack{flex-wrap:wrap}:host([stretch]:not([inline])){height:100%}:host([stretch]){--forge-stack-stretch:1}:host([alignment=start]) .forge-stack{-webkit-box-pack:start;justify-content:start}:host([alignment=center]) .forge-stack{-webkit-box-pack:center;justify-content:center}:host([alignment=end]) .forge-stack{-webkit-box-pack:end;justify-content:end}",i=class extends f{constructor(){super();b(this,I,N),this._foundation=new p(new l(this))}static get observedAttributes(){return[e.attributes.INLINE,e.attributes.WRAP,e.attributes.STRETCH,e.attributes.GAP,e.attributes.ALIGNMENT]}attributeChangedCallback(r,n,s){switch(r){case e.attributes.INLINE:this.inline=c(s);break;case e.attributes.WRAP:this.wrap=c(s);break;case e.attributes.STRETCH:this.stretch=c(s);break;case e.attributes.GAP:this.gap=s;break;case e.attributes.ALIGNMENT:this.alignment=s;break}}};a([o()],i.prototype,"inline",2),a([o()],i.prototype,"wrap",2),a([o()],i.prototype,"stretch",2),a([o()],i.prototype,"gap",2),a([o()],i.prototype,"alignment",2),i=a([d({name:e.elementName})],i);function J(){g(i)}export{e as a,E as b,l as c,p as d,i as e,J as f};
7
+ //# sourceMappingURL=chunk.THWSN3X4.js.map
@@ -0,0 +1,7 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2023 Tyler Technologies, Inc.
4
+ * License: Apache-2.0
5
+ */
6
+ import{d as B}from"./chunk.LXX3YZYS.js";import{b as N}from"./chunk.RDW7Z4W5.js";import{d as y}from"./chunk.LOBKFTRM.js";import{a as E}from"./chunk.SOLF23NC.js";import{l as I}from"./chunk.Z7PBGV4K.js";import{a as A}from"./chunk.LS7WRRT2.js";import{a as o}from"./chunk.NVUMRW44.js";import{a as T,b as x}from"./chunk.IT66AOX7.js";import{a as v,e as b,f as n,k as O}from"./chunk.JAWV5Y5T.js";import{d}from"./chunk.K7FPXAFS.js";import{k as f,l as m}from"./chunk.J2M2MXP2.js";import{a as p,b as g,d as a}from"./chunk.M3QDAYD2.js";var _=`${x}profile-card`,L={FULL_NAME:"full-name",EMAIL:"email",SIGN_OUT:"sign-out",PROFILE:"profile",SIGN_OUT_TEXT:"sign-out-text",PROFILE_TEXT:"profile-text",AVATAR_TEXT:"avatar-text",AVATAR_ICON:"avatar-icon",AVATAR_IMAGE_URL:"avatar-image-url",AVATAR_LETTER_COUNT:"avatar-letter-count"},C={FULL_NAME:".full-name",EMAIL:".email",AVATAR:".avatar > forge-avatar",ACTION_TOOLBAR:"#action-toolbar",PROFILE_BUTTON:"#profile-button",SIGN_OUT_BUTTON:"#sign-out-button"},U={SHOW_SIGN_OUT_BUTTON:!0,SHOW_PROFILE_BUTTON:!1,SIGN_OUT_BUTTON_TEXT:"Sign out",PROFILE_BUTTON_TEXT:"Profile"},P={SIGN_OUT:`${_}-sign-out`,PROFILE:`${_}-profile`},i={elementName:_,attributes:L,selectors:C,defaults:U,events:P};var l=class extends A{constructor(e){super(e);this._fullNameElement=n(e,i.selectors.FULL_NAME),this._emailElement=n(e,i.selectors.EMAIL),this._avatarElement=n(e,i.selectors.AVATAR),this._actionToolbar=n(e,i.selectors.ACTION_TOOLBAR),this._profileButton=n(e,i.selectors.PROFILE_BUTTON),this._signOutButton=n(e,i.selectors.SIGN_OUT_BUTTON)}setFullName(e){this._fullNameElement.textContent=e}setEmail(e){this._emailElement.textContent=e}setAvatarText(e){d(this._avatarElement),this._avatarElement.text=e}setAvatarIcon(e){if(e){let h=new E({props:{name:e}});this._avatarElement.replaceChildren(h.element)}else d(this._avatarElement)}setAvatarImageUrl(e){this._avatarElement.imageUrl=e}setAvatarLetterCount(e){this._avatarElement.letterCount=e}setActionToolbarVisibility(e){e?this._actionToolbar.style.removeProperty("display"):this._actionToolbar.style.display="none"}setProfileButtonVisibility(e){e?this._profileButton.style.removeProperty("display"):this._profileButton.style.display="none"}setSignOutButtonVisibility(e){e?this._signOutButton.style.removeProperty("display"):this._signOutButton.style.display="none"}setSignOutButtonText(e){this._signOutButton.textContent=e}setProfileButtonText(e){this._profileButton.textContent=e}setProfileButtonListener(e){this._profileButton.addEventListener("click",e)}setSignOutButtonListener(e){this._signOutButton.addEventListener("click",e)}requestProfileButtonFocus(e){window.requestAnimationFrame(()=>this._profileButton.focus(e))}requestSignOutButtonFocus(e){window.requestAnimationFrame(()=>this._signOutButton.focus(e))}};var u=class{constructor(t){this._adapter=t;this._showSignOutButton=i.defaults.SHOW_SIGN_OUT_BUTTON;this._showProfileButton=i.defaults.SHOW_PROFILE_BUTTON;this._signOutButtonText=i.defaults.SIGN_OUT_BUTTON_TEXT;this._profileButtonText=i.defaults.PROFILE_BUTTON_TEXT;this._profileListener=e=>this._onProfileButtonClick(e),this._signOutListener=e=>this._onSignOutButtonClick(e)}initialize(){this._adapter.setProfileButtonListener(this._profileListener),this._adapter.setSignOutButtonListener(this._signOutListener)}focus(t){this._showSignOutButton?this._adapter.requestSignOutButtonFocus(g(p({},t),{focusVisible:!0})):this._showProfileButton&&this._adapter.requestProfileButtonFocus(g(p({},t),{focusVisible:!0}))}_setActionVisibility(){let t=this._showSignOutButton||this._showProfileButton;this._adapter.setActionToolbarVisibility(t),this._adapter.setSignOutButtonVisibility(this._showSignOutButton),this._adapter.setProfileButtonVisibility(this._showProfileButton)}_onProfileButtonClick(t){t.stopPropagation(),this._adapter.emitHostEvent(i.events.PROFILE)}_onSignOutButtonClick(t){t.stopPropagation(),this._adapter.emitHostEvent(i.events.SIGN_OUT)}get fullName(){return this._fullName}set fullName(t){this._fullName!==t&&(this._fullName=t!=null?t:"",this._adapter.setFullName(this._fullName),this._avatarText||this._adapter.setAvatarText(this._fullName),this._adapter.toggleHostAttribute(i.attributes.FULL_NAME,!!this._fullName,this._fullName))}get email(){return this._email}set email(t){this._email!==t&&(this._email=t!=null?t:"",this._adapter.setEmail(this._email),this._adapter.toggleHostAttribute(i.attributes.EMAIL,!!this._email,this._email))}get avatarText(){return this._avatarText}set avatarText(t){this._avatarText!==t&&(this._avatarText=t!=null?t:"",this._adapter.setAvatarText(this._avatarText),this._adapter.toggleHostAttribute(i.attributes.AVATAR_TEXT,!!this._avatarText,this._avatarText))}get avatarIcon(){return this._avatarIcon}set avatarIcon(t){this._avatarIcon!==t&&(this._avatarIcon=t!=null?t:"",this._adapter.setAvatarIcon(this._avatarIcon),this._adapter.toggleHostAttribute(i.attributes.AVATAR_ICON,!!this._avatarIcon,this._avatarIcon))}get avatarImageUrl(){return this._avatarImageUrl}set avatarImageUrl(t){this._avatarImageUrl!==t&&(this._avatarImageUrl=t,this._adapter.setAvatarImageUrl(this._avatarImageUrl),this._adapter.toggleHostAttribute(i.attributes.AVATAR_IMAGE_URL,!!this._avatarImageUrl,this._avatarImageUrl))}get avatarLetterCount(){return this._avatarLetterCount}set avatarLetterCount(t){this._avatarLetterCount!==t&&(this._avatarLetterCount=t,this._adapter.setAvatarLetterCount(this._avatarLetterCount),this._adapter.toggleHostAttribute(i.attributes.AVATAR_LETTER_COUNT,!!this._avatarLetterCount,`${this._avatarLetterCount}`))}get signOut(){return this._showSignOutButton}set signOut(t){t=!!t,this._showSignOutButton!==t&&(this._showSignOutButton=t,this._setActionVisibility(),this._adapter.toggleHostAttribute(i.attributes.SIGN_OUT,this._showSignOutButton))}get profile(){return this._showProfileButton}set profile(t){t=!!t,this._showProfileButton!==t&&(this._showProfileButton=t,this._setActionVisibility(),this._adapter.toggleHostAttribute(i.attributes.PROFILE,this._showProfileButton))}get signOutText(){return this._signOutButtonText}set signOutText(t){if(this._signOutButtonText!==t){this._signOutButtonText=t||i.defaults.SIGN_OUT_BUTTON_TEXT,this._adapter.setSignOutButtonText(this._signOutButtonText);let e=this._signOutButtonText!==i.defaults.SIGN_OUT_BUTTON_TEXT;this._adapter.toggleHostAttribute(i.attributes.SIGN_OUT_TEXT,e,this._signOutButtonText)}}get profileText(){return this._profileButtonText}set profileText(t){if(this._profileButtonText!==t){this._profileButtonText=t||i.defaults.PROFILE_BUTTON_TEXT,this._adapter.setProfileButtonText(this._profileButtonText);let e=t!==i.defaults.PROFILE_BUTTON_TEXT;this._adapter.toggleHostAttribute(i.attributes.PROFILE_TEXT,e,this._profileButtonText)}}};var R='<template><div class="forge-profile-card" part="root"><div class="info-container"><div class="avatar"><forge-avatar part="avatar"></forge-avatar></div><div class="info-text"><div class="full-name" part="name"></div><div class="email" part="email"></div></div></div><slot></slot><forge-toolbar inverted id="action-toolbar"><forge-button variant="outlined" slot="end" style="display: none;" part="profile-button" id="profile-button">Profile</forge-button><forge-button slot="end" part="sign-out-button" id="sign-out-button">Sign out</forge-button></forge-toolbar></div></template>',S=':host{display:block}:host([hidden]){display:none}.forge-profile-card{--_profile-card-min-width:var(--forge-profile-card-min-width, 360px);--_profile-card-shape:var(--forge-profile-card-border-radius, var(--forge-shape-medium, 4px));--_profile-card-avatar-size:var(--forge-profile-card-avatar-size, 56px)}.forge-profile-card{min-width:var(--_profile-card-min-width);border-radius:var(--_profile-card-shape)}@media (max-width:399px){.forge-profile-card{width:100vw;min-width:unset;overflow:auto}}.forge-profile-card .info-container{display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;padding-block:var(--forge-spacing-xsmall,8px);padding-inline:var(--forge-spacing-medium,16px)}.forge-profile-card .avatar{display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;padding:var(--forge-spacing-xsmall,8px);-webkit-margin-end:var(--forge-spacing-medium,16px);margin-inline-end:var(--forge-spacing-medium,16px);--forge-avatar-size:var(--_profile-card-avatar-size)}.forge-profile-card .text{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column}.forge-profile-card .full-name{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:var(--forge-typography-heading2-font-family, var(--forge-typography-font-family, "Roboto", sans-serif));font-size:var(--forge-typography-heading2-font-size, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-heading2-font-size-scale, 1)));font-weight:var(--forge-typography-heading2-font-weight,500);line-height:var(--forge-typography-heading2-line-height, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-heading2-line-height-scale, 1.25)));letter-spacing:var(--forge-typography-heading2-letter-spacing, .0125em);text-transform:var(--forge-typography-heading2-text-transform,inherit);-webkit-text-decoration:var(--forge-typography-heading2-text-decoration,inherit);text-decoration:var(--forge-typography-heading2-text-decoration,inherit)}.forge-profile-card .email{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:var(--forge-typography-subheading1-font-family, var(--forge-typography-font-family, "Roboto", sans-serif));font-size:var(--forge-typography-subheading1-font-size, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-subheading1-font-size-scale, .875)));font-weight:var(--forge-typography-subheading1-font-weight,400);line-height:var(--forge-typography-subheading1-line-height, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-subheading1-line-height-scale, 1.125)));letter-spacing:var(--forge-typography-subheading1-letter-spacing, normal);text-transform:var(--forge-typography-subheading1-text-transform,inherit);-webkit-text-decoration:var(--forge-typography-subheading1-text-decoration,inherit);text-decoration:var(--forge-typography-subheading1-text-decoration,inherit);color:var(--forge-theme-text-medium,rgba(0,0,0,.54))}#action-toolbar{--forge-toolbar-padding:8px}#action-toolbar forge-button:not(:last-of-type){-webkit-margin-end:8px;margin-inline-end:8px}',r=class extends O{constructor(){super();b(this,R,S),this._foundation=new u(new l(this))}static get observedAttributes(){return[i.attributes.FULL_NAME,i.attributes.EMAIL,i.attributes.SIGN_OUT,i.attributes.PROFILE,i.attributes.SIGN_OUT_TEXT,i.attributes.PROFILE_TEXT,i.attributes.AVATAR_TEXT,i.attributes.AVATAR_ICON,i.attributes.AVATAR_IMAGE_URL,i.attributes.AVATAR_LETTER_COUNT]}connectedCallback(){this._foundation.initialize()}attributeChangedCallback(e,h,s){switch(e){case i.attributes.FULL_NAME:this.fullName=s;break;case i.attributes.EMAIL:this.email=s;break;case i.attributes.SIGN_OUT:this.signOut=f(s);break;case i.attributes.PROFILE:this.profile=f(s);break;case i.attributes.SIGN_OUT_TEXT:this.signOutText=s;break;case i.attributes.PROFILE_TEXT:this.profileText=s;break;case i.attributes.AVATAR_TEXT:this.avatarText=s;break;case i.attributes.AVATAR_ICON:this.avatarIcon=s;break;case i.attributes.AVATAR_IMAGE_URL:this.avatarImageUrl=s;break;case i.attributes.AVATAR_LETTER_COUNT:this.avatarLetterCount=m(s);break}}focus(e){this._foundation.focus(e)}};a([o()],r.prototype,"fullName",2),a([o()],r.prototype,"email",2),a([o()],r.prototype,"signOut",2),a([o()],r.prototype,"profile",2),a([o()],r.prototype,"signOutText",2),a([o()],r.prototype,"profileText",2),a([o()],r.prototype,"avatarText",2),a([o()],r.prototype,"avatarIcon",2),a([o()],r.prototype,"avatarImageUrl",2),a([o()],r.prototype,"avatarLetterCount",2),r=a([T({name:i.elementName,dependencies:[N,y,I,B]})],r);function st(){v(r)}export{i as a,l as b,u as c,r as d,st as e};
7
+ //# sourceMappingURL=chunk.TLFCQSJN.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/profile-card/profile-card-constants.ts", "../../src/profile-card/profile-card-adapter.ts", "../../src/profile-card/profile-card-foundation.ts", "../../src/profile-card/profile-card.ts", "../../src/profile-card/index.ts"],
4
+ "sourcesContent": ["import { COMPONENT_NAME_PREFIX } from '../constants';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}profile-card`;\n\nconst attributes = {\n FULL_NAME: 'full-name',\n EMAIL: 'email',\n SIGN_OUT: 'sign-out',\n PROFILE: 'profile',\n SIGN_OUT_TEXT: 'sign-out-text',\n PROFILE_TEXT: 'profile-text',\n AVATAR_TEXT: 'avatar-text',\n AVATAR_ICON: 'avatar-icon',\n AVATAR_IMAGE_URL: 'avatar-image-url',\n AVATAR_LETTER_COUNT: 'avatar-letter-count'\n};\n\nconst selectors = {\n FULL_NAME: '.full-name',\n EMAIL: '.email',\n AVATAR: '.avatar > forge-avatar',\n ACTION_TOOLBAR: '#action-toolbar',\n PROFILE_BUTTON: '#profile-button',\n SIGN_OUT_BUTTON: '#sign-out-button'\n};\n\nconst defaults = {\n SHOW_SIGN_OUT_BUTTON: true,\n SHOW_PROFILE_BUTTON: false,\n SIGN_OUT_BUTTON_TEXT: 'Sign out',\n PROFILE_BUTTON_TEXT: 'Profile'\n};\n\nconst events = {\n SIGN_OUT: `${elementName}-sign-out`,\n PROFILE: `${elementName}-profile`\n};\n\nexport const PROFILE_CARD_CONSTANTS = {\n elementName,\n attributes,\n selectors,\n defaults,\n events\n};\n", "import { getShadowElement, removeAllChildren } from '@tylertech/forge-core';\nimport { ExperimentalFocusOptions } from '../constants';\nimport { IAvatarComponent } from '../avatar';\nimport { IButtonComponent } from '../button';\nimport { BaseAdapter, IBaseAdapter } from '../core/base/base-adapter';\nimport { IconComponentDelegate } from '../icon';\nimport { IToolbarComponent } from '../toolbar';\nimport { IProfileCardComponent } from './profile-card';\nimport { PROFILE_CARD_CONSTANTS } from './profile-card-constants';\n\nexport interface IProfileCardAdapter extends IBaseAdapter {\n setFullName(value: string): void;\n setEmail(value: string): void;\n setAvatarText(value: string): void;\n setAvatarIcon(value: string): void;\n setAvatarImageUrl(value: string): void;\n setAvatarLetterCount(count: number): void;\n setActionToolbarVisibility(isVisible: boolean): void;\n setProfileButtonVisibility(isVisible: boolean): void;\n setSignOutButtonVisibility(isVisible: boolean): void;\n setSignOutButtonText(value: string): void;\n setProfileButtonText(value: string): void;\n setProfileButtonListener(listener: (evt: Event) => void): void;\n setSignOutButtonListener(listener: (evt: Event) => void): void;\n requestProfileButtonFocus(options?: ExperimentalFocusOptions): void;\n requestSignOutButtonFocus(options?: ExperimentalFocusOptions): void;\n}\n\nexport class ProfileCardAdapter extends BaseAdapter<IProfileCardComponent> implements IProfileCardAdapter {\n private _fullNameElement: HTMLElement;\n private _emailElement: HTMLElement;\n private _avatarElement: IAvatarComponent;\n private _actionToolbar: IToolbarComponent;\n private _profileButton: IButtonComponent;\n private _signOutButton: IButtonComponent;\n\n constructor(component: IProfileCardComponent) {\n super(component);\n this._fullNameElement = getShadowElement(component, PROFILE_CARD_CONSTANTS.selectors.FULL_NAME);\n this._emailElement = getShadowElement(component, PROFILE_CARD_CONSTANTS.selectors.EMAIL);\n this._avatarElement = getShadowElement(component, PROFILE_CARD_CONSTANTS.selectors.AVATAR) as IAvatarComponent;\n this._actionToolbar = getShadowElement(component, PROFILE_CARD_CONSTANTS.selectors.ACTION_TOOLBAR) as IToolbarComponent;\n this._profileButton = getShadowElement(component, PROFILE_CARD_CONSTANTS.selectors.PROFILE_BUTTON) as IButtonComponent;\n this._signOutButton = getShadowElement(component, PROFILE_CARD_CONSTANTS.selectors.SIGN_OUT_BUTTON) as IButtonComponent;\n }\n\n public setFullName(value: string): void {\n this._fullNameElement.textContent = value;\n }\n\n public setEmail(value: string): void {\n this._emailElement.textContent = value;\n }\n\n public setAvatarText(value: string): void {\n removeAllChildren(this._avatarElement);\n this._avatarElement.text = value;\n }\n\n public setAvatarIcon(value: string): void {\n if (value) {\n const iconDelegate = new IconComponentDelegate({ props: { name: value }});\n this._avatarElement.replaceChildren(iconDelegate.element);\n } else {\n removeAllChildren(this._avatarElement);\n }\n }\n\n public setAvatarImageUrl(value: string): void {\n this._avatarElement.imageUrl = value;\n }\n\n public setAvatarLetterCount(count: number): void {\n this._avatarElement.letterCount = count;\n }\n\n public setActionToolbarVisibility(isVisible: boolean): void {\n if (isVisible) {\n this._actionToolbar.style.removeProperty('display');\n } else {\n this._actionToolbar.style.display = 'none';\n }\n }\n\n public setProfileButtonVisibility(isVisible: boolean): void {\n if (isVisible) {\n this._profileButton.style.removeProperty('display');\n } else {\n this._profileButton.style.display = 'none';\n }\n }\n\n public setSignOutButtonVisibility(isVisible: boolean): void {\n if (isVisible) {\n this._signOutButton.style.removeProperty('display');\n } else {\n this._signOutButton.style.display = 'none';\n }\n }\n\n public setSignOutButtonText(value: string): void {\n this._signOutButton.textContent = value;\n }\n \n public setProfileButtonText(value: string): void {\n this._profileButton.textContent = value;\n }\n\n public setProfileButtonListener(listener: (evt: Event) => void): void {\n this._profileButton.addEventListener('click', listener);\n }\n\n public setSignOutButtonListener(listener: (evt: Event) => void): void {\n this._signOutButton.addEventListener('click', listener);\n }\n\n public requestProfileButtonFocus(options?: ExperimentalFocusOptions): void {\n window.requestAnimationFrame(() => this._profileButton.focus(options));\n }\n\n public requestSignOutButtonFocus(options?: ExperimentalFocusOptions): void {\n window.requestAnimationFrame(() => this._signOutButton.focus(options));\n }\n}\n", "import { ICustomElementFoundation } from '@tylertech/forge-core';\nimport { IProfileCardAdapter } from './profile-card-adapter';\nimport { PROFILE_CARD_CONSTANTS } from './profile-card-constants';\n\nexport interface IProfileCardFoundation extends ICustomElementFoundation {\n fullName: string;\n email: string;\n signOut: boolean;\n profile: boolean;\n signOutText: string;\n profileText: string;\n avatarText: string;\n avatarIcon: string;\n avatarImageUrl: string;\n avatarLetterCount: number;\n focus(options?: FocusOptions): void;\n}\n\nexport class ProfileCardFoundation implements IProfileCardFoundation {\n private _fullName: string;\n private _email: string;\n private _avatarText: string;\n private _avatarIcon: string;\n private _avatarImageUrl: string;\n private _avatarLetterCount: number;\n private _showSignOutButton = PROFILE_CARD_CONSTANTS.defaults.SHOW_SIGN_OUT_BUTTON;\n private _showProfileButton = PROFILE_CARD_CONSTANTS.defaults.SHOW_PROFILE_BUTTON;\n private _signOutButtonText = PROFILE_CARD_CONSTANTS.defaults.SIGN_OUT_BUTTON_TEXT;\n private _profileButtonText = PROFILE_CARD_CONSTANTS.defaults.PROFILE_BUTTON_TEXT;\n\n private _profileListener: (evt: Event) => void;\n private _signOutListener: (evt: Event) => void;\n\n constructor(private _adapter: IProfileCardAdapter) {\n this._profileListener = evt => this._onProfileButtonClick(evt);\n this._signOutListener = evt => this._onSignOutButtonClick(evt);\n }\n\n public initialize(): void {\n this._adapter.setProfileButtonListener(this._profileListener);\n this._adapter.setSignOutButtonListener(this._signOutListener);\n }\n\n public focus(options?: FocusOptions): void {\n if (this._showSignOutButton) {\n this._adapter.requestSignOutButtonFocus({ ...options, focusVisible: true } );\n } else if (this._showProfileButton) {\n this._adapter.requestProfileButtonFocus({ ...options, focusVisible: true } );\n }\n }\n\n private _setActionVisibility(): void {\n const showActionToolbar = this._showSignOutButton || this._showProfileButton;\n this._adapter.setActionToolbarVisibility(showActionToolbar);\n this._adapter.setSignOutButtonVisibility(this._showSignOutButton);\n this._adapter.setProfileButtonVisibility(this._showProfileButton);\n }\n\n private _onProfileButtonClick(evt: Event): void {\n evt.stopPropagation();\n this._adapter.emitHostEvent(PROFILE_CARD_CONSTANTS.events.PROFILE);\n }\n\n private _onSignOutButtonClick(evt: Event): void {\n evt.stopPropagation();\n this._adapter.emitHostEvent(PROFILE_CARD_CONSTANTS.events.SIGN_OUT);\n }\n\n public get fullName(): string {\n return this._fullName;\n }\n public set fullName(value: string) {\n if (this._fullName !== value) {\n this._fullName = value ?? '';\n this._adapter.setFullName(this._fullName);\n if (!this._avatarText) {\n this._adapter.setAvatarText(this._fullName);\n }\n this._adapter.toggleHostAttribute(PROFILE_CARD_CONSTANTS.attributes.FULL_NAME, !!this._fullName, this._fullName);\n }\n }\n\n public get email(): string {\n return this._email;\n }\n public set email(value: string) {\n if (this._email !== value) {\n this._email = value ?? '';\n this._adapter.setEmail(this._email);\n this._adapter.toggleHostAttribute(PROFILE_CARD_CONSTANTS.attributes.EMAIL, !!this._email, this._email);\n }\n }\n\n public get avatarText(): string {\n return this._avatarText;\n }\n public set avatarText(value: string) {\n if (this._avatarText !== value) {\n this._avatarText = value ?? '';\n this._adapter.setAvatarText(this._avatarText);\n this._adapter.toggleHostAttribute(PROFILE_CARD_CONSTANTS.attributes.AVATAR_TEXT, !!this._avatarText, this._avatarText);\n }\n }\n\n public get avatarIcon(): string {\n return this._avatarIcon;\n }\n public set avatarIcon(value: string) {\n if (this._avatarIcon !== value) {\n this._avatarIcon = value ?? '';\n this._adapter.setAvatarIcon(this._avatarIcon);\n this._adapter.toggleHostAttribute(PROFILE_CARD_CONSTANTS.attributes.AVATAR_ICON, !!this._avatarIcon, this._avatarIcon);\n }\n }\n\n public get avatarImageUrl(): string {\n return this._avatarImageUrl;\n }\n public set avatarImageUrl(value: string) {\n if (this._avatarImageUrl !== value) {\n this._avatarImageUrl = value;\n this._adapter.setAvatarImageUrl(this._avatarImageUrl);\n this._adapter.toggleHostAttribute(PROFILE_CARD_CONSTANTS.attributes.AVATAR_IMAGE_URL, !!this._avatarImageUrl, this._avatarImageUrl);\n }\n }\n\n public get avatarLetterCount(): number {\n return this._avatarLetterCount;\n }\n public set avatarLetterCount(value: number) {\n if (this._avatarLetterCount !== value) {\n this._avatarLetterCount = value;\n this._adapter.setAvatarLetterCount(this._avatarLetterCount);\n this._adapter.toggleHostAttribute(PROFILE_CARD_CONSTANTS.attributes.AVATAR_LETTER_COUNT, !!this._avatarLetterCount, `${this._avatarLetterCount}`);\n }\n }\n\n public get signOut(): boolean {\n return this._showSignOutButton;\n }\n public set signOut(value: boolean) {\n value = Boolean(value);\n if (this._showSignOutButton !== value) {\n this._showSignOutButton = value;\n this._setActionVisibility();\n this._adapter.toggleHostAttribute(PROFILE_CARD_CONSTANTS.attributes.SIGN_OUT, this._showSignOutButton);\n }\n }\n\n public get profile(): boolean {\n return this._showProfileButton;\n }\n public set profile(value: boolean) {\n value = Boolean(value);\n if (this._showProfileButton !== value) {\n this._showProfileButton = value;\n this._setActionVisibility();\n this._adapter.toggleHostAttribute(PROFILE_CARD_CONSTANTS.attributes.PROFILE, this._showProfileButton);\n }\n }\n\n public get signOutText(): string {\n return this._signOutButtonText;\n }\n public set signOutText(value: string) {\n if (this._signOutButtonText !== value) {\n this._signOutButtonText = value || PROFILE_CARD_CONSTANTS.defaults.SIGN_OUT_BUTTON_TEXT;\n this._adapter.setSignOutButtonText(this._signOutButtonText);\n\n const hasSignOutTextAttr = this._signOutButtonText !== PROFILE_CARD_CONSTANTS.defaults.SIGN_OUT_BUTTON_TEXT;\n this._adapter.toggleHostAttribute(PROFILE_CARD_CONSTANTS.attributes.SIGN_OUT_TEXT, hasSignOutTextAttr, this._signOutButtonText);\n }\n }\n\n public get profileText(): string {\n return this._profileButtonText;\n }\n public set profileText(value: string) {\n if (this._profileButtonText !== value) {\n this._profileButtonText = value || PROFILE_CARD_CONSTANTS.defaults.PROFILE_BUTTON_TEXT;\n this._adapter.setProfileButtonText(this._profileButtonText);\n\n const hasProfileAttr = value !== PROFILE_CARD_CONSTANTS.defaults.PROFILE_BUTTON_TEXT;\n this._adapter.toggleHostAttribute(PROFILE_CARD_CONSTANTS.attributes.PROFILE_TEXT, hasProfileAttr, this._profileButtonText);\n }\n }\n}\n", "import { CustomElement, attachShadowTemplate, coerceBoolean, coerceNumber, FoundationProperty } from '@tylertech/forge-core';\nimport { ProfileCardAdapter } from './profile-card-adapter';\nimport { ProfileCardFoundation } from './profile-card-foundation';\nimport { PROFILE_CARD_CONSTANTS } from './profile-card-constants';\nimport { ButtonComponent } from '../button';\nimport { AvatarComponent } from '../avatar';\nimport { IconComponent } from '../icon/icon';\nimport { ToolbarComponent } from '../toolbar';\nimport { BaseComponent, IBaseComponent } from '../core/base/base-component';\n\nconst template = '<template><div class=\\\"forge-profile-card\\\" part=\\\"root\\\"><div class=\\\"info-container\\\"><div class=\\\"avatar\\\"><forge-avatar part=\\\"avatar\\\"></forge-avatar></div><div class=\\\"info-text\\\"><div class=\\\"full-name\\\" part=\\\"name\\\"></div><div class=\\\"email\\\" part=\\\"email\\\"></div></div></div><slot></slot><forge-toolbar inverted id=\\\"action-toolbar\\\"><forge-button variant=\\\"outlined\\\" slot=\\\"end\\\" style=\\\"display: none;\\\" part=\\\"profile-button\\\" id=\\\"profile-button\\\">Profile</forge-button><forge-button slot=\\\"end\\\" part=\\\"sign-out-button\\\" id=\\\"sign-out-button\\\">Sign out</forge-button></forge-toolbar></div></template>';\nconst styles = ':host{display:block}:host([hidden]){display:none}.forge-profile-card{--_profile-card-min-width:var(--forge-profile-card-min-width, 360px);--_profile-card-shape:var(--forge-profile-card-border-radius, var(--forge-shape-medium, 4px));--_profile-card-avatar-size:var(--forge-profile-card-avatar-size, 56px)}.forge-profile-card{min-width:var(--_profile-card-min-width);border-radius:var(--_profile-card-shape)}@media (max-width:399px){.forge-profile-card{width:100vw;min-width:unset;overflow:auto}}.forge-profile-card .info-container{display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;padding-block:var(--forge-spacing-xsmall,8px);padding-inline:var(--forge-spacing-medium,16px)}.forge-profile-card .avatar{display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;padding:var(--forge-spacing-xsmall,8px);-webkit-margin-end:var(--forge-spacing-medium,16px);margin-inline-end:var(--forge-spacing-medium,16px);--forge-avatar-size:var(--_profile-card-avatar-size)}.forge-profile-card .text{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column}.forge-profile-card .full-name{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:var(--forge-typography-heading2-font-family, var(--forge-typography-font-family, \\\"Roboto\\\", sans-serif));font-size:var(--forge-typography-heading2-font-size, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-heading2-font-size-scale, 1)));font-weight:var(--forge-typography-heading2-font-weight,500);line-height:var(--forge-typography-heading2-line-height, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-heading2-line-height-scale, 1.25)));letter-spacing:var(--forge-typography-heading2-letter-spacing, .0125em);text-transform:var(--forge-typography-heading2-text-transform,inherit);-webkit-text-decoration:var(--forge-typography-heading2-text-decoration,inherit);text-decoration:var(--forge-typography-heading2-text-decoration,inherit)}.forge-profile-card .email{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:var(--forge-typography-subheading1-font-family, var(--forge-typography-font-family, \\\"Roboto\\\", sans-serif));font-size:var(--forge-typography-subheading1-font-size, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-subheading1-font-size-scale, .875)));font-weight:var(--forge-typography-subheading1-font-weight,400);line-height:var(--forge-typography-subheading1-line-height, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-subheading1-line-height-scale, 1.125)));letter-spacing:var(--forge-typography-subheading1-letter-spacing, normal);text-transform:var(--forge-typography-subheading1-text-transform,inherit);-webkit-text-decoration:var(--forge-typography-subheading1-text-decoration,inherit);text-decoration:var(--forge-typography-subheading1-text-decoration,inherit);color:var(--forge-theme-text-medium,rgba(0,0,0,.54))}#action-toolbar{--forge-toolbar-padding:8px}#action-toolbar forge-button:not(:last-of-type){-webkit-margin-end:8px;margin-inline-end:8px}';\n\nexport interface IProfileCardComponent extends IBaseComponent {\n fullName: string;\n email: string;\n signOut: boolean;\n profile: boolean;\n signOutText: string;\n profileText: string;\n avatarText: string;\n avatarIcon: string;\n avatarImageUrl: string;\n avatarLetterCount: number;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'forge-profile-card': IProfileCardComponent;\n }\n\n interface HTMLElementEventMap {\n 'forge-profile-card-sign-out': CustomEvent<void>;\n 'forge-profile-card-profile': CustomEvent<void>;\n }\n}\n\n/**\n * @tag forge-profile-card\n */\n@CustomElement({\n name: PROFILE_CARD_CONSTANTS.elementName,\n dependencies: [\n ToolbarComponent,\n ButtonComponent,\n IconComponent,\n AvatarComponent\n ]\n})\nexport class ProfileCardComponent extends BaseComponent implements IProfileCardComponent {\n public static get observedAttributes(): string[] {\n return [\n PROFILE_CARD_CONSTANTS.attributes.FULL_NAME,\n PROFILE_CARD_CONSTANTS.attributes.EMAIL,\n PROFILE_CARD_CONSTANTS.attributes.SIGN_OUT,\n PROFILE_CARD_CONSTANTS.attributes.PROFILE,\n PROFILE_CARD_CONSTANTS.attributes.SIGN_OUT_TEXT,\n PROFILE_CARD_CONSTANTS.attributes.PROFILE_TEXT,\n PROFILE_CARD_CONSTANTS.attributes.AVATAR_TEXT,\n PROFILE_CARD_CONSTANTS.attributes.AVATAR_ICON,\n PROFILE_CARD_CONSTANTS.attributes.AVATAR_IMAGE_URL,\n PROFILE_CARD_CONSTANTS.attributes.AVATAR_LETTER_COUNT\n ];\n }\n\n private _foundation: ProfileCardFoundation;\n\n constructor() {\n super();\n attachShadowTemplate(this, template, styles);\n this._foundation = new ProfileCardFoundation(new ProfileCardAdapter(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 PROFILE_CARD_CONSTANTS.attributes.FULL_NAME:\n this.fullName = newValue;\n break;\n case PROFILE_CARD_CONSTANTS.attributes.EMAIL:\n this.email = newValue;\n break;\n case PROFILE_CARD_CONSTANTS.attributes.SIGN_OUT:\n this.signOut = coerceBoolean(newValue);\n break;\n case PROFILE_CARD_CONSTANTS.attributes.PROFILE:\n this.profile = coerceBoolean(newValue);\n break;\n case PROFILE_CARD_CONSTANTS.attributes.SIGN_OUT_TEXT:\n this.signOutText = newValue;\n break;\n case PROFILE_CARD_CONSTANTS.attributes.PROFILE_TEXT:\n this.profileText = newValue;\n break;\n case PROFILE_CARD_CONSTANTS.attributes.AVATAR_TEXT:\n this.avatarText = newValue;\n break;\n case PROFILE_CARD_CONSTANTS.attributes.AVATAR_ICON:\n this.avatarIcon = newValue;\n break;\n case PROFILE_CARD_CONSTANTS.attributes.AVATAR_IMAGE_URL:\n this.avatarImageUrl = newValue;\n break;\n case PROFILE_CARD_CONSTANTS.attributes.AVATAR_LETTER_COUNT:\n this.avatarLetterCount = coerceNumber(newValue);\n break;\n }\n }\n\n @FoundationProperty()\n public declare fullName: string;\n\n @FoundationProperty()\n public declare email: string;\n\n @FoundationProperty()\n public declare signOut: boolean;\n\n @FoundationProperty()\n public declare profile: boolean;\n\n @FoundationProperty()\n public declare signOutText: string;\n\n @FoundationProperty()\n public declare profileText: string;\n\n @FoundationProperty()\n public declare avatarText: string;\n\n @FoundationProperty()\n public declare avatarIcon: string;\n\n @FoundationProperty()\n public declare avatarImageUrl: string;\n\n @FoundationProperty()\n public declare avatarLetterCount: number;\n\n public override focus(options?: FocusOptions): void {\n this._foundation.focus(options);\n }\n}\n", "import { defineCustomElement } from '@tylertech/forge-core';\n\nimport { ProfileCardComponent } from './profile-card';\n\nexport * from './profile-card-adapter';\nexport * from './profile-card-constants';\nexport * from './profile-card-foundation';\nexport * from './profile-card';\n\nexport function defineProfileCardComponent(): void {\n defineCustomElement(ProfileCardComponent);\n}\n"],
5
+ "mappings": "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",
6
+ "names": ["elementName", "COMPONENT_NAME_PREFIX", "attributes", "selectors", "defaults", "events", "PROFILE_CARD_CONSTANTS", "ProfileCardAdapter", "BaseAdapter", "component", "getShadowElement", "PROFILE_CARD_CONSTANTS", "value", "removeAllChildren", "iconDelegate", "IconComponentDelegate", "count", "isVisible", "listener", "options", "ProfileCardFoundation", "_adapter", "PROFILE_CARD_CONSTANTS", "evt", "options", "__spreadProps", "__spreadValues", "showActionToolbar", "value", "hasSignOutTextAttr", "hasProfileAttr", "template", "styles", "ProfileCardComponent", "BaseComponent", "attachShadowTemplate", "ProfileCardFoundation", "ProfileCardAdapter", "PROFILE_CARD_CONSTANTS", "name", "oldValue", "newValue", "coerceBoolean", "coerceNumber", "options", "__decorateClass", "FoundationProperty", "CustomElement", "ToolbarComponent", "ButtonComponent", "IconComponent", "AvatarComponent", "defineProfileCardComponent", "defineCustomElement", "ProfileCardComponent"]
7
+ }
@@ -3,7 +3,7 @@
3
3
  * Copyright 2023 Tyler Technologies, Inc.
4
4
  * License: Apache-2.0
5
5
  */
6
- import{a as S}from"./chunk.NVUMRW44.js";import{a as B,b as j}from"./chunk.36F2GVWS.js";import{a as P,k as G}from"./chunk.JAWV5Y5T.js";import{f as L,g as I}from"./chunk.K7FPXAFS.js";import{k as U}from"./chunk.J2M2MXP2.js";import{d as m}from"./chunk.M3QDAYD2.js";var N=`${j}ripple`,Q={SURFACE:"mdc-ripple-surface"},Y={TARGET:"target",UNBOUNDED:"unbounded"},c={elementName:N,classes:Q,attributes:Y};var y;function z(i,r){r===void 0&&(r=!1);var t=i.CSS,e=y;if(typeof y=="boolean"&&!r)return y;var n=t&&typeof t.supports=="function";if(!n)return!1;var a=t.supports("--css-vars","yes"),o=t.supports("(--css-vars: yes)")&&t.supports("color","#00000000");return e=a||o,r||(y=e),e}function E(i,r,t){if(!i)return{x:0,y:0};var e=r.x,n=r.y,a=e+t.left,o=n+t.top,s,u;if(i.type==="touchstart"){var v=i;s=v.changedTouches[0].pageX-a,u=v.changedTouches[0].pageY-o}else{var p=i;s=p.pageX-a,u=p.pageY-o}return{x:s,y:u}}var R=function(i,r){return R=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n])},R(i,r)};function g(i,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");R(i,r);function t(){this.constructor=i}i.prototype=r===null?Object.create(r):(t.prototype=r.prototype,new t)}var l=function(){return l=Object.assign||function(r){for(var t,e=1,n=arguments.length;e<n;e++){t=arguments[e];for(var a in t)Object.prototype.hasOwnProperty.call(t,a)&&(r[a]=t[a])}return r},l.apply(this,arguments)};function f(i){var r=typeof Symbol=="function"&&Symbol.iterator,t=r&&i[r],e=0;if(t)return t.call(i);if(i&&typeof i.length=="number")return{next:function(){return i&&e>=i.length&&(i=void 0),{value:i&&i[e++],done:!i}}};throw new TypeError(r?"Object is not iterable.":"Symbol.iterator is not defined.")}function T(i,r){var t=typeof Symbol=="function"&&i[Symbol.iterator];if(!t)return i;var e=t.call(i),n,a=[],o;try{for(;(r===void 0||r-- >0)&&!(n=e.next()).done;)a.push(n.value)}catch(s){o={error:s}}finally{try{n&&!n.done&&(t=e.return)&&t.call(e)}finally{if(o)throw o.error}}return a}function X(i,r,t){if(t||arguments.length===2)for(var e=0,n=r.length,a;e<n;e++)(a||!(e in r))&&(a||(a=Array.prototype.slice.call(r,0,e)),a[e]=r[e]);return i.concat(a||Array.prototype.slice.call(r))}var b=function(){function i(r){r===void 0&&(r={}),this.adapter=r}return Object.defineProperty(i,"cssClasses",{get:function(){return{}},enumerable:!1,configurable:!0}),Object.defineProperty(i,"strings",{get:function(){return{}},enumerable:!1,configurable:!0}),Object.defineProperty(i,"numbers",{get:function(){return{}},enumerable:!1,configurable:!0}),Object.defineProperty(i,"defaultAdapter",{get:function(){return{}},enumerable:!1,configurable:!0}),i.prototype.init=function(){},i.prototype.destroy=function(){},i}();var q=function(){function i(r,t){for(var e=[],n=2;n<arguments.length;n++)e[n-2]=arguments[n];this.root=r,this.initialize.apply(this,X([],T(e))),this.foundation=t===void 0?this.getDefaultFoundation():t,this.foundation.init(),this.initialSyncWithDOM()}return i.attachTo=function(r){return new i(r,new b({}))},i.prototype.initialize=function(){for(var r=[],t=0;t<arguments.length;t++)r[t]=arguments[t]},i.prototype.getDefaultFoundation=function(){throw new Error("Subclasses must override getDefaultFoundation to return a properly configured foundation class")},i.prototype.initialSyncWithDOM=function(){},i.prototype.destroy=function(){this.foundation.destroy()},i.prototype.listen=function(r,t,e){this.root.addEventListener(r,t,e)},i.prototype.unlisten=function(r,t,e){this.root.removeEventListener(r,t,e)},i.prototype.emit=function(r,t,e){e===void 0&&(e=!1);var n;typeof CustomEvent=="function"?n=new CustomEvent(r,{bubbles:e,detail:t}):(n=document.createEvent("CustomEvent"),n.initCustomEvent(r,e,!1,t)),this.root.dispatchEvent(n)},i}();function h(i){return i===void 0&&(i=window),et(i)?{passive:!0}:!1}function et(i){i===void 0&&(i=window);var r=!1;try{var t={get passive(){return r=!0,!1}},e=function(){};i.document.addEventListener("test",e,t),i.document.removeEventListener("test",e,t)}catch(n){r=!1}return r}function W(i,r){var t=i.matches||i.webkitMatchesSelector||i.msMatchesSelector;return t.call(i,r)}var k={BG_FOCUSED:"mdc-ripple-upgraded--background-focused",FG_ACTIVATION:"mdc-ripple-upgraded--foreground-activation",FG_DEACTIVATION:"mdc-ripple-upgraded--foreground-deactivation",ROOT:"mdc-ripple-upgraded",UNBOUNDED:"mdc-ripple-upgraded--unbounded"},V={VAR_FG_SCALE:"--mdc-ripple-fg-scale",VAR_FG_SIZE:"--mdc-ripple-fg-size",VAR_FG_TRANSLATE_END:"--mdc-ripple-fg-translate-end",VAR_FG_TRANSLATE_START:"--mdc-ripple-fg-translate-start",VAR_LEFT:"--mdc-ripple-left",VAR_TOP:"--mdc-ripple-top"},D={DEACTIVATION_TIMEOUT_MS:225,FG_DEACTIVATION_MS:150,INITIAL_ORIGIN_SCALE:.6,PADDING:10,TAP_DELAY_MS:300};var Z=["touchstart","pointerdown","mousedown","keydown"],K=["touchend","pointerup","mouseup","contextmenu"],w=[],_=function(i){g(r,i);function r(t){var e=i.call(this,l(l({},r.defaultAdapter),t))||this;return e.activationAnimationHasEnded=!1,e.activationTimer=0,e.fgDeactivationRemovalTimer=0,e.fgScale="0",e.frame={width:0,height:0},e.initialSize=0,e.layoutFrame=0,e.maxRadius=0,e.unboundedCoords={left:0,top:0},e.activationState=e.defaultActivationState(),e.activationTimerCallback=function(){e.activationAnimationHasEnded=!0,e.runDeactivationUXLogicIfReady()},e.activateHandler=function(n){e.activateImpl(n)},e.deactivateHandler=function(){e.deactivateImpl()},e.focusHandler=function(){e.handleFocus()},e.blurHandler=function(){e.handleBlur()},e.resizeHandler=function(){e.layout()},e}return Object.defineProperty(r,"cssClasses",{get:function(){return k},enumerable:!1,configurable:!0}),Object.defineProperty(r,"strings",{get:function(){return V},enumerable:!1,configurable:!0}),Object.defineProperty(r,"numbers",{get:function(){return D},enumerable:!1,configurable:!0}),Object.defineProperty(r,"defaultAdapter",{get:function(){return{addClass:function(){},browserSupportsCssVars:function(){return!0},computeBoundingRect:function(){return{top:0,right:0,bottom:0,left:0,width:0,height:0}},containsEventTarget:function(){return!0},deregisterDocumentInteractionHandler:function(){},deregisterInteractionHandler:function(){},deregisterResizeHandler:function(){},getWindowPageOffset:function(){return{x:0,y:0}},isSurfaceActive:function(){return!0},isSurfaceDisabled:function(){return!0},isUnbounded:function(){return!0},registerDocumentInteractionHandler:function(){},registerInteractionHandler:function(){},registerResizeHandler:function(){},removeClass:function(){},updateCssVariable:function(){}}},enumerable:!1,configurable:!0}),r.prototype.init=function(){var t=this,e=this.supportsPressRipple();if(this.registerRootHandlers(e),e){var n=r.cssClasses,a=n.ROOT,o=n.UNBOUNDED;requestAnimationFrame(function(){t.adapter.addClass(a),t.adapter.isUnbounded()&&(t.adapter.addClass(o),t.layoutInternal())})}},r.prototype.destroy=function(){var t=this;if(this.supportsPressRipple()){this.activationTimer&&(clearTimeout(this.activationTimer),this.activationTimer=0,this.adapter.removeClass(r.cssClasses.FG_ACTIVATION)),this.fgDeactivationRemovalTimer&&(clearTimeout(this.fgDeactivationRemovalTimer),this.fgDeactivationRemovalTimer=0,this.adapter.removeClass(r.cssClasses.FG_DEACTIVATION));var e=r.cssClasses,n=e.ROOT,a=e.UNBOUNDED;requestAnimationFrame(function(){t.adapter.removeClass(n),t.adapter.removeClass(a),t.removeCssVars()})}this.deregisterRootHandlers(),this.deregisterDeactivationHandlers()},r.prototype.activate=function(t){this.activateImpl(t)},r.prototype.deactivate=function(){this.deactivateImpl()},r.prototype.layout=function(){var t=this;this.layoutFrame&&cancelAnimationFrame(this.layoutFrame),this.layoutFrame=requestAnimationFrame(function(){t.layoutInternal(),t.layoutFrame=0})},r.prototype.setUnbounded=function(t){var e=r.cssClasses.UNBOUNDED;t?this.adapter.addClass(e):this.adapter.removeClass(e)},r.prototype.handleFocus=function(){var t=this;requestAnimationFrame(function(){return t.adapter.addClass(r.cssClasses.BG_FOCUSED)})},r.prototype.handleBlur=function(){var t=this;requestAnimationFrame(function(){return t.adapter.removeClass(r.cssClasses.BG_FOCUSED)})},r.prototype.supportsPressRipple=function(){return this.adapter.browserSupportsCssVars()},r.prototype.defaultActivationState=function(){return{activationEvent:void 0,hasDeactivationUXRun:!1,isActivated:!1,isProgrammatic:!1,wasActivatedByPointer:!1,wasElementMadeActive:!1}},r.prototype.registerRootHandlers=function(t){var e,n;if(t){try{for(var a=f(Z),o=a.next();!o.done;o=a.next()){var s=o.value;this.adapter.registerInteractionHandler(s,this.activateHandler)}}catch(u){e={error:u}}finally{try{o&&!o.done&&(n=a.return)&&n.call(a)}finally{if(e)throw e.error}}this.adapter.isUnbounded()&&this.adapter.registerResizeHandler(this.resizeHandler)}this.adapter.registerInteractionHandler("focus",this.focusHandler),this.adapter.registerInteractionHandler("blur",this.blurHandler)},r.prototype.registerDeactivationHandlers=function(t){var e,n;if(t.type==="keydown")this.adapter.registerInteractionHandler("keyup",this.deactivateHandler);else try{for(var a=f(K),o=a.next();!o.done;o=a.next()){var s=o.value;this.adapter.registerDocumentInteractionHandler(s,this.deactivateHandler)}}catch(u){e={error:u}}finally{try{o&&!o.done&&(n=a.return)&&n.call(a)}finally{if(e)throw e.error}}},r.prototype.deregisterRootHandlers=function(){var t,e;try{for(var n=f(Z),a=n.next();!a.done;a=n.next()){var o=a.value;this.adapter.deregisterInteractionHandler(o,this.activateHandler)}}catch(s){t={error:s}}finally{try{a&&!a.done&&(e=n.return)&&e.call(n)}finally{if(t)throw t.error}}this.adapter.deregisterInteractionHandler("focus",this.focusHandler),this.adapter.deregisterInteractionHandler("blur",this.blurHandler),this.adapter.isUnbounded()&&this.adapter.deregisterResizeHandler(this.resizeHandler)},r.prototype.deregisterDeactivationHandlers=function(){var t,e;this.adapter.deregisterInteractionHandler("keyup",this.deactivateHandler);try{for(var n=f(K),a=n.next();!a.done;a=n.next()){var o=a.value;this.adapter.deregisterDocumentInteractionHandler(o,this.deactivateHandler)}}catch(s){t={error:s}}finally{try{a&&!a.done&&(e=n.return)&&e.call(n)}finally{if(t)throw t.error}}},r.prototype.removeCssVars=function(){var t=this,e=r.strings,n=Object.keys(e);n.forEach(function(a){a.indexOf("VAR_")===0&&t.adapter.updateCssVariable(e[a],null)})},r.prototype.activateImpl=function(t){var e=this;if(!this.adapter.isSurfaceDisabled()){var n=this.activationState;if(!n.isActivated){var a=this.previousActivationEvent,o=a&&t!==void 0&&a.type!==t.type;if(!o){n.isActivated=!0,n.isProgrammatic=t===void 0,n.activationEvent=t,n.wasActivatedByPointer=n.isProgrammatic?!1:t!==void 0&&(t.type==="mousedown"||t.type==="touchstart"||t.type==="pointerdown");var s=t!==void 0&&w.length>0&&w.some(function(u){return e.adapter.containsEventTarget(u)});if(s){this.resetActivationState();return}t!==void 0&&(w.push(t.target),this.registerDeactivationHandlers(t)),n.wasElementMadeActive=this.checkElementMadeActive(t),n.wasElementMadeActive&&this.animateActivation(),requestAnimationFrame(function(){w=[],!n.wasElementMadeActive&&t!==void 0&&(t.key===" "||t.keyCode===32)&&(n.wasElementMadeActive=e.checkElementMadeActive(t),n.wasElementMadeActive&&e.animateActivation()),n.wasElementMadeActive||(e.activationState=e.defaultActivationState())})}}}},r.prototype.checkElementMadeActive=function(t){return t!==void 0&&t.type==="keydown"?this.adapter.isSurfaceActive():!0},r.prototype.animateActivation=function(){var t=this,e=r.strings,n=e.VAR_FG_TRANSLATE_START,a=e.VAR_FG_TRANSLATE_END,o=r.cssClasses,s=o.FG_DEACTIVATION,u=o.FG_ACTIVATION,v=r.numbers.DEACTIVATION_TIMEOUT_MS;this.layoutInternal();var p="",F="";if(!this.adapter.isUnbounded()){var M=this.getFgTranslationCoordinates(),H=M.startPoint,O=M.endPoint;p=H.x+"px, "+H.y+"px",F=O.x+"px, "+O.y+"px"}this.adapter.updateCssVariable(n,p),this.adapter.updateCssVariable(a,F),clearTimeout(this.activationTimer),clearTimeout(this.fgDeactivationRemovalTimer),this.rmBoundedActivationClasses(),this.adapter.removeClass(s),this.adapter.computeBoundingRect(),this.adapter.addClass(u),this.activationTimer=setTimeout(function(){t.activationTimerCallback()},v)},r.prototype.getFgTranslationCoordinates=function(){var t=this.activationState,e=t.activationEvent,n=t.wasActivatedByPointer,a;n?a=E(e,this.adapter.getWindowPageOffset(),this.adapter.computeBoundingRect()):a={x:this.frame.width/2,y:this.frame.height/2},a={x:a.x-this.initialSize/2,y:a.y-this.initialSize/2};var o={x:this.frame.width/2-this.initialSize/2,y:this.frame.height/2-this.initialSize/2};return{startPoint:a,endPoint:o}},r.prototype.runDeactivationUXLogicIfReady=function(){var t=this,e=r.cssClasses.FG_DEACTIVATION,n=this.activationState,a=n.hasDeactivationUXRun,o=n.isActivated,s=a||!o;s&&this.activationAnimationHasEnded&&(this.rmBoundedActivationClasses(),this.adapter.addClass(e),this.fgDeactivationRemovalTimer=setTimeout(function(){t.adapter.removeClass(e)},D.FG_DEACTIVATION_MS))},r.prototype.rmBoundedActivationClasses=function(){var t=r.cssClasses.FG_ACTIVATION;this.adapter.removeClass(t),this.activationAnimationHasEnded=!1,this.adapter.computeBoundingRect()},r.prototype.resetActivationState=function(){var t=this;this.previousActivationEvent=this.activationState.activationEvent,this.activationState=this.defaultActivationState(),setTimeout(function(){return t.previousActivationEvent=void 0},r.numbers.TAP_DELAY_MS)},r.prototype.deactivateImpl=function(){var t=this,e=this.activationState;if(e.isActivated){var n=l({},e);e.isProgrammatic?(requestAnimationFrame(function(){t.animateDeactivation(n)}),this.resetActivationState()):(this.deregisterDeactivationHandlers(),requestAnimationFrame(function(){t.activationState.hasDeactivationUXRun=!0,t.animateDeactivation(n),t.resetActivationState()}))}},r.prototype.animateDeactivation=function(t){var e=t.wasActivatedByPointer,n=t.wasElementMadeActive;(e||n)&&this.runDeactivationUXLogicIfReady()},r.prototype.layoutInternal=function(){var t=this;this.frame=this.adapter.computeBoundingRect();var e=Math.max(this.frame.height,this.frame.width),n=function(){var o=Math.sqrt(Math.pow(t.frame.width,2)+Math.pow(t.frame.height,2));return o+r.numbers.PADDING};this.maxRadius=this.adapter.isUnbounded()?e:n();var a=Math.floor(e*r.numbers.INITIAL_ORIGIN_SCALE);this.adapter.isUnbounded()&&a%2!==0?this.initialSize=a-1:this.initialSize=a,this.fgScale=""+this.maxRadius/this.initialSize,this.updateLayoutCssVars()},r.prototype.updateLayoutCssVars=function(){var t=r.strings,e=t.VAR_FG_SIZE,n=t.VAR_LEFT,a=t.VAR_TOP,o=t.VAR_FG_SCALE;this.adapter.updateCssVariable(e,this.initialSize+"px"),this.adapter.updateCssVariable(o,this.fgScale),this.adapter.isUnbounded()&&(this.unboundedCoords={left:Math.round(this.frame.width/2-this.initialSize/2),top:Math.round(this.frame.height/2-this.initialSize/2)},this.adapter.updateCssVariable(n,this.unboundedCoords.left+"px"),this.adapter.updateCssVariable(a,this.unboundedCoords.top+"px"))},r}(b);var $=function(i){g(r,i);function r(){var t=i!==null&&i.apply(this,arguments)||this;return t.disabled=!1,t}return r.attachTo=function(t,e){e===void 0&&(e={isUnbounded:void 0});var n=new r(t);return e.isUnbounded!==void 0&&(n.unbounded=e.isUnbounded),n},r.createAdapter=function(t){return{addClass:function(e){return t.root.classList.add(e)},browserSupportsCssVars:function(){return z(window)},computeBoundingRect:function(){return t.root.getBoundingClientRect()},containsEventTarget:function(e){return t.root.contains(e)},deregisterDocumentInteractionHandler:function(e,n){return document.documentElement.removeEventListener(e,n,h())},deregisterInteractionHandler:function(e,n){return t.root.removeEventListener(e,n,h())},deregisterResizeHandler:function(e){return window.removeEventListener("resize",e)},getWindowPageOffset:function(){return{x:window.pageXOffset,y:window.pageYOffset}},isSurfaceActive:function(){return W(t.root,":active")},isSurfaceDisabled:function(){return!!t.disabled},isUnbounded:function(){return!!t.unbounded},registerDocumentInteractionHandler:function(e,n){return document.documentElement.addEventListener(e,n,h())},registerInteractionHandler:function(e,n){return t.root.addEventListener(e,n,h())},registerResizeHandler:function(e){return window.addEventListener("resize",e)},removeClass:function(e){return t.root.classList.remove(e)},updateCssVariable:function(e,n){return t.root.style.setProperty(e,n)}}},Object.defineProperty(r.prototype,"unbounded",{get:function(){return!!this.isUnbounded},set:function(t){this.isUnbounded=!!t,this.setUnbounded()},enumerable:!1,configurable:!0}),r.prototype.activate=function(){this.foundation.activate()},r.prototype.deactivate=function(){this.foundation.deactivate()},r.prototype.layout=function(){this.foundation.layout()},r.prototype.getDefaultFoundation=function(){return new _(r.createAdapter(this))},r.prototype.initialSyncWithDOM=function(){var t=this.root;this.isUnbounded="mdcRippleIsUnbounded"in t.dataset},r.prototype.setUnbounded=function(){this.foundation.setUnbounded(!!this.isUnbounded)},r}(q);var C=class extends ${handleFocus(){this.foundation.handleFocus()}handleBlur(){this.foundation.handleBlur()}animate(){this.foundation.animateActivation()}},J=class extends _{};var A=class{constructor(r){this._component=r}_tryFindTarget(){return this._component.parentElement}initialize(r,t){r&&(this._target=(this._component.ownerDocument||document).querySelector(r)),this._target||(this._target=this._tryFindTarget()),this._target&&(this._ripple=new C(this._target),this._ripple.unbounded=t,L(c.classes.SURFACE,this._target))}destroy(){this._ripple&&(this._ripple.destroy(),this._ripple=void 0),this._target&&I(c.classes.SURFACE,this._target),this._target=void 0}activate(){var r;(r=this._ripple)==null||r.activate()}deactivate(){var r;(r=this._ripple)==null||r.deactivate()}};var x=class{constructor(r){this._adapter=r;this._unbounded=!1}initialize(){this._adapter.initialize(this._target,this._unbounded)}disconnect(){this._adapter.destroy()}layout(){this._applyTarget()}activate(){this._adapter.activate()}deactivate(){this._adapter.deactivate()}_applyTarget(){this._adapter.destroy(),this._adapter.initialize(this._target,this._unbounded)}get target(){return this._target}set target(r){this._target!==r&&(this._target=r,this._applyTarget())}get unbounded(){return this._unbounded}set unbounded(r){this._unbounded!==r&&(this._unbounded=r,this._applyTarget())}};var d=class extends G{constructor(){super();this._foundation=new x(new A(this))}static get observedAttributes(){return[c.attributes.TARGET,c.attributes.UNBOUNDED]}connectedCallback(){this._foundation.initialize()}disconnectedCallback(){this._foundation.disconnect()}attributeChangedCallback(t,e,n){switch(t){case c.attributes.TARGET:this.target=n;break;case c.attributes.UNBOUNDED:this.unbounded=U(n);break}}layout(){this._foundation.layout()}activate(){return this._foundation.activate()}deactivate(){return this._foundation.deactivate()}};m([S()],d.prototype,"target",2),m([S()],d.prototype,"unbounded",2),d=m([B({name:c.elementName})],d);function Et(){P(d)}export{c as a,C as b,J as c,A as d,x as e,d as f,Et as g};
6
+ import{a as S}from"./chunk.NVUMRW44.js";import{a as B,b as j}from"./chunk.IT66AOX7.js";import{a as P,k as G}from"./chunk.JAWV5Y5T.js";import{f as L,g as I}from"./chunk.K7FPXAFS.js";import{k as U}from"./chunk.J2M2MXP2.js";import{d as m}from"./chunk.M3QDAYD2.js";var N=`${j}ripple`,Q={SURFACE:"mdc-ripple-surface"},Y={TARGET:"target",UNBOUNDED:"unbounded"},c={elementName:N,classes:Q,attributes:Y};var y;function z(i,r){r===void 0&&(r=!1);var t=i.CSS,e=y;if(typeof y=="boolean"&&!r)return y;var n=t&&typeof t.supports=="function";if(!n)return!1;var a=t.supports("--css-vars","yes"),o=t.supports("(--css-vars: yes)")&&t.supports("color","#00000000");return e=a||o,r||(y=e),e}function E(i,r,t){if(!i)return{x:0,y:0};var e=r.x,n=r.y,a=e+t.left,o=n+t.top,s,u;if(i.type==="touchstart"){var v=i;s=v.changedTouches[0].pageX-a,u=v.changedTouches[0].pageY-o}else{var p=i;s=p.pageX-a,u=p.pageY-o}return{x:s,y:u}}var R=function(i,r){return R=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n])},R(i,r)};function g(i,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");R(i,r);function t(){this.constructor=i}i.prototype=r===null?Object.create(r):(t.prototype=r.prototype,new t)}var l=function(){return l=Object.assign||function(r){for(var t,e=1,n=arguments.length;e<n;e++){t=arguments[e];for(var a in t)Object.prototype.hasOwnProperty.call(t,a)&&(r[a]=t[a])}return r},l.apply(this,arguments)};function f(i){var r=typeof Symbol=="function"&&Symbol.iterator,t=r&&i[r],e=0;if(t)return t.call(i);if(i&&typeof i.length=="number")return{next:function(){return i&&e>=i.length&&(i=void 0),{value:i&&i[e++],done:!i}}};throw new TypeError(r?"Object is not iterable.":"Symbol.iterator is not defined.")}function T(i,r){var t=typeof Symbol=="function"&&i[Symbol.iterator];if(!t)return i;var e=t.call(i),n,a=[],o;try{for(;(r===void 0||r-- >0)&&!(n=e.next()).done;)a.push(n.value)}catch(s){o={error:s}}finally{try{n&&!n.done&&(t=e.return)&&t.call(e)}finally{if(o)throw o.error}}return a}function X(i,r,t){if(t||arguments.length===2)for(var e=0,n=r.length,a;e<n;e++)(a||!(e in r))&&(a||(a=Array.prototype.slice.call(r,0,e)),a[e]=r[e]);return i.concat(a||Array.prototype.slice.call(r))}var b=function(){function i(r){r===void 0&&(r={}),this.adapter=r}return Object.defineProperty(i,"cssClasses",{get:function(){return{}},enumerable:!1,configurable:!0}),Object.defineProperty(i,"strings",{get:function(){return{}},enumerable:!1,configurable:!0}),Object.defineProperty(i,"numbers",{get:function(){return{}},enumerable:!1,configurable:!0}),Object.defineProperty(i,"defaultAdapter",{get:function(){return{}},enumerable:!1,configurable:!0}),i.prototype.init=function(){},i.prototype.destroy=function(){},i}();var q=function(){function i(r,t){for(var e=[],n=2;n<arguments.length;n++)e[n-2]=arguments[n];this.root=r,this.initialize.apply(this,X([],T(e))),this.foundation=t===void 0?this.getDefaultFoundation():t,this.foundation.init(),this.initialSyncWithDOM()}return i.attachTo=function(r){return new i(r,new b({}))},i.prototype.initialize=function(){for(var r=[],t=0;t<arguments.length;t++)r[t]=arguments[t]},i.prototype.getDefaultFoundation=function(){throw new Error("Subclasses must override getDefaultFoundation to return a properly configured foundation class")},i.prototype.initialSyncWithDOM=function(){},i.prototype.destroy=function(){this.foundation.destroy()},i.prototype.listen=function(r,t,e){this.root.addEventListener(r,t,e)},i.prototype.unlisten=function(r,t,e){this.root.removeEventListener(r,t,e)},i.prototype.emit=function(r,t,e){e===void 0&&(e=!1);var n;typeof CustomEvent=="function"?n=new CustomEvent(r,{bubbles:e,detail:t}):(n=document.createEvent("CustomEvent"),n.initCustomEvent(r,e,!1,t)),this.root.dispatchEvent(n)},i}();function h(i){return i===void 0&&(i=window),et(i)?{passive:!0}:!1}function et(i){i===void 0&&(i=window);var r=!1;try{var t={get passive(){return r=!0,!1}},e=function(){};i.document.addEventListener("test",e,t),i.document.removeEventListener("test",e,t)}catch(n){r=!1}return r}function W(i,r){var t=i.matches||i.webkitMatchesSelector||i.msMatchesSelector;return t.call(i,r)}var k={BG_FOCUSED:"mdc-ripple-upgraded--background-focused",FG_ACTIVATION:"mdc-ripple-upgraded--foreground-activation",FG_DEACTIVATION:"mdc-ripple-upgraded--foreground-deactivation",ROOT:"mdc-ripple-upgraded",UNBOUNDED:"mdc-ripple-upgraded--unbounded"},V={VAR_FG_SCALE:"--mdc-ripple-fg-scale",VAR_FG_SIZE:"--mdc-ripple-fg-size",VAR_FG_TRANSLATE_END:"--mdc-ripple-fg-translate-end",VAR_FG_TRANSLATE_START:"--mdc-ripple-fg-translate-start",VAR_LEFT:"--mdc-ripple-left",VAR_TOP:"--mdc-ripple-top"},D={DEACTIVATION_TIMEOUT_MS:225,FG_DEACTIVATION_MS:150,INITIAL_ORIGIN_SCALE:.6,PADDING:10,TAP_DELAY_MS:300};var Z=["touchstart","pointerdown","mousedown","keydown"],K=["touchend","pointerup","mouseup","contextmenu"],w=[],_=function(i){g(r,i);function r(t){var e=i.call(this,l(l({},r.defaultAdapter),t))||this;return e.activationAnimationHasEnded=!1,e.activationTimer=0,e.fgDeactivationRemovalTimer=0,e.fgScale="0",e.frame={width:0,height:0},e.initialSize=0,e.layoutFrame=0,e.maxRadius=0,e.unboundedCoords={left:0,top:0},e.activationState=e.defaultActivationState(),e.activationTimerCallback=function(){e.activationAnimationHasEnded=!0,e.runDeactivationUXLogicIfReady()},e.activateHandler=function(n){e.activateImpl(n)},e.deactivateHandler=function(){e.deactivateImpl()},e.focusHandler=function(){e.handleFocus()},e.blurHandler=function(){e.handleBlur()},e.resizeHandler=function(){e.layout()},e}return Object.defineProperty(r,"cssClasses",{get:function(){return k},enumerable:!1,configurable:!0}),Object.defineProperty(r,"strings",{get:function(){return V},enumerable:!1,configurable:!0}),Object.defineProperty(r,"numbers",{get:function(){return D},enumerable:!1,configurable:!0}),Object.defineProperty(r,"defaultAdapter",{get:function(){return{addClass:function(){},browserSupportsCssVars:function(){return!0},computeBoundingRect:function(){return{top:0,right:0,bottom:0,left:0,width:0,height:0}},containsEventTarget:function(){return!0},deregisterDocumentInteractionHandler:function(){},deregisterInteractionHandler:function(){},deregisterResizeHandler:function(){},getWindowPageOffset:function(){return{x:0,y:0}},isSurfaceActive:function(){return!0},isSurfaceDisabled:function(){return!0},isUnbounded:function(){return!0},registerDocumentInteractionHandler:function(){},registerInteractionHandler:function(){},registerResizeHandler:function(){},removeClass:function(){},updateCssVariable:function(){}}},enumerable:!1,configurable:!0}),r.prototype.init=function(){var t=this,e=this.supportsPressRipple();if(this.registerRootHandlers(e),e){var n=r.cssClasses,a=n.ROOT,o=n.UNBOUNDED;requestAnimationFrame(function(){t.adapter.addClass(a),t.adapter.isUnbounded()&&(t.adapter.addClass(o),t.layoutInternal())})}},r.prototype.destroy=function(){var t=this;if(this.supportsPressRipple()){this.activationTimer&&(clearTimeout(this.activationTimer),this.activationTimer=0,this.adapter.removeClass(r.cssClasses.FG_ACTIVATION)),this.fgDeactivationRemovalTimer&&(clearTimeout(this.fgDeactivationRemovalTimer),this.fgDeactivationRemovalTimer=0,this.adapter.removeClass(r.cssClasses.FG_DEACTIVATION));var e=r.cssClasses,n=e.ROOT,a=e.UNBOUNDED;requestAnimationFrame(function(){t.adapter.removeClass(n),t.adapter.removeClass(a),t.removeCssVars()})}this.deregisterRootHandlers(),this.deregisterDeactivationHandlers()},r.prototype.activate=function(t){this.activateImpl(t)},r.prototype.deactivate=function(){this.deactivateImpl()},r.prototype.layout=function(){var t=this;this.layoutFrame&&cancelAnimationFrame(this.layoutFrame),this.layoutFrame=requestAnimationFrame(function(){t.layoutInternal(),t.layoutFrame=0})},r.prototype.setUnbounded=function(t){var e=r.cssClasses.UNBOUNDED;t?this.adapter.addClass(e):this.adapter.removeClass(e)},r.prototype.handleFocus=function(){var t=this;requestAnimationFrame(function(){return t.adapter.addClass(r.cssClasses.BG_FOCUSED)})},r.prototype.handleBlur=function(){var t=this;requestAnimationFrame(function(){return t.adapter.removeClass(r.cssClasses.BG_FOCUSED)})},r.prototype.supportsPressRipple=function(){return this.adapter.browserSupportsCssVars()},r.prototype.defaultActivationState=function(){return{activationEvent:void 0,hasDeactivationUXRun:!1,isActivated:!1,isProgrammatic:!1,wasActivatedByPointer:!1,wasElementMadeActive:!1}},r.prototype.registerRootHandlers=function(t){var e,n;if(t){try{for(var a=f(Z),o=a.next();!o.done;o=a.next()){var s=o.value;this.adapter.registerInteractionHandler(s,this.activateHandler)}}catch(u){e={error:u}}finally{try{o&&!o.done&&(n=a.return)&&n.call(a)}finally{if(e)throw e.error}}this.adapter.isUnbounded()&&this.adapter.registerResizeHandler(this.resizeHandler)}this.adapter.registerInteractionHandler("focus",this.focusHandler),this.adapter.registerInteractionHandler("blur",this.blurHandler)},r.prototype.registerDeactivationHandlers=function(t){var e,n;if(t.type==="keydown")this.adapter.registerInteractionHandler("keyup",this.deactivateHandler);else try{for(var a=f(K),o=a.next();!o.done;o=a.next()){var s=o.value;this.adapter.registerDocumentInteractionHandler(s,this.deactivateHandler)}}catch(u){e={error:u}}finally{try{o&&!o.done&&(n=a.return)&&n.call(a)}finally{if(e)throw e.error}}},r.prototype.deregisterRootHandlers=function(){var t,e;try{for(var n=f(Z),a=n.next();!a.done;a=n.next()){var o=a.value;this.adapter.deregisterInteractionHandler(o,this.activateHandler)}}catch(s){t={error:s}}finally{try{a&&!a.done&&(e=n.return)&&e.call(n)}finally{if(t)throw t.error}}this.adapter.deregisterInteractionHandler("focus",this.focusHandler),this.adapter.deregisterInteractionHandler("blur",this.blurHandler),this.adapter.isUnbounded()&&this.adapter.deregisterResizeHandler(this.resizeHandler)},r.prototype.deregisterDeactivationHandlers=function(){var t,e;this.adapter.deregisterInteractionHandler("keyup",this.deactivateHandler);try{for(var n=f(K),a=n.next();!a.done;a=n.next()){var o=a.value;this.adapter.deregisterDocumentInteractionHandler(o,this.deactivateHandler)}}catch(s){t={error:s}}finally{try{a&&!a.done&&(e=n.return)&&e.call(n)}finally{if(t)throw t.error}}},r.prototype.removeCssVars=function(){var t=this,e=r.strings,n=Object.keys(e);n.forEach(function(a){a.indexOf("VAR_")===0&&t.adapter.updateCssVariable(e[a],null)})},r.prototype.activateImpl=function(t){var e=this;if(!this.adapter.isSurfaceDisabled()){var n=this.activationState;if(!n.isActivated){var a=this.previousActivationEvent,o=a&&t!==void 0&&a.type!==t.type;if(!o){n.isActivated=!0,n.isProgrammatic=t===void 0,n.activationEvent=t,n.wasActivatedByPointer=n.isProgrammatic?!1:t!==void 0&&(t.type==="mousedown"||t.type==="touchstart"||t.type==="pointerdown");var s=t!==void 0&&w.length>0&&w.some(function(u){return e.adapter.containsEventTarget(u)});if(s){this.resetActivationState();return}t!==void 0&&(w.push(t.target),this.registerDeactivationHandlers(t)),n.wasElementMadeActive=this.checkElementMadeActive(t),n.wasElementMadeActive&&this.animateActivation(),requestAnimationFrame(function(){w=[],!n.wasElementMadeActive&&t!==void 0&&(t.key===" "||t.keyCode===32)&&(n.wasElementMadeActive=e.checkElementMadeActive(t),n.wasElementMadeActive&&e.animateActivation()),n.wasElementMadeActive||(e.activationState=e.defaultActivationState())})}}}},r.prototype.checkElementMadeActive=function(t){return t!==void 0&&t.type==="keydown"?this.adapter.isSurfaceActive():!0},r.prototype.animateActivation=function(){var t=this,e=r.strings,n=e.VAR_FG_TRANSLATE_START,a=e.VAR_FG_TRANSLATE_END,o=r.cssClasses,s=o.FG_DEACTIVATION,u=o.FG_ACTIVATION,v=r.numbers.DEACTIVATION_TIMEOUT_MS;this.layoutInternal();var p="",F="";if(!this.adapter.isUnbounded()){var M=this.getFgTranslationCoordinates(),H=M.startPoint,O=M.endPoint;p=H.x+"px, "+H.y+"px",F=O.x+"px, "+O.y+"px"}this.adapter.updateCssVariable(n,p),this.adapter.updateCssVariable(a,F),clearTimeout(this.activationTimer),clearTimeout(this.fgDeactivationRemovalTimer),this.rmBoundedActivationClasses(),this.adapter.removeClass(s),this.adapter.computeBoundingRect(),this.adapter.addClass(u),this.activationTimer=setTimeout(function(){t.activationTimerCallback()},v)},r.prototype.getFgTranslationCoordinates=function(){var t=this.activationState,e=t.activationEvent,n=t.wasActivatedByPointer,a;n?a=E(e,this.adapter.getWindowPageOffset(),this.adapter.computeBoundingRect()):a={x:this.frame.width/2,y:this.frame.height/2},a={x:a.x-this.initialSize/2,y:a.y-this.initialSize/2};var o={x:this.frame.width/2-this.initialSize/2,y:this.frame.height/2-this.initialSize/2};return{startPoint:a,endPoint:o}},r.prototype.runDeactivationUXLogicIfReady=function(){var t=this,e=r.cssClasses.FG_DEACTIVATION,n=this.activationState,a=n.hasDeactivationUXRun,o=n.isActivated,s=a||!o;s&&this.activationAnimationHasEnded&&(this.rmBoundedActivationClasses(),this.adapter.addClass(e),this.fgDeactivationRemovalTimer=setTimeout(function(){t.adapter.removeClass(e)},D.FG_DEACTIVATION_MS))},r.prototype.rmBoundedActivationClasses=function(){var t=r.cssClasses.FG_ACTIVATION;this.adapter.removeClass(t),this.activationAnimationHasEnded=!1,this.adapter.computeBoundingRect()},r.prototype.resetActivationState=function(){var t=this;this.previousActivationEvent=this.activationState.activationEvent,this.activationState=this.defaultActivationState(),setTimeout(function(){return t.previousActivationEvent=void 0},r.numbers.TAP_DELAY_MS)},r.prototype.deactivateImpl=function(){var t=this,e=this.activationState;if(e.isActivated){var n=l({},e);e.isProgrammatic?(requestAnimationFrame(function(){t.animateDeactivation(n)}),this.resetActivationState()):(this.deregisterDeactivationHandlers(),requestAnimationFrame(function(){t.activationState.hasDeactivationUXRun=!0,t.animateDeactivation(n),t.resetActivationState()}))}},r.prototype.animateDeactivation=function(t){var e=t.wasActivatedByPointer,n=t.wasElementMadeActive;(e||n)&&this.runDeactivationUXLogicIfReady()},r.prototype.layoutInternal=function(){var t=this;this.frame=this.adapter.computeBoundingRect();var e=Math.max(this.frame.height,this.frame.width),n=function(){var o=Math.sqrt(Math.pow(t.frame.width,2)+Math.pow(t.frame.height,2));return o+r.numbers.PADDING};this.maxRadius=this.adapter.isUnbounded()?e:n();var a=Math.floor(e*r.numbers.INITIAL_ORIGIN_SCALE);this.adapter.isUnbounded()&&a%2!==0?this.initialSize=a-1:this.initialSize=a,this.fgScale=""+this.maxRadius/this.initialSize,this.updateLayoutCssVars()},r.prototype.updateLayoutCssVars=function(){var t=r.strings,e=t.VAR_FG_SIZE,n=t.VAR_LEFT,a=t.VAR_TOP,o=t.VAR_FG_SCALE;this.adapter.updateCssVariable(e,this.initialSize+"px"),this.adapter.updateCssVariable(o,this.fgScale),this.adapter.isUnbounded()&&(this.unboundedCoords={left:Math.round(this.frame.width/2-this.initialSize/2),top:Math.round(this.frame.height/2-this.initialSize/2)},this.adapter.updateCssVariable(n,this.unboundedCoords.left+"px"),this.adapter.updateCssVariable(a,this.unboundedCoords.top+"px"))},r}(b);var $=function(i){g(r,i);function r(){var t=i!==null&&i.apply(this,arguments)||this;return t.disabled=!1,t}return r.attachTo=function(t,e){e===void 0&&(e={isUnbounded:void 0});var n=new r(t);return e.isUnbounded!==void 0&&(n.unbounded=e.isUnbounded),n},r.createAdapter=function(t){return{addClass:function(e){return t.root.classList.add(e)},browserSupportsCssVars:function(){return z(window)},computeBoundingRect:function(){return t.root.getBoundingClientRect()},containsEventTarget:function(e){return t.root.contains(e)},deregisterDocumentInteractionHandler:function(e,n){return document.documentElement.removeEventListener(e,n,h())},deregisterInteractionHandler:function(e,n){return t.root.removeEventListener(e,n,h())},deregisterResizeHandler:function(e){return window.removeEventListener("resize",e)},getWindowPageOffset:function(){return{x:window.pageXOffset,y:window.pageYOffset}},isSurfaceActive:function(){return W(t.root,":active")},isSurfaceDisabled:function(){return!!t.disabled},isUnbounded:function(){return!!t.unbounded},registerDocumentInteractionHandler:function(e,n){return document.documentElement.addEventListener(e,n,h())},registerInteractionHandler:function(e,n){return t.root.addEventListener(e,n,h())},registerResizeHandler:function(e){return window.addEventListener("resize",e)},removeClass:function(e){return t.root.classList.remove(e)},updateCssVariable:function(e,n){return t.root.style.setProperty(e,n)}}},Object.defineProperty(r.prototype,"unbounded",{get:function(){return!!this.isUnbounded},set:function(t){this.isUnbounded=!!t,this.setUnbounded()},enumerable:!1,configurable:!0}),r.prototype.activate=function(){this.foundation.activate()},r.prototype.deactivate=function(){this.foundation.deactivate()},r.prototype.layout=function(){this.foundation.layout()},r.prototype.getDefaultFoundation=function(){return new _(r.createAdapter(this))},r.prototype.initialSyncWithDOM=function(){var t=this.root;this.isUnbounded="mdcRippleIsUnbounded"in t.dataset},r.prototype.setUnbounded=function(){this.foundation.setUnbounded(!!this.isUnbounded)},r}(q);var C=class extends ${handleFocus(){this.foundation.handleFocus()}handleBlur(){this.foundation.handleBlur()}animate(){this.foundation.animateActivation()}},J=class extends _{};var A=class{constructor(r){this._component=r}_tryFindTarget(){return this._component.parentElement}initialize(r,t){r&&(this._target=(this._component.ownerDocument||document).querySelector(r)),this._target||(this._target=this._tryFindTarget()),this._target&&(this._ripple=new C(this._target),this._ripple.unbounded=t,L(c.classes.SURFACE,this._target))}destroy(){this._ripple&&(this._ripple.destroy(),this._ripple=void 0),this._target&&I(c.classes.SURFACE,this._target),this._target=void 0}activate(){var r;(r=this._ripple)==null||r.activate()}deactivate(){var r;(r=this._ripple)==null||r.deactivate()}};var x=class{constructor(r){this._adapter=r;this._unbounded=!1}initialize(){this._adapter.initialize(this._target,this._unbounded)}disconnect(){this._adapter.destroy()}layout(){this._applyTarget()}activate(){this._adapter.activate()}deactivate(){this._adapter.deactivate()}_applyTarget(){this._adapter.destroy(),this._adapter.initialize(this._target,this._unbounded)}get target(){return this._target}set target(r){this._target!==r&&(this._target=r,this._applyTarget())}get unbounded(){return this._unbounded}set unbounded(r){this._unbounded!==r&&(this._unbounded=r,this._applyTarget())}};var d=class extends G{constructor(){super();this._foundation=new x(new A(this))}static get observedAttributes(){return[c.attributes.TARGET,c.attributes.UNBOUNDED]}connectedCallback(){this._foundation.initialize()}disconnectedCallback(){this._foundation.disconnect()}attributeChangedCallback(t,e,n){switch(t){case c.attributes.TARGET:this.target=n;break;case c.attributes.UNBOUNDED:this.unbounded=U(n);break}}layout(){this._foundation.layout()}activate(){return this._foundation.activate()}deactivate(){return this._foundation.deactivate()}};m([S()],d.prototype,"target",2),m([S()],d.prototype,"unbounded",2),d=m([B({name:c.elementName})],d);function Et(){P(d)}export{c as a,C as b,J as c,A as d,x as e,d as f,Et as g};
7
7
  /*! Bundled license information:
8
8
 
9
9
  @material/base/foundation.js:
@@ -174,4 +174,4 @@ import{a as S}from"./chunk.NVUMRW44.js";import{a as B,b as j}from"./chunk.36F2GV
174
174
  * THE SOFTWARE.
175
175
  *)
176
176
  */
177
- //# sourceMappingURL=chunk.R6LQBI42.js.map
177
+ //# sourceMappingURL=chunk.TZFUKJ24.js.map