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

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 (578) hide show
  1. package/custom-elements.json +8607 -3358
  2. package/dist/esm/accordion/index.js +1 -1
  3. package/dist/esm/app-bar/app-bar/index.js +1 -1
  4. package/dist/esm/app-bar/help-button/index.js +1 -1
  5. package/dist/esm/app-bar/index.js +1 -1
  6. package/dist/esm/app-bar/menu-button/index.js +1 -1
  7. package/dist/esm/app-bar/notification-button/index.js +1 -1
  8. package/dist/esm/app-bar/profile-button/index.js +1 -1
  9. package/dist/esm/app-bar/search/index.js +1 -1
  10. package/dist/esm/autocomplete/index.js +1 -1
  11. package/dist/esm/avatar/index.js +1 -1
  12. package/dist/esm/backdrop/index.js +1 -1
  13. package/dist/esm/badge/index.js +1 -1
  14. package/dist/esm/banner/index.js +1 -1
  15. package/dist/esm/bottom-sheet/index.js +1 -1
  16. package/dist/esm/busy-indicator/index.js +1 -1
  17. package/dist/esm/button/index.js +1 -1
  18. package/dist/esm/button-area/index.js +1 -1
  19. package/dist/esm/button-toggle/button-toggle/index.js +1 -1
  20. package/dist/esm/button-toggle/button-toggle-group/index.js +1 -1
  21. package/dist/esm/button-toggle/index.js +1 -1
  22. package/dist/esm/calendar/calendar-dropdown/index.js +1 -1
  23. package/dist/esm/calendar/calendar-menu/index.js +1 -1
  24. package/dist/esm/calendar/index.js +1 -1
  25. package/dist/esm/card/index.js +1 -1
  26. package/dist/esm/checkbox/index.js +1 -1
  27. package/dist/esm/chip-field/index.js +1 -1
  28. package/dist/esm/chips/chip/index.js +1 -1
  29. package/dist/esm/chips/chip-set/index.js +1 -1
  30. package/dist/esm/chips/index.js +1 -1
  31. package/dist/esm/chunks/chunk.3KEXRSB5.js +7 -0
  32. package/dist/esm/chunks/{chunk.IW7HALLT.js.map → chunk.3KEXRSB5.js.map} +1 -1
  33. package/dist/esm/chunks/chunk.3TKTJ3BY.js +7 -0
  34. package/dist/esm/chunks/chunk.3TKTJ3BY.js.map +7 -0
  35. package/dist/esm/chunks/{chunk.DOEG3DWJ.js → chunk.42YDA5FH.js} +2 -2
  36. package/dist/esm/chunks/chunk.447QNYAZ.js +7 -0
  37. package/dist/esm/chunks/{chunk.PQQVUUHU.js.map → chunk.447QNYAZ.js.map} +1 -1
  38. package/dist/esm/chunks/chunk.4IMRT2B3.js +7 -0
  39. package/dist/esm/chunks/{chunk.F2EBSV5Z.js.map → chunk.4IMRT2B3.js.map} +1 -1
  40. package/dist/esm/chunks/chunk.4JDJ33IU.js +7 -0
  41. package/dist/esm/chunks/{chunk.LXX3YZYS.js.map → chunk.4JDJ33IU.js.map} +1 -1
  42. package/dist/esm/chunks/chunk.4QCGBFLU.js +7 -0
  43. package/dist/esm/chunks/{chunk.J2KHTGSB.js.map → chunk.4QCGBFLU.js.map} +1 -1
  44. package/dist/esm/chunks/chunk.4XN2WGMP.js +7 -0
  45. package/dist/esm/chunks/{chunk.RDW7Z4W5.js.map → chunk.4XN2WGMP.js.map} +1 -1
  46. package/dist/esm/chunks/{chunk.CTZ3AWDW.js → chunk.5EGEZ4IY.js} +2 -2
  47. package/dist/esm/chunks/chunk.5FCUOZSU.js +7 -0
  48. package/dist/esm/chunks/{chunk.7ABZUBTT.js.map → chunk.5FCUOZSU.js.map} +1 -1
  49. package/dist/esm/chunks/chunk.5KYKGNGY.js +7 -0
  50. package/dist/esm/chunks/{chunk.4B5IOZAT.js.map → chunk.5KYKGNGY.js.map} +1 -1
  51. package/dist/esm/chunks/chunk.5QZPUOGG.js +7 -0
  52. package/dist/esm/chunks/{chunk.6Q3SV2R2.js.map → chunk.5QZPUOGG.js.map} +1 -1
  53. package/dist/esm/chunks/chunk.5ZMM75CJ.js +7 -0
  54. package/dist/esm/chunks/{chunk.MZZJY5NX.js.map → chunk.5ZMM75CJ.js.map} +1 -1
  55. package/dist/esm/chunks/chunk.6FUXTHO6.js +7 -0
  56. package/dist/esm/chunks/{chunk.KLPF4CNX.js.map → chunk.6FUXTHO6.js.map} +1 -1
  57. package/dist/esm/chunks/chunk.6ORVPXNN.js +7 -0
  58. package/dist/esm/chunks/{chunk.4QDN5PM6.js.map → chunk.6ORVPXNN.js.map} +1 -1
  59. package/dist/esm/chunks/chunk.6ZJIHOIG.js +7 -0
  60. package/dist/esm/chunks/chunk.6ZJIHOIG.js.map +7 -0
  61. package/dist/esm/chunks/chunk.7LOMI6J3.js +7 -0
  62. package/dist/esm/chunks/chunk.7PVVZC7P.js +7 -0
  63. package/dist/esm/chunks/chunk.7PVVZC7P.js.map +7 -0
  64. package/dist/esm/chunks/chunk.AEO2X5OZ.js +7 -0
  65. package/dist/esm/chunks/{chunk.7DHDFH5L.js.map → chunk.AEO2X5OZ.js.map} +1 -1
  66. package/dist/esm/chunks/chunk.AIPDMLJD.js +7 -0
  67. package/dist/esm/chunks/{chunk.Z7PBGV4K.js.map → chunk.AIPDMLJD.js.map} +1 -1
  68. package/dist/esm/chunks/chunk.APFDK6YA.js +7 -0
  69. package/dist/esm/chunks/{chunk.2YDKRTKP.js.map → chunk.APFDK6YA.js.map} +1 -1
  70. package/dist/esm/chunks/{chunk.57PXXJA6.js → chunk.AR6YUJUH.js} +2 -2
  71. package/dist/esm/chunks/chunk.AVRBHXDT.js +177 -0
  72. package/dist/esm/chunks/{chunk.TZFUKJ24.js.map → chunk.AVRBHXDT.js.map} +1 -1
  73. package/dist/esm/chunks/chunk.BAQYPAUM.js +7 -0
  74. package/dist/esm/chunks/{chunk.HHHBS6FB.js → chunk.BC7WB5RG.js} +2 -2
  75. package/dist/esm/chunks/chunk.BIVQ4GTK.js +7 -0
  76. package/dist/esm/chunks/{chunk.XDANTL6C.js.map → chunk.BIVQ4GTK.js.map} +2 -2
  77. package/dist/esm/chunks/chunk.BJD6BKGC.js +31 -0
  78. package/dist/esm/chunks/chunk.BJD6BKGC.js.map +7 -0
  79. package/dist/esm/chunks/chunk.BS73Y6IN.js +7 -0
  80. package/dist/esm/chunks/{chunk.QFY23EWU.js.map → chunk.BS73Y6IN.js.map} +1 -1
  81. package/dist/esm/chunks/chunk.BTWJPE4Y.js +7 -0
  82. package/dist/esm/chunks/{chunk.C5IB44HX.js.map → chunk.BTWJPE4Y.js.map} +1 -1
  83. package/dist/esm/chunks/chunk.BWGDZUJV.js +12 -0
  84. package/dist/esm/chunks/chunk.BWGDZUJV.js.map +7 -0
  85. package/dist/esm/chunks/{chunk.7XFU2W25.js → chunk.BX4AQRHB.js} +2 -2
  86. package/dist/esm/chunks/{chunk.7XFU2W25.js.map → chunk.BX4AQRHB.js.map} +3 -3
  87. package/dist/esm/chunks/chunk.CBY7M4X6.js +7 -0
  88. package/dist/esm/chunks/{chunk.LMIKNDBS.js.map → chunk.CBY7M4X6.js.map} +1 -1
  89. package/dist/esm/chunks/chunk.DLBAZD5X.js +7 -0
  90. package/dist/esm/chunks/{chunk.5VHUMZYS.js.map → chunk.DLBAZD5X.js.map} +1 -1
  91. package/dist/esm/chunks/chunk.DTWXICOY.js +7 -0
  92. package/dist/esm/chunks/{chunk.2GJ54C3Q.js.map → chunk.DTWXICOY.js.map} +1 -1
  93. package/dist/esm/chunks/{chunk.VD5ZL5ZN.js → chunk.EMCY55MX.js} +2 -2
  94. package/dist/esm/chunks/chunk.ESQWFHCF.js +7 -0
  95. package/dist/esm/chunks/{chunk.Q5Z6F3PI.js.map → chunk.ESQWFHCF.js.map} +1 -1
  96. package/dist/esm/chunks/{chunk.FYWPZFLJ.js → chunk.EWT2PBEP.js} +2 -2
  97. package/dist/esm/chunks/{chunk.FYWPZFLJ.js.map → chunk.EWT2PBEP.js.map} +2 -2
  98. package/dist/esm/chunks/chunk.FJ5VNWYK.js +7 -0
  99. package/dist/esm/chunks/{chunk.XNCBGWE4.js.map → chunk.FJ5VNWYK.js.map} +1 -1
  100. package/dist/esm/chunks/chunk.FJRCWWE2.js +7 -0
  101. package/dist/esm/chunks/chunk.FJRCWWE2.js.map +7 -0
  102. package/dist/esm/chunks/chunk.FQUZWINF.js +7 -0
  103. package/dist/esm/chunks/{chunk.F6KM5FO6.js.map → chunk.FQUZWINF.js.map} +1 -1
  104. package/dist/esm/chunks/chunk.FSILMO6U.js +7 -0
  105. package/dist/esm/chunks/{chunk.7PP6QHOM.js.map → chunk.FSILMO6U.js.map} +1 -1
  106. package/dist/esm/chunks/chunk.FXGY5IVK.js +7 -0
  107. package/dist/esm/chunks/chunk.FXGY5IVK.js.map +7 -0
  108. package/dist/esm/chunks/chunk.G67LO74A.js +7 -0
  109. package/dist/esm/chunks/chunk.G67LO74A.js.map +7 -0
  110. package/dist/esm/chunks/chunk.GGQL3OZB.js +7 -0
  111. package/dist/esm/chunks/{chunk.BFUGFHEH.js.map → chunk.GGQL3OZB.js.map} +1 -1
  112. package/dist/esm/chunks/{chunk.K7FPXAFS.js → chunk.HZUQXCOQ.js} +2 -2
  113. package/dist/esm/chunks/{chunk.K7FPXAFS.js.map → chunk.HZUQXCOQ.js.map} +2 -2
  114. package/dist/esm/chunks/chunk.I7OY43HW.js +7 -0
  115. package/dist/esm/chunks/{chunk.KFDYMENL.js.map → chunk.I7OY43HW.js.map} +1 -1
  116. package/dist/esm/chunks/{chunk.E3GVKR4E.js → chunk.I7X25KEB.js} +2 -2
  117. package/dist/esm/chunks/chunk.ICIGXLJW.js +7 -0
  118. package/dist/esm/chunks/{chunk.W324TWF2.js.map → chunk.ICIGXLJW.js.map} +1 -1
  119. package/dist/esm/chunks/chunk.IHIKIZIT.js +7 -0
  120. package/dist/esm/chunks/chunk.ILUXZNGY.js +7 -0
  121. package/dist/esm/chunks/{chunk.SNF35Y6C.js.map → chunk.ILUXZNGY.js.map} +1 -1
  122. package/dist/esm/chunks/chunk.JEZR25US.js +7 -0
  123. package/dist/esm/chunks/{chunk.THWSN3X4.js.map → chunk.JEZR25US.js.map} +1 -1
  124. package/dist/esm/chunks/{chunk.2GYZM6ZG.js → chunk.JHELTQKA.js} +2 -2
  125. package/dist/esm/chunks/{chunk.UWZWXNTW.js → chunk.JPI4XCQL.js} +2 -2
  126. package/dist/esm/chunks/chunk.JRSFCVYQ.js +7 -0
  127. package/dist/esm/chunks/{chunk.WQGPIOL6.js.map → chunk.JRSFCVYQ.js.map} +1 -1
  128. package/dist/esm/chunks/chunk.JZ27GPZJ.js +7 -0
  129. package/dist/esm/chunks/{chunk.J3B5CWKT.js.map → chunk.JZ27GPZJ.js.map} +1 -1
  130. package/dist/esm/chunks/chunk.K3TJMIKD.js +7 -0
  131. package/dist/esm/chunks/{chunk.LCNR2RPT.js.map → chunk.K3TJMIKD.js.map} +1 -1
  132. package/dist/esm/chunks/{chunk.26E4L52W.js → chunk.KDJZN6EW.js} +2 -2
  133. package/dist/esm/chunks/chunk.KGHABAFA.js +7 -0
  134. package/dist/esm/chunks/{chunk.GS72TBUD.js.map → chunk.KGHABAFA.js.map} +1 -1
  135. package/dist/esm/chunks/chunk.KR4BNI6X.js +7 -0
  136. package/dist/esm/chunks/{chunk.VDZ7HBKM.js.map → chunk.KR4BNI6X.js.map} +1 -1
  137. package/dist/esm/chunks/chunk.KUNIEX72.js +7 -0
  138. package/dist/esm/chunks/{chunk.H7GW57Q6.js.map → chunk.KUNIEX72.js.map} +1 -1
  139. package/dist/esm/chunks/{chunk.5C24LZNU.js → chunk.KWBYYSH3.js} +2 -2
  140. package/dist/esm/chunks/chunk.L27ANAIL.js +7 -0
  141. package/dist/esm/chunks/{chunk.3ZRQFXQU.js.map → chunk.L27ANAIL.js.map} +1 -1
  142. package/dist/esm/chunks/{chunk.DDXIHZFX.js → chunk.L45HXBDS.js} +2 -2
  143. package/dist/esm/chunks/chunk.L4UXWCVD.js +7 -0
  144. package/dist/esm/chunks/{chunk.5H4G6BWX.js.map → chunk.L4UXWCVD.js.map} +1 -1
  145. package/dist/esm/chunks/chunk.LK6QHLW2.js +7 -0
  146. package/dist/esm/chunks/{chunk.P7LC3YYW.js.map → chunk.LK6QHLW2.js.map} +1 -1
  147. package/dist/esm/chunks/chunk.LYZXJYTW.js +7 -0
  148. package/dist/esm/chunks/{chunk.OED5UCYT.js.map → chunk.LYZXJYTW.js.map} +1 -1
  149. package/dist/esm/chunks/chunk.LZ2YQYJA.js +7 -0
  150. package/dist/esm/chunks/chunk.LZ2YQYJA.js.map +7 -0
  151. package/dist/esm/chunks/chunk.M7RYU4HQ.js +7 -0
  152. package/dist/esm/chunks/chunk.M7RYU4HQ.js.map +7 -0
  153. package/dist/esm/chunks/{chunk.NZKIFXBU.js → chunk.MHH26REX.js} +2 -2
  154. package/dist/esm/chunks/chunk.MROUV35N.js +7 -0
  155. package/dist/esm/chunks/{chunk.U5WMRBSC.js.map → chunk.MROUV35N.js.map} +1 -1
  156. package/dist/esm/chunks/chunk.MTSWCXTY.js +7 -0
  157. package/dist/esm/chunks/chunk.NBLL7VAA.js +7 -0
  158. package/dist/esm/chunks/chunk.NM7FJISF.js +7 -0
  159. package/dist/esm/chunks/chunk.NM7FJISF.js.map +7 -0
  160. package/dist/esm/chunks/chunk.NVR6KN2B.js +7 -0
  161. package/dist/esm/chunks/{chunk.B46Q3AFP.js.map → chunk.NVR6KN2B.js.map} +1 -1
  162. package/dist/esm/chunks/chunk.O6F4U4VY.js +7 -0
  163. package/dist/esm/chunks/{chunk.IEB5KRFQ.js.map → chunk.O6F4U4VY.js.map} +1 -1
  164. package/dist/esm/chunks/chunk.O6MGA3XK.js +7 -0
  165. package/dist/esm/chunks/chunk.ONII3BV3.js +7 -0
  166. package/dist/esm/chunks/{chunk.TLFCQSJN.js.map → chunk.ONII3BV3.js.map} +1 -1
  167. package/dist/esm/chunks/chunk.OTUEB7SD.js +7 -0
  168. package/dist/esm/chunks/{chunk.G2BNY5QQ.js.map → chunk.OTUEB7SD.js.map} +1 -1
  169. package/dist/esm/chunks/{chunk.PADPL4L3.js → chunk.OUIWXKO2.js} +2 -2
  170. package/dist/esm/chunks/chunk.PMSCH6VK.js +7 -0
  171. package/dist/esm/chunks/{chunk.3UO6S3IK.js.map → chunk.PMSCH6VK.js.map} +1 -1
  172. package/dist/esm/chunks/chunk.PRJHBUU2.js +7 -0
  173. package/dist/esm/chunks/chunk.PRJHBUU2.js.map +7 -0
  174. package/dist/esm/chunks/chunk.Q2Q626DG.js +7 -0
  175. package/dist/esm/chunks/{chunk.NG6UZ4OL.js.map → chunk.Q2Q626DG.js.map} +1 -1
  176. package/dist/esm/chunks/chunk.Q4YL47ZL.js +7 -0
  177. package/dist/esm/chunks/{chunk.IVUK3W34.js.map → chunk.Q4YL47ZL.js.map} +1 -1
  178. package/dist/esm/chunks/chunk.Q54DACHS.js +7 -0
  179. package/dist/esm/chunks/{chunk.PSTGTQVK.js.map → chunk.Q54DACHS.js.map} +1 -1
  180. package/dist/esm/chunks/chunk.Q74SG6BV.js +7 -0
  181. package/dist/esm/chunks/{chunk.DTKFE7YB.js.map → chunk.Q74SG6BV.js.map} +1 -1
  182. package/dist/esm/chunks/chunk.QG5EYBS3.js +7 -0
  183. package/dist/esm/chunks/chunk.QG5EYBS3.js.map +7 -0
  184. package/dist/esm/chunks/chunk.QGMWM7IT.js +7 -0
  185. package/dist/esm/chunks/{chunk.CNRFOWHY.js.map → chunk.QGMWM7IT.js.map} +1 -1
  186. package/dist/esm/chunks/chunk.RCPUTZON.js +7 -0
  187. package/dist/esm/chunks/{chunk.FQSL747N.js.map → chunk.RCPUTZON.js.map} +1 -1
  188. package/dist/esm/chunks/chunk.SBKKBQDX.js +7 -0
  189. package/dist/esm/chunks/{chunk.6Y45DLA6.js.map → chunk.SBKKBQDX.js.map} +1 -1
  190. package/dist/esm/chunks/chunk.SVVF632P.js +7 -0
  191. package/dist/esm/chunks/chunk.SVVF632P.js.map +7 -0
  192. package/dist/esm/chunks/chunk.T4J66YX5.js +7 -0
  193. package/dist/esm/chunks/chunk.T4J66YX5.js.map +7 -0
  194. package/dist/esm/chunks/chunk.THNCYT3E.js +7 -0
  195. package/dist/esm/chunks/{chunk.OUACQISE.js.map → chunk.THNCYT3E.js.map} +2 -2
  196. package/dist/esm/chunks/chunk.TPXXHX5J.js +7 -0
  197. package/dist/esm/chunks/{chunk.JAWV5Y5T.js.map → chunk.TPXXHX5J.js.map} +2 -2
  198. package/dist/esm/chunks/chunk.TSUAFZGY.js +7 -0
  199. package/dist/esm/chunks/{chunk.L4Y4RO5O.js.map → chunk.TSUAFZGY.js.map} +1 -1
  200. package/dist/esm/chunks/chunk.U42I3PGF.js +7 -0
  201. package/dist/esm/chunks/chunk.U42I3PGF.js.map +7 -0
  202. package/dist/esm/chunks/{chunk.GHR7T6U2.js → chunk.U7S4DJTU.js} +2 -2
  203. package/dist/esm/chunks/chunk.UOEJCU6R.js +7 -0
  204. package/dist/esm/chunks/{chunk.PK7R6WDF.js.map → chunk.UOEJCU6R.js.map} +1 -1
  205. package/dist/esm/chunks/{chunk.543K5Y4E.js → chunk.URKQICJD.js} +2 -2
  206. package/dist/esm/chunks/chunk.VG452D3L.js +7 -0
  207. package/dist/esm/chunks/{chunk.A72W7RW7.js.map → chunk.VG452D3L.js.map} +1 -1
  208. package/dist/esm/chunks/chunk.VQPSP4HV.js +7 -0
  209. package/dist/esm/chunks/{chunk.LSNAGIIH.js.map → chunk.VQPSP4HV.js.map} +1 -1
  210. package/dist/esm/chunks/chunk.W7BP2DDU.js +7 -0
  211. package/dist/esm/chunks/{chunk.URCJO73M.js.map → chunk.W7BP2DDU.js.map} +1 -1
  212. package/dist/esm/chunks/chunk.WARVAVAW.js +7 -0
  213. package/dist/esm/chunks/{chunk.BMQYEYCT.js.map → chunk.WARVAVAW.js.map} +1 -1
  214. package/dist/esm/chunks/chunk.WEHQUUXJ.js +7 -0
  215. package/dist/esm/chunks/{chunk.GT3VPSXY.js.map → chunk.WEHQUUXJ.js.map} +1 -1
  216. package/dist/esm/chunks/chunk.WJCZJ6XD.js +7 -0
  217. package/dist/esm/chunks/{chunk.GWJ4QCSW.js.map → chunk.WJCZJ6XD.js.map} +1 -1
  218. package/dist/esm/chunks/{chunk.DD35U4AA.js → chunk.WMP2OLMG.js} +2 -2
  219. package/dist/esm/chunks/chunk.X3QZY7V4.js +7 -0
  220. package/dist/esm/chunks/{chunk.7W2UWAZX.js.map → chunk.X3QZY7V4.js.map} +1 -1
  221. package/dist/esm/chunks/chunk.XQLQ73NG.js +7 -0
  222. package/dist/esm/chunks/{chunk.Z2RB75TN.js.map → chunk.XQLQ73NG.js.map} +1 -1
  223. package/dist/esm/chunks/chunk.Y4ZS3A6F.js +7 -0
  224. package/dist/esm/chunks/{chunk.KTYYBWTN.js.map → chunk.Y4ZS3A6F.js.map} +1 -1
  225. package/dist/esm/chunks/chunk.YA5OQD37.js +7 -0
  226. package/dist/esm/chunks/{chunk.JVK64JDZ.js.map → chunk.YA5OQD37.js.map} +1 -1
  227. package/dist/esm/chunks/chunk.YMSX4F3J.js +7 -0
  228. package/dist/esm/chunks/{chunk.RYNQDXFA.js.map → chunk.YMSX4F3J.js.map} +1 -1
  229. package/dist/esm/chunks/{chunk.KVCDAZ6B.js → chunk.YTBNAGLS.js} +2 -2
  230. package/dist/esm/chunks/chunk.Z37CZMMR.js +7 -0
  231. package/dist/esm/chunks/{chunk.RZZBM3AW.js.map → chunk.Z37CZMMR.js.map} +1 -1
  232. package/dist/esm/chunks/chunk.ZIRA4PYV.js +7 -0
  233. package/dist/esm/chunks/chunk.ZIRA4PYV.js.map +7 -0
  234. package/dist/esm/chunks/chunk.ZT7U7WOX.js +7 -0
  235. package/dist/esm/chunks/{chunk.YKZ25J6B.js.map → chunk.ZT7U7WOX.js.map} +1 -1
  236. package/dist/esm/chunks/{chunk.FB6ZLH6P.js → chunk.ZX3CGET2.js} +2 -2
  237. package/dist/esm/circular-progress/index.js +1 -1
  238. package/dist/esm/color-picker/index.js +1 -1
  239. package/dist/esm/core/base/index.js +1 -1
  240. package/dist/esm/core/delegates/index.js +1 -1
  241. package/dist/esm/core/index.js +1 -1
  242. package/dist/esm/core/utils/index.js +1 -1
  243. package/dist/esm/date-picker/index.js +1 -1
  244. package/dist/esm/date-range-picker/index.js +1 -1
  245. package/dist/esm/dialog/index.js +1 -1
  246. package/dist/esm/divider/index.js +1 -1
  247. package/dist/esm/drawer/base/index.js +1 -1
  248. package/dist/esm/drawer/drawer/index.js +1 -1
  249. package/dist/esm/drawer/index.js +1 -1
  250. package/dist/esm/drawer/mini-drawer/index.js +1 -1
  251. package/dist/esm/drawer/modal-drawer/index.js +1 -1
  252. package/dist/esm/expansion-panel/index.js +1 -1
  253. package/dist/esm/file-picker/index.js +1 -1
  254. package/dist/esm/floating-action-button/index.js +1 -1
  255. package/dist/esm/floating-label/index.js +1 -1
  256. package/dist/esm/focus-indicator/index.js +1 -1
  257. package/dist/esm/icon/index.js +1 -1
  258. package/dist/esm/icon-button/index.js +1 -1
  259. package/dist/esm/index.js +1 -1
  260. package/dist/esm/inline-message/index.js +1 -1
  261. package/dist/esm/keyboard-shortcut/index.js +1 -1
  262. package/dist/esm/label/index.js +1 -1
  263. package/dist/esm/label-value/index.js +1 -1
  264. package/dist/esm/linear-progress/index.js +1 -1
  265. package/dist/esm/list/index.js +1 -1
  266. package/dist/esm/list/list/index.js +1 -1
  267. package/dist/esm/list/list-item/index.js +1 -1
  268. package/dist/esm/list-dropdown/index.js +1 -1
  269. package/dist/esm/menu/index.js +1 -1
  270. package/dist/esm/open-icon/index.js +1 -1
  271. package/dist/esm/page-state/index.js +1 -1
  272. package/dist/esm/paginator/index.js +1 -1
  273. package/dist/esm/popup/index.js +1 -1
  274. package/dist/esm/product-icon/index.js +1 -1
  275. package/dist/esm/profile-card/index.js +1 -1
  276. package/dist/esm/quantity-field/index.js +1 -1
  277. package/dist/esm/radio/index.js +1 -1
  278. package/dist/esm/radio/radio/index.js +7 -0
  279. package/dist/esm/radio/radio/index.js.map +7 -0
  280. package/dist/esm/radio/radio-group/index.js +7 -0
  281. package/dist/esm/ripple/index.js +1 -1
  282. package/dist/esm/scaffold/index.js +1 -1
  283. package/dist/esm/select/core/index.js +1 -1
  284. package/dist/esm/select/index.js +1 -1
  285. package/dist/esm/select/option/index.js +1 -1
  286. package/dist/esm/select/option-group/index.js +1 -1
  287. package/dist/esm/select/select/index.js +1 -1
  288. package/dist/esm/select/select-dropdown/index.js +1 -1
  289. package/dist/esm/skeleton/index.js +1 -1
  290. package/dist/esm/slider/index.js +1 -1
  291. package/dist/esm/split-button/index.js +1 -1
  292. package/dist/esm/split-view/index.js +1 -1
  293. package/dist/esm/split-view/split-view/index.js +1 -1
  294. package/dist/esm/split-view/split-view-panel/index.js +1 -1
  295. package/dist/esm/stack/index.js +1 -1
  296. package/dist/esm/state-layer/index.js +1 -1
  297. package/dist/esm/stepper/index.js +1 -1
  298. package/dist/esm/stepper/step/index.js +1 -1
  299. package/dist/esm/stepper/stepper/index.js +1 -1
  300. package/dist/esm/switch/index.js +1 -1
  301. package/dist/esm/table/index.js +1 -1
  302. package/dist/esm/tabs/index.js +1 -1
  303. package/dist/esm/tabs/tab/index.js +1 -1
  304. package/dist/esm/tabs/tab-bar/index.js +1 -1
  305. package/dist/esm/text-field/index.js +1 -1
  306. package/dist/esm/time-picker/index.js +1 -1
  307. package/dist/esm/toast/index.js +1 -1
  308. package/dist/esm/toolbar/index.js +1 -1
  309. package/dist/esm/tooltip/index.js +1 -1
  310. package/dist/esm/view-switcher/index.js +1 -1
  311. package/dist/esm/view-switcher/view/index.js +1 -1
  312. package/esm/app-bar/app-bar/app-bar.js +1 -1
  313. package/esm/app-bar/search/app-bar-search-adapter.d.ts +8 -43
  314. package/esm/app-bar/search/app-bar-search-adapter.js +23 -53
  315. package/esm/app-bar/search/app-bar-search-constants.d.ts +0 -15
  316. package/esm/app-bar/search/app-bar-search-constants.js +3 -20
  317. package/esm/app-bar/search/app-bar-search-foundation.d.ts +3 -37
  318. package/esm/app-bar/search/app-bar-search-foundation.js +27 -88
  319. package/esm/app-bar/search/app-bar-search.d.ts +1 -21
  320. package/esm/app-bar/search/app-bar-search.js +13 -39
  321. package/esm/button/base/base-button-adapter.d.ts +0 -2
  322. package/esm/button/base/base-button-adapter.js +13 -4
  323. package/esm/button/base/base-button-foundation.js +8 -10
  324. package/esm/button/base/base-button.d.ts +7 -5
  325. package/esm/button/base/base-button.js +5 -2
  326. package/esm/button/button-constants.d.ts +2 -0
  327. package/esm/button/button-constants.js +2 -1
  328. package/esm/button/button-foundation.d.ts +4 -0
  329. package/esm/button/button-foundation.js +10 -0
  330. package/esm/button/button.d.ts +4 -0
  331. package/esm/button/button.js +9 -1
  332. package/esm/constants.d.ts +14 -2
  333. package/esm/constants.js +11 -0
  334. package/esm/core/base/base-adapter.d.ts +4 -0
  335. package/esm/core/base/base-adapter.js +6 -0
  336. package/esm/core/base/base-component.d.ts +4 -0
  337. package/esm/core/base/base-element-internals-component.d.ts +41 -0
  338. package/esm/core/base/base-element-internals-component.js +47 -0
  339. package/esm/core/base/base-focusable-component.d.ts +11 -14
  340. package/esm/core/base/base-focusable-component.js +14 -15
  341. package/esm/core/base/base-form-associated-component.d.ts +122 -0
  342. package/esm/core/base/base-form-associated-component.js +71 -0
  343. package/esm/core/base/base-form-component.d.ts +0 -10
  344. package/esm/core/base/base-form-component.js +0 -6
  345. package/esm/core/base/base-label-aware-component.d.ts +33 -0
  346. package/esm/core/base/base-label-aware-component.js +17 -0
  347. package/esm/core/base/base-nullable-form-component.d.ts +0 -10
  348. package/esm/core/base/base-nullable-form-component.js +0 -6
  349. package/esm/core/base/index.d.ts +4 -0
  350. package/esm/core/base/index.js +4 -0
  351. package/esm/core/utils/a11y-utils.d.ts +156 -0
  352. package/esm/core/utils/a11y-utils.js +223 -0
  353. package/esm/core/utils/event-utils.d.ts +1 -0
  354. package/esm/core/utils/event-utils.js +3 -0
  355. package/esm/core/utils/feature-detection.d.ts +8 -0
  356. package/esm/core/utils/feature-detection.js +12 -0
  357. package/esm/core/utils/form-utils.d.ts +24 -0
  358. package/{dist/esm/chunks/chunk.U6FJJGO3.js → esm/core/utils/form-utils.js} +1 -1
  359. package/esm/core/utils/index.d.ts +1 -0
  360. package/esm/core/utils/index.js +1 -0
  361. package/esm/core/utils/mixin-utils.d.ts +20 -0
  362. package/esm/core/utils/mixin-utils.js +15 -0
  363. package/esm/core/utils/reflect-utils.d.ts +1 -1
  364. package/esm/core/utils/reflect-utils.js +2 -2
  365. package/esm/date-picker/base/base-date-picker.d.ts +1 -1
  366. package/esm/date-picker/base/base-date-picker.js +4 -3
  367. package/esm/index.d.ts +4 -4
  368. package/esm/index.js +29 -28
  369. package/esm/label/label-adapter.d.ts +2 -0
  370. package/esm/label/label-adapter.js +5 -2
  371. package/esm/label/label-aware.js +2 -1
  372. package/esm/label/label-constants.d.ts +6 -2
  373. package/esm/label/label-constants.js +12 -5
  374. package/esm/label/label-foundation.d.ts +16 -0
  375. package/esm/label/label-foundation.js +69 -6
  376. package/esm/label/label.d.ts +8 -0
  377. package/esm/label/label.js +21 -3
  378. package/esm/menu/menu-adapter.d.ts +3 -3
  379. package/esm/menu/menu-constants.d.ts +1 -1
  380. package/esm/menu/menu-foundation.d.ts +1 -0
  381. package/esm/menu/menu-foundation.js +11 -4
  382. package/esm/paginator/paginator-constants.d.ts +9 -0
  383. package/esm/paginator/paginator-foundation.d.ts +5 -2
  384. package/esm/paginator/paginator-foundation.js +29 -8
  385. package/esm/paginator/paginator.d.ts +3 -1
  386. package/esm/paginator/paginator.js +3 -0
  387. package/esm/radio/core/radio-group-manager.d.ts +83 -0
  388. package/esm/radio/core/radio-group-manager.js +201 -0
  389. package/esm/radio/index.d.ts +1 -2
  390. package/esm/radio/index.js +1 -6
  391. package/esm/radio/radio/index.d.ts +10 -0
  392. package/esm/radio/radio/index.js +14 -0
  393. package/esm/radio/radio/radio-adapter.d.ts +41 -0
  394. package/esm/radio/radio/radio-adapter.js +81 -0
  395. package/esm/radio/radio/radio-component-delegate.d.ts +5 -0
  396. package/esm/radio/radio/radio-component-delegate.js +6 -0
  397. package/esm/radio/radio/radio-constants.d.ts +39 -0
  398. package/esm/radio/radio/radio-constants.js +53 -0
  399. package/esm/radio/radio/radio-foundation.d.ts +70 -0
  400. package/esm/radio/radio/radio-foundation.js +199 -0
  401. package/esm/radio/radio/radio.d.ts +110 -0
  402. package/esm/radio/radio/radio.js +202 -0
  403. package/esm/radio/radio-group/index.d.ts +10 -0
  404. package/esm/radio/radio-group/index.js +14 -0
  405. package/esm/radio/radio-group/radio-group-adapter.d.ts +18 -0
  406. package/esm/radio/radio-group/radio-group-adapter.js +28 -0
  407. package/esm/radio/radio-group/radio-group-constants.d.ts +13 -0
  408. package/esm/radio/radio-group/radio-group-constants.js +19 -0
  409. package/esm/radio/radio-group/radio-group-foundation.d.ts +20 -0
  410. package/esm/radio/radio-group/radio-group-foundation.js +32 -0
  411. package/esm/radio/radio-group/radio-group.d.ts +44 -0
  412. package/esm/radio/radio-group/radio-group.js +81 -0
  413. package/esm/split-view/split-view-panel/split-view-panel.js +1 -1
  414. package/package.json +1 -1
  415. package/styles/app-bar/app-bar/_core.scss +4 -0
  416. package/styles/app-bar/app-bar/app-bar.scss +15 -1
  417. package/styles/app-bar/search/_configuration.scss +10 -0
  418. package/styles/app-bar/search/_core.scss +73 -0
  419. package/styles/app-bar/search/_token-utils.scss +30 -0
  420. package/styles/app-bar/search/app-bar-search.scss +51 -4
  421. package/styles/app-bar/search/index.scss +8 -0
  422. package/styles/button/button.scss +9 -0
  423. package/styles/core/styles/tokens/app-bar/search/_tokens.scss +35 -0
  424. package/styles/core/styles/tokens/radio/_tokens.scss +66 -0
  425. package/styles/label/_core.scss +2 -5
  426. package/styles/label/label.scss +1 -5
  427. package/styles/radio/index.scss +6 -0
  428. package/styles/radio/radio/_configuration.scss +10 -0
  429. package/styles/radio/radio/_core.scss +123 -0
  430. package/styles/radio/radio/_token-utils.scss +30 -0
  431. package/styles/radio/radio/index.scss +8 -0
  432. package/styles/radio/radio/radio.scss +102 -0
  433. package/styles/switch/_core.scss +6 -0
  434. package/dist/esm/chunks/chunk.2GJ54C3Q.js +0 -7
  435. package/dist/esm/chunks/chunk.2YDKRTKP.js +0 -7
  436. package/dist/esm/chunks/chunk.3JCHXLPT.js +0 -7
  437. package/dist/esm/chunks/chunk.3JCHXLPT.js.map +0 -7
  438. package/dist/esm/chunks/chunk.3RMBFRGC.js +0 -7
  439. package/dist/esm/chunks/chunk.3RMBFRGC.js.map +0 -7
  440. package/dist/esm/chunks/chunk.3UO6S3IK.js +0 -7
  441. package/dist/esm/chunks/chunk.3ZRQFXQU.js +0 -7
  442. package/dist/esm/chunks/chunk.4B5IOZAT.js +0 -7
  443. package/dist/esm/chunks/chunk.4QDN5PM6.js +0 -7
  444. package/dist/esm/chunks/chunk.5H4G6BWX.js +0 -7
  445. package/dist/esm/chunks/chunk.5VHUMZYS.js +0 -7
  446. package/dist/esm/chunks/chunk.6DXDNQUR.js +0 -15
  447. package/dist/esm/chunks/chunk.6DXDNQUR.js.map +0 -7
  448. package/dist/esm/chunks/chunk.6Q3SV2R2.js +0 -7
  449. package/dist/esm/chunks/chunk.6Y45DLA6.js +0 -7
  450. package/dist/esm/chunks/chunk.7ABZUBTT.js +0 -7
  451. package/dist/esm/chunks/chunk.7BGOH44S.js +0 -7
  452. package/dist/esm/chunks/chunk.7BGOH44S.js.map +0 -7
  453. package/dist/esm/chunks/chunk.7DHDFH5L.js +0 -7
  454. package/dist/esm/chunks/chunk.7PP6QHOM.js +0 -7
  455. package/dist/esm/chunks/chunk.7UXLLUTN.js +0 -7
  456. package/dist/esm/chunks/chunk.7W2UWAZX.js +0 -7
  457. package/dist/esm/chunks/chunk.A72W7RW7.js +0 -7
  458. package/dist/esm/chunks/chunk.AEJGC4YG.js +0 -7
  459. package/dist/esm/chunks/chunk.AEJGC4YG.js.map +0 -7
  460. package/dist/esm/chunks/chunk.B46Q3AFP.js +0 -7
  461. package/dist/esm/chunks/chunk.BFUGFHEH.js +0 -7
  462. package/dist/esm/chunks/chunk.BLW6QESQ.js +0 -12
  463. package/dist/esm/chunks/chunk.BLW6QESQ.js.map +0 -7
  464. package/dist/esm/chunks/chunk.BMQYEYCT.js +0 -7
  465. package/dist/esm/chunks/chunk.C5IB44HX.js +0 -7
  466. package/dist/esm/chunks/chunk.CNRFOWHY.js +0 -7
  467. package/dist/esm/chunks/chunk.DTKFE7YB.js +0 -7
  468. package/dist/esm/chunks/chunk.EBSBAFCX.js +0 -7
  469. package/dist/esm/chunks/chunk.EBSBAFCX.js.map +0 -7
  470. package/dist/esm/chunks/chunk.F2EBSV5Z.js +0 -7
  471. package/dist/esm/chunks/chunk.F6KM5FO6.js +0 -7
  472. package/dist/esm/chunks/chunk.FQSL747N.js +0 -7
  473. package/dist/esm/chunks/chunk.G2BNY5QQ.js +0 -7
  474. package/dist/esm/chunks/chunk.GS72TBUD.js +0 -7
  475. package/dist/esm/chunks/chunk.GT3VPSXY.js +0 -7
  476. package/dist/esm/chunks/chunk.GWJ4QCSW.js +0 -7
  477. package/dist/esm/chunks/chunk.H7GW57Q6.js +0 -7
  478. package/dist/esm/chunks/chunk.I3NHK2S3.js +0 -7
  479. package/dist/esm/chunks/chunk.IEB5KRFQ.js +0 -7
  480. package/dist/esm/chunks/chunk.IT66AOX7.js +0 -7
  481. package/dist/esm/chunks/chunk.IT66AOX7.js.map +0 -7
  482. package/dist/esm/chunks/chunk.IVUK3W34.js +0 -7
  483. package/dist/esm/chunks/chunk.IW7HALLT.js +0 -7
  484. package/dist/esm/chunks/chunk.J2KHTGSB.js +0 -7
  485. package/dist/esm/chunks/chunk.J3B5CWKT.js +0 -7
  486. package/dist/esm/chunks/chunk.JAWV5Y5T.js +0 -7
  487. package/dist/esm/chunks/chunk.JVK64JDZ.js +0 -7
  488. package/dist/esm/chunks/chunk.KFDYMENL.js +0 -7
  489. package/dist/esm/chunks/chunk.KLPF4CNX.js +0 -7
  490. package/dist/esm/chunks/chunk.KTYYBWTN.js +0 -7
  491. package/dist/esm/chunks/chunk.L4Y4RO5O.js +0 -7
  492. package/dist/esm/chunks/chunk.LCNR2RPT.js +0 -7
  493. package/dist/esm/chunks/chunk.LMIKNDBS.js +0 -7
  494. package/dist/esm/chunks/chunk.LOBKFTRM.js +0 -7
  495. package/dist/esm/chunks/chunk.LOBKFTRM.js.map +0 -7
  496. package/dist/esm/chunks/chunk.LS7WRRT2.js +0 -7
  497. package/dist/esm/chunks/chunk.LS7WRRT2.js.map +0 -7
  498. package/dist/esm/chunks/chunk.LSNAGIIH.js +0 -7
  499. package/dist/esm/chunks/chunk.LUIKMPQR.js +0 -7
  500. package/dist/esm/chunks/chunk.LUIKMPQR.js.map +0 -7
  501. package/dist/esm/chunks/chunk.LXX3YZYS.js +0 -7
  502. package/dist/esm/chunks/chunk.MZZJY5NX.js +0 -7
  503. package/dist/esm/chunks/chunk.NG6UZ4OL.js +0 -7
  504. package/dist/esm/chunks/chunk.NYYXUH3X.js +0 -7
  505. package/dist/esm/chunks/chunk.OED5UCYT.js +0 -7
  506. package/dist/esm/chunks/chunk.OUACQISE.js +0 -7
  507. package/dist/esm/chunks/chunk.OYO5O3NF.js +0 -7
  508. package/dist/esm/chunks/chunk.P7LC3YYW.js +0 -7
  509. package/dist/esm/chunks/chunk.PK7R6WDF.js +0 -7
  510. package/dist/esm/chunks/chunk.PQQVUUHU.js +0 -7
  511. package/dist/esm/chunks/chunk.PSTGTQVK.js +0 -7
  512. package/dist/esm/chunks/chunk.Q5Z6F3PI.js +0 -7
  513. package/dist/esm/chunks/chunk.QFY23EWU.js +0 -7
  514. package/dist/esm/chunks/chunk.RCSBJQ4G.js +0 -7
  515. package/dist/esm/chunks/chunk.RCSBJQ4G.js.map +0 -7
  516. package/dist/esm/chunks/chunk.RDW7Z4W5.js +0 -7
  517. package/dist/esm/chunks/chunk.RYNQDXFA.js +0 -7
  518. package/dist/esm/chunks/chunk.RZZBM3AW.js +0 -7
  519. package/dist/esm/chunks/chunk.SNF35Y6C.js +0 -7
  520. package/dist/esm/chunks/chunk.SOLF23NC.js +0 -7
  521. package/dist/esm/chunks/chunk.T34DG7BU.js +0 -7
  522. package/dist/esm/chunks/chunk.TA3MVDUU.js +0 -7
  523. package/dist/esm/chunks/chunk.TA3MVDUU.js.map +0 -7
  524. package/dist/esm/chunks/chunk.THWSN3X4.js +0 -7
  525. package/dist/esm/chunks/chunk.TLFCQSJN.js +0 -7
  526. package/dist/esm/chunks/chunk.TZFUKJ24.js +0 -177
  527. package/dist/esm/chunks/chunk.U5WMRBSC.js +0 -7
  528. package/dist/esm/chunks/chunk.URCJO73M.js +0 -7
  529. package/dist/esm/chunks/chunk.VDZ7HBKM.js +0 -7
  530. package/dist/esm/chunks/chunk.W324TWF2.js +0 -7
  531. package/dist/esm/chunks/chunk.WQGPIOL6.js +0 -7
  532. package/dist/esm/chunks/chunk.XDANTL6C.js +0 -7
  533. package/dist/esm/chunks/chunk.XNCBGWE4.js +0 -7
  534. package/dist/esm/chunks/chunk.YKZ25J6B.js +0 -7
  535. package/dist/esm/chunks/chunk.Z2RB75TN.js +0 -7
  536. package/dist/esm/chunks/chunk.Z7PBGV4K.js +0 -7
  537. package/dist/esm/chunks/chunk.ZSD7MMVB.js +0 -7
  538. package/dist/esm/chunks/chunk.ZSD7MMVB.js.map +0 -7
  539. package/dist/esm/chunks/chunk.ZVJMIBUM.js +0 -7
  540. package/dist/esm/chunks/chunk.ZVJMIBUM.js.map +0 -7
  541. package/esm/radio/radio-adapter.d.ts +0 -71
  542. package/esm/radio/radio-adapter.js +0 -260
  543. package/esm/radio/radio-constants.d.ts +0 -30
  544. package/esm/radio/radio-constants.js +0 -36
  545. package/esm/radio/radio-foundation.d.ts +0 -31
  546. package/esm/radio/radio-foundation.js +0 -80
  547. package/esm/radio/radio.d.ts +0 -33
  548. package/esm/radio/radio.js +0 -75
  549. package/styles/app-bar/search/_mixins.scss +0 -238
  550. package/styles/app-bar/search/_variables.scss +0 -18
  551. package/styles/radio/_mixins.scss +0 -309
  552. package/styles/radio/_radio-theme.scss +0 -314
  553. package/styles/radio/radio.scss +0 -19
  554. /package/dist/esm/chunks/{chunk.DOEG3DWJ.js.map → chunk.42YDA5FH.js.map} +0 -0
  555. /package/dist/esm/chunks/{chunk.CTZ3AWDW.js.map → chunk.5EGEZ4IY.js.map} +0 -0
  556. /package/dist/esm/chunks/{chunk.SOLF23NC.js.map → chunk.7LOMI6J3.js.map} +0 -0
  557. /package/dist/esm/chunks/{chunk.57PXXJA6.js.map → chunk.AR6YUJUH.js.map} +0 -0
  558. /package/dist/esm/chunks/{chunk.I3NHK2S3.js.map → chunk.BAQYPAUM.js.map} +0 -0
  559. /package/dist/esm/chunks/{chunk.HHHBS6FB.js.map → chunk.BC7WB5RG.js.map} +0 -0
  560. /package/dist/esm/chunks/{chunk.VD5ZL5ZN.js.map → chunk.EMCY55MX.js.map} +0 -0
  561. /package/dist/esm/chunks/{chunk.E3GVKR4E.js.map → chunk.I7X25KEB.js.map} +0 -0
  562. /package/dist/esm/chunks/{chunk.OYO5O3NF.js.map → chunk.IHIKIZIT.js.map} +0 -0
  563. /package/dist/esm/chunks/{chunk.2GYZM6ZG.js.map → chunk.JHELTQKA.js.map} +0 -0
  564. /package/dist/esm/chunks/{chunk.UWZWXNTW.js.map → chunk.JPI4XCQL.js.map} +0 -0
  565. /package/dist/esm/chunks/{chunk.26E4L52W.js.map → chunk.KDJZN6EW.js.map} +0 -0
  566. /package/dist/esm/chunks/{chunk.5C24LZNU.js.map → chunk.KWBYYSH3.js.map} +0 -0
  567. /package/dist/esm/chunks/{chunk.DDXIHZFX.js.map → chunk.L45HXBDS.js.map} +0 -0
  568. /package/dist/esm/chunks/{chunk.NZKIFXBU.js.map → chunk.MHH26REX.js.map} +0 -0
  569. /package/dist/esm/chunks/{chunk.NYYXUH3X.js.map → chunk.MTSWCXTY.js.map} +0 -0
  570. /package/dist/esm/chunks/{chunk.7UXLLUTN.js.map → chunk.NBLL7VAA.js.map} +0 -0
  571. /package/dist/esm/chunks/{chunk.T34DG7BU.js.map → chunk.O6MGA3XK.js.map} +0 -0
  572. /package/dist/esm/chunks/{chunk.PADPL4L3.js.map → chunk.OUIWXKO2.js.map} +0 -0
  573. /package/dist/esm/chunks/{chunk.GHR7T6U2.js.map → chunk.U7S4DJTU.js.map} +0 -0
  574. /package/dist/esm/chunks/{chunk.543K5Y4E.js.map → chunk.URKQICJD.js.map} +0 -0
  575. /package/dist/esm/chunks/{chunk.DD35U4AA.js.map → chunk.WMP2OLMG.js.map} +0 -0
  576. /package/dist/esm/chunks/{chunk.KVCDAZ6B.js.map → chunk.YTBNAGLS.js.map} +0 -0
  577. /package/dist/esm/chunks/{chunk.FB6ZLH6P.js.map → chunk.ZX3CGET2.js.map} +0 -0
  578. /package/dist/esm/{chunks/chunk.U6FJJGO3.js.map → radio/radio-group/index.js.map} +0 -0
@@ -0,0 +1,7 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2023 Tyler Technologies, Inc.
4
+ * License: Apache-2.0
5
+ */
6
+ import{e as a}from"./chunk.HZUQXCOQ.js";import{i as l}from"./chunk.J2M2MXP2.js";function d(e){f(e._customElementName,e),l(e._customElementDependencies)&&m(e._customElementDependencies)}function m(e){e.forEach(d)}function f(e,t,o){var n;!((n=window==null?void 0:window.customElements)===null||n===void 0)&&n.get(e)||window.customElements.define(e,t,o)}function C(e,t){let o=e;for(;o.parentNode&&(o=o.parentNode,!!o.tagName);)if(!o.tagName||o.tagName.toLowerCase()===t.toLowerCase())return o;return null}function u(e){return new DOMParser().parseFromString(e,"text/html").querySelector("template")}function v(e,t){e.appendChild(u(t).content.cloneNode(!0))}function R(e,t,o,n=!1){let i=p(t,o);e.attachShadow({mode:"open",delegatesFocus:n}),w(e,i)}function p(e,t){let o=u(e);if(t){t=t instanceof Array?t:[t];let n=document.createElement("style");n.type="text/css",n.textContent=t.join(" "),o.content.appendChild(n)}return o}function w(e,t){e.shadowRoot.appendChild(t.content.cloneNode(!0))}function h(e,t){return e.shadowRoot.querySelector(t)}function S(e,t){return e.querySelector(t)}function T(e,t,o,n=!0,i=!1){let r;return typeof CustomEvent=="function"?r=new CustomEvent(t,{detail:o,bubbles:n,cancelable:i}):(r=document.createEvent("CustomEvent"),r.initCustomEvent(t,n,i,o)),e.dispatchEvent(r)}function N(e,t,o,n,i,r){let s=!!h(e,n);return r||(r=document.createComment(`(${o}) ${n}`)),t&&!s?a(i,r):!t&&s&&a(r,i),r}function D(e,t){function o(n){return!n||n===document||n===window?null:(n.assignedSlot&&(n=n.assignedSlot),n.closest(e)||o(n.getRootNode().host))}return o(t)}var c=class extends HTMLElement{};export{d as a,m as b,C as c,v as d,R as e,h as f,S as g,T as h,N as i,D as j,c as k};
7
+ //# sourceMappingURL=chunk.TPXXHX5J.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../node_modules/@tylertech/forge-core/esm/custom-elements/component-utils.js", "../../src/core/base/base-component.ts"],
4
- "sourcesContent": ["import { replaceElement, isArray, removeAllChildren, walkUpUntil } from '../utils';\n/**\n * Recursively defines a component as a custom elements and all of its dependencies.\n * @param component The component to import.\n */\nexport function defineCustomElement(component) {\n tryDefine(component._customElementName, component);\n if (isArray(component._customElementDependencies)) {\n defineCustomElements(component._customElementDependencies);\n }\n}\n/**\n * Defines the specified custom element components.\n * @param {any[]} components The components to register.\n */\nexport function defineCustomElements(components) {\n components.forEach(defineCustomElement);\n}\n/**\n * Attempts to define the provided custom element name/constructor if not already defined.\n * @param name The name of the custom element to define.\n * @param ctor The custom element constructor.\n */\nexport function tryDefine(name, ctor, options) {\n var _a;\n if ((_a = window === null || window === void 0 ? void 0 : window.customElements) === null || _a === void 0 ? void 0 : _a.get(name)) {\n return;\n }\n window.customElements.define(name, ctor, options);\n}\n/**\n * Useful when capturing the value of a unupgraded component during the `connectedCallback` upon upgrade.\n *\n * More information here:\n * https://developers.google.com/web/fundamentals/architecture/building-components/best-practices#lazy-properties\n *\n * @param property\n */\nexport function upgradeProperty(instance, property) {\n if (instance.hasOwnProperty(property)) {\n const value = instance[property];\n delete instance[property];\n instance[property] = value;\n }\n}\n/**\n * Traverses up the DOM tree starting from the provided component element to find the specified parent.\n * @param {HTMLElement} component The starting HTMLElement.\n * @param {string} parentTagName The parent tag name we are searching for.\n */\nexport function requireParent(component, parentTagName) {\n let el = component;\n while (el.parentNode) {\n el = el.parentNode;\n if (!el.tagName) {\n break;\n }\n if (!el.tagName || el.tagName.toLowerCase() === parentTagName.toLowerCase()) {\n return el;\n }\n }\n return null;\n}\n/**\n * Creates a template element from a string.\n * @param template The template HTML string.\n */\nexport function parseTemplateString(template) {\n const templateDocument = new DOMParser().parseFromString(template, 'text/html');\n return templateDocument.querySelector('template');\n}\n/**\n * Attaches a template to the given web component instance light DOM.\n * @param {T} componentInstance A component instance.\n * @param {string} template The template HTML string.\n */\nexport function attachLightTemplate(componentInstance, template) {\n componentInstance.appendChild(parseTemplateString(template).content.cloneNode(true));\n}\n/**\n * Attaches a shadow root to the given web component instance.\n * @param {T} componentInstance A component instance.\n * @param {string} elementName The name of the element the shadow root is to be attached to.\n * @param {string} template The shadow root template HTML string.\n * @param {string | string[]} styles The shadow root styles string to be encapsulated by this shadow root.\n * @param {boolean} [delegatesFocus=false] Should the component delagate focus.\n */\nexport function attachShadowTemplate(componentInstance, template, styles, delegatesFocus = false) {\n const templateElement = prepareShadowTemplate(template, styles);\n componentInstance.attachShadow({ mode: 'open', delegatesFocus });\n setShadowTemplate(componentInstance, templateElement);\n}\n/**\n * Replaces the template of an existing shadow root with the provided template.\n * @param {T} componentInstance A component instance.\n * @param {string} elementName The name of the element the shadow root is to be attached to.\n * @param {string} template The shadow root template HTML string.\n * @param {string | string[]} styles The shadow root styles string to be encapsulated by this shadow root.\n */\nexport function replaceShadowTemplate(componentInstance, template, styles) {\n if (!componentInstance.shadowRoot) {\n throw new Error('This element does not contain a shadow root. Did you mean to call `attachShadowTemplate`?');\n }\n const templateElement = prepareShadowTemplate(template, styles);\n if (componentInstance.shadowRoot.children.length) {\n removeAllChildren(componentInstance.shadowRoot);\n }\n setShadowTemplate(componentInstance, templateElement);\n}\n/**\n * Creates and prepares an HTML template element for rendering within a shadow root.\n * @param {string} elementName The name of the element the shadow root is to be attached to.\n * @param {string} template The shadow root template HTML string.\n * @param {string | string[]} styles The shadow root styles string to be encapsulated by this shadow root.\n */\nexport function prepareShadowTemplate(template, styles) {\n const templateElement = parseTemplateString(template);\n if (styles) {\n styles = styles instanceof Array ? styles : [styles];\n const styleElement = document.createElement('style');\n styleElement.type = 'text/css';\n styleElement.textContent = styles.join(' ');\n templateElement.content.appendChild(styleElement);\n }\n return templateElement;\n}\n/**\n * Appends a template to the provided components shadow root.\n * @param {T} componentInstance A component instance.\n * @param {HTMLTemplateElement} templateElement A template element to be cloned.\n */\nexport function setShadowTemplate(componentInstance, templateElement) {\n componentInstance.shadowRoot.appendChild(templateElement.content.cloneNode(true));\n}\n/**\n * Copies style rules from the provided document stylesheets collection to the provided shadow root stylesheet.\n * @param {Document} fromDocument The document to find the style sheets in.\n * @param {ShadowRoot} shadowRoot The shadow root that contains the stylesheet to copy the rules to.\n * @param {IStyleSheetDescriptor[]} styleSheetDescriptors A collection of style sheet predicates.\n * @param {CSSStyleSheet} shadowStyleSheet The shadow root stylesheet to copy the style rules to.\n */\nexport function provideDocumentStyles(fromDocument, shadowRoot, documentStyleSheets, shadowStyleSheet) {\n if (!shadowStyleSheet) {\n return;\n }\n const documentSheets = [];\n documentStyleSheets.forEach(sheet => {\n const sheetName = typeof sheet === 'string' ? sheet : sheet.name;\n const sheetFilter = sheet.selectorFilter;\n const matchingStyleSheet = _findMatchingStyleSheet(fromDocument.styleSheets, sheetName);\n if (!matchingStyleSheet) {\n throw new Error(`Could not find stylesheet: ${sheetName}`);\n }\n let startIndex = shadowStyleSheet.cssRules.length;\n for (const rule in matchingStyleSheet.cssRules) {\n if (matchingStyleSheet.cssRules.hasOwnProperty(rule) && matchingStyleSheet.cssRules[rule].cssText && (!sheetFilter || new RegExp(sheetFilter).test(matchingStyleSheet.cssRules[rule].selectorText))) {\n shadowStyleSheet.insertRule(matchingStyleSheet.cssRules[rule].cssText, startIndex++);\n }\n }\n });\n}\n/**\n * Finds a stylesheet by name in the provided stylesheet list.\n * @param styleSheetList The stylesheet list to search.\n * @param sheetName The stylesheet name to find.\n * @returns {CSSStyleSheet | undefined}\n */\nfunction _findMatchingStyleSheet(styleSheetList, sheetName) {\n for (const prop in styleSheetList) {\n if (styleSheetList.hasOwnProperty(prop) && styleSheetList[prop].href) {\n if (new RegExp(sheetName).test(styleSheetList[prop].href)) {\n return styleSheetList[prop];\n }\n }\n }\n return undefined;\n}\n/**\n * Gets an HTML element using a query selector from the provided components` shadow root.\n * @param {HTMLElement} componentInstance The component instance that contains a shadow root.\n * @param {string} selector The selector to be passed to `querySelector`.\n */\nexport function getShadowElement(componentInstance, selector) {\n return componentInstance.shadowRoot.querySelector(selector);\n}\n/**\n * Gets an HTML element using a query selector from the provided components` light DOM.\n * @param {HTMLElement} componentInstance The component instance.\n * @param {string} selector The selector to be passed to `querySelector`.\n */\nexport function getLightElement(componentInstance, selector) {\n return componentInstance.querySelector(selector);\n}\n/**\n * Creates and dispatches a cross-browser `CustomEvent` with the provided type and data.\n * @param {string} type\n * @param {any} data\n * @param {boolean=} bubble\n */\nexport function emitEvent(component, type, data, bubble = true, cancelable = false) {\n let evt;\n if (typeof CustomEvent === 'function') {\n evt = new CustomEvent(type, {\n detail: data,\n bubbles: bubble,\n cancelable\n });\n }\n else {\n evt = document.createEvent('CustomEvent');\n evt.initCustomEvent(type, bubble, cancelable, data);\n }\n return component.dispatchEvent(evt);\n}\n/**\n * Replaces the provided element with a placeholder comment and vice versa.\n * Useful for hiding and showing elements while retaining their location in the DOM.\n * @param {boolean} isVisible Whether the element is visible or not.\n * @param {string} elementName The element tag name.\n * @param {string} selector The selector used to find the element\n * @param {Node} element The element\n * @param {Comment} placeholder The existing placeholder\n */\nexport function toggleElementPlaceholder(component, isVisible, elementName, selector, element, placeholder) {\n const exists = !!getShadowElement(component, selector);\n if (!placeholder) {\n placeholder = document.createComment(`(${elementName}) ${selector}`);\n }\n if (isVisible && !exists) {\n replaceElement(element, placeholder);\n }\n else if (!isVisible && exists) {\n replaceElement(placeholder, element);\n }\n return placeholder;\n}\n/**\n * Walks up the tree starting a specific node and stops when it finds a shadow root.\n * @param {Node} node The node to start searching from.\n * @returns {ShadowRoot | null} The closest shadow root ancestor, or null if not inside a shadow root.\n */\nexport function getClosestShadowRoot(node) {\n return walkUpUntil(node, current => current.toString() === '[object ShadowRoot]');\n}\n/**\n * Finds the closest element up the tree from a starting element across shadow boundaries.\n * @param selector The CSS selector for the element to find.\n * @param startElement The element to start finding from.\n */\nexport function closestElement(selector, startElement) {\n function __closestFrom(el) {\n if (!el || el === document || el === window) {\n return null;\n }\n if (el.assignedSlot) {\n el = el.assignedSlot;\n }\n const found = el.closest(selector);\n return found || __closestFrom(el.getRootNode().host);\n }\n return __closestFrom(startElement);\n}\n", "export interface IBaseComponent extends HTMLElement {}\n\nexport abstract class BaseComponent extends HTMLElement implements IBaseComponent {}\n"],
5
- "mappings": "gFAKO,SAASA,EAAoBC,EAAW,CAC3CC,EAAUD,EAAU,mBAAoBA,CAAS,EAC7CE,EAAQF,EAAU,0BAA0B,GAC5CG,EAAqBH,EAAU,0BAA0B,CAEjE,CAKO,SAASG,EAAqBC,EAAY,CAC7CA,EAAW,QAAQL,CAAmB,CAC1C,CAMO,SAASE,EAAUI,EAAMC,EAAMC,EAAS,CAC3C,IAAIC,EACC,GAAAA,EAAK,QAAW,KAA4B,OAAS,OAAO,kBAAoB,MAAQA,IAAO,SAAkBA,EAAG,IAAIH,CAAI,GAGjI,OAAO,eAAe,OAAOA,EAAMC,EAAMC,CAAO,CACpD,CAqBO,SAASE,EAAcC,EAAWC,EAAe,CACpD,IAAIC,EAAKF,EACT,KAAOE,EAAG,aACNA,EAAKA,EAAG,WACJ,EAACA,EAAG,UAGR,GAAI,CAACA,EAAG,SAAWA,EAAG,QAAQ,YAAY,IAAMD,EAAc,YAAY,EACtE,OAAOC,EAGf,OAAO,IACX,CAKO,SAASC,EAAoBC,EAAU,CAE1C,OADyB,IAAI,UAAU,EAAE,gBAAgBA,EAAU,WAAW,EACtD,cAAc,UAAU,CACpD,CAMO,SAASC,EAAoBC,EAAmBF,EAAU,CAC7DE,EAAkB,YAAYH,EAAoBC,CAAQ,EAAE,QAAQ,UAAU,EAAI,CAAC,CACvF,CASO,SAASG,EAAqBD,EAAmBF,EAAUI,EAAQC,EAAiB,GAAO,CAC9F,IAAMC,EAAkBC,EAAsBP,EAAUI,CAAM,EAC9DF,EAAkB,aAAa,CAAE,KAAM,OAAQ,eAAAG,CAAe,CAAC,EAC/DG,EAAkBN,EAAmBI,CAAe,CACxD,CAwBO,SAASG,EAAsBC,EAAUC,EAAQ,CACpD,IAAMC,EAAkBC,EAAoBH,CAAQ,EACpD,GAAIC,EAAQ,CACRA,EAASA,aAAkB,MAAQA,EAAS,CAACA,CAAM,EACnD,IAAMG,EAAe,SAAS,cAAc,OAAO,EACnDA,EAAa,KAAO,WACpBA,EAAa,YAAcH,EAAO,KAAK,GAAG,EAC1CC,EAAgB,QAAQ,YAAYE,CAAY,EAEpD,OAAOF,CACX,CAMO,SAASG,EAAkBC,EAAmBJ,EAAiB,CAClEI,EAAkB,WAAW,YAAYJ,EAAgB,QAAQ,UAAU,EAAI,CAAC,CACpF,CAiDO,SAASK,EAAiBC,EAAmBC,EAAU,CAC1D,OAAOD,EAAkB,WAAW,cAAcC,CAAQ,CAC9D,CAMO,SAASC,EAAgBF,EAAmBC,EAAU,CACzD,OAAOD,EAAkB,cAAcC,CAAQ,CACnD,CAOO,SAASE,EAAUC,EAAWC,EAAMC,EAAMC,EAAS,GAAMC,EAAa,GAAO,CAChF,IAAIC,EACJ,OAAI,OAAO,aAAgB,WACvBA,EAAM,IAAI,YAAYJ,EAAM,CACxB,OAAQC,EACR,QAASC,EACT,WAAAC,CACJ,CAAC,GAGDC,EAAM,SAAS,YAAY,aAAa,EACxCA,EAAI,gBAAgBJ,EAAME,EAAQC,EAAYF,CAAI,GAE/CF,EAAU,cAAcK,CAAG,CACtC,CAUO,SAASC,EAAyBN,EAAWO,EAAWC,EAAaX,EAAUY,EAASC,EAAa,CACxG,IAAMC,EAAS,CAAC,CAAChB,EAAiBK,EAAWH,CAAQ,EACrD,OAAKa,IACDA,EAAc,SAAS,cAAc,IAAIF,MAAgBX,GAAU,GAEnEU,GAAa,CAACI,EACdC,EAAeH,EAASC,CAAW,EAE9B,CAACH,GAAaI,GACnBC,EAAeF,EAAaD,CAAO,EAEhCC,CACX,CAcO,SAASG,EAAeC,EAAUC,EAAc,CACnD,SAASC,EAAcC,EAAI,CACvB,MAAI,CAACA,GAAMA,IAAO,UAAYA,IAAO,OAC1B,MAEPA,EAAG,eACHA,EAAKA,EAAG,cAEEA,EAAG,QAAQH,CAAQ,GACjBE,EAAcC,EAAG,YAAY,EAAE,IAAI,EACvD,CACA,OAAOD,EAAcD,CAAY,CACrC,CCnQO,IAAeG,EAAf,cAAqC,WAAsC,CAAC",
4
+ "sourcesContent": ["import { replaceElement, isArray, removeAllChildren, walkUpUntil } from '../utils';\n/**\n * Recursively defines a component as a custom elements and all of its dependencies.\n * @param component The component to import.\n */\nexport function defineCustomElement(component) {\n tryDefine(component._customElementName, component);\n if (isArray(component._customElementDependencies)) {\n defineCustomElements(component._customElementDependencies);\n }\n}\n/**\n * Defines the specified custom element components.\n * @param {any[]} components The components to register.\n */\nexport function defineCustomElements(components) {\n components.forEach(defineCustomElement);\n}\n/**\n * Attempts to define the provided custom element name/constructor if not already defined.\n * @param name The name of the custom element to define.\n * @param ctor The custom element constructor.\n */\nexport function tryDefine(name, ctor, options) {\n var _a;\n if ((_a = window === null || window === void 0 ? void 0 : window.customElements) === null || _a === void 0 ? void 0 : _a.get(name)) {\n return;\n }\n window.customElements.define(name, ctor, options);\n}\n/**\n * Useful when capturing the value of a unupgraded component during the `connectedCallback` upon upgrade.\n *\n * More information here:\n * https://developers.google.com/web/fundamentals/architecture/building-components/best-practices#lazy-properties\n *\n * @param property\n */\nexport function upgradeProperty(instance, property) {\n if (instance.hasOwnProperty(property)) {\n const value = instance[property];\n delete instance[property];\n instance[property] = value;\n }\n}\n/**\n * Traverses up the DOM tree starting from the provided component element to find the specified parent.\n * @param {HTMLElement} component The starting HTMLElement.\n * @param {string} parentTagName The parent tag name we are searching for.\n */\nexport function requireParent(component, parentTagName) {\n let el = component;\n while (el.parentNode) {\n el = el.parentNode;\n if (!el.tagName) {\n break;\n }\n if (!el.tagName || el.tagName.toLowerCase() === parentTagName.toLowerCase()) {\n return el;\n }\n }\n return null;\n}\n/**\n * Creates a template element from a string.\n * @param template The template HTML string.\n */\nexport function parseTemplateString(template) {\n const templateDocument = new DOMParser().parseFromString(template, 'text/html');\n return templateDocument.querySelector('template');\n}\n/**\n * Attaches a template to the given web component instance light DOM.\n * @param {T} componentInstance A component instance.\n * @param {string} template The template HTML string.\n */\nexport function attachLightTemplate(componentInstance, template) {\n componentInstance.appendChild(parseTemplateString(template).content.cloneNode(true));\n}\n/**\n * Attaches a shadow root to the given web component instance.\n * @param {T} componentInstance A component instance.\n * @param {string} elementName The name of the element the shadow root is to be attached to.\n * @param {string} template The shadow root template HTML string.\n * @param {string | string[]} styles The shadow root styles string to be encapsulated by this shadow root.\n * @param {boolean} [delegatesFocus=false] Should the component delagate focus.\n */\nexport function attachShadowTemplate(componentInstance, template, styles, delegatesFocus = false) {\n const templateElement = prepareShadowTemplate(template, styles);\n componentInstance.attachShadow({ mode: 'open', delegatesFocus });\n setShadowTemplate(componentInstance, templateElement);\n}\n/**\n * Replaces the template of an existing shadow root with the provided template.\n * @param {T} componentInstance A component instance.\n * @param {string} elementName The name of the element the shadow root is to be attached to.\n * @param {string} template The shadow root template HTML string.\n * @param {string | string[]} styles The shadow root styles string to be encapsulated by this shadow root.\n */\nexport function replaceShadowTemplate(componentInstance, template, styles) {\n if (!componentInstance.shadowRoot) {\n throw new Error('This element does not contain a shadow root. Did you mean to call `attachShadowTemplate`?');\n }\n const templateElement = prepareShadowTemplate(template, styles);\n if (componentInstance.shadowRoot.children.length) {\n removeAllChildren(componentInstance.shadowRoot);\n }\n setShadowTemplate(componentInstance, templateElement);\n}\n/**\n * Creates and prepares an HTML template element for rendering within a shadow root.\n * @param {string} elementName The name of the element the shadow root is to be attached to.\n * @param {string} template The shadow root template HTML string.\n * @param {string | string[]} styles The shadow root styles string to be encapsulated by this shadow root.\n */\nexport function prepareShadowTemplate(template, styles) {\n const templateElement = parseTemplateString(template);\n if (styles) {\n styles = styles instanceof Array ? styles : [styles];\n const styleElement = document.createElement('style');\n styleElement.type = 'text/css';\n styleElement.textContent = styles.join(' ');\n templateElement.content.appendChild(styleElement);\n }\n return templateElement;\n}\n/**\n * Appends a template to the provided components shadow root.\n * @param {T} componentInstance A component instance.\n * @param {HTMLTemplateElement} templateElement A template element to be cloned.\n */\nexport function setShadowTemplate(componentInstance, templateElement) {\n componentInstance.shadowRoot.appendChild(templateElement.content.cloneNode(true));\n}\n/**\n * Copies style rules from the provided document stylesheets collection to the provided shadow root stylesheet.\n * @param {Document} fromDocument The document to find the style sheets in.\n * @param {ShadowRoot} shadowRoot The shadow root that contains the stylesheet to copy the rules to.\n * @param {IStyleSheetDescriptor[]} styleSheetDescriptors A collection of style sheet predicates.\n * @param {CSSStyleSheet} shadowStyleSheet The shadow root stylesheet to copy the style rules to.\n */\nexport function provideDocumentStyles(fromDocument, shadowRoot, documentStyleSheets, shadowStyleSheet) {\n if (!shadowStyleSheet) {\n return;\n }\n const documentSheets = [];\n documentStyleSheets.forEach(sheet => {\n const sheetName = typeof sheet === 'string' ? sheet : sheet.name;\n const sheetFilter = sheet.selectorFilter;\n const matchingStyleSheet = _findMatchingStyleSheet(fromDocument.styleSheets, sheetName);\n if (!matchingStyleSheet) {\n throw new Error(`Could not find stylesheet: ${sheetName}`);\n }\n let startIndex = shadowStyleSheet.cssRules.length;\n for (const rule in matchingStyleSheet.cssRules) {\n if (matchingStyleSheet.cssRules.hasOwnProperty(rule) && matchingStyleSheet.cssRules[rule].cssText && (!sheetFilter || new RegExp(sheetFilter).test(matchingStyleSheet.cssRules[rule].selectorText))) {\n shadowStyleSheet.insertRule(matchingStyleSheet.cssRules[rule].cssText, startIndex++);\n }\n }\n });\n}\n/**\n * Finds a stylesheet by name in the provided stylesheet list.\n * @param styleSheetList The stylesheet list to search.\n * @param sheetName The stylesheet name to find.\n * @returns {CSSStyleSheet | undefined}\n */\nfunction _findMatchingStyleSheet(styleSheetList, sheetName) {\n for (const prop in styleSheetList) {\n if (styleSheetList.hasOwnProperty(prop) && styleSheetList[prop].href) {\n if (new RegExp(sheetName).test(styleSheetList[prop].href)) {\n return styleSheetList[prop];\n }\n }\n }\n return undefined;\n}\n/**\n * Gets an HTML element using a query selector from the provided components` shadow root.\n * @param {HTMLElement} componentInstance The component instance that contains a shadow root.\n * @param {string} selector The selector to be passed to `querySelector`.\n */\nexport function getShadowElement(componentInstance, selector) {\n return componentInstance.shadowRoot.querySelector(selector);\n}\n/**\n * Gets an HTML element using a query selector from the provided components` light DOM.\n * @param {HTMLElement} componentInstance The component instance.\n * @param {string} selector The selector to be passed to `querySelector`.\n */\nexport function getLightElement(componentInstance, selector) {\n return componentInstance.querySelector(selector);\n}\n/**\n * Creates and dispatches a cross-browser `CustomEvent` with the provided type and data.\n * @param {string} type\n * @param {any} data\n * @param {boolean=} bubble\n */\nexport function emitEvent(component, type, data, bubble = true, cancelable = false) {\n let evt;\n if (typeof CustomEvent === 'function') {\n evt = new CustomEvent(type, {\n detail: data,\n bubbles: bubble,\n cancelable\n });\n }\n else {\n evt = document.createEvent('CustomEvent');\n evt.initCustomEvent(type, bubble, cancelable, data);\n }\n return component.dispatchEvent(evt);\n}\n/**\n * Replaces the provided element with a placeholder comment and vice versa.\n * Useful for hiding and showing elements while retaining their location in the DOM.\n * @param {boolean} isVisible Whether the element is visible or not.\n * @param {string} elementName The element tag name.\n * @param {string} selector The selector used to find the element\n * @param {Node} element The element\n * @param {Comment} placeholder The existing placeholder\n */\nexport function toggleElementPlaceholder(component, isVisible, elementName, selector, element, placeholder) {\n const exists = !!getShadowElement(component, selector);\n if (!placeholder) {\n placeholder = document.createComment(`(${elementName}) ${selector}`);\n }\n if (isVisible && !exists) {\n replaceElement(element, placeholder);\n }\n else if (!isVisible && exists) {\n replaceElement(placeholder, element);\n }\n return placeholder;\n}\n/**\n * Walks up the tree starting a specific node and stops when it finds a shadow root.\n * @param {Node} node The node to start searching from.\n * @returns {ShadowRoot | null} The closest shadow root ancestor, or null if not inside a shadow root.\n */\nexport function getClosestShadowRoot(node) {\n return walkUpUntil(node, current => current.toString() === '[object ShadowRoot]');\n}\n/**\n * Finds the closest element up the tree from a starting element across shadow boundaries.\n * @param selector The CSS selector for the element to find.\n * @param startElement The element to start finding from.\n */\nexport function closestElement(selector, startElement) {\n function __closestFrom(el) {\n if (!el || el === document || el === window) {\n return null;\n }\n if (el.assignedSlot) {\n el = el.assignedSlot;\n }\n const found = el.closest(selector);\n return found || __closestFrom(el.getRootNode().host);\n }\n return __closestFrom(startElement);\n}\n", "export interface IBaseComponent extends HTMLElement {\n initializedCallback?(): void;\n connectedCallback?(): void;\n disconnectedCallback?(): void;\n attributeChangedCallback?(name: string, oldValue: string, newValue: string): void;\n}\n\nexport abstract class BaseComponent extends HTMLElement implements IBaseComponent {}\n"],
5
+ "mappings": "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",
6
6
  "names": ["defineCustomElement", "component", "tryDefine", "isArray", "defineCustomElements", "components", "name", "ctor", "options", "_a", "requireParent", "component", "parentTagName", "el", "parseTemplateString", "template", "attachLightTemplate", "componentInstance", "attachShadowTemplate", "styles", "delegatesFocus", "templateElement", "prepareShadowTemplate", "setShadowTemplate", "prepareShadowTemplate", "template", "styles", "templateElement", "parseTemplateString", "styleElement", "setShadowTemplate", "componentInstance", "getShadowElement", "componentInstance", "selector", "getLightElement", "emitEvent", "component", "type", "data", "bubble", "cancelable", "evt", "toggleElementPlaceholder", "isVisible", "elementName", "element", "placeholder", "exists", "replaceElement", "closestElement", "selector", "startElement", "__closestFrom", "el", "BaseComponent"]
7
7
  }
@@ -0,0 +1,7 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2023 Tyler Technologies, Inc.
4
+ * License: Apache-2.0
5
+ */
6
+ import{a as n}from"./chunk.3CTKWBV2.js";import{a as g}from"./chunk.3TKTJ3BY.js";import{a as l}from"./chunk.NVUMRW44.js";import{a as I}from"./chunk.T4J66YX5.js";import{a as S}from"./chunk.6ZJIHOIG.js";import{a as T,e as E,f as _,k as f}from"./chunk.TPXXHX5J.js";import{g as h,q as O}from"./chunk.HZUQXCOQ.js";import{k as C,l as c}from"./chunk.J2M2MXP2.js";import{d as s}from"./chunk.M3QDAYD2.js";var A=`${S}product-icon`,d={PRODUCT_ICON_BACKGROUND:"forge-product-icon__background",PRODUCT_ICON:"forge-product-icon__icon",PRODUCT_TEXT:"forge-product-icon__text"},x={PRODUCT_ICON_BACKGROUND:`.${d.PRODUCT_ICON_BACKGROUND}`,PRODUCT_ICON:`.${d.PRODUCT_ICON}`,PRODUCT_TEXT:`.${d.PRODUCT_TEXT}`,SLOT:"slot"},R={COLOR:"color",SIZE:"size",SHADOW:"shadow",ITERATIONS:"iterations"},v={DEFAULT_SIZE:64,DEFAULT_ITERATIONS:32,ACCESSIBILITY_COLOR_THRESHOLD:300,ICON_FONT_SIZE_MODIFIER:.75,TEXT_FONT_SIZE_MODIFIER:.5},N={DEFAULT_COLOR_VALUE:"indigo-500",DEFAULT_COLOR_PALETTE:"indigo",DEFAULT_COLOR_SHADE:500,DEFAULT_BACKGROUND_COLOR:n.indigoPalette[500]},t={elementName:A,attributes:R,classes:d,selectors:x,numbers:v,strings:N};var p=class extends g{constructor(e){super(e);this._backgroundElement=_(e,t.selectors.PRODUCT_ICON_BACKGROUND),this._iconElement=_(e,t.selectors.PRODUCT_ICON),this._textElement=_(e,t.selectors.PRODUCT_TEXT)}setBackgroundColor(e){this._backgroundElement.style.backgroundColor=e}setIconColor(e){this._iconElement.style.color=e,this._textElement.style.color=e}setElementSize(e){this._backgroundElement.style.height=`${e}px`,this._backgroundElement.style.width=`${e}px`}setFontSize(e){let a=e*t.numbers.TEXT_FONT_SIZE_MODIFIER,r=e*t.numbers.ICON_FONT_SIZE_MODIFIER;this._iconElement.style.setProperty("--forge-product-icon-font-size",`${r}px`),this._textElement.style.setProperty("--forge-product-icon-font-size",`${a}px`),this._iconElement.style.fontSize=`var(--forge-product-icon-font-size, ${r}px)`,this._textElement.style.fontSize=`var(--forge-product-icon-font-size, ${a}px)`}removeIconClass(e){h(e,this._iconElement),h(e,this._textElement)}setTextShadow(e,a,r){if(e){let b=O(a,r);this._iconElement.style.textShadow=b,this._textElement.style.textShadow=b}else this._iconElement.style.removeProperty("text-shadow"),this._textElement.style.removeProperty("text-shadow")}};var u=class{constructor(o){this._adapter=o;this._colorValue=t.strings.DEFAULT_COLOR_VALUE;this._colorPalette=t.strings.DEFAULT_COLOR_PALETTE;this._colorShade=t.strings.DEFAULT_COLOR_SHADE;this._size=t.numbers.DEFAULT_SIZE;this._shadow=!0;this._backgroundColor=t.strings.DEFAULT_BACKGROUND_COLOR;this._iterations=t.numbers.DEFAULT_ITERATIONS;this._usingCustomIterations=!1}initialize(){this._adapter.setElementSize(this._size),this._updateFontSize(),this._parseColor(),this._render()}_parseColor(){this._colorValue.includes("-")?(this._colorPalette=this._colorValue.split("-")[0],this._colorShade=c(this._colorValue.split("-")[1])):(this._colorPalette=this._colorValue,this._colorShade=t.strings.DEFAULT_COLOR_SHADE)}_updateSize(){this._adapter.setElementSize(this._size),this._usingCustomIterations||(this._iterations=this._size/2,this._updateShadow())}_updateFontSize(){this._adapter.setFontSize(this._size)}_updateShadow(){this._shadow&&this._adapter.setTextShadow(this._shadow,this._iterations,this._shadowColor)}_render(){if(!this._colorValue)return;let o=this._colorShade<=t.numbers.ACCESSIBILITY_COLOR_THRESHOLD?"#000000":"#ffffff",e=this._colorShade+300;n[`${this._colorPalette}Palette`]||(this._colorPalette=t.strings.DEFAULT_COLOR_PALETTE),this._backgroundColor=n[`${this._colorPalette}Palette`][this._colorShade],this._shadowColor=n[`${this._colorPalette}Palette`][e],this._adapter.setBackgroundColor(this._backgroundColor),this._adapter.setIconColor(o),this._updateShadow()}get color(){return this._colorValue}set color(o){this._colorValue!==o&&(this._colorValue=o,this._parseColor(),this._render(),this._adapter.setHostAttribute(t.attributes.COLOR,this._colorValue))}get size(){return this._size}set size(o){this._size!==o&&(this._size=o,this._updateSize(),this._updateFontSize(),this._adapter.setHostAttribute(t.attributes.SIZE,this._size.toString()))}get shadow(){return this._shadow}set shadow(o){this._shadow!==o&&(this._shadow=o,this._adapter.setTextShadow(this._shadow,this._iterations,this._shadowColor),this._shadow?this._adapter.setHostAttribute(t.attributes.SHADOW,""):this._adapter.removeIconClass(t.attributes.SHADOW))}get iterations(){return this._iterations}set iterations(o){this._iterations!==o&&(this._usingCustomIterations=!0,this._iterations=o,this._updateShadow(),this._adapter.setHostAttribute(t.attributes.ITERATIONS,this._iterations.toString()))}};var D='<template><div class="forge-product-icon__background" part="root"><div class="forge-product-icon__container" part="container"><span class="forge-product-icon__icon" part="icon-container"><slot></slot></span><span class="forge-product-icon__text" part="text-container"><slot name="text"></slot></span></div></div></template>',L=".forge-product-icon__background{border-radius:50%;border-radius:var(--forge-product-icon-border-radius,50%);height:64px;width:64px;overflow:hidden}.forge-product-icon__container{display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;height:100%;width:100%}.forge-product-icon__icon ::slotted(*),.forge-product-icon__text ::slotted(*){display:-webkit-box!important;display:flex!important;color:#fff!important;font-size:var(--forge-product-icon-font-size, 48px)!important}:host{display:inline-block}:host([hidden]){display:none}",i=class extends f{constructor(){super();E(this,D,L),this._foundation=new u(new p(this))}static get observedAttributes(){return[t.attributes.COLOR,t.attributes.SIZE,t.attributes.SHADOW,t.attributes.ITERATIONS]}connectedCallback(){this._foundation.initialize()}attributeChangedCallback(e,a,r){switch(e){case t.attributes.COLOR:this.color=r;break;case t.attributes.SIZE:this.size=c(r);break;case t.attributes.SHADOW:this.shadow=C(r);break;case t.attributes.ITERATIONS:this.iterations=c(r);break}}};s([l()],i.prototype,"color",2),s([l()],i.prototype,"size",2),s([l()],i.prototype,"shadow",2),s([l()],i.prototype,"iterations",2),i=s([I({name:t.elementName})],i);function it(){T(i)}export{t as a,p as b,u as c,i as d,it as e};
7
+ //# sourceMappingURL=chunk.TSUAFZGY.js.map
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../src/product-icon/product-icon-constants.ts", "../../src/product-icon/product-icon-adapter.ts", "../../src/product-icon/product-icon-foundation.ts", "../../src/product-icon/product-icon.ts", "../../src/product-icon/index.ts"],
4
4
  "sourcesContent": ["import { COMPONENT_NAME_PREFIX } from '../constants';\r\nimport { COLOR_CONSTANTS } from '../theme/color-constants';\r\n\r\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}product-icon`;\r\n\r\nconst classes = {\r\n PRODUCT_ICON_BACKGROUND: 'forge-product-icon__background',\r\n PRODUCT_ICON: 'forge-product-icon__icon',\r\n PRODUCT_TEXT: 'forge-product-icon__text'\r\n};\r\n\r\nconst selectors = {\r\n PRODUCT_ICON_BACKGROUND: `.${classes.PRODUCT_ICON_BACKGROUND}`,\r\n PRODUCT_ICON: `.${classes.PRODUCT_ICON}`,\r\n PRODUCT_TEXT: `.${classes.PRODUCT_TEXT}`,\r\n SLOT: 'slot'\r\n};\r\n\r\nconst attributes = {\r\n COLOR: 'color',\r\n SIZE: 'size',\r\n SHADOW: 'shadow',\r\n ITERATIONS: 'iterations'\r\n};\r\n\r\nconst numbers = {\r\n DEFAULT_SIZE: 64,\r\n DEFAULT_ITERATIONS: 32,\r\n ACCESSIBILITY_COLOR_THRESHOLD: 300,\r\n ICON_FONT_SIZE_MODIFIER: 0.75,\r\n TEXT_FONT_SIZE_MODIFIER: 0.5\r\n};\r\n\r\nconst strings = {\r\n DEFAULT_COLOR_VALUE: 'indigo-500',\r\n DEFAULT_COLOR_PALETTE: 'indigo',\r\n DEFAULT_COLOR_SHADE: 500,\r\n DEFAULT_BACKGROUND_COLOR: COLOR_CONSTANTS.indigoPalette[500]\r\n};\r\n\r\nexport const PRODUCT_ICON_CONSTANTS = {\r\n elementName,\r\n attributes,\r\n classes,\r\n selectors,\r\n numbers,\r\n strings\r\n};\r\n", "import { addClass, generateTextShadow, getShadowElement, Platform, removeClass } from '@tylertech/forge-core';\r\nimport { BaseAdapter, IBaseAdapter } from '../core/base/base-adapter';\r\nimport { IProductIconComponent } from './product-icon';\r\nimport { PRODUCT_ICON_CONSTANTS } from './product-icon-constants';\r\n\r\nexport interface IProductIconAdapter extends IBaseAdapter {\r\n setBackgroundColor(color: string): void;\r\n setIconColor(color: string): void;\r\n setElementSize(value: number): void;\r\n setFontSize(value: number): void;\r\n setTextShadow(hasShadow: boolean, iterations: number, shadowColor: string): void;\r\n removeIconClass(classes: string | string[]): void;\r\n}\r\n\r\nexport class ProductIconAdapter extends BaseAdapter<IProductIconComponent> implements IProductIconAdapter {\r\n private _backgroundElement: HTMLElement;\r\n private _iconElement: HTMLElement;\r\n private _textElement: HTMLElement;\r\n\r\n constructor(component: IProductIconComponent) {\r\n super(component);\r\n this._backgroundElement = getShadowElement(component, PRODUCT_ICON_CONSTANTS.selectors.PRODUCT_ICON_BACKGROUND);\r\n this._iconElement = getShadowElement(component, PRODUCT_ICON_CONSTANTS.selectors.PRODUCT_ICON);\r\n this._textElement = getShadowElement(component, PRODUCT_ICON_CONSTANTS.selectors.PRODUCT_TEXT);\r\n }\r\n\r\n public setBackgroundColor(color: string): void {\r\n this._backgroundElement.style.backgroundColor = color;\r\n }\r\n\r\n public setIconColor(color: string): void {\r\n this._iconElement.style.color = color;\r\n this._textElement.style.color = color;\r\n }\r\n\r\n public setElementSize(value: number): void {\r\n this._backgroundElement.style.height = `${value}px`;\r\n this._backgroundElement.style.width = `${value}px`;\r\n }\r\n\r\n public setFontSize(value: number): void {\r\n const textFontSize = value * PRODUCT_ICON_CONSTANTS.numbers.TEXT_FONT_SIZE_MODIFIER;\r\n const iconFontSize = value * PRODUCT_ICON_CONSTANTS.numbers.ICON_FONT_SIZE_MODIFIER;\r\n\r\n this._iconElement.style.setProperty('--forge-product-icon-font-size', `${iconFontSize}px`);\r\n this._textElement.style.setProperty('--forge-product-icon-font-size', `${textFontSize}px`);\r\n\r\n this._iconElement.style.fontSize = `var(--forge-product-icon-font-size, ${iconFontSize}px)`;\r\n this._textElement.style.fontSize = `var(--forge-product-icon-font-size, ${textFontSize}px)`;\r\n }\r\n\r\n public removeIconClass(classes: string | string[]): void {\r\n removeClass(classes, this._iconElement);\r\n removeClass(classes, this._textElement);\r\n }\r\n\r\n public setTextShadow(hasShadow: boolean, iterations: number, shadowColor: string): void {\r\n if (hasShadow) {\r\n const shadow = generateTextShadow(iterations, shadowColor);\r\n this._iconElement.style.textShadow = shadow;\r\n this._textElement.style.textShadow = shadow;\r\n } else {\r\n this._iconElement.style.removeProperty('text-shadow');\r\n this._textElement.style.removeProperty('text-shadow');\r\n }\r\n }\r\n}\r\n", "import { ICustomElementFoundation, coerceNumber } from '@tylertech/forge-core';\r\n\r\nimport { COLOR_CONSTANTS } from '../theme';\r\nimport { IProductIconAdapter } from './product-icon-adapter';\r\nimport { PRODUCT_ICON_CONSTANTS } from './product-icon-constants';\r\n\r\nexport interface IProductIconFoundation extends ICustomElementFoundation {\r\n color: string;\r\n size: number;\r\n shadow: boolean;\r\n iterations: number;\r\n}\r\n\r\nexport class ProductIconFoundation implements IProductIconFoundation {\r\n private _colorValue = PRODUCT_ICON_CONSTANTS.strings.DEFAULT_COLOR_VALUE;\r\n private _colorPalette = PRODUCT_ICON_CONSTANTS.strings.DEFAULT_COLOR_PALETTE;\r\n private _colorShade = PRODUCT_ICON_CONSTANTS.strings.DEFAULT_COLOR_SHADE;\r\n private _size = PRODUCT_ICON_CONSTANTS.numbers.DEFAULT_SIZE;\r\n private _shadow = true;\r\n private _backgroundColor = PRODUCT_ICON_CONSTANTS.strings.DEFAULT_BACKGROUND_COLOR;\r\n private _shadowColor: string;\r\n private _iterations = PRODUCT_ICON_CONSTANTS.numbers.DEFAULT_ITERATIONS;\r\n private _usingCustomIterations = false;\r\n\r\n constructor(private _adapter: IProductIconAdapter) {}\r\n\r\n public initialize(): void {\r\n this._adapter.setElementSize(this._size);\r\n this._updateFontSize();\r\n this._parseColor();\r\n this._render();\r\n }\r\n\r\n private _parseColor(): void {\r\n if (this._colorValue.includes('-')) {\r\n this._colorPalette = this._colorValue.split('-')[0];\r\n this._colorShade = coerceNumber(this._colorValue.split('-')[1]);\r\n } else {\r\n this._colorPalette = this._colorValue;\r\n this._colorShade = PRODUCT_ICON_CONSTANTS.strings.DEFAULT_COLOR_SHADE;\r\n }\r\n }\r\n\r\n private _updateSize(): void {\r\n this._adapter.setElementSize(this._size);\r\n\r\n // If not using a custom iteration value, then we need to adjust the shadow length\r\n if (!this._usingCustomIterations) {\r\n this._iterations = this._size / 2;\r\n this._updateShadow();\r\n }\r\n }\r\n\r\n private _updateFontSize(): void {\r\n this._adapter.setFontSize(this._size);\r\n }\r\n\r\n private _updateShadow(): void {\r\n if (this._shadow) {\r\n this._adapter.setTextShadow(this._shadow, this._iterations, this._shadowColor);\r\n }\r\n }\r\n\r\n private _render(): void {\r\n if (!this._colorValue) {\r\n return;\r\n }\r\n\r\n const iconColor = this._colorShade <= PRODUCT_ICON_CONSTANTS.numbers.ACCESSIBILITY_COLOR_THRESHOLD ? '#000000' : '#ffffff';\r\n const shadowIncrement = this._colorShade + 300;\r\n\r\n if (!COLOR_CONSTANTS[`${this._colorPalette}Palette`]) {\r\n this._colorPalette = PRODUCT_ICON_CONSTANTS.strings.DEFAULT_COLOR_PALETTE;\r\n }\r\n\r\n this._backgroundColor = COLOR_CONSTANTS[`${this._colorPalette}Palette`][this._colorShade];\r\n this._shadowColor = COLOR_CONSTANTS[`${this._colorPalette}Palette`][shadowIncrement];\r\n\r\n this._adapter.setBackgroundColor(this._backgroundColor);\r\n this._adapter.setIconColor(iconColor);\r\n this._updateShadow();\r\n }\r\n\r\n public get color(): string {\r\n return this._colorValue;\r\n }\r\n public set color(value: string) {\r\n if (this._colorValue !== value) {\r\n this._colorValue = value;\r\n this._parseColor();\r\n this._render();\r\n this._adapter.setHostAttribute(PRODUCT_ICON_CONSTANTS.attributes.COLOR, this._colorValue);\r\n }\r\n }\r\n\r\n public get size(): number {\r\n return this._size;\r\n }\r\n public set size(value: number) {\r\n if (this._size !== value) {\r\n this._size = value;\r\n this._updateSize();\r\n this._updateFontSize();\r\n this._adapter.setHostAttribute(PRODUCT_ICON_CONSTANTS.attributes.SIZE, this._size.toString());\r\n }\r\n }\r\n\r\n public get shadow(): boolean {\r\n return this._shadow;\r\n }\r\n public set shadow(value: boolean) {\r\n if (this._shadow !== value) {\r\n this._shadow = value;\r\n this._adapter.setTextShadow(this._shadow, this._iterations, this._shadowColor);\r\n if (this._shadow) {\r\n this._adapter.setHostAttribute(PRODUCT_ICON_CONSTANTS.attributes.SHADOW, '');\r\n } else {\r\n this._adapter.removeIconClass(PRODUCT_ICON_CONSTANTS.attributes.SHADOW);\r\n }\r\n }\r\n }\r\n\r\n public get iterations(): number {\r\n return this._iterations;\r\n }\r\n public set iterations(value: number) {\r\n if (this._iterations !== value) {\r\n this._usingCustomIterations = true;\r\n this._iterations = value;\r\n this._updateShadow();\r\n this._adapter.setHostAttribute(PRODUCT_ICON_CONSTANTS.attributes.ITERATIONS, this._iterations.toString());\r\n }\r\n }\r\n}\r\n", "import { CustomElement, attachShadowTemplate, coerceNumber, coerceBoolean, FoundationProperty } from '@tylertech/forge-core';\r\nimport { ProductIconAdapter } from './product-icon-adapter';\r\nimport { ProductIconFoundation } from './product-icon-foundation';\r\nimport { PRODUCT_ICON_CONSTANTS } from './product-icon-constants';\r\nimport { BaseComponent, IBaseComponent } from '../core/base/base-component';\r\n\r\nconst template = '<template><div class=\\\"forge-product-icon__background\\\" part=\\\"root\\\"><div class=\\\"forge-product-icon__container\\\" part=\\\"container\\\"><span class=\\\"forge-product-icon__icon\\\" part=\\\"icon-container\\\"><slot></slot></span><span class=\\\"forge-product-icon__text\\\" part=\\\"text-container\\\"><slot name=\\\"text\\\"></slot></span></div></div></template>';\r\nconst styles = '.forge-product-icon__background{border-radius:50%;border-radius:var(--forge-product-icon-border-radius,50%);height:64px;width:64px;overflow:hidden}.forge-product-icon__container{display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;height:100%;width:100%}.forge-product-icon__icon ::slotted(*),.forge-product-icon__text ::slotted(*){display:-webkit-box!important;display:flex!important;color:#fff!important;font-size:var(--forge-product-icon-font-size, 48px)!important}:host{display:inline-block}:host([hidden]){display:none}';\r\n\r\nexport interface IProductIconComponent extends IBaseComponent {\r\n color: string;\r\n size: number;\r\n shadow: boolean;\r\n iterations: number;\r\n}\r\n\r\ndeclare global {\r\n interface HTMLElementTagNameMap {\r\n 'forge-product-icon': IProductIconComponent;\r\n }\r\n}\r\n\r\n/**\r\n * The web component class behind the `<forge-product-icon>` custom element.\r\n * \r\n * @tag forge-product-icon\r\n */\r\n@CustomElement({\r\n name: PRODUCT_ICON_CONSTANTS.elementName\r\n})\r\nexport class ProductIconComponent extends BaseComponent implements IProductIconComponent {\r\n public static get observedAttributes(): string[] {\r\n return [\r\n PRODUCT_ICON_CONSTANTS.attributes.COLOR,\r\n PRODUCT_ICON_CONSTANTS.attributes.SIZE,\r\n PRODUCT_ICON_CONSTANTS.attributes.SHADOW,\r\n PRODUCT_ICON_CONSTANTS.attributes.ITERATIONS\r\n ];\r\n }\r\n\r\n private _foundation: ProductIconFoundation;\r\n\r\n constructor() {\r\n super();\r\n attachShadowTemplate(this, template, styles);\r\n this._foundation = new ProductIconFoundation(new ProductIconAdapter(this));\r\n }\r\n\r\n public connectedCallback(): void {\r\n this._foundation.initialize();\r\n }\r\n\r\n public attributeChangedCallback(name: string, oldValue: string, newValue: string): void {\r\n switch (name) {\r\n case PRODUCT_ICON_CONSTANTS.attributes.COLOR:\r\n this.color = newValue;\r\n break;\r\n case PRODUCT_ICON_CONSTANTS.attributes.SIZE:\r\n this.size = coerceNumber(newValue);\r\n break;\r\n case PRODUCT_ICON_CONSTANTS.attributes.SHADOW:\r\n this.shadow = coerceBoolean(newValue);\r\n break;\r\n case PRODUCT_ICON_CONSTANTS.attributes.ITERATIONS:\r\n this.iterations = coerceNumber(newValue);\r\n break;\r\n }\r\n }\r\n\r\n /** The color of the container element from the material color palette. */\r\n @FoundationProperty()\r\n public declare color: string;\r\n\r\n /** Controls the height and width of the container element. */\r\n @FoundationProperty()\r\n public declare size: number;\r\n\r\n /** Controls the visibility of the text shadow. */\r\n @FoundationProperty()\r\n public declare shadow: boolean;\r\n\r\n /** The number of iterations to apply the text shadow. */\r\n @FoundationProperty()\r\n public declare iterations: number;\r\n}\r\n", "import { defineCustomElement } from '@tylertech/forge-core';\r\n\r\nimport { ProductIconComponent } from './product-icon';\r\n\r\nexport * from './product-icon-adapter';\r\nexport * from './product-icon-constants';\r\nexport * from './product-icon-foundation';\r\nexport * from './product-icon';\r\n\r\nexport function defineProductIconComponent(): void {\r\n defineCustomElement(ProductIconComponent);\r\n}\r\n"],
5
- "mappings": "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",
5
+ "mappings": "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",
6
6
  "names": ["elementName", "COMPONENT_NAME_PREFIX", "classes", "selectors", "attributes", "numbers", "strings", "COLOR_CONSTANTS", "PRODUCT_ICON_CONSTANTS", "ProductIconAdapter", "BaseAdapter", "component", "getShadowElement", "PRODUCT_ICON_CONSTANTS", "color", "value", "textFontSize", "iconFontSize", "classes", "removeClass", "hasShadow", "iterations", "shadowColor", "shadow", "generateTextShadow", "ProductIconFoundation", "_adapter", "PRODUCT_ICON_CONSTANTS", "coerceNumber", "iconColor", "shadowIncrement", "COLOR_CONSTANTS", "value", "template", "styles", "ProductIconComponent", "BaseComponent", "attachShadowTemplate", "ProductIconFoundation", "ProductIconAdapter", "PRODUCT_ICON_CONSTANTS", "name", "oldValue", "newValue", "coerceNumber", "coerceBoolean", "__decorateClass", "FoundationProperty", "CustomElement", "defineProductIconComponent", "defineCustomElement", "ProductIconComponent"]
7
7
  }
@@ -0,0 +1,7 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2023 Tyler Technologies, Inc.
4
+ * License: Apache-2.0
5
+ */
6
+ import{a as b}from"./chunk.WMP2OLMG.js";import{a as E}from"./chunk.KDJZN6EW.js";import{a as g}from"./chunk.MGLWXAZO.js";import{a as I}from"./chunk.I7OY43HW.js";import{c as m,d as k}from"./chunk.QG5EYBS3.js";import{a as y}from"./chunk.XIQFHO5R.js";import{a as C}from"./chunk.3TKTJ3BY.js";import{a as l}from"./chunk.NVUMRW44.js";import{f as v,k as f}from"./chunk.TPXXHX5J.js";import{m as D}from"./chunk.HZUQXCOQ.js";import{a as h,g as u,k as d,m as _}from"./chunk.J2M2MXP2.js";import{d as r}from"./chunk.M3QDAYD2.js";var P={MIN:"min",MAX:"max",OPEN:"open",DISABLED:"disabled",POPUP_CLASSES:"popup-classes",MASKED:"masked",MASK_FORMAT:"mask-format",SHOW_MASK_FORMAT:"show-mask-format",VALUE_MODE:"value-mode",ALLOW_INVALID_DATE:"allow-invalid-date",SHOW_TODAY:"show-today",SHOW_CLEAR:"show-clear",DISABLED_DAYS_OF_WEEK:"disabled-days-of-week",YEAR_RANGE:"year-range",LOCALE:"locale"},O={TOGGLE:"forge-date-picker-toggle"},S={INPUT:"input",TOGGLE:"[forge-date-picker-toggle],[data-forge-date-picker-toggle]"},s={observedAttributes:P,attributes:O,selectors:S};var n=class extends f{constructor(){super()}connectedCallback(){this.querySelector(s.selectors.INPUT)?this._foundation.initialize():D(this,s.selectors.INPUT).then(()=>{this._foundation.initialize()})}disconnectedCallback(){this._foundation.disconnect()}attributeChangedCallback(t,a,i){switch(t){case s.observedAttributes.MIN:this.min=i;break;case s.observedAttributes.MAX:this.max=i;break;case s.observedAttributes.OPEN:this.open=d(i);break;case s.observedAttributes.POPUP_CLASSES:this.popupClasses=i;break;case s.observedAttributes.DISABLED:this.disabled=d(i);break;case s.observedAttributes.MASKED:this.masked=d(i);break;case s.observedAttributes.SHOW_MASK_FORMAT:this.showMaskFormat=d(i);break;case s.observedAttributes.MASK_FORMAT:this.maskFormat=i;break;case s.observedAttributes.VALUE_MODE:this.valueMode=i;break;case s.observedAttributes.ALLOW_INVALID_DATE:this.allowInvalidDate=d(i);break;case s.observedAttributes.SHOW_TODAY:this.showToday=d(i);break;case s.observedAttributes.SHOW_CLEAR:this.showClear=d(i);break;case s.observedAttributes.DISABLED_DAYS_OF_WEEK:this.disabledDaysOfWeek=_(i);break;case s.observedAttributes.YEAR_RANGE:this.yearRange=i;break;case s.observedAttributes.LOCALE:this.locale=i;break}}};r([l()],n.prototype,"value",2),r([l()],n.prototype,"min",2),r([l()],n.prototype,"max",2),r([l()],n.prototype,"disabledDates",2),r([l()],n.prototype,"open",2),r([l()],n.prototype,"popupClasses",2),r([l()],n.prototype,"disabled",2),r([l()],n.prototype,"masked",2),r([l()],n.prototype,"maskFormat",2),r([l()],n.prototype,"showMaskFormat",2),r([l()],n.prototype,"valueMode",2),r([l()],n.prototype,"notifyInputValueChanges",2),r([l()],n.prototype,"allowInvalidDate",2),r([l()],n.prototype,"showToday",2),r([l()],n.prototype,"showClear",2),r([l()],n.prototype,"parseCallback",2),r([l()],n.prototype,"formatCallback",2),r([l()],n.prototype,"prepareMaskCallback",2),r([l()],n.prototype,"disabledDaysOfWeek",2),r([l()],n.prototype,"disableDayCallback",2),r([l()],n.prototype,"yearRange",2),r([l()],n.prototype,"locale",2);function w(p){let e=document.createElement("forge-icon-button");e.type="button",e.tabIndex=-1,e.setAttribute("aria-label","Toggle calendar"),e.slot="trailing",e.density="medium",e.style.marginRight="4px";let t=document.createElement("forge-icon");return t.name=p,e.appendChild(t),e}var M=class extends C{constructor(t){super(t);this._valueChangeListeners=[];this._identifier=h()}initialize(){this._initializeInput()}destroy(){var t;(t=this._calendarDropdown)==null||t.destroy(),this.destroyValueChangeListener()}destroyValueChangeListener(){this._valueChangeListeners.forEach(t=>t())}addToggleListener(t,a){var i;(i=this._toggleElement)==null||i.addEventListener(t,a)}removeToggleListener(t,a){var i;(i=this._toggleElement)==null||i.removeEventListener(t,a)}attachCalendar(t,a){var i,o,c;if(this._calendarDropdown&&((i=this._calendarDropdown)==null||i.destroy()),this._initializeCalendarDropdown(),!this._calendarDropdown)throw new Error("CalendarDropdown was not initialized.");a&&Object.assign(this._calendarDropdown,a),this._calendarDropdown.open(t),(o=this._calendarDropdown.dropdownElement)==null||o.style.setProperty("--forge-calendar-width","320px"),(c=this._calendarDropdown.calendar)==null||c.style.setProperty("margin","8px")}detachCalendar(){this._calendarDropdown&&this._calendarDropdown.isOpen&&this._calendarDropdown.close()}goToCalendarDate(t){var a,i;(i=(a=this._calendarDropdown)==null?void 0:a.calendar)==null||i.goToDate(t,!0)}addDateSelectListener(t){var a,i;(i=(a=this._calendarDropdown)==null?void 0:a.calendar)==null||i.addEventListener(b.events.DATE_SELECT,t)}removeDateSelectListener(t){var a,i;(i=(a=this._calendarDropdown)==null?void 0:a.calendar)==null||i.removeEventListener(b.events.DATE_SELECT,t)}setCalendarValue(t){var a;(a=this._calendarDropdown)!=null&&a.calendar&&(this._calendarDropdown.calendar.value=t)}setCalendarMinDate(t){var a;(a=this._calendarDropdown)!=null&&a.calendar&&(this._calendarDropdown.calendar.min=t)}setCalendarMaxDate(t){var a;(a=this._calendarDropdown)!=null&&a.calendar&&(this._calendarDropdown.calendar.max=t)}setCalendarDisabledDates(t){var a;(a=this._calendarDropdown)!=null&&a.calendar&&(this._calendarDropdown.calendar.disabledDates=t)}setCalendarDisabledDaysOfWeek(t){var a;(a=this._calendarDropdown)!=null&&a.calendar&&(this._calendarDropdown.calendar.disabledDaysOfWeek=t)}setCalendarDisableDayCallback(t){var a;(a=this._calendarDropdown)!=null&&a.calendar&&(this._calendarDropdown.calendar.disabledDateBuilder=t)}setCalendarActiveDate(t){var a,i;(i=(a=this._calendarDropdown)==null?void 0:a.calendar)==null||i.setActiveDate(t)}getCalendarActiveDate(){var t,a;return(a=(t=this._calendarDropdown)==null?void 0:t.calendar)==null?void 0:a.activeDate}setCalendarYearRange(t){var a,i;(i=(a=this._calendarDropdown)==null?void 0:a.calendar)!=null&&i.yearRange&&(this._calendarDropdown.calendar.yearRange=t)}setCalendarLocale(t){var a;(a=this._calendarDropdown)!=null&&a.calendar&&(this._calendarDropdown.locale=t)}propagateCalendarKey(t){var a,i;(i=(a=this._calendarDropdown)==null?void 0:a.calendar)==null||i.handleKey(t)}tryCreateToggle(){let t=this._component.querySelector("forge-text-field"),a=this._component.querySelector(s.selectors.TOGGLE);if(t){let i=t.querySelector(`${I.elementName}[slot=trailing]`);if(i||a){this._toggleElement=i||a;return}let o=this._createToggleElement();t.appendChild(o),this._toggleElement=o}else a&&(this._toggleElement=a)}_createToggleElement(){return w("insert_invitation")}_getDefaultTargetElement(){let t=this._component.querySelector("forge-text-field");if(t&&t.shadowRoot){let a=v(t,E.selectors.ROOT);if(a)return a}return this._component.querySelector("input")||this._component}};var A=class{constructor(e){this._adapter=e;this._value=null;this._min=null;this._max=null;this._disabledDates=null;this._open=!1;this._disabled=!1;this._masked=!0;this._maskFormat=y;this._showMaskFormat=!1;this._valueMode="object";this._notifyInputValueChanges=!0;this._allowInvalidDate=!1;this._showToday=!1;this._showClear=!1;this._yearRange="-50:+50";this._isInitialized=!1;this._inputListener=t=>this._onInput(t),this._inputKeydownListener=t=>this._onInputKeydown(t),this._inputFocusListener=t=>this._onInputFocus(t),this._inputBlurListener=t=>this._onInputBlur(t),this._inputValueChangedListener=t=>this._onInputValueChanged(t),this._dropdownCloseListener=()=>this._onDropdownClose(),this._toggleMousedownListener=t=>this._onToggleMousedown(t),this._dateSelectListener=t=>this._onDateSelected(t.detail),this._activeChangeListener=t=>this._onActiveDescendantChanged(t),this._todayListener=()=>this._onToday(),this._clearListener=()=>this._onClear()}initialize(){var e;if(this._adapter.initialize(),this._adapter.initializeAccessibility(),!this._adapter.hasInputElement())throw new Error("Unable to locate child <input> element.");(e=this._initializeState)==null||e.call(this),this._adapter.tryCreateToggle(),this._masked||this._setInputChangeListeners(),this._initializeListeners(),this._setFormattedInputValue(!0),this._applyDisabled(),this._applyMask(),this._initializeValueChangedListeners(),this._isInitialized=!0}disconnect(){this._isInitialized=!1,this._destroyListeners(),this._masked&&this._adapter.destroyMask(),this._closeCalendar(),this._adapter.destroy()}_initializeListeners(){this._adapter.addToggleListener("mousedown",this._toggleMousedownListener),this._adapter.addInputListener("keydown",this._inputKeydownListener,!0),this._adapter.addInputListener("focus",this._inputFocusListener),this._adapter.addInputListener("blur",this._inputBlurListener)}_initializeValueChangedListeners(){this._adapter.setInputValueChangedListener(this,this._inputValueChangedListener)}_setInputChangeListeners(){this._adapter.addInputListener("input",this._inputListener)}_removeInputChangeListeners(){this._adapter.removeInputListener("input",this._inputListener)}_destroyListeners(){this._adapter.removeToggleListener("mousedown",this._toggleMousedownListener),this._adapter.removeInputListener("keydown",this._inputKeydownListener,!0),this._adapter.removeInputListener("focus",this._inputFocusListener),this._adapter.removeInputListener("blur",this._inputBlurListener),this._removeInputChangeListeners()}_onInput(e){this._handleInput(this._adapter.getInputValue())}_onInputFocus(e){this.masked&&this.showMaskFormat&&this._applyMask(),this._adapter.selectInputText()}_onInputBlur(e){this.masked&&this.showMaskFormat&&this._applyMask(),this._formatInputValue(),this._open&&!this._adapter.isInputFocused()&&this._closeCalendar(!0)}_openCalendar(e=!1){this._formatInputValue();let t={mode:this._mode,value:this._getCurrentValue(),min:this._min,max:this._max,disabledDates:this._disabledDates,yearRange:this._yearRange,todayButton:this._showToday,clearButton:this._showClear,todayCallback:this._todayListener,clearCallback:this._clearListener,disabledDateBuilder:this._disableDayCallback,disabledDaysOfWeek:this._disabledDaysOfWeek,preventFocus:!0,menuAnimation:"fade",fixedHeight:!0,selectionFollowsMonth:!0,locale:this._locale},a={popupClasses:this._popupClasses,closeCallback:this._dropdownCloseListener,activeChangeCallback:this._activeChangeListener};this._adapter.attachCalendar(t,a),this._adapter.addDateSelectListener(this._dateSelectListener),this._open=!0,this._adapter.setHostAttribute(s.observedAttributes.OPEN),e&&this._emitOpenEvent()}_closeCalendar(e=!1){this._open=!1,this._adapter.removeHostAttribute(s.observedAttributes.OPEN),this._adapter.removeDateSelectListener(this._dateSelectListener),this._adapter.detachCalendar(),e&&this._emitCloseEvent()}_onInputKeydown(e){if(e.shiftKey)switch(e.key){case"Delete":case"Backspace":e.preventDefault(),this._onClear(),this._open&&this._closeCalendar(!0);return;case"ArrowLeft":case"ArrowRight":case"m":case"M":case"y":case"Y":case"d":case"D":if(this._open){e.preventDefault(),this._adapter.propagateCalendarKey(e);return}break}switch(e.key){case"Escape":this._open&&(e.preventDefault(),e.stopPropagation(),this._closeCalendar(!0));break;case"ArrowDown":e.preventDefault(),this._open?this._adapter.propagateCalendarKey(e):(this._adapter.selectInputText(),this._openCalendar(!0));break;case"ArrowUp":this._open&&(e.preventDefault(),this._adapter.propagateCalendarKey(e));break;case"ArrowLeft":case"ArrowRight":case"Enter":case"Home":case"End":if(this._open){e.key==="Enter"&&e.stopPropagation(),e.preventDefault();let t=["ArrowLeft","ArrowRight"].includes(e.key);this._masked&&t&&e.stopImmediatePropagation(),this._adapter.propagateCalendarKey(e)}break;case"n":case"t":e.preventDefault(),this._onToday(),this._open&&this._closeCalendar(!0);break;case"PageUp":case"PageDown":this._open&&(e.preventDefault(),this._adapter.propagateCalendarKey(e));break;case"Tab":if(this._open){let t=this._adapter.getCalendarActiveDate();t&&this._onDateSelected({date:t,selected:!0,type:"date"})}break}}_getSanitizedDateString(e){return e.replace(/_|[a-z]|[A-Z]/g,"").replace(/\/$|\/\/$/,"")}_onToggleMousedown(e){this._disabled||(e.stopPropagation(),!this._adapter.isInputDisabled()&&(e.preventDefault(),this._open?this._closeCalendar(!0):(g.isMobile?this._adapter.tryBlurInput():this._adapter.tryFocusInput(),this._openCalendar(!0))))}_onDropdownClose(){this._closeCalendar(!0)}_onActiveDescendantChanged(e){this._adapter.setActiveDescendant(e)}_formatInputValue(){let e=this._adapter.getInputValue();if(e){let t=this._parseDateString(e);if(u(t)&&this._isDateValueAcceptable(t)){let a=this._formatDate(t);a&&a!==e&&this._adapter.setInputValue(a,this._notifyInputValueChanges)}else this._allowInvalidDate||this._adapter.setInputValue("",this._notifyInputValueChanges)}}_formatDate(e){return u(e)?typeof this._formatCallback=="function"?this._formatCallback(e):k(e):""}_parseDateString(e){if(e=e.replace(/_|\s/g,""),!e||!e.length)return null;let t=typeof this._parseCallback=="function"?this._parseCallback(e):m(e);return u(t)?t:null}_coerceDateValue(e){return typeof e=="string"?this._parseDateString(e):e}_getTypedValue(e){switch(this._valueMode){case"object":return e;case"string":return this._formatDate(e);case"iso-string":return e&&e.setHours(0,0,0,0),e?e.toISOString():null;default:return e}}_isDateValueAcceptable(e){if(!e||this._allowInvalidDate)return!0;let t=()=>this._min&&!this._allowInvalidDate?this._min.getTime()<=e.getTime():!0,a=()=>this._max&&!this._allowInvalidDate?this._max.getTime()>=e.getTime():!0,i=()=>Array.isArray(this._disabledDates)?this._disabledDates:this._disabledDates?[this._disabledDates]:[],o=()=>!i().some(L=>L.getTime()===e.getTime()),c=()=>!(this._disabledDaysOfWeek&&this._disabledDaysOfWeek.includes(e.getDay())),T=()=>typeof this._disableDayCallback!="function"||!this._disableDayCallback(e);return t()&&a()&&o()&&c()&&T()}_initializeMask(){let e={showMaskFormat:this._showMaskFormat&&this._adapter.isInputFocused(),pattern:this._maskFormat,onChange:t=>this._handleInput(t)};this._prepareMaskCallback&&(e.prepareCallback=(t,a,i,o)=>this._prepareMaskCallback.call(null,t,a,i,o)),this._adapter.initializeMask(e)}_applyMask(){this._masked?this._initializeMask():(this._adapter.destroyMask(),this._formatInputValue())}_applyMin(){this._isInitialized&&this._adapter.setCalendarMinDate(this._min)}_applyMax(){this._isInitialized&&this._adapter.setCalendarMaxDate(this._max)}_applyDisableDayCallback(){this._adapter.setCalendarDisableDayCallback(this._disableDayCallback)}_applyDisabled(){this._adapter.setDisabled(this._disabled)}get valueMode(){return this._valueMode}set valueMode(e){if(this._valueMode!==e){if(!["object","string","iso-string"].includes(e))return;this._valueMode=e,this._emitChangeEvent(this._value),this._adapter.setHostAttribute(s.observedAttributes.VALUE_MODE,this._valueMode)}}get min(){return this._min?new Date(this._min.getTime()):null}set min(e){if(this._min!==e){let t=this._coerceDateValue(e);this._min=t?new Date(t.getTime()):null,this._applyMin(),this._isInitialized&&this._open&&this._adapter.setCalendarMinDate(this._min)}}get max(){return this._max?new Date(this._max.getTime()):null}set max(e){this._max!==e&&(this._max=this._coerceDateValue(e),this._applyMax(),this._isInitialized&&this._open&&this._adapter.setCalendarMaxDate(this._max))}get open(){return this._open}set open(e){this._open!==e&&this._isInitialized&&(this._open=e,this._open?this._openCalendar():this._closeCalendar())}get disabled(){return this._disabled}set disabled(e){this._disabled!==e&&(this._disabled=e,this._isInitialized&&this._applyDisabled())}get disabledDates(){return this._disabledDates?Array.isArray(this._disabledDates)?this._disabledDates.map(e=>new Date(e.getTime())):new Date(this._disabledDates.getTime()):null}set disabledDates(e){e?Array.isArray(e)?this._disabledDates=e.map(t=>new Date(t.getTime())):this._disabledDates=new Date(e.getTime()):this._disabledDates=null,this._isInitialized&&this._open&&this._adapter.setCalendarDisabledDates(this._disabledDates),this._applyDisabledDates()}get popupClasses(){return Array.isArray(this._popupClasses)?[...this._popupClasses]:this._popupClasses}set popupClasses(e){Array.isArray(e)?this._popupClasses=[...e]:this._popupClasses=e}get masked(){return this._masked}set masked(e){this._masked!==e&&(this._masked=e,this._isInitialized&&(this._masked?(this._removeInputChangeListeners(),this._applyMask()):(this._adapter.destroyMask(),this._setInputChangeListeners(),this._formatInputValue())))}get maskFormat(){return this._maskFormat}set maskFormat(e){this._maskFormat!==e&&(this._maskFormat=e,this._isInitialized&&this._applyMask())}get showMaskFormat(){return this._showMaskFormat}set showMaskFormat(e){this._showMaskFormat!==e&&(this._showMaskFormat=e)}get notifyInputValueChanges(){return this._notifyInputValueChanges}set notifyInputValueChanges(e){this._notifyInputValueChanges=e}get allowInvalidDate(){return this._allowInvalidDate}set allowInvalidDate(e){this._allowInvalidDate!==e&&(this._allowInvalidDate=e,this._adapter.toggleHostAttribute(s.observedAttributes.ALLOW_INVALID_DATE,this._allowInvalidDate))}get disabledDaysOfWeek(){return this._disabledDaysOfWeek}set disabledDaysOfWeek(e){this._disabledDaysOfWeek!==e&&(this._disabledDaysOfWeek=e,this._isInitialized&&this._open&&this._adapter.setCalendarDisabledDaysOfWeek(this._disabledDaysOfWeek),this._applyDisabledDaysOfWeek())}get disableDayCallback(){return this._disableDayCallback}set disableDayCallback(e){e!==this._disableDayCallback&&(this._disableDayCallback=e,this._applyDisableDayCallback())}get parseCallback(){return this._parseCallback}set parseCallback(e){this._parseCallback=e,this._isInitialized&&this._applyMask()}get formatCallback(){return this._formatCallback}set formatCallback(e){this._formatCallback=e,this._isInitialized&&this._applyMask()}get prepareMaskCallback(){return this._prepareMaskCallback}set prepareMaskCallback(e){this._prepareMaskCallback=e,this._isInitialized&&this._applyMask()}get showToday(){return this._showToday}set showToday(e){this._showToday=e}get showClear(){return this._showClear}set showClear(e){this._showClear=e}get yearRange(){return this._yearRange}set yearRange(e){this._yearRange!==e&&(this._yearRange=e,this._isInitialized&&this._open&&this._adapter.setCalendarYearRange(this._yearRange))}get locale(){return this._locale}set locale(e){this._locale!==e&&(this._locale=e,this._isInitialized&&this._open&&this._adapter.setCalendarLocale(this._locale))}};export{s as a,n as b,w as c,M as d,A as e};
7
+ //# sourceMappingURL=chunk.U42I3PGF.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/date-picker/base/base-date-picker-constants.ts", "../../src/date-picker/base/base-date-picker.ts", "../../src/date-picker/base/base-date-picker-utils.ts", "../../src/date-picker/base/base-date-picker-adapter.ts", "../../src/date-picker/base/base-date-picker-foundation.ts"],
4
+ "sourcesContent": ["import IMask, { Masked, InputMask } from 'imask';\nimport { DayOfWeek, ICalendarDateSelectEventData } from '../../calendar';\n\nexport declare type DatePickerParseCallback = (value: string) => Date | null;\nexport declare type DatePickerFormatCallback = (value: Date | null) => string;\nexport declare type DatePickerPrepareMaskCallback = (value: string, masked: Masked<string>, flags: IMask.AppendFlags, maskInstance: InputMask<IMask.MaskedPatternOptions>) => string;\nexport declare type DatePickerValueMode = 'object' | 'string' | 'iso-string';\n\nexport interface IDatePickerCalendarDropdownConfig<T> {\n value?: T | null;\n min?: Date | null;\n max?: Date | null;\n disabledDates?: Date | Date[] | null;\n popupClasses: string | string[];\n closeCallback: () => void;\n selectCallback: (value: ICalendarDateSelectEventData) => void;\n activeChangeCallback: (id: string) => void;\n disableDayCallback: (date: Date) => boolean;\n showToday: boolean;\n showClear: boolean;\n todayCallback: () => void;\n clearCallback: () => void;\n disabledDaysOfWeek?: DayOfWeek[] | null;\n}\n\n\nconst observedAttributes = {\n MIN: 'min',\n MAX: 'max',\n OPEN: 'open',\n DISABLED: 'disabled',\n POPUP_CLASSES: 'popup-classes',\n MASKED: 'masked',\n MASK_FORMAT: 'mask-format',\n SHOW_MASK_FORMAT: 'show-mask-format',\n VALUE_MODE: 'value-mode',\n ALLOW_INVALID_DATE: 'allow-invalid-date',\n SHOW_TODAY: 'show-today',\n SHOW_CLEAR: 'show-clear',\n DISABLED_DAYS_OF_WEEK: 'disabled-days-of-week',\n YEAR_RANGE: 'year-range',\n LOCALE: 'locale'\n};\n\nconst attributes = {\n TOGGLE: 'forge-date-picker-toggle'\n};\n\nconst selectors = {\n INPUT: 'input',\n TOGGLE: '[forge-date-picker-toggle],[data-forge-date-picker-toggle]'\n};\n\nexport const BASE_DATE_PICKER_CONSTANTS = {\n observedAttributes,\n attributes,\n selectors\n};\n", "import { coerceBoolean, ensureChild, FoundationProperty, coerceNumberArray } from '@tylertech/forge-core';\nimport { DayOfWeek } from '../../calendar/calendar-constants';\nimport { BaseComponent, IBaseComponent } from '../../core/base/base-component';\nimport { BASE_DATE_PICKER_CONSTANTS, DatePickerFormatCallback, DatePickerParseCallback, DatePickerPrepareMaskCallback, DatePickerValueMode } from './base-date-picker-constants';\nimport { BaseDatePickerFoundation } from './base-date-picker-foundation';\nimport { IBaseDatePickerAdapter } from './base-date-picker-adapter';\n\nexport interface IBaseDatePickerComponent<TValue> extends IBaseComponent {\n value: TValue | null | undefined;\n min: Date | string | null | undefined;\n max: Date | string | null | undefined;\n disabledDates: Date | Date[] | null | undefined;\n open: boolean;\n parseCallback: DatePickerParseCallback;\n formatCallback: DatePickerFormatCallback;\n prepareMaskCallback: DatePickerPrepareMaskCallback;\n disableDayCallback: (date: Date) => boolean;\n popupClasses: string | string[];\n disabled: boolean;\n masked: boolean;\n maskFormat: string;\n showMaskFormat: boolean;\n valueMode: DatePickerValueMode;\n notifyInputValueChanges: boolean;\n allowInvalidDate: boolean;\n showToday: boolean;\n showClear: boolean;\n disabledDaysOfWeek: DayOfWeek[];\n yearRange: string;\n locale: string | undefined;\n}\n\nexport abstract class BaseDatePickerComponent<TPublicValue, TPrivateValue, TFoundation extends BaseDatePickerFoundation<IBaseDatePickerAdapter, TPublicValue, TPrivateValue>> extends BaseComponent implements IBaseDatePickerComponent<TPublicValue> {\n protected _foundation: TFoundation;\n\n constructor() {\n super();\n }\n\n public connectedCallback(): void {\n if (this.querySelector(BASE_DATE_PICKER_CONSTANTS.selectors.INPUT)) {\n this._foundation.initialize();\n } else {\n ensureChild(this, BASE_DATE_PICKER_CONSTANTS.selectors.INPUT).then(() => {\n this._foundation.initialize();\n });\n }\n }\n\n public disconnectedCallback(): void {\n this._foundation.disconnect();\n }\n\n public attributeChangedCallback(name: string, oldValue: string, newValue: string): void {\n switch (name) {\n case BASE_DATE_PICKER_CONSTANTS.observedAttributes.MIN:\n this.min = newValue;\n break;\n case BASE_DATE_PICKER_CONSTANTS.observedAttributes.MAX:\n this.max = newValue;\n break;\n case BASE_DATE_PICKER_CONSTANTS.observedAttributes.OPEN:\n this.open = coerceBoolean(newValue);\n break;\n case BASE_DATE_PICKER_CONSTANTS.observedAttributes.POPUP_CLASSES:\n this.popupClasses = newValue;\n break;\n case BASE_DATE_PICKER_CONSTANTS.observedAttributes.DISABLED:\n this.disabled = coerceBoolean(newValue);\n break;\n case BASE_DATE_PICKER_CONSTANTS.observedAttributes.MASKED:\n this.masked = coerceBoolean(newValue);\n break;\n case BASE_DATE_PICKER_CONSTANTS.observedAttributes.SHOW_MASK_FORMAT:\n this.showMaskFormat = coerceBoolean(newValue);\n break;\n case BASE_DATE_PICKER_CONSTANTS.observedAttributes.MASK_FORMAT:\n this.maskFormat = newValue;\n break;\n case BASE_DATE_PICKER_CONSTANTS.observedAttributes.VALUE_MODE:\n this.valueMode = newValue as DatePickerValueMode;\n break;\n case BASE_DATE_PICKER_CONSTANTS.observedAttributes.ALLOW_INVALID_DATE:\n this.allowInvalidDate = coerceBoolean(newValue);\n break;\n case BASE_DATE_PICKER_CONSTANTS.observedAttributes.SHOW_TODAY:\n this.showToday = coerceBoolean(newValue);\n break;\n case BASE_DATE_PICKER_CONSTANTS.observedAttributes.SHOW_CLEAR:\n this.showClear = coerceBoolean(newValue);\n break;\n case BASE_DATE_PICKER_CONSTANTS.observedAttributes.DISABLED_DAYS_OF_WEEK:\n this.disabledDaysOfWeek = coerceNumberArray(newValue);\n break;\n case BASE_DATE_PICKER_CONSTANTS.observedAttributes.YEAR_RANGE:\n this.yearRange = newValue;\n break;\n case BASE_DATE_PICKER_CONSTANTS.observedAttributes.LOCALE:\n this.locale = newValue;\n break;\n }\n }\n\n /** Gets/sets the value of the component. */\n @FoundationProperty()\n public declare value: TPublicValue | null | undefined;\n\n /** Gets/sets the minimum date the calendar will allow. */\n @FoundationProperty()\n public declare min: Date | string | null | undefined;\n\n /** Gets/sets the maximum date the calendar will allow. */\n @FoundationProperty()\n public declare max: Date | string | null | undefined;\n\n /** Gets/sets the dates that are restricted from being selected. */\n @FoundationProperty()\n public declare disabledDates: Date | Date[] | null | undefined;\n\n /** Gets/sets whether the calendar dropdown is open. */\n @FoundationProperty()\n public declare open: boolean;\n\n /** Gets/sets the CSS classes that are applied to the popup element. */\n @FoundationProperty()\n public declare popupClasses: string | string[];\n\n /** Gets/sets whether the date picker is disabled or not. */\n @FoundationProperty()\n public declare disabled: boolean;\n\n /** Gets/sets whether the input mask is applied or not. */\n @FoundationProperty()\n public declare masked: boolean;\n\n /** Gets/sets the mask format that displayed in the input. Default is `MM/DD/YYYY` */\n @FoundationProperty()\n public declare maskFormat: string;\n\n /** Gets/sets whether the mask format is displayed in the input or not. Only applies if `masked` is `true`. */\n @FoundationProperty()\n public declare showMaskFormat: boolean;\n\n /** Gets/sets the type for the `value` property and `forge-date-picker-change` event. */\n @FoundationProperty()\n public declare valueMode: DatePickerValueMode;\n\n /** Gets/sets whether the native input will be notified of value changes via the `input` and `change` events. */\n @FoundationProperty()\n public declare notifyInputValueChanges: boolean;\n\n /** Gets/sets whether to allow an invalid date to be input. When true, the date picker will not clear out the value of the input if the date was invalid (i.e. could not be parsed). */\n @FoundationProperty()\n public declare allowInvalidDate: boolean;\n\n /** Gets/sets whether the today button is visible in the popup. */\n @FoundationProperty()\n public declare showToday: boolean;\n\n /** Gets/sets whether the clear button is visible in the popup. */\n @FoundationProperty()\n public declare showClear: boolean;\n\n /** Sets the callback to use for parsing a date value string to a `Date` object. */\n @FoundationProperty()\n public declare parseCallback: DatePickerParseCallback;\n\n /** Sets the callback to use for formatting `Date` value to a custom string format. */\n @FoundationProperty()\n public declare formatCallback: DatePickerFormatCallback;\n\n /** Sets the callback to use when altering default mask entry. */\n @FoundationProperty()\n public declare prepareMaskCallback: DatePickerPrepareMaskCallback;\n\n /** Sets the days of the week to disable from selection. */\n @FoundationProperty()\n public declare disabledDaysOfWeek: DayOfWeek[];\n\n /** Sets the callback to use for testing whether a specific date should be disabled or not. */\n @FoundationProperty()\n public declare disableDayCallback: (date: Date) => boolean;\n\n /** Sets the year range. */\n @FoundationProperty()\n public declare yearRange: string;\n\n /** Sets the locale to use. */\n @FoundationProperty()\n public declare locale: string | undefined;\n}\n", "export function createToggleElement(iconName: string): HTMLElement {\n const iconButtonElement = document.createElement('forge-icon-button');\n iconButtonElement.type = 'button';\n iconButtonElement.tabIndex = -1;\n iconButtonElement.setAttribute('aria-label', 'Toggle calendar');\n iconButtonElement.slot = 'trailing';\n iconButtonElement.density = 'medium';\n iconButtonElement.style.marginRight = '4px';\n\n const iconElement = document.createElement('forge-icon');\n iconElement.name = iconName;\n iconButtonElement.appendChild(iconElement);\n\n return iconButtonElement;\n}\n", "import { getShadowElement, randomChars } from '@tylertech/forge-core';\nimport { CALENDAR_CONSTANTS, DateRange, DayOfWeek, ICalendarComponent, ICalendarDateSelectEventData } from '../../calendar';\nimport { ICalendarDropdown, ICalendarDropdownPopupConfig } from '../../calendar/calendar-dropdown';\nimport { BaseAdapter, IBaseAdapter, IDateInputMaskOptions } from '../../core';\nimport { BaseComponent } from '../../core/base/base-component';\nimport { ICON_BUTTON_CONSTANTS, IIconButtonComponent } from '../../icon-button';\nimport { BASE_DATE_PICKER_CONSTANTS } from './base-date-picker-constants';\nimport { createToggleElement } from './base-date-picker-utils';\nimport { TEXT_FIELD_CONSTANTS } from '../../text-field';\n\nexport interface IBaseDatePickerAdapter extends IBaseAdapter {\n initialize(): void;\n initializeAccessibility(): void;\n destroy(): void;\n setActiveDescendant(id: string): void;\n\n // Mask\n initializeMask(options: IDateInputMaskOptions): void;\n destroyMask(): void;\n\n // Toggle\n tryCreateToggle(): void;\n addToggleListener(type: string, listener: (event: Event) => void): void;\n removeToggleListener(type: string, listener: (event: Event) => void): void;\n \n // Input\n addInputListener(type: string, listener: (event: Event) => void, capture?: boolean): void;\n removeInputListener(type: string, listener: (event: Event) => void, capture?: boolean): void;\n setInputValueChangedListener(context: any, listener: (value: any) => void): void;\n hasInputElement(): boolean;\n tryFocusInput(): void;\n tryBlurInput(): void;\n isInputDisabled(): boolean;\n isInputFocused(target?: EventTarget | null): boolean;\n setDisabled(value: boolean): void;\n getInputValue(): string;\n setInputValue(value: string, emitEvents: boolean): void;\n selectInputText(): void;\n emitInputEvent(type: string, data?: any): void;\n \n // Calendar\n attachCalendar(calendarConfig: Partial<ICalendarComponent>, dropdownConfig?: ICalendarDropdownPopupConfig): void;\n detachCalendar(): void;\n goToCalendarDate(date: Date): void;\n addDateSelectListener(listener: (event: CustomEvent<ICalendarDateSelectEventData>) => void): void;\n removeDateSelectListener(listener: (event: CustomEvent<ICalendarDateSelectEventData>) => void): void;\n setCalendarValue(value: Date | DateRange | null | undefined): void;\n setCalendarMinDate(value: Date | null | undefined): void;\n setCalendarMaxDate(value: Date | null | undefined): void;\n setCalendarDisabledDates(value: Date | Date[] | null | undefined): void;\n setCalendarDisabledDaysOfWeek(value: DayOfWeek[]): void;\n setCalendarDisableDayCallback(disableDayCallback: (date: Date) => boolean): void;\n setCalendarActiveDate(date: Date): void;\n getCalendarActiveDate(): Date | undefined;\n setCalendarYearRange(value: string): void;\n setCalendarLocale(locale: string | undefined): void;\n propagateCalendarKey(evt: KeyboardEvent): void;\n}\nexport abstract class BaseDatePickerAdapter<T extends BaseComponent> extends BaseAdapter<T> implements IBaseDatePickerAdapter {\n protected _identifier: string;\n protected _calendarDropdown?: ICalendarDropdown;\n protected _toggleElement?: HTMLElement;\n protected _valueChangeListeners: Array<() => void> = [];\n\n constructor(component: T) {\n super(component);\n this._identifier = randomChars();\n }\n\n // Initialization\n public abstract initializeAccessibility(): void;\n protected abstract _initializeInput(): void;\n protected abstract _initializeCalendarDropdown(): void;\n \n // Mask\n public abstract initializeMask(options: IDateInputMaskOptions): void;\n public abstract destroyMask(): void;\n\n // Calendar\n public abstract setActiveDescendant(id: string): void;\n \n // Input\n public abstract hasInputElement(): boolean;\n public abstract hasInputElement(): boolean;\n public abstract tryFocusInput(): void;\n public abstract tryBlurInput(): void;\n public abstract isInputDisabled(): boolean;\n public abstract isInputFocused(target?: EventTarget | null): boolean;\n public abstract setDisabled(value: boolean): void;\n public abstract addInputListener(type: string, listener: (event: Event) => void, capture?: boolean): void;\n public abstract removeInputListener(type: string, listener: (event: Event) => void, capture?: boolean): void;\n public abstract setInputValueChangedListener(context: any, listener: (value: any) => void): void;\n public abstract getInputValue(): string;\n public abstract setInputValue(value: string, emitEvents: boolean): void;\n public abstract selectInputText(): void;\n public abstract emitInputEvent(type: string, data?: any): void;\n\n public initialize(): void {\n this._initializeInput();\n }\n\n public destroy(): void {\n this._calendarDropdown?.destroy();\n this.destroyValueChangeListener();\n }\n\n public destroyValueChangeListener(): void {\n this._valueChangeListeners.forEach(cb => cb());\n }\n\n public addToggleListener(type: string, listener: (event: Event) => void): void {\n this._toggleElement?.addEventListener(type, listener);\n }\n\n public removeToggleListener(type: string, listener: (event: Event) => void): void {\n this._toggleElement?.removeEventListener(type, listener);\n }\n\n public attachCalendar(calendarConfig: Partial<ICalendarComponent>, dropdownConfig?: ICalendarDropdownPopupConfig): void {\n if (this._calendarDropdown) {\n this._calendarDropdown?.destroy();\n }\n\n this._initializeCalendarDropdown();\n\n if (!this._calendarDropdown) {\n throw new Error('CalendarDropdown was not initialized.');\n }\n\n if (dropdownConfig) {\n Object.assign(this._calendarDropdown, dropdownConfig);\n }\n\n this._calendarDropdown.open(calendarConfig);\n this._calendarDropdown.dropdownElement?.style.setProperty('--forge-calendar-width', '320px');\n this._calendarDropdown.calendar?.style.setProperty('margin', '8px');\n }\n\n public detachCalendar(): void {\n if (this._calendarDropdown && this._calendarDropdown.isOpen) {\n this._calendarDropdown.close();\n }\n }\n\n public goToCalendarDate(date: Date): void {\n this._calendarDropdown?.calendar?.goToDate(date, true);\n }\n\n public addDateSelectListener(listener: (event: CustomEvent<ICalendarDateSelectEventData>) => void): void {\n this._calendarDropdown?.calendar?.addEventListener(CALENDAR_CONSTANTS.events.DATE_SELECT, listener);\n }\n\n public removeDateSelectListener(listener: (event: CustomEvent<ICalendarDateSelectEventData>) => void): void {\n this._calendarDropdown?.calendar?.removeEventListener(CALENDAR_CONSTANTS.events.DATE_SELECT, listener);\n }\n\n public setCalendarValue(value: Date | DateRange | null | undefined): void {\n if (this._calendarDropdown?.calendar) {\n this._calendarDropdown.calendar.value = value;\n }\n }\n\n public setCalendarMinDate(value: Date | null | undefined): void {\n if (this._calendarDropdown?.calendar) {\n this._calendarDropdown.calendar.min = value;\n }\n }\n\n public setCalendarMaxDate(value: Date | null | undefined): void {\n if (this._calendarDropdown?.calendar) {\n this._calendarDropdown.calendar.max = value;\n }\n }\n\n public setCalendarDisabledDates(value: Date | Date[] | null | undefined): void {\n if (this._calendarDropdown?.calendar) {\n this._calendarDropdown.calendar.disabledDates = value;\n }\n }\n\n public setCalendarDisabledDaysOfWeek(value: DayOfWeek[]): void {\n if (this._calendarDropdown?.calendar) {\n this._calendarDropdown.calendar.disabledDaysOfWeek = value;\n }\n }\n\n public setCalendarDisableDayCallback(disableDayCallback: (date: Date) => boolean): void {\n if (this._calendarDropdown?.calendar) {\n this._calendarDropdown.calendar.disabledDateBuilder = disableDayCallback;\n }\n }\n\n public setCalendarActiveDate(date: Date): void {\n this._calendarDropdown?.calendar?.setActiveDate(date);\n }\n\n public getCalendarActiveDate(): Date | undefined {\n return this._calendarDropdown?.calendar?.activeDate;\n }\n\n public setCalendarYearRange(value: string): void {\n if (this._calendarDropdown?.calendar?.yearRange) {\n this._calendarDropdown.calendar.yearRange = value;\n }\n }\n\n public setCalendarLocale(locale: string | undefined): void {\n if (this._calendarDropdown?.calendar) {\n this._calendarDropdown.locale = locale;\n }\n }\n\n public propagateCalendarKey(evt: KeyboardEvent): void {\n this._calendarDropdown?.calendar?.handleKey(evt);\n }\n\n public tryCreateToggle(): void {\n const textField = this._component.querySelector('forge-text-field');\n const toggleElement = this._component.querySelector(BASE_DATE_PICKER_CONSTANTS.selectors.TOGGLE);\n if (textField) {\n const existingIconButton = textField.querySelector(`${ICON_BUTTON_CONSTANTS.elementName}[slot=trailing]`);\n if (existingIconButton || toggleElement) {\n this._toggleElement = (existingIconButton || toggleElement) as IIconButtonComponent;\n return;\n }\n\n const iconButtonElement = this._createToggleElement();\n textField.appendChild(iconButtonElement);\n this._toggleElement = iconButtonElement;\n } else if (toggleElement) {\n this._toggleElement = toggleElement as HTMLElement;\n }\n }\n\n protected _createToggleElement(): HTMLElement {\n return createToggleElement('insert_invitation');\n }\n\n protected _getDefaultTargetElement(): HTMLElement {\n // This component is often used with the Forge text-field, if so, let's target our popup around\n // one if its internal elements for best alignment\n const textField = this._component.querySelector('forge-text-field');\n if (textField && textField.shadowRoot) {\n const textFieldRoot = getShadowElement(textField, TEXT_FIELD_CONSTANTS.selectors.ROOT) as HTMLElement;\n if (textFieldRoot) {\n return textFieldRoot;\n }\n }\n\n return this._component.querySelector('input') || this._component;\n }\n}\n", "import { ICustomElementFoundation, isValidDate, Platform } from '@tylertech/forge-core';\nimport { ICalendarComponent, ICalendarDropdownPopupConfig } from '../../calendar';\nimport { CalendarMode, DayOfWeek, ICalendarDateSelectEventData } from '../../calendar/calendar-constants';\nimport { DateRange } from '../../calendar/core/date-range';\nimport { formatDate, parseDateString } from '../../core/utils/date-utils';\nimport { DEFAULT_DATE_MASK, IDateInputMaskOptions } from '../../core/mask/date-input-mask';\nimport { IBaseDatePickerAdapter } from './base-date-picker-adapter';\nimport { BASE_DATE_PICKER_CONSTANTS, DatePickerFormatCallback, DatePickerParseCallback, DatePickerPrepareMaskCallback, DatePickerValueMode } from './base-date-picker-constants';\n\nexport interface IBaseDatePickerFoundation<TValue> extends ICustomElementFoundation {\n value: TValue | null | undefined;\n min: Date | string | null | undefined;\n max: Date | string | null | undefined;\n disabledDates: Date | Date[] | null | undefined;\n open: boolean;\n parseCallback: DatePickerParseCallback;\n formatCallback: DatePickerFormatCallback;\n prepareMaskCallback: DatePickerPrepareMaskCallback;\n popupClasses: string | string[];\n disabled: boolean;\n masked: boolean;\n maskFormat: string;\n showMaskFormat: boolean;\n valueMode: DatePickerValueMode;\n notifyInputValueChanges: boolean;\n allowInvalidDate: boolean;\n showToday: boolean;\n showClear: boolean;\n yearRange: string;\n locale: string | undefined;\n}\n\nexport abstract class BaseDatePickerFoundation<TAdapter extends IBaseDatePickerAdapter, TPublicValue, TPrivateValue = TPublicValue> implements IBaseDatePickerFoundation<TPublicValue> {\n // State\n protected abstract _mode: CalendarMode;\n protected _value?: TPrivateValue | null = null;\n protected _min?: Date | null = null;\n protected _max?: Date | null = null;\n protected _disabledDates?: Date | Date[] | null = null;\n protected _open = false;\n protected _parseCallback: DatePickerParseCallback;\n protected _formatCallback: DatePickerFormatCallback;\n protected _prepareMaskCallback: DatePickerPrepareMaskCallback;\n protected _disableDayCallback: (date: Date) => boolean;\n protected _popupClasses: string | string[];\n protected _disabled = false;\n protected _masked = true;\n protected _maskFormat = DEFAULT_DATE_MASK;\n protected _showMaskFormat = false;\n protected _valueMode: DatePickerValueMode = 'object';\n protected _notifyInputValueChanges = true;\n protected _allowInvalidDate = false;\n protected _showToday = false;\n protected _showClear = false;\n protected _disabledDaysOfWeek: DayOfWeek[];\n protected _yearRange = '-50:+50';\n protected _locale: string | undefined;\n protected _isInitialized = false;\n\n // Listeners\n private _inputListener: (evt: Event) => void;\n private _inputKeydownListener: (evt: KeyboardEvent) => void;\n private _inputFocusListener: (evt: FocusEvent) => void;\n private _inputBlurListener: (evt: FocusEvent) => void;\n private _inputValueChangedListener: (value: string) => void;\n private _toggleMousedownListener: (evt: MouseEvent) => void;\n private _dropdownCloseListener: () => void;\n private _activeChangeListener: (id: string) => void;\n private _todayListener: () => void;\n private _clearListener: () => void;\n private _dateSelectListener: (evt: CustomEvent<ICalendarDateSelectEventData>) => void;\n \n constructor(protected _adapter: TAdapter) {\n this._inputListener = evt => this._onInput(evt);\n this._inputKeydownListener = evt => this._onInputKeydown(evt);\n this._inputFocusListener = evt => this._onInputFocus(evt);\n this._inputBlurListener = evt => this._onInputBlur(evt);\n this._inputValueChangedListener = value => this._onInputValueChanged(value);\n this._dropdownCloseListener = () => this._onDropdownClose();\n this._toggleMousedownListener = evt => this._onToggleMousedown(evt);\n this._dateSelectListener = evt => this._onDateSelected(evt.detail);\n this._activeChangeListener = id => this._onActiveDescendantChanged(id);\n this._todayListener = () => this._onToday();\n this._clearListener = () => this._onClear();\n }\n\n protected _initializeState?(): void;\n public abstract value: TPublicValue | null | undefined;\n protected abstract _emitChangeEvent(value: TPrivateValue | null | undefined, force?: boolean): boolean;\n protected abstract _emitOpenEvent(): void;\n protected abstract _emitCloseEvent(): void;\n protected abstract _onToday(): void;\n protected abstract _onClear(): void;\n protected abstract _getCurrentValue(): TPrivateValue | null | undefined;\n protected abstract _setFormattedInputValue(suppressValueChanges?: boolean): void;\n protected abstract _onInputValueChanged(value: string): void;\n protected abstract _handleInput(value: string): void;\n protected abstract _setValue(value: Date | null): void;\n protected abstract _onDateSelected(event: ICalendarDateSelectEventData): void;\n protected abstract _applyDisabledDates(): void;\n protected abstract _applyDisabledDaysOfWeek(): void;\n\n public initialize(): void {\n this._adapter.initialize();\n this._adapter.initializeAccessibility();\n\n if (!this._adapter.hasInputElement()) {\n throw new Error('Unable to locate child <input> element.');\n }\n\n this._initializeState?.();\n this._adapter.tryCreateToggle();\n\n if (!this._masked) {\n this._setInputChangeListeners();\n }\n\n this._initializeListeners();\n this._setFormattedInputValue(true);\n this._applyDisabled();\n this._applyMask();\n this._initializeValueChangedListeners();\n this._isInitialized = true;\n }\n\n public disconnect(): void {\n this._isInitialized = false;\n this._destroyListeners();\n\n if (this._masked) {\n this._adapter.destroyMask();\n }\n\n this._closeCalendar();\n this._adapter.destroy();\n }\n\n protected _initializeListeners(): void {\n this._adapter.addToggleListener('mousedown', this._toggleMousedownListener);\n this._adapter.addInputListener('keydown', this._inputKeydownListener, true);\n this._adapter.addInputListener('focus', this._inputFocusListener);\n this._adapter.addInputListener('blur', this._inputBlurListener);\n }\n\n protected _initializeValueChangedListeners(): void {\n this._adapter.setInputValueChangedListener(this, this._inputValueChangedListener);\n }\n\n protected _setInputChangeListeners(): void {\n this._adapter.addInputListener('input', this._inputListener);\n }\n\n protected _removeInputChangeListeners(): void {\n this._adapter.removeInputListener('input', this._inputListener);\n }\n\n protected _destroyListeners(): void {\n this._adapter.removeToggleListener('mousedown', this._toggleMousedownListener);\n this._adapter.removeInputListener('keydown', this._inputKeydownListener, true);\n this._adapter.removeInputListener('focus', this._inputFocusListener);\n this._adapter.removeInputListener('blur', this._inputBlurListener);\n this._removeInputChangeListeners();\n }\n\n protected _onInput(evt: Event): void {\n this._handleInput(this._adapter.getInputValue());\n }\n\n protected _onInputFocus(evt: FocusEvent): void {\n if (this.masked && this.showMaskFormat) {\n this._applyMask();\n }\n\n this._adapter.selectInputText();\n }\n \n protected _onInputBlur(evt: FocusEvent): void {\n if (this.masked && this.showMaskFormat) {\n this._applyMask();\n }\n\n this._formatInputValue();\n\n if (this._open && !this._adapter.isInputFocused()) {\n this._closeCalendar(true);\n }\n }\n\n protected _openCalendar(emitOpenEvent = false): void {\n this._formatInputValue();\n\n const calendarConfig: Partial<ICalendarComponent> = {\n mode: this._mode,\n value: this._getCurrentValue() as Date | Date[] | DateRange | null | undefined,\n min: this._min,\n max: this._max,\n disabledDates: this._disabledDates,\n yearRange: this._yearRange,\n todayButton: this._showToday,\n clearButton: this._showClear,\n todayCallback: this._todayListener,\n clearCallback: this._clearListener,\n disabledDateBuilder: this._disableDayCallback,\n disabledDaysOfWeek: this._disabledDaysOfWeek,\n preventFocus: true,\n menuAnimation: 'fade',\n fixedHeight: true,\n selectionFollowsMonth: true,\n locale: this._locale\n };\n const dropdownConfig: ICalendarDropdownPopupConfig = {\n popupClasses: this._popupClasses,\n closeCallback: this._dropdownCloseListener,\n activeChangeCallback: this._activeChangeListener\n };\n\n this._adapter.attachCalendar(calendarConfig, dropdownConfig);\n this._adapter.addDateSelectListener(this._dateSelectListener);\n this._open = true;\n this._adapter.setHostAttribute(BASE_DATE_PICKER_CONSTANTS.observedAttributes.OPEN);\n\n if (emitOpenEvent) {\n this._emitOpenEvent();\n }\n }\n\n protected _closeCalendar(emitCloseEvent = false): void {\n this._open = false;\n this._adapter.removeHostAttribute(BASE_DATE_PICKER_CONSTANTS.observedAttributes.OPEN);\n this._adapter.removeDateSelectListener(this._dateSelectListener);\n this._adapter.detachCalendar();\n if (emitCloseEvent) {\n this._emitCloseEvent();\n }\n }\n\n protected _onInputKeydown(evt: KeyboardEvent): void {\n // Handle keyboard shortcuts that make use of the shift key first\n if (evt.shiftKey) {\n switch (evt.key) {\n case 'Delete':\n case 'Backspace':\n evt.preventDefault();\n this._onClear();\n if (this._open) {\n this._closeCalendar(true);\n }\n return;\n case 'ArrowLeft':\n case 'ArrowRight':\n case 'm':\n case 'M':\n case 'y':\n case 'Y':\n case 'd':\n case 'D':\n if (this._open) {\n evt.preventDefault();\n this._adapter.propagateCalendarKey(evt);\n return;\n }\n break;\n }\n }\n\n switch (evt.key) {\n case 'Escape':\n if (this._open) {\n evt.preventDefault();\n evt.stopPropagation();\n this._closeCalendar(true);\n }\n break;\n case 'ArrowDown':\n evt.preventDefault();\n if (!this._open) {\n this._adapter.selectInputText();\n this._openCalendar(true);\n } else {\n this._adapter.propagateCalendarKey(evt);\n }\n break;\n case 'ArrowUp':\n if (this._open) {\n evt.preventDefault();\n this._adapter.propagateCalendarKey(evt);\n }\n break;\n case 'ArrowLeft':\n case 'ArrowRight':\n case 'Enter':\n case 'Home':\n case 'End':\n if (this._open) {\n if (evt.key === 'Enter') {\n evt.stopPropagation();\n }\n evt.preventDefault();\n // If we have an input mask applied, we want to make sure it doesn't receive the key events for left and right keys\n const isLeftRight = ['ArrowLeft', 'ArrowRight'].includes(evt.key);\n if (this._masked && isLeftRight) {\n evt.stopImmediatePropagation();\n }\n this._adapter.propagateCalendarKey(evt);\n }\n break;\n case 'n':\n case 't':\n evt.preventDefault();\n this._onToday();\n if (this._open) {\n this._closeCalendar(true);\n }\n break;\n case 'PageUp':\n case 'PageDown':\n if (this._open) {\n evt.preventDefault();\n this._adapter.propagateCalendarKey(evt);\n }\n break;\n case 'Tab':\n if (this._open) {\n const activeDate = this._adapter.getCalendarActiveDate();\n if (activeDate) {\n this._onDateSelected({\n date: activeDate,\n selected: true,\n type: 'date'\n });\n }\n }\n break;\n }\n }\n\n protected _getSanitizedDateString(value: string): string {\n return value.replace(/_|[a-z]|[A-Z]/g, '').replace(/\\/$|\\/\\/$/, '');\n }\n\n private _onToggleMousedown(evt: Event): void {\n if (this._disabled) {\n return;\n }\n\n evt.stopPropagation();\n\n if (this._adapter.isInputDisabled()) {\n return;\n }\n\n evt.preventDefault();\n\n if (this._open) {\n this._closeCalendar(true);\n } else {\n if (!Platform.isMobile) {\n this._adapter.tryFocusInput();\n } else {\n this._adapter.tryBlurInput();\n }\n\n this._openCalendar(true);\n }\n }\n\n private _onDropdownClose(): void {\n this._closeCalendar(true);\n }\n\n private _onActiveDescendantChanged(id: string): void {\n this._adapter.setActiveDescendant(id);\n }\n\n protected _formatInputValue(): void {\n const inputValue = this._adapter.getInputValue();\n if (inputValue) {\n const parsedDate = this._parseDateString(inputValue);\n if (isValidDate(parsedDate) && this._isDateValueAcceptable(parsedDate)) {\n const formattedDate = this._formatDate(parsedDate);\n if (formattedDate && formattedDate !== inputValue) {\n this._adapter.setInputValue(formattedDate, this._notifyInputValueChanges);\n }\n } else {\n if (!this._allowInvalidDate) {\n this._adapter.setInputValue('', this._notifyInputValueChanges);\n }\n }\n }\n }\n\n protected _formatDate(date: Date | null | undefined): string {\n if (!isValidDate(date)) {\n return '';\n }\n return typeof this._formatCallback === 'function' ? this._formatCallback(date) : formatDate(date);\n }\n\n protected _parseDateString(value: string): Date | null {\n value = value.replace(/_|\\s/g, '');\n if (!value || !value.length) {\n return null;\n }\n const parsedDate = typeof this._parseCallback === 'function' ? this._parseCallback(value) : parseDateString(value);\n return isValidDate(parsedDate) ? parsedDate : null;\n }\n\n protected _coerceDateValue(value?: Date | string | null): Date | null | undefined {\n if (typeof value === 'string') {\n return this._parseDateString(value);\n }\n return value;\n }\n\n protected _getTypedValue(value: Date | null | undefined): Date | string | null | undefined {\n switch (this._valueMode) {\n case 'object':\n return value;\n case 'string':\n return this._formatDate(value);\n case 'iso-string':\n if (value) {\n // Remove the time portion of the date\n value.setHours(0, 0, 0, 0);\n }\n return value ? value.toISOString() : null;\n default:\n return value;\n }\n }\n\n protected _isDateValueAcceptable(value?: Date | null): boolean {\n if (!value || this._allowInvalidDate) {\n return true;\n }\n\n const passesMinDate = (): boolean => this._min && !this._allowInvalidDate ? this._min.getTime() <= value.getTime() : true;\n const passesMaxDate = (): boolean => this._max && !this._allowInvalidDate ? this._max.getTime() >= value.getTime() : true;\n const disabledDates = (): Date[] => Array.isArray(this._disabledDates) ? this._disabledDates : this._disabledDates ? [this._disabledDates] : [];\n const isNotDisabled = (): boolean => !disabledDates().some(bd => bd.getTime() === value.getTime());\n const dayNotDisabled = (): boolean => !(this._disabledDaysOfWeek && this._disabledDaysOfWeek.includes(value.getDay()));\n const dateNotDisabledThroughCallback = (): boolean => typeof this._disableDayCallback !== 'function' || !this._disableDayCallback(value);\n\n return passesMinDate() && passesMaxDate() && isNotDisabled() && dayNotDisabled() && dateNotDisabledThroughCallback();\n }\n\n protected _initializeMask(): void {\n const options: IDateInputMaskOptions = {\n showMaskFormat: this._showMaskFormat && this._adapter.isInputFocused(),\n pattern: this._maskFormat,\n onChange: (value: string) => this._handleInput(value)\n };\n\n if (this._prepareMaskCallback) {\n options.prepareCallback = (value, masked, flags, maskInstance) => {\n return this._prepareMaskCallback.call(null, value, masked, flags, maskInstance);\n };\n }\n\n this._adapter.initializeMask(options);\n }\n\n private _applyMask(): void {\n if (this._masked) {\n this._initializeMask();\n } else {\n this._adapter.destroyMask();\n this._formatInputValue();\n }\n }\n\n protected _applyMin(): void {\n if (this._isInitialized) {\n this._adapter.setCalendarMinDate(this._min);\n }\n }\n protected _applyMax(): void {\n if (this._isInitialized) {\n this._adapter.setCalendarMaxDate(this._max);\n }\n }\n\n private _applyDisableDayCallback(): void {\n this._adapter.setCalendarDisableDayCallback(this._disableDayCallback);\n }\n\n private _applyDisabled(): void {\n this._adapter.setDisabled(this._disabled);\n }\n\n public get valueMode(): DatePickerValueMode {\n return this._valueMode;\n }\n public set valueMode(value: DatePickerValueMode) {\n if (this._valueMode !== value) {\n const isValidMode = ['object', 'string', 'iso-string'].includes(value);\n if (!isValidMode) {\n return;\n }\n this._valueMode = value;\n this._emitChangeEvent(this._value);\n this._adapter.setHostAttribute(BASE_DATE_PICKER_CONSTANTS.observedAttributes.VALUE_MODE, this._valueMode);\n }\n }\n\n public get min(): Date | string | null | undefined {\n return this._min ? new Date(this._min.getTime()) : null;\n }\n public set min(value: Date | string | null | undefined) {\n if (this._min !== value) {\n const date = this._coerceDateValue(value);\n this._min = !!date ? new Date(date.getTime()) : null;\n this._applyMin();\n\n if (this._isInitialized && this._open) {\n this._adapter.setCalendarMinDate(this._min);\n }\n }\n }\n\n public get max(): Date | string | null | undefined {\n return this._max ? new Date(this._max.getTime()) : null;\n }\n public set max(value: Date | string | null | undefined) {\n if (this._max !== value) {\n this._max = this._coerceDateValue(value);\n this._applyMax();\n\n if (this._isInitialized && this._open) {\n this._adapter.setCalendarMaxDate(this._max);\n }\n }\n }\n\n public get open(): boolean {\n return this._open;\n }\n public set open(value: boolean) {\n if (this._open !== value) {\n if (this._isInitialized) {\n this._open = value;\n if (this._open) {\n this._openCalendar();\n } else {\n this._closeCalendar();\n }\n }\n }\n }\n\n public get disabled(): boolean {\n return this._disabled;\n }\n public set disabled(value: boolean) {\n if (this._disabled !== value) {\n this._disabled = value;\n if (this._isInitialized) {\n this._applyDisabled();\n }\n }\n }\n\n public get disabledDates(): Date | Date[] | null | undefined {\n if (!this._disabledDates) {\n return null;\n }\n\n if (Array.isArray(this._disabledDates)) {\n return this._disabledDates.map(d => new Date(d.getTime()));\n }\n\n return new Date(this._disabledDates.getTime());\n }\n\n public set disabledDates(value: Date | Date[] | null | undefined) {\n if (!value) {\n this._disabledDates = null;\n } else if (Array.isArray(value)) {\n this._disabledDates = value.map(d => new Date(d.getTime()));\n } else {\n this._disabledDates = new Date(value.getTime());\n }\n\n if (this._isInitialized && this._open) {\n this._adapter.setCalendarDisabledDates(this._disabledDates);\n }\n\n this._applyDisabledDates();\n }\n\n public get popupClasses(): string | string[] {\n if (Array.isArray(this._popupClasses)) {\n return [...this._popupClasses];\n }\n\n return this._popupClasses;\n }\n public set popupClasses(value: string | string[]) {\n if (Array.isArray(value)) {\n this._popupClasses = [...value];\n } else {\n this._popupClasses = value;\n }\n }\n\n public get masked(): boolean {\n return this._masked;\n }\n public set masked(value: boolean) {\n if (this._masked !== value) {\n this._masked = value;\n if (this._isInitialized) {\n if (this._masked) {\n this._removeInputChangeListeners();\n this._applyMask();\n } else {\n this._adapter.destroyMask();\n this._setInputChangeListeners();\n this._formatInputValue();\n }\n }\n }\n }\n\n public get maskFormat(): string {\n return this._maskFormat;\n }\n public set maskFormat(value: string) {\n if (this._maskFormat !== value) {\n this._maskFormat = value;\n if (this._isInitialized) {\n this._applyMask();\n }\n }\n }\n\n public get showMaskFormat(): boolean {\n return this._showMaskFormat;\n }\n public set showMaskFormat(value: boolean) {\n if (this._showMaskFormat !== value) {\n this._showMaskFormat = value;\n }\n }\n\n public get notifyInputValueChanges(): boolean {\n return this._notifyInputValueChanges;\n }\n public set notifyInputValueChanges(value: boolean) {\n this._notifyInputValueChanges = value;\n }\n\n public get allowInvalidDate(): boolean {\n return this._allowInvalidDate;\n }\n public set allowInvalidDate(value: boolean) {\n if (this._allowInvalidDate !== value) {\n this._allowInvalidDate = value;\n this._adapter.toggleHostAttribute(BASE_DATE_PICKER_CONSTANTS.observedAttributes.ALLOW_INVALID_DATE, this._allowInvalidDate);\n }\n }\n\n public get disabledDaysOfWeek(): DayOfWeek[] {\n return this._disabledDaysOfWeek;\n }\n public set disabledDaysOfWeek(value: DayOfWeek[]) {\n if (this._disabledDaysOfWeek !== value) {\n this._disabledDaysOfWeek = value;\n\n if (this._isInitialized && this._open) {\n this._adapter.setCalendarDisabledDaysOfWeek(this._disabledDaysOfWeek);\n }\n\n this._applyDisabledDaysOfWeek();\n }\n }\n\n public get disableDayCallback(): (date: Date) => boolean {\n return this._disableDayCallback;\n }\n public set disableDayCallback(value: (date: Date) => boolean) {\n if (value !== this._disableDayCallback) {\n this._disableDayCallback = value;\n this._applyDisableDayCallback();\n }\n }\n\n public get parseCallback(): DatePickerParseCallback {\n return this._parseCallback;\n }\n public set parseCallback(cb: DatePickerParseCallback) {\n this._parseCallback = cb;\n if (this._isInitialized) {\n this._applyMask();\n }\n }\n\n public get formatCallback(): DatePickerFormatCallback {\n return this._formatCallback;\n }\n public set formatCallback(cb: DatePickerFormatCallback) {\n this._formatCallback = cb;\n if (this._isInitialized) {\n this._applyMask();\n }\n }\n\n public get prepareMaskCallback(): DatePickerPrepareMaskCallback {\n return this._prepareMaskCallback;\n }\n public set prepareMaskCallback(cb: DatePickerPrepareMaskCallback) {\n this._prepareMaskCallback = cb;\n if (this._isInitialized) {\n this._applyMask();\n }\n }\n\n public get showToday(): boolean {\n return this._showToday;\n }\n public set showToday(value: boolean) {\n this._showToday = value;\n }\n\n public get showClear(): boolean {\n return this._showClear;\n }\n public set showClear(value: boolean) {\n this._showClear = value;\n }\n\n public get yearRange(): string {\n return this._yearRange;\n }\n public set yearRange(value: string) {\n if (this._yearRange !== value) {\n this._yearRange = value;\n\n if (this._isInitialized && this._open) {\n this._adapter.setCalendarYearRange(this._yearRange);\n }\n }\n }\n\n public get locale(): string | undefined {\n return this._locale;\n }\n public set locale(value: string | undefined) {\n if (this._locale !== value) {\n this._locale = value;\n\n if (this._isInitialized && this._open) {\n this._adapter.setCalendarLocale(this._locale);\n }\n }\n }\n}\n"],
5
+ "mappings": "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",
6
+ "names": ["observedAttributes", "attributes", "selectors", "BASE_DATE_PICKER_CONSTANTS", "BaseDatePickerComponent", "BaseComponent", "BASE_DATE_PICKER_CONSTANTS", "ensureChild", "name", "oldValue", "newValue", "coerceBoolean", "coerceNumberArray", "__decorateClass", "FoundationProperty", "createToggleElement", "iconName", "iconButtonElement", "iconElement", "BaseDatePickerAdapter", "BaseAdapter", "component", "randomChars", "_a", "cb", "type", "listener", "calendarConfig", "dropdownConfig", "_b", "_c", "date", "CALENDAR_CONSTANTS", "value", "disableDayCallback", "locale", "evt", "textField", "toggleElement", "BASE_DATE_PICKER_CONSTANTS", "existingIconButton", "ICON_BUTTON_CONSTANTS", "iconButtonElement", "createToggleElement", "textFieldRoot", "getShadowElement", "TEXT_FIELD_CONSTANTS", "BaseDatePickerFoundation", "_adapter", "DEFAULT_DATE_MASK", "evt", "value", "id", "_a", "emitOpenEvent", "calendarConfig", "dropdownConfig", "BASE_DATE_PICKER_CONSTANTS", "emitCloseEvent", "isLeftRight", "activeDate", "Platform", "inputValue", "parsedDate", "isValidDate", "formattedDate", "date", "formatDate", "parseDateString", "passesMinDate", "passesMaxDate", "disabledDates", "isNotDisabled", "bd", "dayNotDisabled", "dateNotDisabledThroughCallback", "options", "masked", "flags", "maskInstance", "d", "cb"]
7
+ }
@@ -3,5 +3,5 @@
3
3
  * Copyright 2023 Tyler Technologies, Inc.
4
4
  * License: Apache-2.0
5
5
  */
6
- import{a as d}from"./chunk.MGLWXAZO.js";import{f as n,g as o,k as r}from"./chunk.K7FPXAFS.js";var s=class{constructor(a){this._labelElement=a}addLabelClass(a){n(a,this._labelElement)}removeLabelClass(a){o(a,this._labelElement)}hasLabelClass(a){return this._labelElement.classList.contains(a)}getWidth(){return this._labelElement.offsetParent!=null?this._labelElement.scrollWidth:r(this._labelElement).width}addLabelListener(a,t){this._labelElement.addEventListener(a,t)}removeLabelListener(a,t){this._labelElement.removeEventListener(a,t)}};var A={FLOATING_LABEL:"forge-floating-label",FLOAT_ABOVE:"forge-floating-label--float-above",FLOAT_ABOVE_END_KEYFRAME:"forge-floating-label--float-above-end-keyframe",UNFLOAT_ABOVE_START_KEYFRAME:"forge-floating-label--unfloat-above-start-keyframe"},e={classes:A};var l=class{constructor(a){this._adapter=a;this._floatAnimationEndHandler=()=>this._handleFloatAnimationEnd()}initialize(){this._adapter.addLabelClass(e.classes.FLOATING_LABEL),d.BLINK&&this._adapter.addLabelListener("transitionend",this._floatAnimationEndHandler)}disconnect({cancelFloat:a=!1}={}){a&&this._activeFrame&&window.cancelAnimationFrame(this._activeFrame),this._adapter.removeLabelClass(e.classes.FLOATING_LABEL),this._adapter.removeLabelClass(e.classes.FLOAT_ABOVE),this._adapter.removeLabelClass(e.classes.FLOAT_ABOVE_END_KEYFRAME),this._adapter.removeLabelClass(e.classes.UNFLOAT_ABOVE_START_KEYFRAME),this._floatAnimationEndHandler&&this._adapter.removeLabelListener("transitionend",this._floatAnimationEndHandler)}float(a,t=!1){a?(this._adapter.hasLabelClass(e.classes.UNFLOAT_ABOVE_START_KEYFRAME)&&this._adapter.removeLabelClass(e.classes.UNFLOAT_ABOVE_START_KEYFRAME),this._activeFrame=window.requestAnimationFrame(()=>{this._activeFrame=window.requestAnimationFrame(()=>{(t||this.isFloating)&&this._adapter.addLabelClass(e.classes.FLOAT_ABOVE_END_KEYFRAME),this._adapter.addLabelClass(e.classes.FLOAT_ABOVE)})})):(this._adapter.removeLabelClass(e.classes.FLOAT_ABOVE),this._adapter.hasLabelClass(e.classes.FLOAT_ABOVE_END_KEYFRAME)&&(this._adapter.removeLabelClass(e.classes.FLOAT_ABOVE_END_KEYFRAME),this._adapter.addLabelClass(e.classes.UNFLOAT_ABOVE_START_KEYFRAME),this._activeFrame=window.requestAnimationFrame(()=>{this._activeFrame=window.requestAnimationFrame(()=>{this._adapter.removeLabelClass(e.classes.UNFLOAT_ABOVE_START_KEYFRAME)})})))}getWidth(){return this._adapter.getWidth()}get isFloating(){return this._adapter.hasLabelClass(e.classes.FLOAT_ABOVE)}_handleFloatAnimationEnd(){this._adapter.hasLabelClass(e.classes.FLOAT_ABOVE)&&!this._adapter.hasLabelClass(e.classes.FLOAT_ABOVE_END_KEYFRAME)?this._adapter.addLabelClass(e.classes.FLOAT_ABOVE_END_KEYFRAME):this._adapter.hasLabelClass(e.classes.UNFLOAT_ABOVE_START_KEYFRAME)&&this._adapter.removeLabelClass(e.classes.UNFLOAT_ABOVE_START_KEYFRAME)}};var _=class{constructor(a){this._labelElement=a;this._foundation=new l(new s(this._labelElement)),this._foundation.initialize()}get isFloating(){return this._foundation.isFloating}destroy({cancelFloat:a=!1}={}){this._foundation.disconnect({cancelFloat:a}),this._labelElement=void 0}float(a,t=!1){this._foundation.float(a,t)}getWidth(){return this._foundation.getWidth()}};export{s as a,e as b,l as c,_ as d};
7
- //# sourceMappingURL=chunk.GHR7T6U2.js.map
6
+ import{a as d}from"./chunk.MGLWXAZO.js";import{f as n,g as o,k as r}from"./chunk.HZUQXCOQ.js";var s=class{constructor(a){this._labelElement=a}addLabelClass(a){n(a,this._labelElement)}removeLabelClass(a){o(a,this._labelElement)}hasLabelClass(a){return this._labelElement.classList.contains(a)}getWidth(){return this._labelElement.offsetParent!=null?this._labelElement.scrollWidth:r(this._labelElement).width}addLabelListener(a,t){this._labelElement.addEventListener(a,t)}removeLabelListener(a,t){this._labelElement.removeEventListener(a,t)}};var A={FLOATING_LABEL:"forge-floating-label",FLOAT_ABOVE:"forge-floating-label--float-above",FLOAT_ABOVE_END_KEYFRAME:"forge-floating-label--float-above-end-keyframe",UNFLOAT_ABOVE_START_KEYFRAME:"forge-floating-label--unfloat-above-start-keyframe"},e={classes:A};var l=class{constructor(a){this._adapter=a;this._floatAnimationEndHandler=()=>this._handleFloatAnimationEnd()}initialize(){this._adapter.addLabelClass(e.classes.FLOATING_LABEL),d.BLINK&&this._adapter.addLabelListener("transitionend",this._floatAnimationEndHandler)}disconnect({cancelFloat:a=!1}={}){a&&this._activeFrame&&window.cancelAnimationFrame(this._activeFrame),this._adapter.removeLabelClass(e.classes.FLOATING_LABEL),this._adapter.removeLabelClass(e.classes.FLOAT_ABOVE),this._adapter.removeLabelClass(e.classes.FLOAT_ABOVE_END_KEYFRAME),this._adapter.removeLabelClass(e.classes.UNFLOAT_ABOVE_START_KEYFRAME),this._floatAnimationEndHandler&&this._adapter.removeLabelListener("transitionend",this._floatAnimationEndHandler)}float(a,t=!1){a?(this._adapter.hasLabelClass(e.classes.UNFLOAT_ABOVE_START_KEYFRAME)&&this._adapter.removeLabelClass(e.classes.UNFLOAT_ABOVE_START_KEYFRAME),this._activeFrame=window.requestAnimationFrame(()=>{this._activeFrame=window.requestAnimationFrame(()=>{(t||this.isFloating)&&this._adapter.addLabelClass(e.classes.FLOAT_ABOVE_END_KEYFRAME),this._adapter.addLabelClass(e.classes.FLOAT_ABOVE)})})):(this._adapter.removeLabelClass(e.classes.FLOAT_ABOVE),this._adapter.hasLabelClass(e.classes.FLOAT_ABOVE_END_KEYFRAME)&&(this._adapter.removeLabelClass(e.classes.FLOAT_ABOVE_END_KEYFRAME),this._adapter.addLabelClass(e.classes.UNFLOAT_ABOVE_START_KEYFRAME),this._activeFrame=window.requestAnimationFrame(()=>{this._activeFrame=window.requestAnimationFrame(()=>{this._adapter.removeLabelClass(e.classes.UNFLOAT_ABOVE_START_KEYFRAME)})})))}getWidth(){return this._adapter.getWidth()}get isFloating(){return this._adapter.hasLabelClass(e.classes.FLOAT_ABOVE)}_handleFloatAnimationEnd(){this._adapter.hasLabelClass(e.classes.FLOAT_ABOVE)&&!this._adapter.hasLabelClass(e.classes.FLOAT_ABOVE_END_KEYFRAME)?this._adapter.addLabelClass(e.classes.FLOAT_ABOVE_END_KEYFRAME):this._adapter.hasLabelClass(e.classes.UNFLOAT_ABOVE_START_KEYFRAME)&&this._adapter.removeLabelClass(e.classes.UNFLOAT_ABOVE_START_KEYFRAME)}};var _=class{constructor(a){this._labelElement=a;this._foundation=new l(new s(this._labelElement)),this._foundation.initialize()}get isFloating(){return this._foundation.isFloating}destroy({cancelFloat:a=!1}={}){this._foundation.disconnect({cancelFloat:a}),this._labelElement=void 0}float(a,t=!1){this._foundation.float(a,t)}getWidth(){return this._foundation.getWidth()}};export{s as a,e as b,l as c,_ as d};
7
+ //# sourceMappingURL=chunk.U7S4DJTU.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 s,f as D,g as L,h as y}from"./chunk.URKQICJD.js";import{b as A}from"./chunk.O6F4U4VY.js";import{d as C}from"./chunk.MROUV35N.js";import{d as b}from"./chunk.DTWXICOY.js";import{b as N}from"./chunk.Q2Q626DG.js";import{b as x}from"./chunk.4XN2WGMP.js";import{c as S}from"./chunk.JHELTQKA.js";import{f as v}from"./chunk.Y4ZS3A6F.js";import{e as f}from"./chunk.WEHQUUXJ.js";import{d as E}from"./chunk.I7OY43HW.js";import{a as c}from"./chunk.NVUMRW44.js";import{a as _}from"./chunk.T4J66YX5.js";import{a as h}from"./chunk.6ZJIHOIG.js";import{a as u,e as T}from"./chunk.TPXXHX5J.js";import{k as g}from"./chunk.J2M2MXP2.js";import{a as m,d as a}from"./chunk.M3QDAYD2.js";var O=`${h}select-dropdown`,w={TARGET:"target",SELECTED_TEXT_TARGET:"selected-text-target",SYNC_SELECTED_TEXT:"sync-selected-text"},B=m({},w),M={SCROLLED_BOTTOM:`${O}-scrolled-bottom`},o={elementName:O,attributes:B,events:M};var l=class extends D{constructor(t){super(t);this._syncSelectedText=!1;this._originalTargetText="";this._targetDisconnectedListener=()=>this._onTargetDisconnected()}initialize(){this._tryAttach(),super.initialize()}disconnect(){super.disconnect(),this._adapter.isAttached()&&this._detach()}_onDropdownScrollEnd(){this._adapter.emitHostEvent(o.events.SCROLLED_BOTTOM)}_applyValue(t){super._applyValue(t),this._applySelection()}_applySelection(){if(super._applySelection(),this._syncSelectedText||typeof this._selectedTextBuilder=="function"){let t=this._getSelectedText();t||(t=this._originalTargetText),this._adapter.setTargetText(t||"",this._selectedTextTarget)}}_tryAttach(){this._adapter.attach(this._target),this._adapter.isAttached()&&(this._targetDisconnectedDestructor=this._adapter.setTargetDisconnectedListener(this._targetDisconnectedListener),this._originalTargetText=this._adapter.getTargetText(this._selectedTextTarget),this.initializeTarget())}_detach(){this._adapter.detach(),this._targetDisconnectedDestructor&&(this._targetDisconnectedDestructor(),this._targetDisconnectedDestructor=void 0)}_onTargetDisconnected(){this._adapter.detach()}get target(){return this._target}set target(t){this._target!==t&&(this._target=t,this._adapter.isAttached()&&this._detach(),this._tryAttach())}get selectedTextTarget(){return this._selectedTextTarget}set selectedTextTarget(t){this._selectedTextTarget!==t&&(this._selectedTextTarget=t)}get syncSelectedText(){return this._syncSelectedText}set syncSelectedText(t){this._syncSelectedText!==t&&(this._syncSelectedText=t)}};var d=class extends y{constructor(e){super(e)}initializeAccessibility(){this._targetElement.setAttribute("role","listbox"),this._targetElement.setAttribute("aria-live","polite"),this._targetElement.setAttribute("aria-haspopup","true"),this._targetElement.setAttribute("aria-expanded","false")}addClickListener(e){this._targetElement.addEventListener("click",e)}removeClickListener(e){this._targetElement&&this._targetElement.removeEventListener("click",e)}addTargetListener(e,t){let i,r;e==="keydown"&&(i=!1,r=!0),this._targetElement.addEventListener(e,t,{passive:i,capture:r})}removeTargetListener(e,t){this._targetElement&&this._targetElement.removeEventListener(e,t)}updateActiveDescendant(e){e?this._targetElement.setAttribute("aria-activedescendant",e):this._targetElement.removeAttribute("aria-activedescendant")}open(e){super.open(e),this._targetElement.setAttribute("aria-controls",`list-dropdown-popup-${e.id}`),this._targetElement.setAttribute("aria-expanded","true")}close(){this._targetElement.setAttribute("aria-expanded","false"),this._targetElement.removeAttribute("aria-activedescendant"),this._targetElement.removeAttribute("aria-controls"),super.close()}attach(e){let r=(this._component.getRootNode()||HTMLDocument||this._component.ownerDocument||document).querySelector(e);r&&(this._targetElement=r)}detach(){this._targetElement=void 0}setMultiple(e){this._targetElement&&(e?this._targetElement.setAttribute("aria-multiselectable","true"):this._targetElement.removeAttribute("aria-multiselectable"))}setTargetDisconnectedListener(e){if(!this._targetElement||!this._targetElement.parentElement)return()=>{};let t=new MutationObserver(i=>{i.some(I=>Array.from(I.removedNodes).some(R=>R===this._targetElement))&&(t.disconnect(),e())});return t.observe(this._targetElement.parentElement,{childList:!0}),()=>t.disconnect()}isAttached(){return!!this._targetElement}setTargetText(e,t){let i=this._targetElement;if(t){let r=this._getElementBySelector(t);r&&(i=r)}i&&(i.textContent=e)}getTargetText(e){let t=e?this._getElementBySelector(e):this._targetElement;return t?t.innerText:""}_getElementBySelector(e){return this._targetElement.querySelector(e)||this._getRootNode().querySelector(e)}_getRootNode(){return this._component.getRootNode()||this._component.ownerDocument||document}};var P="<template></template>",H=":host{display:none}",n=class extends L{constructor(){super();T(this,P,H),this._foundation=new l(new d(this))}static get observedAttributes(){return[o.attributes.TARGET,o.attributes.SELECTED_TEXT_TARGET,o.attributes.SYNC_SELECTED_TEXT,s.attributes.VALUE,s.attributes.MULTIPLE,s.attributes.OBSERVE_SCROLL,s.attributes.OBSERVE_SCROLL_THRESHOLD,s.attributes.POPUP_CLASSES,s.attributes.OPTION_LIMIT,s.attributes.SYNC_POPUP_WIDTH]}attributeChangedCallback(t,i,r){switch(t){case o.attributes.TARGET:this.target=r;return;case o.attributes.SELECTED_TEXT_TARGET:this.selectedTextTarget=r;return;case o.attributes.SYNC_SELECTED_TEXT:this.syncSelectedText=g(r);return}super.attributeChangedCallback(t,i,r)}};a([c()],n.prototype,"target",2),a([c()],n.prototype,"selectedTextTarget",2),a([c()],n.prototype,"syncSelectedText",2),n=a([_({name:o.elementName,dependencies:[C,A,f,S,v,b,N,x,E]})],n);function gt(){u(n)}export{o as a,l as b,d as c,n as d,gt as e};
7
+ //# sourceMappingURL=chunk.UOEJCU6R.js.map
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../src/select/select-dropdown/select-dropdown-constants.ts", "../../src/select/select-dropdown/select-dropdown-foundation.ts", "../../src/select/select-dropdown/select-dropdown-adapter.ts", "../../src/select/select-dropdown/select-dropdown.ts", "../../src/select/select-dropdown/index.ts"],
4
4
  "sourcesContent": ["import { COMPONENT_NAME_PREFIX } from '../../constants';\r\n\r\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}select-dropdown`;\r\n\r\nconst observedAttributes = {\r\n TARGET: 'target',\r\n SELECTED_TEXT_TARGET: 'selected-text-target',\r\n SYNC_SELECTED_TEXT: 'sync-selected-text'\r\n};\r\n\r\nconst attributes = {\r\n ...observedAttributes\r\n};\r\n\r\nconst events = {\r\n SCROLLED_BOTTOM: `${elementName}-scrolled-bottom`\r\n};\r\n\r\nexport const SELECT_DROPDOWN_CONSTANTS = {\r\n elementName,\r\n attributes,\r\n events\r\n};\r\n", "import { ISelectDropdownAdapter } from './select-dropdown-adapter';\r\nimport { BaseSelectFoundation, IBaseSelectFoundation } from '../core/base-select-foundation';\r\nimport { SELECT_DROPDOWN_CONSTANTS } from './select-dropdown-constants';\r\n\r\nexport interface ISelectDropdownFoundation extends IBaseSelectFoundation {\r\n target: string;\r\n selectedTextTarget: string;\r\n syncSelectedText: boolean;\r\n}\r\n\r\nexport class SelectDropdownFoundation extends BaseSelectFoundation<ISelectDropdownAdapter> implements ISelectDropdownFoundation {\r\n private _target: string;\r\n private _selectedTextTarget: string;\r\n private _syncSelectedText = false;\r\n private _originalTargetText = '';\r\n private _targetDisconnectedListener: () => void;\r\n private _targetDisconnectedDestructor: () => void;\r\n\r\n constructor(adapter: ISelectDropdownAdapter) {\r\n super(adapter);\r\n this._targetDisconnectedListener = () => this._onTargetDisconnected();\r\n }\r\n\r\n public initialize(): void {\r\n this._tryAttach();\r\n super.initialize();\r\n }\r\n\r\n public disconnect(): void {\r\n super.disconnect();\r\n if (this._adapter.isAttached()) {\r\n this._detach();\r\n }\r\n }\r\n\r\n protected _onDropdownScrollEnd(): void {\r\n this._adapter.emitHostEvent(SELECT_DROPDOWN_CONSTANTS.events.SCROLLED_BOTTOM);\r\n }\r\n\r\n protected _applyValue(value: string | string[]): void {\r\n super._applyValue(value);\r\n this._applySelection();\r\n }\r\n\r\n protected _applySelection(): void {\r\n super._applySelection();\r\n if (this._syncSelectedText || typeof this._selectedTextBuilder === 'function') {\r\n let text = this._getSelectedText();\r\n if (!text) {\r\n text = this._originalTargetText;\r\n }\r\n this._adapter.setTargetText(text || '', this._selectedTextTarget);\r\n }\r\n }\r\n\r\n private _tryAttach(): void {\r\n this._adapter.attach(this._target);\r\n if (this._adapter.isAttached()) {\r\n this._targetDisconnectedDestructor = this._adapter.setTargetDisconnectedListener(this._targetDisconnectedListener);\r\n this._originalTargetText = this._adapter.getTargetText(this._selectedTextTarget);\r\n this.initializeTarget();\r\n }\r\n }\r\n\r\n private _detach(): void {\r\n this._adapter.detach();\r\n if (this._targetDisconnectedDestructor) {\r\n this._targetDisconnectedDestructor();\r\n this._targetDisconnectedDestructor = undefined as any;\r\n }\r\n }\r\n\r\n private _onTargetDisconnected(): void {\r\n this._adapter.detach();\r\n }\r\n\r\n public get target(): string {\r\n return this._target;\r\n }\r\n public set target(value: string) {\r\n if (this._target !== value) {\r\n this._target = value;\r\n if (this._adapter.isAttached()) {\r\n this._detach();\r\n }\r\n this._tryAttach();\r\n }\r\n }\r\n\r\n public get selectedTextTarget(): string {\r\n return this._selectedTextTarget;\r\n }\r\n public set selectedTextTarget(value: string) {\r\n if (this._selectedTextTarget !== value) {\r\n this._selectedTextTarget = value;\r\n }\r\n }\r\n\r\n public get syncSelectedText(): boolean {\r\n return this._syncSelectedText;\r\n }\r\n public set syncSelectedText(value: boolean) {\r\n if (this._syncSelectedText !== value) {\r\n this._syncSelectedText = value;\r\n }\r\n }\r\n}\r\n", "import { ISelectDropdownComponent } from './select-dropdown';\r\nimport { BaseSelectAdapter, IBaseSelectAdapter } from '../core/base-select-adapter';\r\nimport { IListDropdownConfig } from '../../list-dropdown/list-dropdown-constants';\r\n\r\nexport interface ISelectDropdownAdapter extends IBaseSelectAdapter {\r\n attach(selector: string): void;\r\n detach(): void;\r\n setTargetDisconnectedListener(cb: () => void): () => void;\r\n isAttached(): boolean;\r\n setTargetText(text: string, selector: string): void;\r\n getTargetText(selector: string): string;\r\n}\r\n\r\nexport class SelectDropdownAdapter extends BaseSelectAdapter implements ISelectDropdownAdapter {\r\n constructor(component: ISelectDropdownComponent) {\r\n super(component);\r\n }\r\n\r\n public initializeAccessibility(): void {\r\n this._targetElement.setAttribute('role', 'listbox');\r\n this._targetElement.setAttribute('aria-live', 'polite');\r\n this._targetElement.setAttribute('aria-haspopup', 'true');\r\n this._targetElement.setAttribute('aria-expanded', 'false');\r\n }\r\n\r\n public addClickListener(listener: (evt: Event) => void): void {\r\n this._targetElement.addEventListener('click', listener);\r\n }\r\n\r\n public removeClickListener(listener: (evt: Event) => void): void {\r\n if (this._targetElement) {\r\n this._targetElement.removeEventListener('click', listener);\r\n }\r\n }\r\n\r\n public addTargetListener(type: string, listener: (evt: Event) => void): void {\r\n let passive: boolean | undefined;\r\n let capture: boolean | undefined;\r\n \r\n if (type === 'keydown') {\r\n // We don't use a passive keydown listener because we are preventing default in this event and Angular doesn't like that\r\n // We need to use capturing to ensure that we get to this event before zone.js does\r\n passive = false;\r\n capture = true;\r\n }\r\n\r\n this._targetElement.addEventListener(type, listener, { passive, capture });\r\n }\r\n\r\n public removeTargetListener(type: string, listener: (evt: Event) => void): void {\r\n if (this._targetElement) {\r\n this._targetElement.removeEventListener(type, listener);\r\n }\r\n }\r\n\r\n public updateActiveDescendant(id: string): void {\r\n if (id) {\r\n this._targetElement.setAttribute('aria-activedescendant', id);\r\n } else {\r\n this._targetElement.removeAttribute('aria-activedescendant');\r\n }\r\n }\r\n\r\n public open(config: IListDropdownConfig): void {\r\n super.open(config);\r\n this._targetElement.setAttribute('aria-controls', `list-dropdown-popup-${config.id}`);\r\n this._targetElement.setAttribute('aria-expanded', 'true');\r\n }\r\n\r\n public close(): void {\r\n this._targetElement.setAttribute('aria-expanded', 'false');\r\n this._targetElement.removeAttribute('aria-activedescendant');\r\n this._targetElement.removeAttribute('aria-controls');\r\n super.close();\r\n }\r\n\r\n public attach(selector: string): void {\r\n const rootNode = this._component.getRootNode() as ShadowRoot || HTMLDocument;\r\n const doc = rootNode || this._component.ownerDocument || document;\r\n const element = doc.querySelector(selector) as HTMLElement;\r\n if (element) {\r\n this._targetElement = element;\r\n }\r\n }\r\n\r\n public detach(): void {\r\n this._targetElement = undefined as any;\r\n }\r\n\r\n public setMultiple(multiple: boolean): void {\r\n if (!this._targetElement) {\r\n return;\r\n }\r\n if (multiple) {\r\n this._targetElement.setAttribute('aria-multiselectable', 'true');\r\n } else {\r\n this._targetElement.removeAttribute('aria-multiselectable');\r\n }\r\n }\r\n\r\n public setTargetDisconnectedListener(cb: () => void): () => void {\r\n if (!this._targetElement || !this._targetElement.parentElement) {\r\n return () => {};\r\n }\r\n const observer = new MutationObserver(mutations => {\r\n const isTargetRemoved = mutations.some(mutation => {\r\n return Array.from(mutation.removedNodes).some(node => node === this._targetElement);\r\n });\r\n if (isTargetRemoved) {\r\n observer.disconnect();\r\n cb();\r\n }\r\n });\r\n observer.observe(this._targetElement.parentElement, { childList: true });\r\n return () => observer.disconnect();\r\n }\r\n\r\n public isAttached(): boolean {\r\n return !!this._targetElement;\r\n }\r\n\r\n public setTargetText(text: string, selector: string): void {\r\n let target: Element = this._targetElement;\r\n if (selector) {\r\n const element = this._getElementBySelector(selector);\r\n if (element) {\r\n target = element;\r\n }\r\n }\r\n if (target) {\r\n target.textContent = text;\r\n }\r\n }\r\n\r\n public getTargetText(selector: string): string {\r\n const element = selector ? this._getElementBySelector(selector) : this._targetElement;\r\n return element ? element.innerText : '';\r\n }\r\n\r\n private _getElementBySelector(selector: string): HTMLElement | null {\r\n return this._targetElement.querySelector(selector) || this._getRootNode().querySelector(selector);\r\n }\r\n\r\n private _getRootNode(): ShadowRoot | HTMLDocument {\r\n return (this._component.getRootNode() as ShadowRoot | HTMLDocument) || this._component.ownerDocument || document;\r\n }\r\n}\r\n", "import { CustomElement, FoundationProperty, attachShadowTemplate, coerceBoolean } from '@tylertech/forge-core';\r\n\r\nimport { SelectDropdownFoundation } from './select-dropdown-foundation';\r\nimport { SELECT_DROPDOWN_CONSTANTS } from './select-dropdown-constants';\r\nimport { IBaseSelectComponent, BaseSelectComponent } from '../core/base-select';\r\nimport { BASE_SELECT_CONSTANTS } from '../core/base-select-constants';\r\nimport { SelectDropdownAdapter } from './select-dropdown-adapter';\r\nimport { OptionComponent } from '../option';\r\nimport { OptionGroupComponent } from '../option-group';\r\nimport { PopupComponent } from '../../popup';\r\nimport { ListComponent, ListItemComponent } from '../../list';\r\nimport { CircularProgressComponent } from '../../circular-progress';\r\nimport { ScaffoldComponent } from '../../scaffold';\r\nimport { ToolbarComponent } from '../../toolbar';\r\nimport { IconButtonComponent } from '../../icon-button';\r\n\r\nconst template = '<template></template>';\r\nconst styles = ':host{display:none}';\r\n\r\nexport interface ISelectDropdownComponent extends IBaseSelectComponent {\r\n target: string;\r\n selectedTextTarget: string;\r\n syncSelectedText: boolean;\r\n}\r\n\r\ndeclare global {\r\n interface HTMLElementTagNameMap {\r\n 'forge-select-dropdown': ISelectDropdownComponent;\r\n }\r\n\r\n interface HTMLElementEventMap {\r\n 'forge-select-dropdown-scrolled-bottom': CustomEvent<void>;\r\n }\r\n}\r\n\r\n/**\r\n * The web component class behind the `<forge-select-dropdown>` custom element.\r\n * \r\n * @tag forge-select-dropdown\r\n */\r\n@CustomElement({\r\n name: SELECT_DROPDOWN_CONSTANTS.elementName,\r\n dependencies: [\r\n OptionComponent,\r\n OptionGroupComponent,\r\n PopupComponent,\r\n ListComponent,\r\n ListItemComponent,\r\n CircularProgressComponent,\r\n ScaffoldComponent,\r\n ToolbarComponent,\r\n IconButtonComponent\r\n ]\r\n})\r\nexport class SelectDropdownComponent extends BaseSelectComponent<SelectDropdownFoundation> implements ISelectDropdownComponent {\r\n public static get observedAttributes(): string[] {\r\n return [\r\n SELECT_DROPDOWN_CONSTANTS.attributes.TARGET,\r\n SELECT_DROPDOWN_CONSTANTS.attributes.SELECTED_TEXT_TARGET,\r\n SELECT_DROPDOWN_CONSTANTS.attributes.SYNC_SELECTED_TEXT,\r\n BASE_SELECT_CONSTANTS.attributes.VALUE,\r\n BASE_SELECT_CONSTANTS.attributes.MULTIPLE,\r\n BASE_SELECT_CONSTANTS.attributes.OBSERVE_SCROLL,\r\n BASE_SELECT_CONSTANTS.attributes.OBSERVE_SCROLL_THRESHOLD,\r\n BASE_SELECT_CONSTANTS.attributes.POPUP_CLASSES,\r\n BASE_SELECT_CONSTANTS.attributes.OPTION_LIMIT,\r\n BASE_SELECT_CONSTANTS.attributes.SYNC_POPUP_WIDTH\r\n ];\r\n }\r\n\r\n constructor() {\r\n super();\r\n attachShadowTemplate(this, template, styles);\r\n this._foundation = new SelectDropdownFoundation(new SelectDropdownAdapter(this));\r\n }\r\n\r\n public attributeChangedCallback(name: string, oldValue: string, newValue: string): void {\r\n switch (name) {\r\n case SELECT_DROPDOWN_CONSTANTS.attributes.TARGET:\r\n this.target = newValue;\r\n return;\r\n case SELECT_DROPDOWN_CONSTANTS.attributes.SELECTED_TEXT_TARGET:\r\n this.selectedTextTarget = newValue;\r\n return;\r\n case SELECT_DROPDOWN_CONSTANTS.attributes.SYNC_SELECTED_TEXT:\r\n this.syncSelectedText = coerceBoolean(newValue);\r\n return;\r\n }\r\n super.attributeChangedCallback(name, oldValue, newValue);\r\n }\r\n\r\n /** Sets the target element CSS selector */\r\n @FoundationProperty()\r\n public declare target: string;\r\n\r\n /** Sets the selected text element CSS selector */\r\n @FoundationProperty()\r\n public declare selectedTextTarget: string;\r\n\r\n /** Controls whether the selected text is synchronized to the target elements' text content. Default is false. */\r\n @FoundationProperty()\r\n public declare syncSelectedText: boolean;\r\n}\r\n", "import { defineCustomElement } from '@tylertech/forge-core';\r\n\r\nimport { SelectDropdownComponent } from './select-dropdown';\r\n\r\nexport * from './select-dropdown-adapter';\r\nexport * from './select-dropdown-constants';\r\nexport * from './select-dropdown-foundation';\r\nexport * from './select-dropdown';\r\n\r\nexport function defineSelectDropdownComponent(): void {\r\n defineCustomElement(SelectDropdownComponent);\r\n}\r\n"],
5
- "mappings": "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",
5
+ "mappings": "mqBAEA,IAAMA,EAA2C,GAAGC,mBAE9CC,EAAqB,CACzB,OAAQ,SACR,qBAAsB,uBACtB,mBAAoB,oBACtB,EAEMC,EAAaC,EAAA,GACdF,GAGCG,EAAS,CACb,gBAAiB,GAAGL,mBACtB,EAEaM,EAA4B,CACvC,YAAAN,EACA,WAAAG,EACA,OAAAE,CACF,ECZO,IAAME,EAAN,cAAuCC,CAAkF,CAQ9H,YAAYC,EAAiC,CAC3C,MAAMA,CAAO,EANf,KAAQ,kBAAoB,GAC5B,KAAQ,oBAAsB,GAM5B,KAAK,4BAA8B,IAAM,KAAK,sBAAsB,CACtE,CAEO,YAAmB,CACxB,KAAK,WAAW,EAChB,MAAM,WAAW,CACnB,CAEO,YAAmB,CACxB,MAAM,WAAW,EACb,KAAK,SAAS,WAAW,GAC3B,KAAK,QAAQ,CAEjB,CAEU,sBAA6B,CACrC,KAAK,SAAS,cAAcC,EAA0B,OAAO,eAAe,CAC9E,CAEU,YAAYC,EAAgC,CACpD,MAAM,YAAYA,CAAK,EACvB,KAAK,gBAAgB,CACvB,CAEU,iBAAwB,CAEhC,GADA,MAAM,gBAAgB,EAClB,KAAK,mBAAqB,OAAO,KAAK,sBAAyB,WAAY,CAC7E,IAAIC,EAAO,KAAK,iBAAiB,EAC5BA,IACHA,EAAO,KAAK,qBAEd,KAAK,SAAS,cAAcA,GAAQ,GAAI,KAAK,mBAAmB,EAEpE,CAEQ,YAAmB,CACzB,KAAK,SAAS,OAAO,KAAK,OAAO,EAC7B,KAAK,SAAS,WAAW,IAC3B,KAAK,8BAAgC,KAAK,SAAS,8BAA8B,KAAK,2BAA2B,EACjH,KAAK,oBAAsB,KAAK,SAAS,cAAc,KAAK,mBAAmB,EAC/E,KAAK,iBAAiB,EAE1B,CAEQ,SAAgB,CACtB,KAAK,SAAS,OAAO,EACjB,KAAK,gCACP,KAAK,8BAA8B,EACnC,KAAK,8BAAgC,OAEzC,CAEQ,uBAA8B,CACpC,KAAK,SAAS,OAAO,CACvB,CAEA,IAAW,QAAiB,CAC1B,OAAO,KAAK,OACd,CACA,IAAW,OAAOD,EAAe,CAC3B,KAAK,UAAYA,IACnB,KAAK,QAAUA,EACX,KAAK,SAAS,WAAW,GAC3B,KAAK,QAAQ,EAEf,KAAK,WAAW,EAEpB,CAEA,IAAW,oBAA6B,CACtC,OAAO,KAAK,mBACd,CACA,IAAW,mBAAmBA,EAAe,CACvC,KAAK,sBAAwBA,IAC/B,KAAK,oBAAsBA,EAE/B,CAEA,IAAW,kBAA4B,CACrC,OAAO,KAAK,iBACd,CACA,IAAW,iBAAiBA,EAAgB,CACtC,KAAK,oBAAsBA,IAC7B,KAAK,kBAAoBA,EAE7B,CACF,EC7FO,IAAME,EAAN,cAAoCC,CAAoD,CAC7F,YAAYC,EAAqC,CAC/C,MAAMA,CAAS,CACjB,CAEO,yBAAgC,CACrC,KAAK,eAAe,aAAa,OAAQ,SAAS,EAClD,KAAK,eAAe,aAAa,YAAa,QAAQ,EACtD,KAAK,eAAe,aAAa,gBAAiB,MAAM,EACxD,KAAK,eAAe,aAAa,gBAAiB,OAAO,CAC3D,CAEO,iBAAiBC,EAAsC,CAC5D,KAAK,eAAe,iBAAiB,QAASA,CAAQ,CACxD,CAEO,oBAAoBA,EAAsC,CAC3D,KAAK,gBACP,KAAK,eAAe,oBAAoB,QAASA,CAAQ,CAE7D,CAEO,kBAAkBC,EAAcD,EAAsC,CAC3E,IAAIE,EACAC,EAEAF,IAAS,YAGXC,EAAU,GACVC,EAAU,IAGZ,KAAK,eAAe,iBAAiBF,EAAMD,EAAU,CAAE,QAAAE,EAAS,QAAAC,CAAQ,CAAC,CAC3E,CAEO,qBAAqBF,EAAcD,EAAsC,CAC1E,KAAK,gBACP,KAAK,eAAe,oBAAoBC,EAAMD,CAAQ,CAE1D,CAEO,uBAAuBI,EAAkB,CAC1CA,EACF,KAAK,eAAe,aAAa,wBAAyBA,CAAE,EAE5D,KAAK,eAAe,gBAAgB,uBAAuB,CAE/D,CAEO,KAAKC,EAAmC,CAC7C,MAAM,KAAKA,CAAM,EACjB,KAAK,eAAe,aAAa,gBAAiB,uBAAuBA,EAAO,IAAI,EACpF,KAAK,eAAe,aAAa,gBAAiB,MAAM,CAC1D,CAEO,OAAc,CACnB,KAAK,eAAe,aAAa,gBAAiB,OAAO,EACzD,KAAK,eAAe,gBAAgB,uBAAuB,EAC3D,KAAK,eAAe,gBAAgB,eAAe,EACnD,MAAM,MAAM,CACd,CAEO,OAAOC,EAAwB,CAGpC,IAAMC,GAFW,KAAK,WAAW,YAAY,GAAmB,cACxC,KAAK,WAAW,eAAiB,UACrC,cAAcD,CAAQ,EACtCC,IACF,KAAK,eAAiBA,EAE1B,CAEO,QAAe,CACpB,KAAK,eAAiB,MACxB,CAEO,YAAYC,EAAyB,CACrC,KAAK,iBAGNA,EACF,KAAK,eAAe,aAAa,uBAAwB,MAAM,EAE/D,KAAK,eAAe,gBAAgB,sBAAsB,EAE9D,CAEO,8BAA8BC,EAA4B,CAC/D,GAAI,CAAC,KAAK,gBAAkB,CAAC,KAAK,eAAe,cAC/C,MAAO,IAAM,CAAC,EAEhB,IAAMC,EAAW,IAAI,iBAAiBC,GAAa,CACzBA,EAAU,KAAKC,GAC9B,MAAM,KAAKA,EAAS,YAAY,EAAE,KAAKC,GAAQA,IAAS,KAAK,cAAc,CACnF,IAECH,EAAS,WAAW,EACpBD,EAAG,EAEP,CAAC,EACD,OAAAC,EAAS,QAAQ,KAAK,eAAe,cAAe,CAAE,UAAW,EAAK,CAAC,EAChE,IAAMA,EAAS,WAAW,CACnC,CAEO,YAAsB,CAC3B,MAAO,CAAC,CAAC,KAAK,cAChB,CAEO,cAAcI,EAAcR,EAAwB,CACzD,IAAIS,EAAkB,KAAK,eAC3B,GAAIT,EAAU,CACZ,IAAMC,EAAU,KAAK,sBAAsBD,CAAQ,EAC/CC,IACFQ,EAASR,GAGTQ,IACFA,EAAO,YAAcD,EAEzB,CAEO,cAAcR,EAA0B,CAC7C,IAAMC,EAAUD,EAAW,KAAK,sBAAsBA,CAAQ,EAAI,KAAK,eACvE,OAAOC,EAAUA,EAAQ,UAAY,EACvC,CAEQ,sBAAsBD,EAAsC,CAClE,OAAO,KAAK,eAAe,cAAcA,CAAQ,GAAK,KAAK,aAAa,EAAE,cAAcA,CAAQ,CAClG,CAEQ,cAA0C,CAChD,OAAQ,KAAK,WAAW,YAAY,GAAmC,KAAK,WAAW,eAAiB,QAC1G,CACF,EClIA,IAAMU,EAAW,wBACXC,EAAS,sBAqCFC,EAAN,cAAsCC,CAAkF,CAgB7H,aAAc,CACZ,MAAM,EACNC,EAAqB,KAAMJ,EAAUC,CAAM,EAC3C,KAAK,YAAc,IAAII,EAAyB,IAAIC,EAAsB,IAAI,CAAC,CACjF,CAnBA,WAAkB,oBAA+B,CAC/C,MAAO,CACLC,EAA0B,WAAW,OACrCA,EAA0B,WAAW,qBACrCA,EAA0B,WAAW,mBACrCC,EAAsB,WAAW,MACjCA,EAAsB,WAAW,SACjCA,EAAsB,WAAW,eACjCA,EAAsB,WAAW,yBACjCA,EAAsB,WAAW,cACjCA,EAAsB,WAAW,aACjCA,EAAsB,WAAW,gBACnC,CACF,CAQO,yBAAyBC,EAAcC,EAAkBC,EAAwB,CACtF,OAAQF,EAAM,CACZ,KAAKF,EAA0B,WAAW,OACxC,KAAK,OAASI,EACd,OACF,KAAKJ,EAA0B,WAAW,qBACxC,KAAK,mBAAqBI,EAC1B,OACF,KAAKJ,EAA0B,WAAW,mBACxC,KAAK,iBAAmBK,EAAcD,CAAQ,EAC9C,MACJ,CACA,MAAM,yBAAyBF,EAAMC,EAAUC,CAAQ,CACzD,CAaF,EATiBE,EAAA,CADdC,EAAmB,GAtCTZ,EAuCI,sBAIAW,EAAA,CADdC,EAAmB,GA1CTZ,EA2CI,kCAIAW,EAAA,CADdC,EAAmB,GA9CTZ,EA+CI,gCA/CJA,EAANW,EAAA,CAdNE,EAAc,CACb,KAAMR,EAA0B,YAChC,aAAc,CACZS,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,CACF,CACF,CAAC,GACYtB,GC7CN,SAASuB,IAAsC,CACpDC,EAAoBC,CAAuB,CAC7C",
6
6
  "names": ["elementName", "COMPONENT_NAME_PREFIX", "observedAttributes", "attributes", "__spreadValues", "events", "SELECT_DROPDOWN_CONSTANTS", "SelectDropdownFoundation", "BaseSelectFoundation", "adapter", "SELECT_DROPDOWN_CONSTANTS", "value", "text", "SelectDropdownAdapter", "BaseSelectAdapter", "component", "listener", "type", "passive", "capture", "id", "config", "selector", "element", "multiple", "cb", "observer", "mutations", "mutation", "node", "text", "target", "template", "styles", "SelectDropdownComponent", "BaseSelectComponent", "attachShadowTemplate", "SelectDropdownFoundation", "SelectDropdownAdapter", "SELECT_DROPDOWN_CONSTANTS", "BASE_SELECT_CONSTANTS", "name", "oldValue", "newValue", "coerceBoolean", "__decorateClass", "FoundationProperty", "CustomElement", "OptionComponent", "OptionGroupComponent", "PopupComponent", "ListComponent", "ListItemComponent", "CircularProgressComponent", "ScaffoldComponent", "ToolbarComponent", "IconButtonComponent", "defineSelectDropdownComponent", "defineCustomElement", "SelectDropdownComponent"]
7
7
  }
@@ -3,5 +3,5 @@
3
3
  * Copyright 2023 Tyler Technologies, Inc.
4
4
  * License: Apache-2.0
5
5
  */
6
- import{a as L}from"./chunk.IEB5KRFQ.js";import{b as o}from"./chunk.U5WMRBSC.js";import{a as G}from"./chunk.NZKIFXBU.js";import{h as P,i as k}from"./chunk.DOEG3DWJ.js";import{a as V}from"./chunk.GT3VPSXY.js";import{a as B}from"./chunk.LS7WRRT2.js";import{a as d}from"./chunk.NVUMRW44.js";import{i as S}from"./chunk.K7FPXAFS.js";import{a as T,b as c,j as I,k as y,n as x}from"./chunk.J2M2MXP2.js";import{a as b,d as a}from"./chunk.M3QDAYD2.js";var M={VALUE:"value",MULTIPLE:"multiple",OBSERVE_SCROLL:"observe-scroll",OBSERVE_SCROLL_THRESHOLD:"observe-scroll-threshold",POPUP_CLASSES:"popup-classes",OPTION_LIMIT:"option-limit",SYNC_POPUP_WIDTH:"sync-popup-width",CONSTRAIN_POPUP_WIDTH:"constrain-popup-width",WRAP_OPTION_TEXT:"wrap-option-text"},U=b({},M),R={CHANGE:"change"},m={attributes:U,events:R};var N=(e=>(e[e.Option=0]="Option",e[e.Group=1]="Group",e))(N||{});function C(r,O){let e=r.some(i=>D(i)),t=r.some(i=>W(i));return e&&O===1||t&&O===0}function D(r){return c(r)&&I(r)&&r.hasOwnProperty("options")}function W(r){return c(r)&&I(r)&&r.hasOwnProperty("label")&&r.hasOwnProperty("value")}var H=class extends k{constructor(e){super();this._adapter=e;this._options=[];this._value=[];this._multiple=!1;this._open=!1;this._selectedValues=[];this._selectedLabels=[];this._selectedIndexes=[];this._filterString="";this._focusListener=t=>this._onFocus(t),this._blurListener=t=>this._onBlur(t),this._clickListener=t=>this._onClick(t),this._keydownListener=t=>this._onKeydown(t),this._optionsChangedListener=t=>this._onOptionsChanged(t),this._activeChangeListener=t=>this._onActiveOptionChanged(t),this._dropdownScrollEndListener=()=>this._onDropdownScrollEnd(),this._dismissListener=()=>this._onDismiss(),this._identifier=T()}_onFocus(e){}initialize(){this._optionListenerDestructor&&this._optionListenerDestructor(),this._optionListenerDestructor=this._adapter.setOptionsListener(this._optionsChangedListener),this._initializeValue()}initializeTarget(){this._adapter.initializeAccessibility(),this._adapter.setMultiple(this._multiple),this._adapter.addClickListener(this._clickListener),this._adapter.addTargetListener("blur",this._blurListener),this._adapter.addTargetListener("focus",this._focusListener),this._adapter.addTargetListener("keydown",this._keydownListener)}disconnect(){this._adapter.removeClickListener(this._clickListener),this._adapter.removeTargetListener("blur",this._blurListener),this._adapter.removeTargetListener("focus",this._focusListener),this._adapter.removeTargetListener("keydown",this._keydownListener),this._open&&this._closeDropdown(),this._optionListenerDestructor&&this._optionListenerDestructor()}appendOptions(e){this._adapter.setOptions(e,!1),this._open&&this._adapter.appendDropdownOptions(e)}selectAll(){this._multiple&&(this.value=this._flatOptions.map(e=>e.value))}deselectAll(){this._multiple&&(this.value=[])}get _flatOptions(){return C(this._options,1)?[].concat.apply([],this._options.map(e=>e.options)):this._options}get _nonDividerOptions(){return this._flatOptions.filter(e=>!e.divider)}_initializeValue(){let e=this._options.length&&this._options||this._adapter.getOptions();c(this._value)&&e.length&&this._applyValue(this._value)}_onClick(e){e.button===0&&(this._open?this._closeDropdown():this._openDropdown())}_onBlur(e){this._adapter.isFocusWithinPopup(e.relatedTarget)||this._open&&this._closeDropdown()}_openDropdown(){if(this._options=this._adapter.getOptions(),!this._flatOptions.length)return;this._open=!0;let e={options:this._options,multiple:this._multiple,selectedValues:[...this._selectedValues],id:this._identifier,optionBuilder:this._optionBuilder,syncWidth:this._syncPopupWidth,constrainViewportWidth:this._constrainPopupWidth,wrapOptionText:this._wrapOptionText,observeScroll:this._observeScroll,observeScrollThreshold:this._observeScrollThreshold,scrollEndListener:this._dropdownScrollEndListener,activeChangeCallback:this._activeChangeListener,targetWidthCallback:this._targetWidthCallback,popupClasses:this._popupClasses,optionLimit:this._optionLimit,headerBuilder:this._popupHeaderBuilder,footerBuilder:this._popupFooterBuilder,closeCallback:()=>this._closeDropdown(),selectCallback:t=>{let i=this._flatOptions,n=i.find(l=>l.value===t);if(n){let l=i.indexOf(n);this._onSelect(n,l,!0)}}};this._adapter.open(e),this._adapter.setDismissListener(this._dismissListener)}_closeDropdown(){this._open=!1,this._adapter.close()}async _onSelect(e,t,i=!0){return new Promise(async n=>{if(this._valueChanging)return Promise.resolve(!1);let l=e?e.value:"",u=e?e.label:"",v=[...this._value],f=[...this._selectedValues],g=[...this._selectedLabels],w=[...this._selectedIndexes];if(this._multiple)if(this._selectedValues.includes(l)){let h=this._selectedValues.indexOf(l);this._selectedValues.splice(h,1),this._selectedLabels.splice(h,1),this._selectedIndexes.splice(h,1)}else this._selectedValues.push(l),this._selectedLabels.push(u),this._selectedIndexes.push(t);else c(l)?(this._selectedValues[0]=l,this._selectedLabels[0]=u,this._selectedIndexes[0]=t):(this._selectedValues=[],this._selectedLabels=[],this._selectedIndexes=[]);this._value=[...this._selectedValues];let s=()=>{this._selectedValues=[...f],this._selectedLabels=[...g],this._selectedIndexes=[...w],this._value=[...v]},_=()=>{if(this._multiple){let h=this._selectedIndexes.includes(t);this._adapter.toggleOptionMultiple(t,h)}this._applySelection()},A=this.multiple?[...this._selectedValues]:this._selectedValues[0];if(this._open&&i&&!this._multiple&&this._closeDropdown(),typeof this._beforeValueChange=="function"){this._valueChanging=Promise.resolve(this._beforeValueChange.call(null,A));let h=await this._valueChanging;if(this._valueChanging=void 0,!h)return s(),this._tryUpdateDropdownPosition(),n(!1)}let E=!this._adapter.emitHostEvent(m.events.CHANGE,A,!0,!0);E?s():_(),this._tryUpdateDropdownPosition(),n(!E)})}_selectActiveOption(){let e=this._adapter.getActiveOptionIndex();e>=0&&this._nonDividerOptions[e]&&this._onSelect(this._nonDividerOptions[e],e)}_tryUpdateDropdownPosition(){this._open&&this._adapter.queueDropdownPositionUpdate()}_reset(){this._selectedValues=[],this._selectedLabels=[],this._selectedIndexes=[]}_applyValue(e){this._selectedValues=[],this._selectedLabels=[],this._options=this._adapter.getOptions(),Array.isArray(e)||(e=[e]),this._value=[];for(let t of e){this._value.includes(t)||this._value.push(t);let i=this._flatOptions.find(n=>x(n.value,t));i&&(this._selectedValues.push(i.value),this._selectedLabels.push(i.label))}this._selectedIndexes=this._selectedValues.map(t=>this._flatOptions.findIndex(i=>i.value===t)),this._adapter.patchSelectedValues(this._selectedValues)}_onDismiss(){this._closeDropdown()}_getSelectedText(){if(typeof this._selectedTextBuilder=="function"){let e=this._flatOptions.filter(t=>this._selectedValues.includes(t.value));return this._selectedTextBuilder(e)}return this._multiple?this._selectedLabels.length?this._selectedLabels.length===1?this._selectedLabels[0]:`${this._selectedLabels.length} options selected`:"":this._selectedLabels.filter(e=>e&&e.length).join(" ").trim()}_onKeydown(e){let t=e.key==="Escape"||e.keyCode===27,i=e.key==="Enter"||e.keyCode===13,n=e.key==="Space"||e.keyCode===32,l=e.key==="ArrowDown"||e.keyCode===40,u=e.key==="ArrowUp"||e.keyCode===38,v=e.keyCode>=48&&e.keyCode<=90,f=e.key==="Home"||e.keyCode===36,g=e.key==="End"||e.keyCode===35;if(e.key==="Tab"&&this._open&&!this._multiple){this._selectActiveOption();return}if(!v&&this._filterTimeout&&(window.clearTimeout(this._filterTimeout),this._filterString="",this._filterTimeout=void 0),t&&(e.preventDefault(),e.stopPropagation(),this._open)){this._closeDropdown();return}if(n)e.preventDefault(),this._open?this._closeDropdown():this._openDropdown();else if(i)this._open&&(e.stopPropagation(),e.preventDefault(),this._options=this._adapter.getOptions(),this._selectActiveOption());else if(u||l){if(e.preventDefault(),!this._open){this._openDropdown(),this._adapter.activateFirstOption();return}if(this._flatOptions.length===0)return;let s=0;this._open?(s=this._adapter.getActiveOptionIndex(),s===-1&&(s=this._getFirstSelectedOptionIndex())):s=this._getFirstSelectedOptionIndex(),u?s=this._getPreviousHighlightableOptionIndex(s,this._nonDividerOptions):s=this._getNextHighlightableOptionIndex(s,this._nonDividerOptions),this._adapter.highlightActiveOption(s)}else if(f)this._open&&(e.preventDefault(),this._adapter.highlightActiveOption(this._nonDividerOptions.findIndex(s=>!s.disabled)));else if(g){if(this._open){e.preventDefault();let s=this._nonDividerOptions;for(let _=s.length-1;_>=0;_--)if(!s[_].disabled){this._adapter.highlightActiveOption(_);break}}}else v&&this._filter(e.key)}_getFirstSelectedOptionIndex(){return this._nonDividerOptions.findIndex(e=>this._selectedValues.includes(e.value))}_getPreviousHighlightableOptionIndex(e,t){let i=e;return i<=0?i=t.length-1:i--,t[i].disabled?this._getPreviousHighlightableOptionIndex(i,t):i}_getNextHighlightableOptionIndex(e,t){let i=e;return i===t.length-1?i=0:i++,t[i].disabled?this._getNextHighlightableOptionIndex(i,t):i}_filter(e){this._filterTimeout&&(window.clearTimeout(this._filterTimeout),this._filterTimeout=void 0),this._filterString+=e,this._filterTimeout=window.setTimeout(()=>{this._filterString="",this._filterTimeout=void 0},300),this._options=this._adapter.getOptions();let t=this._flatOptions.find(({disabled:i,label:n})=>!i&&n.trim().toLowerCase().startsWith(this._filterString.trim().toLowerCase()));if(t){let i=this._flatOptions.indexOf(t);this._open?this._adapter.highlightActiveOption(i):this._multiple||this._onSelect(t,i,!1)}}_onOptionsChanged(e){this._options=e,this._applyValue(this._value)}_onActiveOptionChanged(e){this._adapter.updateActiveDescendant(e)}get value(){return this._multiple?[...this._value]:this._value[0]}set value(e){let t;Array.isArray(e)?t=[...e]:t=e,this._applyValue(t)}get selectedIndex(){return this._multiple?[...this._selectedIndexes]:this._selectedIndexes[0]}set selectedIndex(e){this._options=this._adapter.getOptions();let t;if(Array.isArray(e)?t=[...e]:t=[e],t.sort(),this.multiple)this.value=t.map(i=>this._flatOptions[i]).filter(i=>i).map(i=>i.value);else{let i=this._flatOptions[t[t.length-1]];if(!i)return;this.value=i.value}}get options(){return this._adapter.getOptions()}set options(e){let t;C(e,1)?t=e.map(i=>b({},i)):t=e.map(i=>b({},i)),this._options=t,this._adapter.setOptions(t),this._initializeValue(),this._open&&this._adapter.setDropdownOptions(t)}get multiple(){return this._multiple}set multiple(e){this._multiple!==e&&(this._multiple=e,this._reset(),this._open&&this._closeDropdown(),this._adapter.setMultiple(this._multiple))}get open(){return this._open}set open(e){this._open!==e&&(e?this._openDropdown():this._closeDropdown())}get optionBuilder(){return this._optionBuilder}set optionBuilder(e){this._optionBuilder=e}get selectedTextBuilder(){return this._selectedTextBuilder}set selectedTextBuilder(e){this._selectedTextBuilder=e}get optionLimit(){return this._optionLimit}set optionLimit(e){this._optionLimit=e}get popupClasses(){return this._popupClasses}set popupClasses(e){this._popupClasses=e}get popupHeaderBuilder(){return this._popupHeaderBuilder}set popupHeaderBuilder(e){this._popupHeaderBuilder=e}get popupFooterBuilder(){return this._popupFooterBuilder}set popupFooterBuilder(e){this._popupFooterBuilder=e}get popupElement(){return this._adapter.popupElement}get beforeValueChange(){return this._beforeValueChange}set beforeValueChange(e){this._beforeValueChange=e}};var p=class extends G{constructor(){super()}attributeChangedCallback(e,t,i){switch(super.attributeChangedCallback(e,t,i),e){case m.attributes.MULTIPLE:this.multiple=y(i);break;case m.attributes.VALUE:this.value=i;break}}appendOptions(e){this._foundation.appendOptions(e)}selectAll(){this._foundation.selectAll()}deselectAll(){this._foundation.deselectAll()}connectedCallback(){this._foundation.initialize()}disconnectedCallback(){this._foundation.disconnect()}};a([d()],p.prototype,"value",2),a([d()],p.prototype,"selectedIndex",2),a([d()],p.prototype,"options",2),a([d()],p.prototype,"multiple",2),a([d()],p.prototype,"open",2),a([d()],p.prototype,"optionBuilder",2),a([d()],p.prototype,"selectedTextBuilder",2),a([d()],p.prototype,"beforeValueChange",2),a([d({set:!1})],p.prototype,"popupElement",2);var F=class extends B{constructor(e){super(e)}get popupElement(){var e;return(e=this._listDropdown)==null?void 0:e.dropdownElement}getOptions(){let e=Array.from(this._component.querySelectorAll(L.elementName));if(e.length)return e.map(t=>{let i=Array.from(t.querySelectorAll(o.elementName)),n=this._createOptionsFromElements(i);return{text:t.label,builder:t.builder,value:t.value,options:n}});{let t=Array.from(this._component.querySelectorAll(o.elementName));return this._createOptionsFromElements(t)}}_createOptionsFromElements(e){return e.map(t=>{let i=t.hasAttribute(o.attributes.OPTION_CLASS)?t.getAttribute(o.attributes.OPTION_CLASS):t.optionClass;return typeof i=="string"&&(i=i.split(" ")),{label:t.hasAttribute(o.attributes.LABEL)?t.getAttribute(o.attributes.LABEL):c(t.label)?t.label:t.innerText,secondaryLabel:t.hasAttribute(o.attributes.SECONDARY_LABEL)?t.getAttribute(o.attributes.SECONDARY_LABEL):c(t.secondaryLabel)?t.secondaryLabel:void 0,value:t.hasAttribute(o.attributes.VALUE)?t.getAttribute(o.attributes.VALUE):t.value,disabled:t.hasAttribute(o.attributes.DISABLED),divider:t.hasAttribute(o.attributes.DIVIDER),optionClass:i,leadingIcon:t.hasAttribute(o.attributes.LEADING_ICON)?t.getAttribute(o.attributes.LEADING_ICON):t.leadingIcon,leadingIconClass:t.hasAttribute(o.attributes.LEADING_ICON_CLASS)?t.getAttribute(o.attributes.LEADING_ICON_CLASS):t.leadingIconClass,leadingIconType:t.hasAttribute(o.attributes.LEADING_ICON_TYPE)?t.getAttribute(o.attributes.LEADING_ICON_TYPE):t.leadingIconType,leadingIconComponentProps:t.leadingIconComponentProps,trailingIcon:t.hasAttribute(o.attributes.TRAILING_ICON)?t.getAttribute(o.attributes.TRAILING_ICON):t.trailingIcon,trailingIconClass:t.hasAttribute(o.attributes.TRAILING_ICON_CLASS)?t.getAttribute(o.attributes.TRAILING_ICON_CLASS):t.trailingIconClass,trailingIconType:t.hasAttribute(o.attributes.TRAILING_ICON_TYPE)?t.getAttribute(o.attributes.TRAILING_ICON_TYPE):t.trailingIconType,trailingIconComponentProps:t.trailingIconComponentProps,leadingBuilder:t.leadingBuilder,trailingBuilder:t.trailingBuilder}})}open(e){this._listDropdown=new P(this._targetElement,e),this._listDropdown.open()}close(){this._listDropdown&&(this._listDropdown.close(),this._listDropdown.destroy(),this._listDropdown=void 0)}setDismissListener(e){if(!this._listDropdown||!this._listDropdown.dropdownElement)return;let t=this._listDropdown.dropdownElement;t.targetElement&&t.targetElement.addEventListener(V.events.BLUR,e)}toggleOptionMultiple(e,t){var i;(i=this._listDropdown)==null||i.toggleOptionMultiple(e,t)}getActiveOptionIndex(){var e,t;return(t=(e=this._listDropdown)==null?void 0:e.getActiveOptionIndex())!=null?t:-1}activateSelectedOption(){var e;(e=this._listDropdown)==null||e.activateSelectedOption()}activateFirstOption(){var e;(e=this._listDropdown)==null||e.activateFirstOption()}highlightActiveOption(e){var t;(t=this._listDropdown)==null||t.activateOption(e)}patchSelectedValues(e){var t;(t=this._listDropdown)==null||t.setSelectedValues(e)}setOptionsListener(e){let t=n=>{n.stopPropagation(),e(this.getOptions())};this._component.addEventListener(o.events.VALUE_CHANGE,t);let i=new MutationObserver(()=>e(this.getOptions()));return i.observe(this._component,{childList:!0,subtree:!0}),()=>{this._component.removeEventListener(o.events.VALUE_CHANGE,t),i.disconnect()}}setOptions(e,t=!0){t&&this._clearOptions();for(let i of e)if(D(i)){let n=this._createOptionGroupElement(i);for(let l of i.options){let u=this._createOptionElement(l);n.appendChild(u)}this._component.appendChild(n)}else{let n=this._createOptionElement(i);this._component.appendChild(n)}}appendDropdownOptions(e){var t;(t=this._listDropdown)==null||t.appendOptions(e)}setDropdownOptions(e){var t;(t=this._listDropdown)==null||t.setOptions(e)}scrollSelectedOptionIntoView(){var e;(e=this._listDropdown)==null||e.scrollSelectedOptionIntoView()}isFocusWithinPopup(e){return!this._listDropdown||!this._listDropdown.dropdownElement?!1:this._listDropdown.dropdownElement.contains(e)}queueDropdownPositionUpdate(){this.popupElement&&window.requestAnimationFrame(()=>{let e=this.popupElement;e==null||e.position()})}_clearOptions(){Array.from(this._component.querySelectorAll(L.elementName)).forEach(i=>S(i)),Array.from(this._component.querySelectorAll(o.elementName)).forEach(i=>S(i))}_createOptionGroupElement(e){let t=document.createElement("forge-option-group");return Object.assign(t,e),t}_createOptionElement(e){let t=document.createElement("forge-option");return Object.assign(t,e),t.textContent=e.label,t}};export{m as a,N as b,C as c,D as d,W as e,H as f,p as g,F as h};
7
- //# sourceMappingURL=chunk.543K5Y4E.js.map
6
+ import{a as L}from"./chunk.O6F4U4VY.js";import{b as o}from"./chunk.MROUV35N.js";import{a as G}from"./chunk.MHH26REX.js";import{h as P,i as k}from"./chunk.42YDA5FH.js";import{a as V}from"./chunk.WEHQUUXJ.js";import{a as B}from"./chunk.3TKTJ3BY.js";import{a as d}from"./chunk.NVUMRW44.js";import{i as S}from"./chunk.HZUQXCOQ.js";import{a as T,b as c,j as I,k as y,n as x}from"./chunk.J2M2MXP2.js";import{a as b,d as a}from"./chunk.M3QDAYD2.js";var M={VALUE:"value",MULTIPLE:"multiple",OBSERVE_SCROLL:"observe-scroll",OBSERVE_SCROLL_THRESHOLD:"observe-scroll-threshold",POPUP_CLASSES:"popup-classes",OPTION_LIMIT:"option-limit",SYNC_POPUP_WIDTH:"sync-popup-width",CONSTRAIN_POPUP_WIDTH:"constrain-popup-width",WRAP_OPTION_TEXT:"wrap-option-text"},U=b({},M),R={CHANGE:"change"},m={attributes:U,events:R};var N=(e=>(e[e.Option=0]="Option",e[e.Group=1]="Group",e))(N||{});function C(r,O){let e=r.some(i=>D(i)),t=r.some(i=>W(i));return e&&O===1||t&&O===0}function D(r){return c(r)&&I(r)&&r.hasOwnProperty("options")}function W(r){return c(r)&&I(r)&&r.hasOwnProperty("label")&&r.hasOwnProperty("value")}var H=class extends k{constructor(e){super();this._adapter=e;this._options=[];this._value=[];this._multiple=!1;this._open=!1;this._selectedValues=[];this._selectedLabels=[];this._selectedIndexes=[];this._filterString="";this._focusListener=t=>this._onFocus(t),this._blurListener=t=>this._onBlur(t),this._clickListener=t=>this._onClick(t),this._keydownListener=t=>this._onKeydown(t),this._optionsChangedListener=t=>this._onOptionsChanged(t),this._activeChangeListener=t=>this._onActiveOptionChanged(t),this._dropdownScrollEndListener=()=>this._onDropdownScrollEnd(),this._dismissListener=()=>this._onDismiss(),this._identifier=T()}_onFocus(e){}initialize(){this._optionListenerDestructor&&this._optionListenerDestructor(),this._optionListenerDestructor=this._adapter.setOptionsListener(this._optionsChangedListener),this._initializeValue()}initializeTarget(){this._adapter.initializeAccessibility(),this._adapter.setMultiple(this._multiple),this._adapter.addClickListener(this._clickListener),this._adapter.addTargetListener("blur",this._blurListener),this._adapter.addTargetListener("focus",this._focusListener),this._adapter.addTargetListener("keydown",this._keydownListener)}disconnect(){this._adapter.removeClickListener(this._clickListener),this._adapter.removeTargetListener("blur",this._blurListener),this._adapter.removeTargetListener("focus",this._focusListener),this._adapter.removeTargetListener("keydown",this._keydownListener),this._open&&this._closeDropdown(),this._optionListenerDestructor&&this._optionListenerDestructor()}appendOptions(e){this._adapter.setOptions(e,!1),this._open&&this._adapter.appendDropdownOptions(e)}selectAll(){this._multiple&&(this.value=this._flatOptions.map(e=>e.value))}deselectAll(){this._multiple&&(this.value=[])}get _flatOptions(){return C(this._options,1)?[].concat.apply([],this._options.map(e=>e.options)):this._options}get _nonDividerOptions(){return this._flatOptions.filter(e=>!e.divider)}_initializeValue(){let e=this._options.length&&this._options||this._adapter.getOptions();c(this._value)&&e.length&&this._applyValue(this._value)}_onClick(e){e.button===0&&(this._open?this._closeDropdown():this._openDropdown())}_onBlur(e){this._adapter.isFocusWithinPopup(e.relatedTarget)||this._open&&this._closeDropdown()}_openDropdown(){if(this._options=this._adapter.getOptions(),!this._flatOptions.length)return;this._open=!0;let e={options:this._options,multiple:this._multiple,selectedValues:[...this._selectedValues],id:this._identifier,optionBuilder:this._optionBuilder,syncWidth:this._syncPopupWidth,constrainViewportWidth:this._constrainPopupWidth,wrapOptionText:this._wrapOptionText,observeScroll:this._observeScroll,observeScrollThreshold:this._observeScrollThreshold,scrollEndListener:this._dropdownScrollEndListener,activeChangeCallback:this._activeChangeListener,targetWidthCallback:this._targetWidthCallback,popupClasses:this._popupClasses,optionLimit:this._optionLimit,headerBuilder:this._popupHeaderBuilder,footerBuilder:this._popupFooterBuilder,closeCallback:()=>this._closeDropdown(),selectCallback:t=>{let i=this._flatOptions,n=i.find(l=>l.value===t);if(n){let l=i.indexOf(n);this._onSelect(n,l,!0)}}};this._adapter.open(e),this._adapter.setDismissListener(this._dismissListener)}_closeDropdown(){this._open=!1,this._adapter.close()}async _onSelect(e,t,i=!0){return new Promise(async n=>{if(this._valueChanging)return Promise.resolve(!1);let l=e?e.value:"",u=e?e.label:"",v=[...this._value],f=[...this._selectedValues],g=[...this._selectedLabels],w=[...this._selectedIndexes];if(this._multiple)if(this._selectedValues.includes(l)){let h=this._selectedValues.indexOf(l);this._selectedValues.splice(h,1),this._selectedLabels.splice(h,1),this._selectedIndexes.splice(h,1)}else this._selectedValues.push(l),this._selectedLabels.push(u),this._selectedIndexes.push(t);else c(l)?(this._selectedValues[0]=l,this._selectedLabels[0]=u,this._selectedIndexes[0]=t):(this._selectedValues=[],this._selectedLabels=[],this._selectedIndexes=[]);this._value=[...this._selectedValues];let s=()=>{this._selectedValues=[...f],this._selectedLabels=[...g],this._selectedIndexes=[...w],this._value=[...v]},_=()=>{if(this._multiple){let h=this._selectedIndexes.includes(t);this._adapter.toggleOptionMultiple(t,h)}this._applySelection()},A=this.multiple?[...this._selectedValues]:this._selectedValues[0];if(this._open&&i&&!this._multiple&&this._closeDropdown(),typeof this._beforeValueChange=="function"){this._valueChanging=Promise.resolve(this._beforeValueChange.call(null,A));let h=await this._valueChanging;if(this._valueChanging=void 0,!h)return s(),this._tryUpdateDropdownPosition(),n(!1)}let E=!this._adapter.emitHostEvent(m.events.CHANGE,A,!0,!0);E?s():_(),this._tryUpdateDropdownPosition(),n(!E)})}_selectActiveOption(){let e=this._adapter.getActiveOptionIndex();e>=0&&this._nonDividerOptions[e]&&this._onSelect(this._nonDividerOptions[e],e)}_tryUpdateDropdownPosition(){this._open&&this._adapter.queueDropdownPositionUpdate()}_reset(){this._selectedValues=[],this._selectedLabels=[],this._selectedIndexes=[]}_applyValue(e){this._selectedValues=[],this._selectedLabels=[],this._options=this._adapter.getOptions(),Array.isArray(e)||(e=[e]),this._value=[];for(let t of e){this._value.includes(t)||this._value.push(t);let i=this._flatOptions.find(n=>x(n.value,t));i&&(this._selectedValues.push(i.value),this._selectedLabels.push(i.label))}this._selectedIndexes=this._selectedValues.map(t=>this._flatOptions.findIndex(i=>i.value===t)),this._adapter.patchSelectedValues(this._selectedValues)}_onDismiss(){this._closeDropdown()}_getSelectedText(){if(typeof this._selectedTextBuilder=="function"){let e=this._flatOptions.filter(t=>this._selectedValues.includes(t.value));return this._selectedTextBuilder(e)}return this._multiple?this._selectedLabels.length?this._selectedLabels.length===1?this._selectedLabels[0]:`${this._selectedLabels.length} options selected`:"":this._selectedLabels.filter(e=>e&&e.length).join(" ").trim()}_onKeydown(e){let t=e.key==="Escape"||e.keyCode===27,i=e.key==="Enter"||e.keyCode===13,n=e.key==="Space"||e.keyCode===32,l=e.key==="ArrowDown"||e.keyCode===40,u=e.key==="ArrowUp"||e.keyCode===38,v=e.keyCode>=48&&e.keyCode<=90,f=e.key==="Home"||e.keyCode===36,g=e.key==="End"||e.keyCode===35;if(e.key==="Tab"&&this._open&&!this._multiple){this._selectActiveOption();return}if(!v&&this._filterTimeout&&(window.clearTimeout(this._filterTimeout),this._filterString="",this._filterTimeout=void 0),t&&(e.preventDefault(),e.stopPropagation(),this._open)){this._closeDropdown();return}if(n)e.preventDefault(),this._open?this._closeDropdown():this._openDropdown();else if(i)this._open&&(e.stopPropagation(),e.preventDefault(),this._options=this._adapter.getOptions(),this._selectActiveOption());else if(u||l){if(e.preventDefault(),!this._open){this._openDropdown(),this._adapter.activateFirstOption();return}if(this._flatOptions.length===0)return;let s=0;this._open?(s=this._adapter.getActiveOptionIndex(),s===-1&&(s=this._getFirstSelectedOptionIndex())):s=this._getFirstSelectedOptionIndex(),u?s=this._getPreviousHighlightableOptionIndex(s,this._nonDividerOptions):s=this._getNextHighlightableOptionIndex(s,this._nonDividerOptions),this._adapter.highlightActiveOption(s)}else if(f)this._open&&(e.preventDefault(),this._adapter.highlightActiveOption(this._nonDividerOptions.findIndex(s=>!s.disabled)));else if(g){if(this._open){e.preventDefault();let s=this._nonDividerOptions;for(let _=s.length-1;_>=0;_--)if(!s[_].disabled){this._adapter.highlightActiveOption(_);break}}}else v&&this._filter(e.key)}_getFirstSelectedOptionIndex(){return this._nonDividerOptions.findIndex(e=>this._selectedValues.includes(e.value))}_getPreviousHighlightableOptionIndex(e,t){let i=e;return i<=0?i=t.length-1:i--,t[i].disabled?this._getPreviousHighlightableOptionIndex(i,t):i}_getNextHighlightableOptionIndex(e,t){let i=e;return i===t.length-1?i=0:i++,t[i].disabled?this._getNextHighlightableOptionIndex(i,t):i}_filter(e){this._filterTimeout&&(window.clearTimeout(this._filterTimeout),this._filterTimeout=void 0),this._filterString+=e,this._filterTimeout=window.setTimeout(()=>{this._filterString="",this._filterTimeout=void 0},300),this._options=this._adapter.getOptions();let t=this._flatOptions.find(({disabled:i,label:n})=>!i&&n.trim().toLowerCase().startsWith(this._filterString.trim().toLowerCase()));if(t){let i=this._flatOptions.indexOf(t);this._open?this._adapter.highlightActiveOption(i):this._multiple||this._onSelect(t,i,!1)}}_onOptionsChanged(e){this._options=e,this._applyValue(this._value)}_onActiveOptionChanged(e){this._adapter.updateActiveDescendant(e)}get value(){return this._multiple?[...this._value]:this._value[0]}set value(e){let t;Array.isArray(e)?t=[...e]:t=e,this._applyValue(t)}get selectedIndex(){return this._multiple?[...this._selectedIndexes]:this._selectedIndexes[0]}set selectedIndex(e){this._options=this._adapter.getOptions();let t;if(Array.isArray(e)?t=[...e]:t=[e],t.sort(),this.multiple)this.value=t.map(i=>this._flatOptions[i]).filter(i=>i).map(i=>i.value);else{let i=this._flatOptions[t[t.length-1]];if(!i)return;this.value=i.value}}get options(){return this._adapter.getOptions()}set options(e){let t;C(e,1)?t=e.map(i=>b({},i)):t=e.map(i=>b({},i)),this._options=t,this._adapter.setOptions(t),this._initializeValue(),this._open&&this._adapter.setDropdownOptions(t)}get multiple(){return this._multiple}set multiple(e){this._multiple!==e&&(this._multiple=e,this._reset(),this._open&&this._closeDropdown(),this._adapter.setMultiple(this._multiple))}get open(){return this._open}set open(e){this._open!==e&&(e?this._openDropdown():this._closeDropdown())}get optionBuilder(){return this._optionBuilder}set optionBuilder(e){this._optionBuilder=e}get selectedTextBuilder(){return this._selectedTextBuilder}set selectedTextBuilder(e){this._selectedTextBuilder=e}get optionLimit(){return this._optionLimit}set optionLimit(e){this._optionLimit=e}get popupClasses(){return this._popupClasses}set popupClasses(e){this._popupClasses=e}get popupHeaderBuilder(){return this._popupHeaderBuilder}set popupHeaderBuilder(e){this._popupHeaderBuilder=e}get popupFooterBuilder(){return this._popupFooterBuilder}set popupFooterBuilder(e){this._popupFooterBuilder=e}get popupElement(){return this._adapter.popupElement}get beforeValueChange(){return this._beforeValueChange}set beforeValueChange(e){this._beforeValueChange=e}};var p=class extends G{constructor(){super()}attributeChangedCallback(e,t,i){switch(super.attributeChangedCallback(e,t,i),e){case m.attributes.MULTIPLE:this.multiple=y(i);break;case m.attributes.VALUE:this.value=i;break}}appendOptions(e){this._foundation.appendOptions(e)}selectAll(){this._foundation.selectAll()}deselectAll(){this._foundation.deselectAll()}connectedCallback(){this._foundation.initialize()}disconnectedCallback(){this._foundation.disconnect()}};a([d()],p.prototype,"value",2),a([d()],p.prototype,"selectedIndex",2),a([d()],p.prototype,"options",2),a([d()],p.prototype,"multiple",2),a([d()],p.prototype,"open",2),a([d()],p.prototype,"optionBuilder",2),a([d()],p.prototype,"selectedTextBuilder",2),a([d()],p.prototype,"beforeValueChange",2),a([d({set:!1})],p.prototype,"popupElement",2);var F=class extends B{constructor(e){super(e)}get popupElement(){var e;return(e=this._listDropdown)==null?void 0:e.dropdownElement}getOptions(){let e=Array.from(this._component.querySelectorAll(L.elementName));if(e.length)return e.map(t=>{let i=Array.from(t.querySelectorAll(o.elementName)),n=this._createOptionsFromElements(i);return{text:t.label,builder:t.builder,value:t.value,options:n}});{let t=Array.from(this._component.querySelectorAll(o.elementName));return this._createOptionsFromElements(t)}}_createOptionsFromElements(e){return e.map(t=>{let i=t.hasAttribute(o.attributes.OPTION_CLASS)?t.getAttribute(o.attributes.OPTION_CLASS):t.optionClass;return typeof i=="string"&&(i=i.split(" ")),{label:t.hasAttribute(o.attributes.LABEL)?t.getAttribute(o.attributes.LABEL):c(t.label)?t.label:t.innerText,secondaryLabel:t.hasAttribute(o.attributes.SECONDARY_LABEL)?t.getAttribute(o.attributes.SECONDARY_LABEL):c(t.secondaryLabel)?t.secondaryLabel:void 0,value:t.hasAttribute(o.attributes.VALUE)?t.getAttribute(o.attributes.VALUE):t.value,disabled:t.hasAttribute(o.attributes.DISABLED),divider:t.hasAttribute(o.attributes.DIVIDER),optionClass:i,leadingIcon:t.hasAttribute(o.attributes.LEADING_ICON)?t.getAttribute(o.attributes.LEADING_ICON):t.leadingIcon,leadingIconClass:t.hasAttribute(o.attributes.LEADING_ICON_CLASS)?t.getAttribute(o.attributes.LEADING_ICON_CLASS):t.leadingIconClass,leadingIconType:t.hasAttribute(o.attributes.LEADING_ICON_TYPE)?t.getAttribute(o.attributes.LEADING_ICON_TYPE):t.leadingIconType,leadingIconComponentProps:t.leadingIconComponentProps,trailingIcon:t.hasAttribute(o.attributes.TRAILING_ICON)?t.getAttribute(o.attributes.TRAILING_ICON):t.trailingIcon,trailingIconClass:t.hasAttribute(o.attributes.TRAILING_ICON_CLASS)?t.getAttribute(o.attributes.TRAILING_ICON_CLASS):t.trailingIconClass,trailingIconType:t.hasAttribute(o.attributes.TRAILING_ICON_TYPE)?t.getAttribute(o.attributes.TRAILING_ICON_TYPE):t.trailingIconType,trailingIconComponentProps:t.trailingIconComponentProps,leadingBuilder:t.leadingBuilder,trailingBuilder:t.trailingBuilder}})}open(e){this._listDropdown=new P(this._targetElement,e),this._listDropdown.open()}close(){this._listDropdown&&(this._listDropdown.close(),this._listDropdown.destroy(),this._listDropdown=void 0)}setDismissListener(e){if(!this._listDropdown||!this._listDropdown.dropdownElement)return;let t=this._listDropdown.dropdownElement;t.targetElement&&t.targetElement.addEventListener(V.events.BLUR,e)}toggleOptionMultiple(e,t){var i;(i=this._listDropdown)==null||i.toggleOptionMultiple(e,t)}getActiveOptionIndex(){var e,t;return(t=(e=this._listDropdown)==null?void 0:e.getActiveOptionIndex())!=null?t:-1}activateSelectedOption(){var e;(e=this._listDropdown)==null||e.activateSelectedOption()}activateFirstOption(){var e;(e=this._listDropdown)==null||e.activateFirstOption()}highlightActiveOption(e){var t;(t=this._listDropdown)==null||t.activateOption(e)}patchSelectedValues(e){var t;(t=this._listDropdown)==null||t.setSelectedValues(e)}setOptionsListener(e){let t=n=>{n.stopPropagation(),e(this.getOptions())};this._component.addEventListener(o.events.VALUE_CHANGE,t);let i=new MutationObserver(()=>e(this.getOptions()));return i.observe(this._component,{childList:!0,subtree:!0}),()=>{this._component.removeEventListener(o.events.VALUE_CHANGE,t),i.disconnect()}}setOptions(e,t=!0){t&&this._clearOptions();for(let i of e)if(D(i)){let n=this._createOptionGroupElement(i);for(let l of i.options){let u=this._createOptionElement(l);n.appendChild(u)}this._component.appendChild(n)}else{let n=this._createOptionElement(i);this._component.appendChild(n)}}appendDropdownOptions(e){var t;(t=this._listDropdown)==null||t.appendOptions(e)}setDropdownOptions(e){var t;(t=this._listDropdown)==null||t.setOptions(e)}scrollSelectedOptionIntoView(){var e;(e=this._listDropdown)==null||e.scrollSelectedOptionIntoView()}isFocusWithinPopup(e){return!this._listDropdown||!this._listDropdown.dropdownElement?!1:this._listDropdown.dropdownElement.contains(e)}queueDropdownPositionUpdate(){this.popupElement&&window.requestAnimationFrame(()=>{let e=this.popupElement;e==null||e.position()})}_clearOptions(){Array.from(this._component.querySelectorAll(L.elementName)).forEach(i=>S(i)),Array.from(this._component.querySelectorAll(o.elementName)).forEach(i=>S(i))}_createOptionGroupElement(e){let t=document.createElement("forge-option-group");return Object.assign(t,e),t}_createOptionElement(e){let t=document.createElement("forge-option");return Object.assign(t,e),t.textContent=e.label,t}};export{m as a,N as b,C as c,D as d,W as e,H as f,p as g,F as h};
7
+ //# sourceMappingURL=chunk.URKQICJD.js.map