@tylertech/forge 3.0.0-next.21 → 3.0.0-next.23

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 (908) hide show
  1. package/custom-elements.json +33600 -39264
  2. package/dist/dialog/forge-dialog-utils.css +1 -1
  3. package/dist/esm/accordion/index.js +1 -1
  4. package/dist/esm/app-bar/app-bar/index.js +1 -1
  5. package/dist/esm/app-bar/help-button/index.js +1 -1
  6. package/dist/esm/app-bar/index.js +1 -1
  7. package/dist/esm/app-bar/menu-button/index.js +1 -1
  8. package/dist/esm/app-bar/notification-button/index.js +1 -1
  9. package/dist/esm/app-bar/profile-button/index.js +1 -1
  10. package/dist/esm/app-bar/search/index.js +1 -1
  11. package/dist/esm/autocomplete/index.js +1 -1
  12. package/dist/esm/avatar/index.js +1 -1
  13. package/dist/esm/backdrop/index.js +1 -1
  14. package/dist/esm/badge/index.js +1 -1
  15. package/dist/esm/banner/index.js +1 -1
  16. package/dist/esm/bottom-sheet/index.js +1 -1
  17. package/dist/esm/busy-indicator/index.js +1 -1
  18. package/dist/esm/button/index.js +1 -1
  19. package/dist/esm/button-area/index.js +1 -1
  20. package/dist/esm/button-toggle/button-toggle/index.js +1 -1
  21. package/dist/esm/button-toggle/button-toggle-group/index.js +1 -1
  22. package/dist/esm/button-toggle/index.js +1 -1
  23. package/dist/esm/calendar/calendar-dropdown/index.js +1 -1
  24. package/dist/esm/calendar/calendar-menu/index.js +1 -1
  25. package/dist/esm/calendar/index.js +1 -1
  26. package/dist/esm/card/index.js +1 -1
  27. package/dist/esm/checkbox/index.js +1 -1
  28. package/dist/esm/chip-field/index.js +1 -1
  29. package/dist/esm/chips/chip/index.js +1 -1
  30. package/dist/esm/chips/chip-set/index.js +1 -1
  31. package/dist/esm/chips/index.js +1 -1
  32. package/dist/esm/chunks/{chunk.PDDBNHVU.js → chunk.2GUWHBUU.js} +2 -2
  33. package/dist/esm/chunks/{chunk.PDDBNHVU.js.map → chunk.2GUWHBUU.js.map} +2 -2
  34. package/dist/esm/chunks/chunk.2W23MOPP.js +7 -0
  35. package/dist/esm/chunks/chunk.2W23MOPP.js.map +7 -0
  36. package/dist/esm/chunks/{chunk.OSBNFFCI.js → chunk.32APLNN2.js} +2 -2
  37. package/dist/esm/chunks/chunk.32APLNN2.js.map +7 -0
  38. package/dist/esm/chunks/chunk.37B332ZK.js +7 -0
  39. package/dist/esm/chunks/{chunk.SOKORSUV.js.map → chunk.37B332ZK.js.map} +3 -3
  40. package/dist/esm/chunks/chunk.3II7OT2I.js +7 -0
  41. package/dist/esm/chunks/chunk.3II7OT2I.js.map +7 -0
  42. package/dist/esm/chunks/{chunk.IZRURH7C.js → chunk.3KAKJGUS.js} +2 -2
  43. package/dist/esm/chunks/chunk.3PMONORO.js +7 -0
  44. package/dist/esm/chunks/chunk.3PMONORO.js.map +7 -0
  45. package/dist/esm/chunks/chunk.473WRJ5G.js +7 -0
  46. package/dist/esm/chunks/{chunk.USQEIRST.js → chunk.5MB6CTBA.js} +2 -2
  47. package/dist/esm/chunks/{chunk.YS5JZHJ6.js → chunk.5QIWLZG3.js} +2 -2
  48. package/dist/esm/chunks/chunk.5SUJNEC7.js +7 -0
  49. package/dist/esm/chunks/chunk.5SUJNEC7.js.map +7 -0
  50. package/dist/esm/chunks/{chunk.47U6GVGZ.js → chunk.5UOX22ML.js} +2 -2
  51. package/dist/esm/chunks/{chunk.4NABD6XG.js → chunk.6VS3LYAF.js} +2 -2
  52. package/dist/esm/chunks/chunk.72BKSMAZ.js +7 -0
  53. package/dist/esm/chunks/{chunk.3TIBP6QT.js.map → chunk.72BKSMAZ.js.map} +3 -3
  54. package/dist/esm/chunks/chunk.77C7S7ZS.js +7 -0
  55. package/dist/esm/chunks/chunk.77C7S7ZS.js.map +7 -0
  56. package/dist/esm/chunks/chunk.7AAICE77.js +7 -0
  57. package/dist/esm/chunks/chunk.7AAICE77.js.map +7 -0
  58. package/dist/esm/chunks/chunk.7IPAW4D2.js +7 -0
  59. package/dist/esm/chunks/{chunk.MCR34SZQ.js.map → chunk.7IPAW4D2.js.map} +1 -1
  60. package/dist/esm/chunks/chunk.7RLY2O3H.js +7 -0
  61. package/dist/esm/chunks/chunk.7RLY2O3H.js.map +7 -0
  62. package/dist/esm/chunks/chunk.7Y3BUR7Q.js +7 -0
  63. package/dist/esm/chunks/{chunk.3U222LE4.js.map → chunk.7Y3BUR7Q.js.map} +1 -1
  64. package/dist/esm/chunks/{chunk.AOSBUJWW.js → chunk.A7BCLPP4.js} +2 -2
  65. package/dist/esm/chunks/chunk.AFWWND2C.js +7 -0
  66. package/dist/esm/chunks/chunk.AFWWND2C.js.map +7 -0
  67. package/dist/esm/chunks/{chunk.7UBIT4NP.js → chunk.AG6IRMLZ.js} +2 -2
  68. package/dist/esm/chunks/{chunk.A4UH52SA.js → chunk.AGLI4WR4.js} +2 -2
  69. package/dist/esm/chunks/chunk.AIJK3CTV.js +12 -0
  70. package/dist/esm/chunks/chunk.AIJK3CTV.js.map +7 -0
  71. package/dist/esm/chunks/{chunk.WTUXAH7Z.js → chunk.AOVXNX7P.js} +2 -2
  72. package/dist/esm/chunks/{chunk.AN2E2SSN.js → chunk.ASLHRT3N.js} +2 -2
  73. package/dist/esm/chunks/chunk.BEFAXPXJ.js +15 -0
  74. package/dist/esm/chunks/{chunk.EO3HELQ2.js.map → chunk.BEFAXPXJ.js.map} +1 -1
  75. package/dist/esm/chunks/{chunk.CBLUXYH2.js → chunk.BHE6Z5Y2.js} +2 -2
  76. package/dist/esm/chunks/{chunk.2WRAXA3H.js → chunk.BQ52JYLA.js} +2 -2
  77. package/dist/esm/chunks/chunk.BQZKOIAW.js +7 -0
  78. package/dist/esm/chunks/chunk.BQZKOIAW.js.map +7 -0
  79. package/dist/esm/chunks/chunk.BV7EAQST.js +7 -0
  80. package/dist/esm/chunks/chunk.BV7EAQST.js.map +7 -0
  81. package/dist/esm/chunks/{chunk.ROMRJIFR.js → chunk.CE35CVDV.js} +2 -2
  82. package/dist/esm/chunks/{chunk.ZPXMKY72.js → chunk.CEGBMUSR.js} +2 -2
  83. package/dist/esm/chunks/{chunk.GBGGUYTE.js → chunk.CFAI4K3E.js} +2 -2
  84. package/dist/esm/chunks/{chunk.ZIGVO6FN.js → chunk.CGFSMACZ.js} +2 -2
  85. package/dist/esm/chunks/chunk.CLYGTLXN.js +7 -0
  86. package/dist/esm/chunks/chunk.CLYGTLXN.js.map +7 -0
  87. package/dist/esm/chunks/chunk.DJSHVUEM.js +18 -0
  88. package/dist/esm/chunks/{chunk.MGLWXAZO.js.map → chunk.DJSHVUEM.js.map} +4 -4
  89. package/dist/esm/chunks/chunk.DKERDHXH.js +7 -0
  90. package/dist/esm/chunks/{chunk.JVWJHSPM.js.map → chunk.DKERDHXH.js.map} +1 -1
  91. package/dist/esm/chunks/{chunk.UEYPCCFG.js → chunk.ENUKGA2U.js} +2 -2
  92. package/dist/esm/chunks/chunk.EO3GP6DP.js +7 -0
  93. package/dist/esm/chunks/chunk.EO3GP6DP.js.map +7 -0
  94. package/dist/esm/chunks/chunk.FLBYVCQ6.js +7 -0
  95. package/dist/esm/chunks/chunk.FLBYVCQ6.js.map +7 -0
  96. package/dist/esm/chunks/chunk.FLF5RTYO.js +7 -0
  97. package/dist/esm/chunks/chunk.FLF5RTYO.js.map +7 -0
  98. package/dist/esm/chunks/chunk.GBAVJILM.js +7 -0
  99. package/dist/esm/chunks/chunk.GBAVJILM.js.map +7 -0
  100. package/dist/esm/chunks/chunk.GG7IQL46.js +7 -0
  101. package/dist/esm/chunks/{chunk.HBAC6E7O.js.map → chunk.GG7IQL46.js.map} +1 -1
  102. package/dist/esm/chunks/chunk.GIENHEMN.js +7 -0
  103. package/dist/esm/chunks/chunk.GIENHEMN.js.map +7 -0
  104. package/dist/esm/chunks/chunk.GRYO5XP2.js +7 -0
  105. package/dist/esm/chunks/chunk.GRYO5XP2.js.map +7 -0
  106. package/dist/esm/chunks/{chunk.FOSKVNVV.js → chunk.H4VQXV2H.js} +2 -2
  107. package/dist/esm/chunks/{chunk.FOSKVNVV.js.map → chunk.H4VQXV2H.js.map} +2 -2
  108. package/dist/esm/chunks/{chunk.GA6AO6FJ.js → chunk.H5RW3A4M.js} +2 -2
  109. package/dist/esm/chunks/chunk.HD2SLIL2.js +7 -0
  110. package/dist/esm/chunks/{chunk.V7ILFIOR.js.map → chunk.HD2SLIL2.js.map} +1 -1
  111. package/dist/esm/chunks/chunk.HG4IDRAC.js +7 -0
  112. package/dist/esm/chunks/chunk.HG4IDRAC.js.map +7 -0
  113. package/dist/esm/chunks/{chunk.CSOKFDFQ.js → chunk.HSADKCGS.js} +2 -2
  114. package/dist/esm/chunks/chunk.I7YON2TC.js +7 -0
  115. package/dist/esm/chunks/chunk.I7YON2TC.js.map +7 -0
  116. package/dist/esm/chunks/chunk.IEABOPNB.js +7 -0
  117. package/dist/esm/chunks/{chunk.22C7GQLX.js → chunk.IL4S57WO.js} +2 -2
  118. package/dist/esm/chunks/{chunk.HMJODLAS.js → chunk.IQYOLMPG.js} +2 -2
  119. package/dist/esm/chunks/{chunk.QG5EYBS3.js → chunk.J2Y5KPON.js} +2 -2
  120. package/dist/esm/chunks/{chunk.QG5EYBS3.js.map → chunk.J2Y5KPON.js.map} +2 -2
  121. package/dist/esm/chunks/{chunk.GTKYO6VB.js → chunk.JGURMVW7.js} +2 -2
  122. package/dist/esm/chunks/{chunk.YXHMD73U.js → chunk.K6GJNDTY.js} +2 -2
  123. package/dist/esm/chunks/{chunk.XYBVD3IE.js → chunk.KCCW4AMU.js} +2 -2
  124. package/dist/esm/chunks/{chunk.XYBVD3IE.js.map → chunk.KCCW4AMU.js.map} +2 -2
  125. package/dist/esm/chunks/{chunk.QUWEAFGI.js → chunk.KEOLH7G3.js} +2 -2
  126. package/dist/esm/chunks/chunk.KLU54MDQ.js +7 -0
  127. package/dist/esm/chunks/chunk.KLU54MDQ.js.map +7 -0
  128. package/dist/esm/chunks/chunk.KO6ODCZC.js +7 -0
  129. package/dist/esm/chunks/chunk.KO6ODCZC.js.map +7 -0
  130. package/dist/esm/chunks/chunk.L4QSPQDE.js +7 -0
  131. package/dist/esm/chunks/{chunk.DCCFF327.js.map → chunk.L4QSPQDE.js.map} +2 -2
  132. package/dist/esm/chunks/{chunk.BIQTNLIF.js → chunk.LNTTU2GL.js} +2 -2
  133. package/dist/esm/chunks/{chunk.7IJUN75W.js → chunk.LY2Z2Z7S.js} +2 -2
  134. package/dist/esm/chunks/{chunk.7IJUN75W.js.map → chunk.LY2Z2Z7S.js.map} +3 -3
  135. package/dist/esm/chunks/{chunk.2AM2BKEO.js → chunk.MFQRXVKO.js} +2 -2
  136. package/dist/esm/chunks/chunk.MFS7AVW6.js +7 -0
  137. package/dist/esm/chunks/chunk.MFS7AVW6.js.map +7 -0
  138. package/dist/esm/chunks/{chunk.JLSFTWPE.js → chunk.MTIPIEXA.js} +2 -2
  139. package/dist/esm/chunks/chunk.MX4JX4GT.js +7 -0
  140. package/dist/esm/chunks/{chunk.UOD3A7M4.js.map → chunk.MX4JX4GT.js.map} +1 -1
  141. package/dist/esm/chunks/chunk.NEQX2QVX.js +7 -0
  142. package/dist/esm/chunks/chunk.NEQX2QVX.js.map +7 -0
  143. package/dist/esm/chunks/chunk.NWVQ5HK2.js +7 -0
  144. package/dist/esm/chunks/{chunk.BETICEYY.js.map → chunk.NWVQ5HK2.js.map} +2 -2
  145. package/dist/esm/chunks/chunk.O5WAQQNR.js +7 -0
  146. package/dist/esm/chunks/{chunk.ZYKP23JP.js.map → chunk.O5WAQQNR.js.map} +2 -2
  147. package/dist/esm/chunks/{chunk.JSTCCUKZ.js → chunk.OEI35LFU.js} +2 -2
  148. package/dist/esm/chunks/chunk.OJ7JO4O6.js +7 -0
  149. package/dist/esm/chunks/chunk.OJ7JO4O6.js.map +7 -0
  150. package/dist/esm/chunks/{chunk.6GSVB5NB.js → chunk.OLFOVKQG.js} +2 -2
  151. package/dist/esm/chunks/chunk.OLFOVKQG.js.map +7 -0
  152. package/dist/esm/chunks/{chunk.IWVAI6XM.js → chunk.OOAJHLW4.js} +2 -2
  153. package/dist/esm/chunks/chunk.OOAJHLW4.js.map +7 -0
  154. package/dist/esm/chunks/chunk.OQHDHS2C.js +7 -0
  155. package/dist/esm/chunks/chunk.OQHDHS2C.js.map +7 -0
  156. package/dist/esm/chunks/{chunk.2537XOFQ.js → chunk.OREDK5MJ.js} +2 -2
  157. package/dist/esm/chunks/chunk.OVXEOEJF.js +7 -0
  158. package/dist/esm/chunks/chunk.OVXEOEJF.js.map +7 -0
  159. package/dist/esm/chunks/chunk.PC6TW5XE.js +7 -0
  160. package/dist/esm/chunks/chunk.PC6TW5XE.js.map +7 -0
  161. package/dist/esm/chunks/chunk.QCPV5DEG.js +7 -0
  162. package/dist/esm/chunks/{chunk.R3AWIPPK.js → chunk.QIZBZGYT.js} +2 -2
  163. package/dist/esm/chunks/{chunk.2XPAYTK4.js → chunk.QKTK5XUE.js} +2 -2
  164. package/dist/esm/chunks/chunk.QLGJS37N.js +7 -0
  165. package/dist/esm/chunks/chunk.QLGJS37N.js.map +7 -0
  166. package/dist/esm/chunks/{chunk.R66CYS27.js → chunk.QTY25OTN.js} +2 -2
  167. package/dist/esm/chunks/chunk.QUXMLWBJ.js +7 -0
  168. package/dist/esm/chunks/{chunk.BEUQVZKZ.js.map → chunk.QUXMLWBJ.js.map} +1 -1
  169. package/dist/esm/chunks/{chunk.BSV27GU7.js → chunk.QVATEY5S.js} +2 -2
  170. package/dist/esm/chunks/{chunk.FRTSXX33.js → chunk.RSYEG2RW.js} +2 -2
  171. package/dist/esm/chunks/{chunk.A6BIUNPW.js → chunk.RXBLU4OJ.js} +2 -2
  172. package/dist/esm/chunks/{chunk.FBDRM4YN.js → chunk.S7KEO2CH.js} +2 -2
  173. package/dist/esm/chunks/{chunk.XU3YSZPA.js → chunk.SQ3AZAHF.js} +2 -2
  174. package/dist/esm/chunks/{chunk.35MHQH7Z.js → chunk.SROEDYPL.js} +2 -2
  175. package/dist/esm/chunks/{chunk.SHBDQPPH.js → chunk.SZOZIJZI.js} +2 -2
  176. package/dist/esm/chunks/chunk.T7NWP7DB.js +7 -0
  177. package/dist/esm/chunks/chunk.T7NWP7DB.js.map +7 -0
  178. package/dist/esm/chunks/{chunk.PXRGQHWR.js → chunk.TQWZDM6T.js} +2 -2
  179. package/dist/esm/chunks/chunk.TSSZQPLE.js +7 -0
  180. package/dist/esm/chunks/{chunk.5UGN5FYV.js.map → chunk.TSSZQPLE.js.map} +2 -2
  181. package/dist/esm/chunks/chunk.U6J4VHU6.js +7 -0
  182. package/dist/esm/chunks/{chunk.STSAE2XP.js.map → chunk.U6J4VHU6.js.map} +1 -1
  183. package/dist/esm/chunks/{chunk.6JVMCBCR.js → chunk.UKBE2FMZ.js} +2 -2
  184. package/dist/esm/chunks/{chunk.MDDX4MJU.js → chunk.UPSXYWPD.js} +2 -2
  185. package/dist/esm/chunks/{chunk.MDDX4MJU.js.map → chunk.UPSXYWPD.js.map} +2 -2
  186. package/dist/esm/chunks/chunk.USTVZ6MZ.js +7 -0
  187. package/dist/esm/chunks/chunk.USTVZ6MZ.js.map +7 -0
  188. package/dist/esm/chunks/chunk.V6KUOCAR.js +7 -0
  189. package/dist/esm/chunks/chunk.V6KUOCAR.js.map +7 -0
  190. package/dist/esm/chunks/chunk.VGIRVTBJ.js +7 -0
  191. package/dist/esm/chunks/chunk.VGIRVTBJ.js.map +7 -0
  192. package/dist/esm/chunks/{chunk.4AEQ7KVU.js → chunk.VJZ7VDG5.js} +2 -2
  193. package/dist/esm/chunks/chunk.VL5RWSAV.js +7 -0
  194. package/dist/esm/chunks/chunk.VL5RWSAV.js.map +7 -0
  195. package/dist/esm/chunks/chunk.VRSPT7WX.js +7 -0
  196. package/dist/esm/chunks/{chunk.UQQQSJVM.js.map → chunk.VRSPT7WX.js.map} +3 -3
  197. package/dist/esm/chunks/chunk.W4HANHUO.js +7 -0
  198. package/dist/esm/chunks/{chunk.2W276VOR.js → chunk.WMJSYYXQ.js} +2 -2
  199. package/dist/esm/chunks/chunk.WXVVOFNK.js +7 -0
  200. package/dist/esm/chunks/chunk.WXVVOFNK.js.map +7 -0
  201. package/dist/esm/chunks/chunk.X77NKT6Z.js +7 -0
  202. package/dist/esm/chunks/chunk.X77NKT6Z.js.map +7 -0
  203. package/dist/esm/chunks/chunk.XZ23XHFE.js +7 -0
  204. package/dist/esm/chunks/chunk.XZ23XHFE.js.map +7 -0
  205. package/dist/esm/chunks/chunk.YNCTSMT6.js +7 -0
  206. package/dist/esm/chunks/chunk.YNCTSMT6.js.map +7 -0
  207. package/dist/esm/chunks/{chunk.YNXWVL4B.js → chunk.YPNSK2CK.js} +2 -2
  208. package/dist/esm/chunks/chunk.YRAEFQJW.js +7 -0
  209. package/dist/esm/chunks/{chunk.XAZ6EDIZ.js.map → chunk.YRAEFQJW.js.map} +3 -3
  210. package/dist/esm/chunks/chunk.YWJVZVZX.js +7 -0
  211. package/dist/esm/chunks/{chunk.6XLTVIUD.js → chunk.ZA7JY3AY.js} +2 -2
  212. package/dist/esm/chunks/chunk.ZG6YF2HI.js +7 -0
  213. package/dist/esm/chunks/{chunk.R6VPRRTT.js.map → chunk.ZG6YF2HI.js.map} +1 -1
  214. package/dist/esm/circular-progress/index.js +1 -1
  215. package/dist/esm/color-picker/index.js +1 -1
  216. package/dist/esm/core/base/index.js +1 -1
  217. package/dist/esm/core/delegates/index.js +1 -1
  218. package/dist/esm/core/index.js +1 -1
  219. package/dist/esm/core/utils/index.js +1 -1
  220. package/dist/esm/date-picker/index.js +1 -1
  221. package/dist/esm/date-range-picker/index.js +1 -1
  222. package/dist/esm/deprecated/button/index.js +1 -1
  223. package/dist/esm/deprecated/index.js +1 -1
  224. package/dist/esm/dialog/index.js +1 -1
  225. package/dist/esm/divider/index.js +1 -1
  226. package/dist/esm/drawer/base/index.js +1 -1
  227. package/dist/esm/drawer/drawer/index.js +1 -1
  228. package/dist/esm/drawer/index.js +1 -1
  229. package/dist/esm/drawer/mini-drawer/index.js +1 -1
  230. package/dist/esm/drawer/modal-drawer/index.js +1 -1
  231. package/dist/esm/expansion-panel/index.js +1 -1
  232. package/dist/esm/{field-next → field}/base/index.js +1 -1
  233. package/dist/esm/field/index.js +7 -0
  234. package/dist/esm/file-picker/index.js +1 -1
  235. package/dist/esm/floating-action-button/index.js +1 -1
  236. package/dist/esm/focus-indicator/index.js +1 -1
  237. package/dist/esm/icon/index.js +1 -1
  238. package/dist/esm/icon-button/index.js +1 -1
  239. package/dist/esm/index.js +1 -1
  240. package/dist/esm/inline-message/index.js +1 -1
  241. package/dist/esm/keyboard-shortcut/index.js +1 -1
  242. package/dist/esm/label/index.js +1 -1
  243. package/dist/esm/label-value/index.js +1 -1
  244. package/dist/esm/linear-progress/index.js +1 -1
  245. package/dist/esm/list/index.js +1 -1
  246. package/dist/esm/list/list/index.js +1 -1
  247. package/dist/esm/list/list-item/index.js +1 -1
  248. package/dist/esm/list-dropdown/index.js +1 -1
  249. package/dist/esm/menu/index.js +1 -1
  250. package/dist/esm/open-icon/index.js +1 -1
  251. package/dist/esm/overlay/index.js +1 -1
  252. package/dist/esm/page-state/index.js +1 -1
  253. package/dist/esm/paginator/index.js +1 -1
  254. package/dist/esm/popover/index.js +1 -1
  255. package/dist/esm/profile-card/index.js +1 -1
  256. package/dist/esm/quantity-field/index.js +1 -1
  257. package/dist/esm/radio/index.js +1 -1
  258. package/dist/esm/radio/radio/index.js +1 -1
  259. package/dist/esm/radio/radio-group/index.js +1 -1
  260. package/dist/esm/scaffold/index.js +1 -1
  261. package/dist/esm/select/core/index.js +1 -1
  262. package/dist/esm/select/index.js +1 -1
  263. package/dist/esm/select/option/index.js +1 -1
  264. package/dist/esm/select/option-group/index.js +1 -1
  265. package/dist/esm/select/select/index.js +1 -1
  266. package/dist/esm/select/select-dropdown/index.js +1 -1
  267. package/dist/esm/skeleton/index.js +1 -1
  268. package/dist/esm/slider/index.js +1 -1
  269. package/dist/esm/split-button/index.js +1 -1
  270. package/dist/esm/split-view/index.js +1 -1
  271. package/dist/esm/split-view/split-view/index.js +1 -1
  272. package/dist/esm/split-view/split-view-panel/index.js +1 -1
  273. package/dist/esm/stack/index.js +1 -1
  274. package/dist/esm/state-layer/index.js +1 -1
  275. package/dist/esm/stepper/index.js +1 -1
  276. package/dist/esm/stepper/step/index.js +1 -1
  277. package/dist/esm/stepper/stepper/index.js +1 -1
  278. package/dist/esm/switch/index.js +1 -1
  279. package/dist/esm/table/index.js +1 -1
  280. package/dist/esm/tabs/index.js +1 -1
  281. package/dist/esm/tabs/tab/index.js +1 -1
  282. package/dist/esm/tabs/tab-bar/index.js +1 -1
  283. package/dist/esm/text-field/index.js +1 -1
  284. package/dist/esm/time-picker/index.js +1 -1
  285. package/dist/esm/toast/index.js +1 -1
  286. package/dist/esm/toolbar/index.js +1 -1
  287. package/dist/esm/tooltip/index.js +1 -1
  288. package/dist/esm/view-switcher/index.js +1 -1
  289. package/dist/esm/view-switcher/view/index.js +1 -1
  290. package/dist/forge-core.css +1 -1
  291. package/dist/forge-dark.css +1 -1
  292. package/dist/forge.css +1 -1
  293. package/esm/app-bar/profile-button/app-bar-profile-button-adapter.d.ts +6 -6
  294. package/esm/app-bar/profile-button/app-bar-profile-button-adapter.js +18 -10
  295. package/esm/app-bar/profile-button/app-bar-profile-button-foundation.d.ts +3 -3
  296. package/esm/app-bar/profile-button/app-bar-profile-button-foundation.js +13 -17
  297. package/esm/app-bar/profile-button/app-bar-profile-button.d.ts +4 -4
  298. package/esm/app-bar/profile-button/app-bar-profile-button.js +3 -3
  299. package/esm/autocomplete/autocomplete-adapter.d.ts +6 -2
  300. package/esm/autocomplete/autocomplete-adapter.js +27 -23
  301. package/esm/autocomplete/autocomplete-constants.d.ts +2 -2
  302. package/esm/autocomplete/autocomplete-constants.js +1 -2
  303. package/esm/autocomplete/autocomplete-foundation.js +3 -5
  304. package/esm/autocomplete/autocomplete.js +2 -2
  305. package/esm/backdrop/backdrop-constants.d.ts +10 -13
  306. package/esm/backdrop/backdrop-constants.js +12 -17
  307. package/esm/backdrop/backdrop.d.ts +17 -29
  308. package/esm/backdrop/backdrop.js +79 -50
  309. package/esm/backdrop/index.d.ts +0 -2
  310. package/esm/backdrop/index.js +0 -2
  311. package/esm/bottom-sheet/bottom-sheet-adapter.d.ts +2 -2
  312. package/esm/bottom-sheet/bottom-sheet-adapter.js +12 -5
  313. package/esm/bottom-sheet/bottom-sheet-foundation.js +1 -1
  314. package/esm/bottom-sheet/bottom-sheet.js +2 -2
  315. package/esm/busy-indicator/busy-indicator-adapter.d.ts +2 -6
  316. package/esm/busy-indicator/busy-indicator-adapter.js +8 -6
  317. package/esm/busy-indicator/busy-indicator-foundation.js +1 -1
  318. package/esm/button/base/base-button-foundation.js +2 -1
  319. package/esm/calendar/calendar-constants.d.ts +1 -1
  320. package/esm/calendar/calendar-constants.js +1 -1
  321. package/esm/calendar/calendar-dropdown/calendar-dropdown.d.ts +6 -4
  322. package/esm/calendar/calendar-dropdown/calendar-dropdown.js +21 -25
  323. package/esm/calendar/calendar-menu/calendar-menu-constants.d.ts +1 -1
  324. package/esm/calendar/calendar-menu/calendar-menu-constants.js +1 -1
  325. package/esm/calendar/calendar-menu/calendar-menu.js +3 -3
  326. package/esm/calendar/calendar.js +3 -3
  327. package/esm/card/card-constants.d.ts +2 -5
  328. package/esm/card/card-constants.js +4 -10
  329. package/esm/card/card.d.ts +10 -5
  330. package/esm/card/card.js +14 -16
  331. package/esm/checkbox/checkbox-adapter.d.ts +0 -34
  332. package/esm/checkbox/checkbox-adapter.js +10 -105
  333. package/esm/checkbox/checkbox-constants.d.ts +13 -4
  334. package/esm/checkbox/checkbox-constants.js +8 -11
  335. package/esm/checkbox/checkbox-foundation.d.ts +5 -11
  336. package/esm/checkbox/checkbox-foundation.js +24 -35
  337. package/esm/checkbox/checkbox.d.ts +24 -24
  338. package/esm/checkbox/checkbox.js +65 -83
  339. package/esm/chip-field/chip-field-adapter.d.ts +48 -22
  340. package/esm/chip-field/chip-field-adapter.js +130 -30
  341. package/esm/chip-field/chip-field-component-delegate.js +1 -1
  342. package/esm/chip-field/chip-field-constants.d.ts +18 -16
  343. package/esm/chip-field/chip-field-constants.js +19 -20
  344. package/esm/chip-field/chip-field-foundation.d.ts +26 -16
  345. package/esm/chip-field/chip-field-foundation.js +128 -74
  346. package/esm/chip-field/chip-field.d.ts +9 -6
  347. package/esm/chip-field/chip-field.js +24 -11
  348. package/esm/chips/chip/chip.js +1 -1
  349. package/esm/constants.d.ts +2 -0
  350. package/esm/constants.js +2 -0
  351. package/esm/core/base/base-adapter.d.ts +1 -0
  352. package/esm/core/controllers/move-controller.d.ts +32 -0
  353. package/esm/core/controllers/move-controller.js +40 -0
  354. package/esm/core/mixins/interactions/moveable/with-moveable.d.ts +30 -0
  355. package/esm/core/mixins/interactions/moveable/with-moveable.js +131 -0
  356. package/esm/core/utils/dismissible-stack.d.ts +6 -0
  357. package/esm/core/utils/dismissible-stack.js +9 -0
  358. package/esm/core/utils/feature-detection.d.ts +5 -0
  359. package/esm/core/utils/feature-detection.js +7 -0
  360. package/esm/core/utils/index.d.ts +2 -0
  361. package/esm/core/utils/index.js +2 -0
  362. package/esm/core/utils/svg-utils.d.ts +1 -1
  363. package/esm/core/utils/svg-utils.js +2 -2
  364. package/esm/date-picker/date-picker.d.ts +0 -2
  365. package/esm/date-picker/date-picker.js +2 -4
  366. package/esm/date-range-picker/date-range-picker-adapter.js +1 -1
  367. package/esm/date-range-picker/date-range-picker-component-delegate.d.ts +1 -1
  368. package/esm/date-range-picker/date-range-picker.js +2 -2
  369. package/esm/dialog/dialog-adapter.d.ts +44 -62
  370. package/esm/dialog/dialog-adapter.js +107 -135
  371. package/esm/dialog/dialog-constants.d.ts +51 -28
  372. package/esm/dialog/dialog-constants.js +36 -33
  373. package/esm/dialog/dialog-foundation.d.ts +59 -75
  374. package/esm/dialog/dialog-foundation.js +218 -360
  375. package/esm/dialog/dialog.d.ts +127 -46
  376. package/esm/dialog/dialog.js +161 -60
  377. package/esm/drawer/modal-drawer/modal-drawer-adapter.js +1 -1
  378. package/esm/drawer/modal-drawer/modal-drawer-foundation.js +5 -6
  379. package/esm/{field-next → field}/base/base-field-foundation.js +14 -0
  380. package/esm/{field-next/field-foundation.d.ts → field/base/with-base-field.d.ts} +24 -39
  381. package/esm/field/base/with-base-field.js +210 -0
  382. package/esm/field/field-adapter.d.ts +49 -92
  383. package/esm/field/field-adapter.js +114 -154
  384. package/esm/field/field-constants.d.ts +82 -30
  385. package/esm/field/field-constants.js +51 -29
  386. package/esm/field/field-foundation.d.ts +78 -48
  387. package/esm/field/field-foundation.js +171 -273
  388. package/esm/field/field.d.ts +202 -24
  389. package/esm/field/field.js +267 -37
  390. package/esm/focus-indicator/focus-indicator-constants.d.ts +5 -0
  391. package/esm/focus-indicator/focus-indicator-constants.js +7 -2
  392. package/esm/focus-indicator/focus-indicator-foundation.d.ts +5 -0
  393. package/esm/focus-indicator/focus-indicator-foundation.js +21 -3
  394. package/esm/focus-indicator/focus-indicator.d.ts +5 -0
  395. package/esm/focus-indicator/focus-indicator.js +9 -7
  396. package/esm/icon/icon-adapter.d.ts +4 -2
  397. package/esm/icon/icon-adapter.js +13 -9
  398. package/esm/icon/icon-constants.d.ts +14 -2
  399. package/esm/icon/icon-constants.js +3 -1
  400. package/esm/icon/icon-foundation.d.ts +6 -2
  401. package/esm/icon/icon-foundation.js +50 -18
  402. package/esm/icon/icon-registry.d.ts +8 -2
  403. package/esm/icon/icon-registry.js +15 -2
  404. package/esm/icon/icon-utils.d.ts +6 -3
  405. package/esm/icon/icon-utils.js +6 -7
  406. package/esm/icon/icon.d.ts +35 -4
  407. package/esm/icon/icon.js +44 -18
  408. package/esm/icon/index.js +0 -6
  409. package/esm/icon-button/icon-button-component-delegate.d.ts +2 -2
  410. package/esm/index.d.ts +1 -4
  411. package/esm/index.js +2 -9
  412. package/esm/label-value/index.d.ts +0 -2
  413. package/esm/label-value/index.js +0 -2
  414. package/esm/label-value/label-value-constants.d.ts +7 -12
  415. package/esm/label-value/label-value-constants.js +7 -17
  416. package/esm/label-value/label-value.d.ts +44 -16
  417. package/esm/label-value/label-value.js +78 -36
  418. package/esm/list/list/list.d.ts +2 -3
  419. package/esm/list/list/list.js +4 -5
  420. package/esm/list/list-item/list-item.d.ts +1 -0
  421. package/esm/list/list-item/list-item.js +2 -1
  422. package/esm/list-dropdown/list-dropdown-adapter.d.ts +3 -1
  423. package/esm/list-dropdown/list-dropdown-adapter.js +24 -9
  424. package/esm/list-dropdown/list-dropdown-constants.d.ts +6 -5
  425. package/esm/list-dropdown/list-dropdown-foundation.d.ts +2 -2
  426. package/esm/list-dropdown/list-dropdown-foundation.js +3 -5
  427. package/esm/list-dropdown/list-dropdown-utils.d.ts +3 -3
  428. package/esm/list-dropdown/list-dropdown-utils.js +11 -19
  429. package/esm/list-dropdown/list-dropdown.d.ts +2 -2
  430. package/esm/list-dropdown/list-dropdown.js +1 -1
  431. package/esm/menu/menu-adapter.d.ts +4 -2
  432. package/esm/menu/menu-adapter.js +8 -2
  433. package/esm/menu/menu-foundation.d.ts +11 -10
  434. package/esm/menu/menu-foundation.js +9 -6
  435. package/esm/menu/menu.d.ts +8 -7
  436. package/esm/menu/menu.js +2 -2
  437. package/esm/overlay/overlay-adapter.d.ts +0 -1
  438. package/esm/overlay/overlay-adapter.js +1 -2
  439. package/esm/paginator/paginator.js +1 -1
  440. package/esm/popover/popover-adapter.d.ts +9 -0
  441. package/esm/popover/popover-adapter.js +41 -3
  442. package/esm/popover/popover-constants.d.ts +17 -0
  443. package/esm/popover/popover-constants.js +11 -6
  444. package/esm/popover/popover-foundation.d.ts +7 -1
  445. package/esm/popover/popover-foundation.js +35 -7
  446. package/esm/popover/popover.d.ts +15 -1
  447. package/esm/popover/popover.js +28 -15
  448. package/esm/radio/core/radio-group-manager.d.ts +18 -1
  449. package/esm/radio/core/radio-group-manager.js +27 -6
  450. package/esm/radio/radio/radio-adapter.js +4 -2
  451. package/esm/radio/radio/radio-component-delegate.d.ts +38 -0
  452. package/esm/radio/radio/radio-component-delegate.js +88 -1
  453. package/esm/radio/radio/radio-constants.d.ts +11 -0
  454. package/esm/radio/radio/radio-constants.js +3 -1
  455. package/esm/radio/radio/radio-foundation.js +3 -2
  456. package/esm/radio/radio/radio.d.ts +8 -3
  457. package/esm/radio/radio/radio.js +18 -19
  458. package/esm/radio/radio-group/radio-group-constants.d.ts +3 -0
  459. package/esm/radio/radio-group/radio-group-constants.js +3 -1
  460. package/esm/radio/radio-group/radio-group.js +5 -5
  461. package/esm/scaffold/scaffold-constants.d.ts +6 -0
  462. package/esm/scaffold/scaffold-constants.js +7 -1
  463. package/esm/scaffold/scaffold.d.ts +30 -2
  464. package/esm/scaffold/scaffold.js +43 -4
  465. package/esm/select/core/base-select-adapter.d.ts +5 -3
  466. package/esm/select/core/base-select-adapter.js +10 -9
  467. package/esm/select/core/base-select-constants.d.ts +11 -0
  468. package/esm/select/core/base-select-constants.js +1 -0
  469. package/esm/select/core/base-select-foundation.js +3 -3
  470. package/esm/select/core/base-select.d.ts +3 -3
  471. package/esm/select/select/select-adapter.d.ts +14 -60
  472. package/esm/select/select/select-adapter.js +52 -111
  473. package/esm/select/select/select-constants.d.ts +16 -14
  474. package/esm/select/select/select-constants.js +8 -16
  475. package/esm/select/select/select-foundation.d.ts +12 -58
  476. package/esm/select/select/select-foundation.js +45 -240
  477. package/esm/select/select/select.d.ts +17 -27
  478. package/esm/select/select/select.js +54 -62
  479. package/esm/select/select-dropdown/select-dropdown-adapter.d.ts +2 -2
  480. package/esm/select/select-dropdown/select-dropdown-adapter.js +1 -1
  481. package/esm/select/select-dropdown/select-dropdown.d.ts +0 -2
  482. package/esm/select/select-dropdown/select-dropdown.js +2 -4
  483. package/esm/slider/slider.d.ts +2 -2
  484. package/esm/slider/slider.js +2 -2
  485. package/esm/split-view/split-view/split-view.js +1 -1
  486. package/esm/split-view/split-view-panel/split-view-panel-adapter.d.ts +5 -10
  487. package/esm/split-view/split-view-panel/split-view-panel-adapter.js +7 -15
  488. package/esm/split-view/split-view-panel/split-view-panel-constants.d.ts +3 -3
  489. package/esm/split-view/split-view-panel/split-view-panel-constants.js +3 -3
  490. package/esm/split-view/split-view-panel/split-view-panel-foundation.js +0 -1
  491. package/esm/split-view/split-view-panel/split-view-panel-utils.js +2 -2
  492. package/esm/split-view/split-view-panel/split-view-panel.d.ts +0 -2
  493. package/esm/split-view/split-view-panel/split-view-panel.js +6 -6
  494. package/esm/stepper/step/step-adapter.d.ts +2 -9
  495. package/esm/stepper/step/step-adapter.js +3 -18
  496. package/esm/stepper/step/step-constants.js +21 -21
  497. package/esm/stepper/step/step-foundation.js +0 -2
  498. package/esm/stepper/step/step.d.ts +53 -0
  499. package/esm/stepper/step/step.js +60 -3
  500. package/esm/stepper/stepper/stepper-constants.js +9 -9
  501. package/esm/stepper/stepper/stepper.js +1 -1
  502. package/esm/switch/switch-adapter.d.ts +0 -32
  503. package/esm/switch/switch-adapter.js +15 -107
  504. package/esm/switch/switch-component-delegate.js +1 -1
  505. package/esm/switch/switch-constants.d.ts +24 -14
  506. package/esm/switch/switch-constants.js +11 -14
  507. package/esm/switch/switch-foundation.d.ts +5 -11
  508. package/esm/switch/switch-foundation.js +25 -31
  509. package/esm/switch/switch.d.ts +19 -19
  510. package/esm/switch/switch.js +59 -81
  511. package/esm/text-field/text-field-adapter.d.ts +2 -2
  512. package/esm/text-field/text-field-adapter.js +5 -2
  513. package/esm/text-field/text-field-foundation.d.ts +2 -2
  514. package/esm/text-field/text-field-foundation.js +2 -2
  515. package/esm/text-field/text-field.d.ts +1 -1
  516. package/esm/text-field/text-field.js +2 -2
  517. package/esm/time-picker/time-picker-adapter.d.ts +6 -2
  518. package/esm/time-picker/time-picker-adapter.js +7 -3
  519. package/esm/time-picker/time-picker-foundation.js +10 -10
  520. package/esm/time-picker/time-picker.js +2 -2
  521. package/esm/toast/toast-adapter.d.ts +18 -69
  522. package/esm/toast/toast-adapter.js +24 -121
  523. package/esm/toast/toast-constants.d.ts +25 -36
  524. package/esm/toast/toast-constants.js +20 -40
  525. package/esm/toast/toast-foundation.d.ts +22 -37
  526. package/esm/toast/toast-foundation.js +92 -92
  527. package/esm/toast/toast.d.ts +83 -24
  528. package/esm/toast/toast.js +126 -29
  529. package/esm/tooltip/tooltip-adapter.d.ts +1 -0
  530. package/esm/tooltip/tooltip-foundation.js +3 -0
  531. package/esm/tooltip/tooltip.d.ts +3 -1
  532. package/esm/tooltip/tooltip.js +4 -0
  533. package/package.json +1 -6
  534. package/styles/backdrop/_animations.scss +24 -0
  535. package/styles/backdrop/_core.scss +41 -0
  536. package/styles/backdrop/_token-utils.scss +30 -0
  537. package/styles/backdrop/backdrop.scss +38 -11
  538. package/{esm/radio/radio-group/radio-group-component-delegate.js → styles/backdrop/index.scss} +1 -0
  539. package/styles/bottom-sheet/_mixins.scss +3 -8
  540. package/styles/bottom-sheet/bottom-sheet.scss +0 -4
  541. package/styles/calendar/calendar-menu/calendar-menu.scss +1 -1
  542. package/styles/calendar/calendar.scss +1 -1
  543. package/styles/card/_core.scss +35 -0
  544. package/styles/card/_token-utils.scss +30 -0
  545. package/styles/card/card.scss +37 -3
  546. package/{esm/radio/radio-group/radio-group-component-delegate.d.ts → styles/card/index.scss} +1 -0
  547. package/styles/checkbox/_core.scss +9 -20
  548. package/styles/checkbox/checkbox.scss +2 -8
  549. package/styles/chip-field/_core.scss +21 -17
  550. package/styles/chip-field/_token-utils.scss +30 -0
  551. package/styles/chip-field/chip-field.scss +68 -3
  552. package/{dist/popup/forge-popup.css → styles/chip-field/index.scss} +1 -1
  553. package/styles/chips/chip/_core.scss +1 -1
  554. package/styles/core/styles/tokens/backdrop/_tokens.scss +29 -0
  555. package/styles/core/styles/tokens/card/_tokens.scss +33 -0
  556. package/styles/core/styles/tokens/checkbox/_tokens.scss +5 -4
  557. package/styles/core/styles/tokens/chip-field/_tokens.scss +16 -0
  558. package/styles/core/styles/tokens/dialog/_tokens.scss +82 -0
  559. package/styles/core/styles/tokens/field/_tokens.scss +3 -1
  560. package/styles/core/styles/tokens/icon/_tokens.scss +20 -0
  561. package/styles/core/styles/tokens/label-value/_tokens.scss +34 -0
  562. package/styles/core/styles/tokens/list/list/_tokens.scss +2 -3
  563. package/styles/core/styles/tokens/list/list-item/_tokens.scss +7 -4
  564. package/styles/core/styles/tokens/popover/_tokens.scss +29 -7
  565. package/styles/core/styles/tokens/radio/_tokens.scss +1 -1
  566. package/styles/core/styles/tokens/scaffold/_tokens.scss +18 -0
  567. package/styles/core/styles/tokens/select/_tokens.scss +18 -0
  568. package/styles/core/styles/tokens/stepper/step/_tokens.scss +62 -0
  569. package/styles/core/styles/tokens/switch/_tokens.scss +1 -1
  570. package/styles/core/styles/tokens/toast/_tokens.scss +39 -0
  571. package/styles/dialog/_animations.scss +82 -0
  572. package/styles/dialog/_core.scss +310 -0
  573. package/styles/dialog/_token-utils.scss +30 -0
  574. package/styles/dialog/dialog.scss +356 -6
  575. package/styles/dialog/forge-dialog-utils.scss +23 -6
  576. package/styles/dialog/index.scss +7 -0
  577. package/styles/{field-next → field}/_core.layout.scss +6 -4
  578. package/styles/field/_core.scss +200 -50
  579. package/styles/{field-next → field}/_core.shape.scss +5 -0
  580. package/styles/{field-next → field}/_core.variant.scss +1 -0
  581. package/styles/{field-next → field}/field.scss +39 -12
  582. package/styles/forge-core.scss +2 -6
  583. package/styles/forge.scss +0 -4
  584. package/styles/icon/_core.scss +27 -0
  585. package/styles/icon/_token-utils.scss +30 -0
  586. package/styles/icon/icon.scss +27 -12
  587. package/styles/icon/index.scss +6 -0
  588. package/styles/label-value/_core.scss +85 -0
  589. package/styles/label-value/_token-utils.scss +30 -0
  590. package/styles/label-value/index.scss +6 -0
  591. package/styles/label-value/label-value.scss +71 -3
  592. package/styles/list/list/_core.scss +6 -2
  593. package/styles/list/list/list.scss +4 -0
  594. package/styles/list/list-item/_core.scss +3 -0
  595. package/styles/popover/_animations.scss +30 -0
  596. package/styles/popover/_core.scss +43 -6
  597. package/styles/popover/popover.scss +227 -170
  598. package/styles/scaffold/_core.scss +98 -0
  599. package/styles/scaffold/_token-utils.scss +30 -0
  600. package/styles/scaffold/index.scss +6 -0
  601. package/styles/scaffold/scaffold.scss +85 -5
  602. package/{dist/esm/chunks/chunk.WF2MFLG4.js → styles/select/index.scss} +1 -1
  603. package/styles/select/select/_core.scss +31 -15
  604. package/styles/select/select/_token-utils.scss +31 -0
  605. package/styles/select/select/select.scss +50 -8
  606. package/styles/split-view/split-view/split-view.scss +0 -1
  607. package/styles/split-view/split-view-panel/_mixins.scss +1 -0
  608. package/styles/split-view/split-view-panel/split-view-panel.scss +7 -1
  609. package/styles/stepper/step/_core.scss +391 -0
  610. package/styles/stepper/step/_token-utils.scss +31 -0
  611. package/styles/stepper/step/step.scss +261 -81
  612. package/styles/stepper/stepper/_core.scss +49 -0
  613. package/styles/stepper/stepper/stepper.scss +38 -4
  614. package/styles/switch/_core.scss +3 -2
  615. package/styles/theme/_theme-dark.scss +8 -8
  616. package/styles/toast/_animations.scss +42 -0
  617. package/styles/toast/_core.scss +73 -0
  618. package/styles/toast/_token-utils.scss +30 -0
  619. package/styles/toast/index.scss +6 -0
  620. package/styles/toast/toast.scss +173 -6
  621. package/styles/utils/_mixins-core.scss +5 -9
  622. package/dist/dialog/forge-dialog.css +0 -6
  623. package/dist/esm/chunks/chunk.24MZM3AY.js +0 -7
  624. package/dist/esm/chunks/chunk.24MZM3AY.js.map +0 -7
  625. package/dist/esm/chunks/chunk.3L77JY5H.js +0 -7
  626. package/dist/esm/chunks/chunk.3TIBP6QT.js +0 -7
  627. package/dist/esm/chunks/chunk.3U222LE4.js +0 -7
  628. package/dist/esm/chunks/chunk.45PPQY45.js +0 -177
  629. package/dist/esm/chunks/chunk.45PPQY45.js.map +0 -7
  630. package/dist/esm/chunks/chunk.4UU6PWR2.js +0 -7
  631. package/dist/esm/chunks/chunk.4UU6PWR2.js.map +0 -7
  632. package/dist/esm/chunks/chunk.5A34DJLZ.js +0 -7
  633. package/dist/esm/chunks/chunk.5A34DJLZ.js.map +0 -7
  634. package/dist/esm/chunks/chunk.5UGN5FYV.js +0 -7
  635. package/dist/esm/chunks/chunk.5UZ2DEW3.js +0 -7
  636. package/dist/esm/chunks/chunk.5UZ2DEW3.js.map +0 -7
  637. package/dist/esm/chunks/chunk.656X22EF.js +0 -7
  638. package/dist/esm/chunks/chunk.656X22EF.js.map +0 -7
  639. package/dist/esm/chunks/chunk.66YURKP2.js +0 -7
  640. package/dist/esm/chunks/chunk.66YURKP2.js.map +0 -7
  641. package/dist/esm/chunks/chunk.6GSVB5NB.js.map +0 -7
  642. package/dist/esm/chunks/chunk.AFJ7QEVI.js +0 -7
  643. package/dist/esm/chunks/chunk.AFJ7QEVI.js.map +0 -7
  644. package/dist/esm/chunks/chunk.BETICEYY.js +0 -7
  645. package/dist/esm/chunks/chunk.BEUQVZKZ.js +0 -7
  646. package/dist/esm/chunks/chunk.BMQAVBWZ.js +0 -7
  647. package/dist/esm/chunks/chunk.BMQAVBWZ.js.map +0 -7
  648. package/dist/esm/chunks/chunk.CIUPY66Y.js +0 -7
  649. package/dist/esm/chunks/chunk.CIUPY66Y.js.map +0 -7
  650. package/dist/esm/chunks/chunk.CSCZRSDT.js +0 -7
  651. package/dist/esm/chunks/chunk.CSCZRSDT.js.map +0 -7
  652. package/dist/esm/chunks/chunk.CWBDPBYO.js +0 -7
  653. package/dist/esm/chunks/chunk.CWBDPBYO.js.map +0 -7
  654. package/dist/esm/chunks/chunk.D7RH43XD.js +0 -7
  655. package/dist/esm/chunks/chunk.D7RH43XD.js.map +0 -7
  656. package/dist/esm/chunks/chunk.DCCFF327.js +0 -7
  657. package/dist/esm/chunks/chunk.EO3HELQ2.js +0 -15
  658. package/dist/esm/chunks/chunk.FB4MXEIW.js +0 -7
  659. package/dist/esm/chunks/chunk.FB4MXEIW.js.map +0 -7
  660. package/dist/esm/chunks/chunk.G2HRYIIZ.js +0 -7
  661. package/dist/esm/chunks/chunk.G2HRYIIZ.js.map +0 -7
  662. package/dist/esm/chunks/chunk.G3GTO5ZC.js +0 -7
  663. package/dist/esm/chunks/chunk.G3GTO5ZC.js.map +0 -7
  664. package/dist/esm/chunks/chunk.GL2H6QOP.js +0 -7
  665. package/dist/esm/chunks/chunk.GL2H6QOP.js.map +0 -7
  666. package/dist/esm/chunks/chunk.HBAC6E7O.js +0 -7
  667. package/dist/esm/chunks/chunk.HYTFCFP6.js +0 -7
  668. package/dist/esm/chunks/chunk.HYTFCFP6.js.map +0 -7
  669. package/dist/esm/chunks/chunk.IM36A2ZI.js +0 -7
  670. package/dist/esm/chunks/chunk.IM36A2ZI.js.map +0 -7
  671. package/dist/esm/chunks/chunk.IWVAI6XM.js.map +0 -7
  672. package/dist/esm/chunks/chunk.JCEKCW4B.js +0 -7
  673. package/dist/esm/chunks/chunk.JCEKCW4B.js.map +0 -7
  674. package/dist/esm/chunks/chunk.JVWJHSPM.js +0 -7
  675. package/dist/esm/chunks/chunk.KDUH2DUE.js +0 -7
  676. package/dist/esm/chunks/chunk.KRKKMTXR.js +0 -7
  677. package/dist/esm/chunks/chunk.KRKKMTXR.js.map +0 -7
  678. package/dist/esm/chunks/chunk.LKA5HQQY.js +0 -7
  679. package/dist/esm/chunks/chunk.LKA5HQQY.js.map +0 -7
  680. package/dist/esm/chunks/chunk.MC3UAHWS.js +0 -7
  681. package/dist/esm/chunks/chunk.MC3UAHWS.js.map +0 -7
  682. package/dist/esm/chunks/chunk.MCR34SZQ.js +0 -7
  683. package/dist/esm/chunks/chunk.MGLWXAZO.js +0 -18
  684. package/dist/esm/chunks/chunk.MPUP6QAP.js +0 -7
  685. package/dist/esm/chunks/chunk.MZRAL4MY.js +0 -7
  686. package/dist/esm/chunks/chunk.MZRAL4MY.js.map +0 -7
  687. package/dist/esm/chunks/chunk.N632SJ7X.js +0 -7
  688. package/dist/esm/chunks/chunk.N632SJ7X.js.map +0 -7
  689. package/dist/esm/chunks/chunk.NHOGZDLN.js +0 -7
  690. package/dist/esm/chunks/chunk.NHOGZDLN.js.map +0 -7
  691. package/dist/esm/chunks/chunk.NIUX6DVF.js +0 -12
  692. package/dist/esm/chunks/chunk.NIUX6DVF.js.map +0 -7
  693. package/dist/esm/chunks/chunk.OSBNFFCI.js.map +0 -7
  694. package/dist/esm/chunks/chunk.OY3TG55O.js +0 -7
  695. package/dist/esm/chunks/chunk.OY3TG55O.js.map +0 -7
  696. package/dist/esm/chunks/chunk.QCRO5NSG.js +0 -7
  697. package/dist/esm/chunks/chunk.QCRO5NSG.js.map +0 -7
  698. package/dist/esm/chunks/chunk.QKYCMDLB.js +0 -7
  699. package/dist/esm/chunks/chunk.R6VPRRTT.js +0 -7
  700. package/dist/esm/chunks/chunk.RFCIELJM.js +0 -7
  701. package/dist/esm/chunks/chunk.RFCIELJM.js.map +0 -7
  702. package/dist/esm/chunks/chunk.RJC42RNR.js +0 -7
  703. package/dist/esm/chunks/chunk.RJC42RNR.js.map +0 -7
  704. package/dist/esm/chunks/chunk.SKBOB2BD.js +0 -7
  705. package/dist/esm/chunks/chunk.SKBOB2BD.js.map +0 -7
  706. package/dist/esm/chunks/chunk.SOKORSUV.js +0 -7
  707. package/dist/esm/chunks/chunk.STSAE2XP.js +0 -7
  708. package/dist/esm/chunks/chunk.SWKKDBO6.js +0 -7
  709. package/dist/esm/chunks/chunk.SWKKDBO6.js.map +0 -7
  710. package/dist/esm/chunks/chunk.SYKZ74SL.js +0 -7
  711. package/dist/esm/chunks/chunk.SYKZ74SL.js.map +0 -7
  712. package/dist/esm/chunks/chunk.UKVC23E5.js +0 -7
  713. package/dist/esm/chunks/chunk.UKVC23E5.js.map +0 -7
  714. package/dist/esm/chunks/chunk.UOD3A7M4.js +0 -7
  715. package/dist/esm/chunks/chunk.UQQQSJVM.js +0 -7
  716. package/dist/esm/chunks/chunk.V3X77TCO.js +0 -7
  717. package/dist/esm/chunks/chunk.V3X77TCO.js.map +0 -7
  718. package/dist/esm/chunks/chunk.V7ILFIOR.js +0 -7
  719. package/dist/esm/chunks/chunk.VBJ4WUVH.js +0 -7
  720. package/dist/esm/chunks/chunk.VBJ4WUVH.js.map +0 -7
  721. package/dist/esm/chunks/chunk.VZ2XONDI.js +0 -7
  722. package/dist/esm/chunks/chunk.VZ2XONDI.js.map +0 -7
  723. package/dist/esm/chunks/chunk.WAMFFIMP.js +0 -7
  724. package/dist/esm/chunks/chunk.WAMFFIMP.js.map +0 -7
  725. package/dist/esm/chunks/chunk.WBCQTZPS.js +0 -7
  726. package/dist/esm/chunks/chunk.WBCQTZPS.js.map +0 -7
  727. package/dist/esm/chunks/chunk.WBI34ZVP.js +0 -7
  728. package/dist/esm/chunks/chunk.WF2MFLG4.js.map +0 -7
  729. package/dist/esm/chunks/chunk.WPVGFQNY.js +0 -7
  730. package/dist/esm/chunks/chunk.WPVGFQNY.js.map +0 -7
  731. package/dist/esm/chunks/chunk.XAZ6EDIZ.js +0 -7
  732. package/dist/esm/chunks/chunk.XCI7O2KJ.js +0 -7
  733. package/dist/esm/chunks/chunk.XCI7O2KJ.js.map +0 -7
  734. package/dist/esm/chunks/chunk.XNJROSDZ.js +0 -7
  735. package/dist/esm/chunks/chunk.XNJROSDZ.js.map +0 -7
  736. package/dist/esm/chunks/chunk.Z6GRWPPN.js +0 -7
  737. package/dist/esm/chunks/chunk.Z6GRWPPN.js.map +0 -7
  738. package/dist/esm/chunks/chunk.ZLNI2M3F.js +0 -7
  739. package/dist/esm/chunks/chunk.ZLNI2M3F.js.map +0 -7
  740. package/dist/esm/chunks/chunk.ZSZFWZAI.js +0 -7
  741. package/dist/esm/chunks/chunk.ZSZFWZAI.js.map +0 -7
  742. package/dist/esm/chunks/chunk.ZYKP23JP.js +0 -7
  743. package/dist/esm/field-next/index.js +0 -7
  744. package/dist/esm/floating-label/index.js +0 -7
  745. package/dist/esm/floating-label/index.js.map +0 -7
  746. package/dist/esm/popup/index.js +0 -7
  747. package/dist/esm/popup/index.js.map +0 -7
  748. package/dist/esm/ripple/index.js +0 -7
  749. package/dist/esm/ripple/index.js.map +0 -7
  750. package/dist/floating-label/forge-floating-label.css +0 -6
  751. package/dist/form-field/forge-form-field.css +0 -6
  752. package/dist/ripple/forge-ripple.css +0 -6
  753. package/dist/scaffold/forge-scaffold.css +0 -6
  754. package/esm/backdrop/backdrop-adapter.d.ts +0 -36
  755. package/esm/backdrop/backdrop-adapter.js +0 -40
  756. package/esm/backdrop/backdrop-foundation.d.ts +0 -38
  757. package/esm/backdrop/backdrop-foundation.js +0 -82
  758. package/esm/field-next/field-adapter.d.ts +0 -56
  759. package/esm/field-next/field-adapter.js +0 -132
  760. package/esm/field-next/field-constants.d.ts +0 -95
  761. package/esm/field-next/field-constants.js +0 -64
  762. package/esm/field-next/field-foundation.js +0 -221
  763. package/esm/field-next/field.d.ts +0 -205
  764. package/esm/field-next/field.js +0 -287
  765. package/esm/floating-label/floating-label-adapter.d.ts +0 -23
  766. package/esm/floating-label/floating-label-adapter.js +0 -32
  767. package/esm/floating-label/floating-label-constants.d.ts +0 -13
  768. package/esm/floating-label/floating-label-constants.js +0 -14
  769. package/esm/floating-label/floating-label-foundation.d.ts +0 -20
  770. package/esm/floating-label/floating-label-foundation.js +0 -74
  771. package/esm/floating-label/floating-label.d.ts +0 -31
  772. package/esm/floating-label/floating-label.js +0 -34
  773. package/esm/floating-label/index.d.ts +0 -9
  774. package/esm/floating-label/index.js +0 -9
  775. package/esm/label-value/label-value-adapter.d.ts +0 -24
  776. package/esm/label-value/label-value-adapter.js +0 -47
  777. package/esm/label-value/label-value-foundation.d.ts +0 -33
  778. package/esm/label-value/label-value-foundation.js +0 -80
  779. package/esm/popup/index.d.ts +0 -10
  780. package/esm/popup/index.js +0 -14
  781. package/esm/popup/popup-adapter.d.ts +0 -45
  782. package/esm/popup/popup-adapter.js +0 -152
  783. package/esm/popup/popup-constants.d.ts +0 -55
  784. package/esm/popup/popup-constants.js +0 -53
  785. package/esm/popup/popup-foundation.d.ts +0 -72
  786. package/esm/popup/popup-foundation.js +0 -258
  787. package/esm/popup/popup.d.ts +0 -59
  788. package/esm/popup/popup.js +0 -102
  789. package/esm/ripple/forge-ripple.d.ts +0 -17
  790. package/esm/ripple/forge-ripple.js +0 -22
  791. package/esm/ripple/index.d.ts +0 -11
  792. package/esm/ripple/index.js +0 -15
  793. package/esm/ripple/ripple-adapter.d.ts +0 -23
  794. package/esm/ripple/ripple-adapter.js +0 -47
  795. package/esm/ripple/ripple-constants.d.ts +0 -15
  796. package/esm/ripple/ripple-constants.js +0 -19
  797. package/esm/ripple/ripple-foundation.d.ts +0 -30
  798. package/esm/ripple/ripple-foundation.js +0 -48
  799. package/esm/ripple/ripple.d.ts +0 -36
  800. package/esm/ripple/ripple.js +0 -65
  801. package/styles/backdrop/_mixins.scss +0 -31
  802. package/styles/backdrop/_variables.scss +0 -12
  803. package/styles/card/_mixins.scss +0 -47
  804. package/styles/card/_variables.scss +0 -9
  805. package/styles/chip-field/_base.scss +0 -299
  806. package/styles/chip-field/_mixins.scss +0 -26
  807. package/styles/chip-field/_selector.scss +0 -228
  808. package/styles/chip-field/_variables.scss +0 -76
  809. package/styles/dialog/_mixins.scss +0 -199
  810. package/styles/dialog/_variables.scss +0 -22
  811. package/styles/dialog/forge-dialog.scss +0 -8
  812. package/styles/field/_base.scss +0 -636
  813. package/styles/field/_selector.scss +0 -560
  814. package/styles/field/_utils.scss +0 -48
  815. package/styles/field/_variables.scss +0 -123
  816. package/styles/field-next/_core.scss +0 -213
  817. package/styles/floating-label/_mixins.scss +0 -291
  818. package/styles/floating-label/_variables.scss +0 -15
  819. package/styles/floating-label/forge-floating-label.scss +0 -8
  820. package/styles/form-field/_mixins.scss +0 -71
  821. package/styles/form-field/forge-form-field.scss +0 -8
  822. package/styles/icon/_mixins.scss +0 -37
  823. package/styles/icon/_variables.scss +0 -10
  824. package/styles/label-value/_mixins.scss +0 -205
  825. package/styles/label-value/_variables.scss +0 -12
  826. package/styles/popup/_mixins.scss +0 -86
  827. package/styles/popup/_variables.scss +0 -7
  828. package/styles/popup/forge-popup.scss +0 -8
  829. package/styles/popup/popup.scss +0 -20
  830. package/styles/ripple/forge-ripple.scss +0 -17
  831. package/styles/scaffold/_mixins.scss +0 -194
  832. package/styles/scaffold/forge-scaffold.scss +0 -43
  833. package/styles/select/select/_base.scss +0 -84
  834. package/styles/select/select/_mixins.scss +0 -25
  835. package/styles/select/select/_selector.scss +0 -90
  836. package/styles/select/select/_variables.scss +0 -16
  837. package/styles/stepper/step/_mixins.scss +0 -416
  838. package/styles/stepper/step/_variables.scss +0 -21
  839. package/styles/stepper/stepper/_mixins.scss +0 -113
  840. package/styles/toast/_mixins.scss +0 -242
  841. package/styles/toast/_variables.scss +0 -52
  842. /package/dist/esm/chunks/{chunk.IZRURH7C.js.map → chunk.3KAKJGUS.js.map} +0 -0
  843. /package/dist/esm/chunks/{chunk.KDUH2DUE.js.map → chunk.473WRJ5G.js.map} +0 -0
  844. /package/dist/esm/chunks/{chunk.USQEIRST.js.map → chunk.5MB6CTBA.js.map} +0 -0
  845. /package/dist/esm/chunks/{chunk.YS5JZHJ6.js.map → chunk.5QIWLZG3.js.map} +0 -0
  846. /package/dist/esm/chunks/{chunk.47U6GVGZ.js.map → chunk.5UOX22ML.js.map} +0 -0
  847. /package/dist/esm/chunks/{chunk.4NABD6XG.js.map → chunk.6VS3LYAF.js.map} +0 -0
  848. /package/dist/esm/chunks/{chunk.AOSBUJWW.js.map → chunk.A7BCLPP4.js.map} +0 -0
  849. /package/dist/esm/chunks/{chunk.7UBIT4NP.js.map → chunk.AG6IRMLZ.js.map} +0 -0
  850. /package/dist/esm/chunks/{chunk.A4UH52SA.js.map → chunk.AGLI4WR4.js.map} +0 -0
  851. /package/dist/esm/chunks/{chunk.WTUXAH7Z.js.map → chunk.AOVXNX7P.js.map} +0 -0
  852. /package/dist/esm/chunks/{chunk.AN2E2SSN.js.map → chunk.ASLHRT3N.js.map} +0 -0
  853. /package/dist/esm/chunks/{chunk.CBLUXYH2.js.map → chunk.BHE6Z5Y2.js.map} +0 -0
  854. /package/dist/esm/chunks/{chunk.2WRAXA3H.js.map → chunk.BQ52JYLA.js.map} +0 -0
  855. /package/dist/esm/chunks/{chunk.ROMRJIFR.js.map → chunk.CE35CVDV.js.map} +0 -0
  856. /package/dist/esm/chunks/{chunk.ZPXMKY72.js.map → chunk.CEGBMUSR.js.map} +0 -0
  857. /package/dist/esm/chunks/{chunk.GBGGUYTE.js.map → chunk.CFAI4K3E.js.map} +0 -0
  858. /package/dist/esm/chunks/{chunk.ZIGVO6FN.js.map → chunk.CGFSMACZ.js.map} +0 -0
  859. /package/dist/esm/chunks/{chunk.UEYPCCFG.js.map → chunk.ENUKGA2U.js.map} +0 -0
  860. /package/dist/esm/chunks/{chunk.GA6AO6FJ.js.map → chunk.H5RW3A4M.js.map} +0 -0
  861. /package/dist/esm/chunks/{chunk.CSOKFDFQ.js.map → chunk.HSADKCGS.js.map} +0 -0
  862. /package/dist/esm/chunks/{chunk.WBI34ZVP.js.map → chunk.IEABOPNB.js.map} +0 -0
  863. /package/dist/esm/chunks/{chunk.22C7GQLX.js.map → chunk.IL4S57WO.js.map} +0 -0
  864. /package/dist/esm/chunks/{chunk.HMJODLAS.js.map → chunk.IQYOLMPG.js.map} +0 -0
  865. /package/dist/esm/chunks/{chunk.GTKYO6VB.js.map → chunk.JGURMVW7.js.map} +0 -0
  866. /package/dist/esm/chunks/{chunk.YXHMD73U.js.map → chunk.K6GJNDTY.js.map} +0 -0
  867. /package/dist/esm/chunks/{chunk.QUWEAFGI.js.map → chunk.KEOLH7G3.js.map} +0 -0
  868. /package/dist/esm/chunks/{chunk.BIQTNLIF.js.map → chunk.LNTTU2GL.js.map} +0 -0
  869. /package/dist/esm/chunks/{chunk.2AM2BKEO.js.map → chunk.MFQRXVKO.js.map} +0 -0
  870. /package/dist/esm/chunks/{chunk.JLSFTWPE.js.map → chunk.MTIPIEXA.js.map} +0 -0
  871. /package/dist/esm/chunks/{chunk.JSTCCUKZ.js.map → chunk.OEI35LFU.js.map} +0 -0
  872. /package/dist/esm/chunks/{chunk.2537XOFQ.js.map → chunk.OREDK5MJ.js.map} +0 -0
  873. /package/dist/esm/chunks/{chunk.QKYCMDLB.js.map → chunk.QCPV5DEG.js.map} +0 -0
  874. /package/dist/esm/chunks/{chunk.R3AWIPPK.js.map → chunk.QIZBZGYT.js.map} +0 -0
  875. /package/dist/esm/chunks/{chunk.2XPAYTK4.js.map → chunk.QKTK5XUE.js.map} +0 -0
  876. /package/dist/esm/chunks/{chunk.R66CYS27.js.map → chunk.QTY25OTN.js.map} +0 -0
  877. /package/dist/esm/chunks/{chunk.BSV27GU7.js.map → chunk.QVATEY5S.js.map} +0 -0
  878. /package/dist/esm/chunks/{chunk.FRTSXX33.js.map → chunk.RSYEG2RW.js.map} +0 -0
  879. /package/dist/esm/chunks/{chunk.A6BIUNPW.js.map → chunk.RXBLU4OJ.js.map} +0 -0
  880. /package/dist/esm/chunks/{chunk.FBDRM4YN.js.map → chunk.S7KEO2CH.js.map} +0 -0
  881. /package/dist/esm/chunks/{chunk.XU3YSZPA.js.map → chunk.SQ3AZAHF.js.map} +0 -0
  882. /package/dist/esm/chunks/{chunk.35MHQH7Z.js.map → chunk.SROEDYPL.js.map} +0 -0
  883. /package/dist/esm/chunks/{chunk.SHBDQPPH.js.map → chunk.SZOZIJZI.js.map} +0 -0
  884. /package/dist/esm/chunks/{chunk.PXRGQHWR.js.map → chunk.TQWZDM6T.js.map} +0 -0
  885. /package/dist/esm/chunks/{chunk.6JVMCBCR.js.map → chunk.UKBE2FMZ.js.map} +0 -0
  886. /package/dist/esm/chunks/{chunk.4AEQ7KVU.js.map → chunk.VJZ7VDG5.js.map} +0 -0
  887. /package/dist/esm/chunks/{chunk.3L77JY5H.js.map → chunk.W4HANHUO.js.map} +0 -0
  888. /package/dist/esm/chunks/{chunk.2W276VOR.js.map → chunk.WMJSYYXQ.js.map} +0 -0
  889. /package/dist/esm/chunks/{chunk.YNXWVL4B.js.map → chunk.YPNSK2CK.js.map} +0 -0
  890. /package/dist/esm/chunks/{chunk.MPUP6QAP.js.map → chunk.YWJVZVZX.js.map} +0 -0
  891. /package/dist/esm/chunks/{chunk.6XLTVIUD.js.map → chunk.ZA7JY3AY.js.map} +0 -0
  892. /package/dist/esm/{field-next → field}/base/index.js.map +0 -0
  893. /package/dist/esm/{field-next → field}/index.js.map +0 -0
  894. /package/esm/{field-next → field}/base/base-field-adapter.d.ts +0 -0
  895. /package/esm/{field-next → field}/base/base-field-adapter.js +0 -0
  896. /package/esm/{field-next → field}/base/base-field-constants.d.ts +0 -0
  897. /package/esm/{field-next → field}/base/base-field-constants.js +0 -0
  898. /package/esm/{field-next → field}/base/base-field-foundation.d.ts +0 -0
  899. /package/esm/{field-next → field}/base/base-field.d.ts +0 -0
  900. /package/esm/{field-next → field}/base/base-field.js +0 -0
  901. /package/esm/{field-next → field}/base/index.d.ts +0 -0
  902. /package/esm/{field-next → field}/base/index.js +0 -0
  903. /package/esm/{field-next → field}/index.d.ts +0 -0
  904. /package/esm/{field-next → field}/index.js +0 -0
  905. /package/styles/{field-next → field}/_core.slotted.scss +0 -0
  906. /package/styles/{field-next → field}/_core.state.scss +0 -0
  907. /package/styles/{field-next → field}/_token-utils.scss +0 -0
  908. /package/styles/{field-next → field}/index.scss +0 -0
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/paginator/paginator-constants.ts", "../../src/paginator/paginator-foundation.ts", "../../src/paginator/paginator-adapter.ts", "../../src/paginator/paginator.ts", "../../src/paginator/index.ts"],
4
- "sourcesContent": ["import { COMPONENT_NAME_PREFIX } from '../constants';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}paginator`;\n\nconst classes = {\n LABEL: 'forge-paginator__label',\n PAGE_SIZE_OPTIONS: 'forge-paginator__page-size-options',\n RANGE_LABEL: 'forge-paginator__range-label',\n RANGE_LABEL_ALTERNATIVE: 'forge-paginator__range-label--alternative',\n FIRST_PAGE_BUTTON: 'forge-paginator__first-page',\n PREVIOUS_PAGE_BUTTON: 'forge-paginator__previous-page',\n NEXT_PAGE_BUTTON: 'forge-paginator__next-page',\n LAST_PAGE_BUTTON: 'forge-paginator__last-page',\n ROOT: 'forge-paginator',\n ALTERNATIVE: 'forge-paginator--alternative',\n ALIGNMENT_START: 'forge-paginator--alignment-start',\n ALIGNMENT_SPACE_BETWEEN: 'forge-paginator--alignment-center',\n ALIGNMENT_END: 'forge-paginator--alignment-end'\n};\n\nconst selectors = {\n LABEL: `.${classes.LABEL}`,\n PAGE_SIZE_SELECT: `.${classes.PAGE_SIZE_OPTIONS}`,\n RANGE_LABEL: `.${classes.RANGE_LABEL}`,\n FIRST_PAGE_BUTTON: `.${classes.FIRST_PAGE_BUTTON}`,\n FIRST_PAGE_ICON_BUTTON: `.${classes.FIRST_PAGE_BUTTON}`,\n PREVIOUS_PAGE_BUTTON: `.${classes.PREVIOUS_PAGE_BUTTON}`,\n NEXT_PAGE_BUTTON: `.${classes.NEXT_PAGE_BUTTON}`,\n LAST_PAGE_BUTTON: `.${classes.LAST_PAGE_BUTTON}`,\n LAST_PAGE_ICON_BUTTON: `.${classes.LAST_PAGE_BUTTON}`,\n ROOT: `.${classes.ROOT}`,\n RANGE_LABEL_ALTERNATIVE: `.${classes.RANGE_LABEL_ALTERNATIVE}`\n};\n\nconst attributes = {\n PAGE_INDEX: 'page-index',\n PAGE_SIZE: 'page-size',\n OFFSET: 'offset',\n PAGE_SIZE_OPTIONS: 'page-size-options',\n TOTAL: 'total',\n LABEL: 'label',\n FIRST_LAST: 'first-last',\n FIRST: 'first',\n DISABLED: 'disabled',\n ALTERNATIVE: 'alternative',\n ALIGNMENT: 'alignment'\n};\n\nconst events = {\n CHANGE: `${elementName}-change`\n} as const;\n\nconst numbers = {\n DEFAULT_PAGE_INDEX: 0,\n DEFAULT_TOTAL: 0,\n DEFAULT_PAGE_SIZE: 25,\n DEFAULT_PAGE_SIZE_OPTIONS: [5, 15, 25, 50, 100]\n};\n\nconst strings = {\n DEFAULT_LABEL: 'Rows per page:',\n RANGE_SEPARATOR_LABEL: 'of',\n FIRST_PAGE: 'first-page',\n PREVIOUS_PAGE: 'previous-page',\n NEXT_PAGE: 'next-page',\n LAST_PAGE: 'last-page',\n PAGE_SIZE: 'page-size'\n};\n\nexport const PAGINATOR_CONSTANTS = {\n elementName,\n classes,\n selectors,\n attributes,\n events,\n numbers,\n strings\n};\n\nexport type PaginatorAlternativeAlignment = 'start' | 'space-between' | 'end';\nexport interface IPaginatorChangeEvent {\n type: string;\n pageSize: number;\n pageIndex: number;\n offset: number;\n}\n\nexport interface IPaginatorRangeState {\n pageSize: number;\n pageIndex: number;\n offset: number;\n pageStart: number;\n pageEnd: number;\n total: number;\n}\n\nexport type PaginatorRangeLabelBuilder = ((state: IPaginatorRangeState) => string) | undefined | null;\n", "import { coerceNumber, ICustomElementFoundation, isArray, isDefined } from '@tylertech/forge-core';\nimport { IPaginatorAdapter, PaginatorFieldIdentifier } from './paginator-adapter';\nimport { PaginatorAlternativeAlignment, PAGINATOR_CONSTANTS, IPaginatorChangeEvent, PaginatorRangeLabelBuilder, IPaginatorRangeState } from './paginator-constants';\nimport { ISelectOption } from '../select';\n\nexport interface IPaginatorFoundation extends ICustomElementFoundation {\n pageIndex: number;\n pageSize: number;\n offset: number;\n total: number;\n pageSizeOptions: number[] | boolean;\n pageSizeLabel: string;\n rangeLabelCallback: PaginatorRangeLabelBuilder;\n focus(options?: FocusOptions): void;\n}\n\nexport class PaginatorFoundation {\n private _pageIndex = PAGINATOR_CONSTANTS.numbers.DEFAULT_PAGE_INDEX;\n private _pageSize = PAGINATOR_CONSTANTS.numbers.DEFAULT_PAGE_SIZE;\n private _offset = 0;\n private _total = PAGINATOR_CONSTANTS.numbers.DEFAULT_TOTAL;\n private _pageSizeOptions: ISelectOption[] = PAGINATOR_CONSTANTS.numbers.DEFAULT_PAGE_SIZE_OPTIONS.map(o => ({ label: `${o}`, value: `${o}` }));\n private _label = PAGINATOR_CONSTANTS.strings.DEFAULT_LABEL;\n private _firstLast = false;\n private _first = false;\n private _disabled = false;\n private _alternative: boolean;\n private _alignment: PaginatorAlternativeAlignment = 'space-between';\n private _rangeLabelCallback: PaginatorRangeLabelBuilder;\n\n private _firstPageListener: (evt: Event) => void;\n private _previousPageListener: (evt: Event) => void;\n private _nextPageListener: (evt: Event) => void;\n private _lastPageListener: (evt: Event) => void;\n private _pageSizeListener: (evt: Event) => void;\n\n constructor(private _adapter: IPaginatorAdapter) {\n this._pageSizeListener = (evt: CustomEvent<number>) => this._onPageSizeChanged(evt);\n this._firstPageListener = (evt: Event) => this._onFirstPage(evt);\n this._previousPageListener = (evt: Event) => this._onPreviousPage(evt);\n this._nextPageListener = (evt: Event) => this._onNextPage(evt);\n this._lastPageListener = (evt: Event) => this._onLastPage(evt);\n }\n\n public initialize(): void {\n this._updateRangeLabel();\n this._adapter.setLabel(this._label);\n this._adapter.setPageSizeOptions(this._pageSizeOptions);\n this._adapter.setPageSize(this._pageSize);\n this._attachListeners();\n this._toggleFirstLastButtons();\n this._syncInteractionState();\n }\n\n public disconnect(): void {\n this._detachListeners();\n }\n\n public focus(options?: FocusOptions): void {\n this._adapter.setFocus(options);\n }\n\n private _attachListeners(): void {\n this._adapter.attachPageSizeChangeListener(this._pageSizeListener);\n this._adapter.attachFirstPageListener(this._firstPageListener);\n this._adapter.attachPreviousPageListener(this._previousPageListener);\n this._adapter.attachNextPageListener(this._nextPageListener);\n this._adapter.attachLastPageListener(this._lastPageListener);\n }\n\n private _detachListeners(): void {\n this._adapter.detachPageSizeChangeListener(this._pageSizeListener);\n this._adapter.detachFirstPageListener(this._firstPageListener);\n this._adapter.detachPreviousPageListener(this._previousPageListener);\n this._adapter.detachNextPageListener(this._nextPageListener);\n this._adapter.detachLastPageListener(this._lastPageListener);\n }\n\n private _onFirstPage(evt: Event): void {\n evt.stopPropagation();\n\n if (!this._hasFirstPage()) {\n return;\n }\n\n const firstPage = 0;\n const canPage = this._emitChangeEvent(PAGINATOR_CONSTANTS.strings.FIRST_PAGE, { pageIndex: firstPage });\n if (canPage) {\n this._applyPageIndex(firstPage);\n }\n }\n\n private _onPreviousPage(evt: Event): void {\n evt.stopPropagation();\n\n if (!this._hasPreviousPage()) {\n return;\n }\n \n const prevPage = this._pageIndex - 1;\n const canPage = this._emitChangeEvent(PAGINATOR_CONSTANTS.strings.PREVIOUS_PAGE, { pageIndex: prevPage });\n if (canPage) {\n this._applyPageIndex(prevPage);\n }\n }\n\n private _onNextPage(evt: Event): void {\n evt.stopPropagation();\n\n if (!this._hasNextPage()) {\n return;\n }\n\n const nextPage = this._pageIndex + 1;\n const canPage = this._emitChangeEvent(PAGINATOR_CONSTANTS.strings.NEXT_PAGE, { pageIndex: nextPage });\n if (canPage) {\n this._applyPageIndex(nextPage);\n }\n }\n\n private _onLastPage(evt: Event): void {\n evt.stopPropagation();\n\n if (!this._hasLastPage()) {\n return;\n }\n\n const lastPage = this._getMaxPages();\n const canPage = this._emitChangeEvent(PAGINATOR_CONSTANTS.strings.LAST_PAGE, { pageIndex: lastPage });\n if (canPage) {\n this._applyPageIndex(lastPage);\n }\n }\n\n private _onPageSizeChanged(evt: CustomEvent): void {\n evt.stopPropagation();\n\n const pageSize = Number(evt.detail);\n const canPage = this._emitChangeEvent(PAGINATOR_CONSTANTS.strings.PAGE_SIZE, { pageIndex: 0, pageSize });\n if (canPage) {\n this._applyPageIndex(0);\n this._applyPageSize(pageSize);\n } else {\n evt.preventDefault();\n }\n }\n\n private _emitChangeEvent(type: string, { pageSize = this._pageSize, pageIndex = this._pageIndex } = {}): boolean {\n const offset = pageIndex * pageSize;\n const detail: IPaginatorChangeEvent = { type, pageSize, pageIndex, offset };\n return this._adapter.emitHostEvent(PAGINATOR_CONSTANTS.events.CHANGE, detail, true, true);\n }\n\n private _getMaxPages(): number {\n return Math.ceil(this._total / this._pageSize) - 1;\n }\n\n private _updateRangeLabel(): void {\n let rangeLabel: string;\n\n if (typeof this._rangeLabelCallback === 'function') {\n const state: IPaginatorRangeState = {\n pageSize: this._pageSize,\n pageIndex: this._pageIndex,\n offset: this._offset,\n pageStart: (this._pageIndex * this._pageSize) + 1,\n pageEnd: Math.min((this._pageIndex + 1) * this._pageSize, this._total),\n total: this._total\n };\n rangeLabel = this._rangeLabelCallback.call(null, state);\n } else {\n if (this.pageSize > 1) {\n const startIndex = this._pageIndex * this._pageSize;\n const indexStart = Math.floor(startIndex / this._pageSize) || 0;\n const pageStart = (indexStart * this._pageSize) + 1;\n const pageEnd = startIndex < this._total ? Math.min(startIndex + this._pageSize, this._total) : startIndex + this._pageSize;\n rangeLabel = `${pageStart}-${pageEnd} ${PAGINATOR_CONSTANTS.strings.RANGE_SEPARATOR_LABEL} ${this._total}`;\n } else {\n rangeLabel = `${this._pageIndex + 1} ${PAGINATOR_CONSTANTS.strings.RANGE_SEPARATOR_LABEL} ${this._total}`;\n }\n }\n\n this._adapter.setRangeLabel(rangeLabel);\n }\n\n private _syncInteractionState(): void {\n this._adapter.enableFirstPageButton();\n this._adapter.enablePreviousPageButton();\n this._adapter.enableNextPageButton();\n this._adapter.enableLastPageButton();\n\n const fieldsToDisable: PaginatorFieldIdentifier[] = [];\n\n if (!this._hasFirstPage()) {\n fieldsToDisable.push('first');\n }\n if (!this._hasPreviousPage()) {\n fieldsToDisable.push('previous');\n }\n if (!this._hasNextPage()) {\n fieldsToDisable.push('next');\n }\n if (!this._hasLastPage()) {\n fieldsToDisable.push('last');\n }\n\n this._adapter.tryDisableFields(fieldsToDisable);\n }\n\n private _toggleFirstLastButtons(): void {\n this._toggleFirstButton();\n if (this._firstLast) {\n if (!this._adapter.hasLastPageButton()) {\n this._adapter.showLastPageButton();\n }\n } else {\n if (this._adapter.hasLastPageButton()) {\n this._adapter.hideLastPageButton();\n }\n }\n }\n\n private _toggleFirstButton(): void {\n if (this._first || this._firstLast) {\n if (!this._adapter.hasFirstPageButton()) {\n this._adapter.showFirstPageButton();\n }\n } else {\n if (this._adapter.hasFirstPageButton()) {\n this._adapter.hideFirstPageButton();\n }\n }\n }\n\n private _hasFirstPage(): boolean {\n return this._hasPreviousPage();\n }\n\n private _hasPreviousPage(): boolean {\n return this._pageIndex > 0 && this._pageSize > 0;\n }\n\n private _hasNextPage(): boolean {\n const maxPages = this._getMaxPages();\n return this._pageIndex < maxPages && this._pageSize > 0;\n }\n\n private _hasLastPage(): boolean {\n return this._hasNextPage();\n }\n\n private _computePageIndexFromOffset(value: number): void {\n if (value >= this._total) {\n if (this._total >= this._pageSize) {\n value = this._total - this._pageSize;\n } else {\n value = 0;\n }\n }\n const clampedValue = Math.min(Math.max(value, 0), this._total);\n const pageIndex = Math.floor(clampedValue / this._pageSize);\n this._applyPageIndex(pageIndex);\n }\n\n private _computeOffset(): void {\n if (this._total > 0) {\n this._offset = this._pageIndex * this._pageSize;\n }\n }\n\n private _applyPageIndex(value: number): void {\n this._pageIndex = value;\n this._computeOffset();\n this._updateRangeLabel();\n this._syncInteractionState();\n this._adapter.toggleHostAttribute(PAGINATOR_CONSTANTS.attributes.PAGE_INDEX, this._pageIndex != null, this._pageIndex.toString());\n }\n\n private _applyPageSize(value: number): void {\n this._pageSize = value;\n this._adapter.setPageSize(this._pageSize);\n this._computeOffset();\n this._updateRangeLabel();\n this._syncInteractionState();\n }\n\n private _applyTotal(value: number): void {\n this._total = value;\n this._updateRangeLabel();\n\n if (this._offset > 0 && this._total > 0) {\n this._computePageIndexFromOffset(this._offset);\n }\n\n this._syncInteractionState();\n }\n\n private _applyAlternativeAlignment(): void {\n this._adapter.setHostAttribute(PAGINATOR_CONSTANTS.attributes.ALIGNMENT, this._alignment);\n this._adapter.setAlignment(this._alignment);\n }\n\n private _applyDisabled(disabled: boolean): void {\n this._disabled = disabled;\n if (disabled) {\n this._adapter.disablePageSizeSelect();\n this._adapter.disableFirstPageButton();\n this._adapter.disablePreviousPageButton();\n this._adapter.disableNextPageButton();\n this._adapter.disableLastPageButton();\n } else {\n this._adapter.enablePageSizeSelect();\n this._syncInteractionState();\n }\n }\n\n public get pageIndex(): number {\n return this._pageIndex;\n }\n public set pageIndex(value: number) {\n if (this._pageIndex !== value) {\n if (isDefined(value)) {\n this._applyPageIndex(value);\n } else {\n this._adapter.removeHostAttribute(PAGINATOR_CONSTANTS.attributes.PAGE_INDEX);\n }\n }\n }\n\n public get pageSize(): number {\n return this._pageSize;\n }\n public set pageSize(value: number) {\n if (this._pageSize !== value) {\n this._applyPageSize(value);\n this._adapter.setHostAttribute(PAGINATOR_CONSTANTS.attributes.PAGE_SIZE, `${this._pageSize}`);\n }\n }\n\n public get offset(): number {\n return this._offset;\n }\n public set offset(value: number) {\n if (this._offset !== value) {\n this._offset = value;\n this._computePageIndexFromOffset(value);\n }\n }\n\n public get total(): number {\n return this._total;\n }\n public set total(value: number) {\n if (this._total !== value) {\n this._applyTotal(value);\n this._adapter.setHostAttribute(PAGINATOR_CONSTANTS.attributes.TOTAL, `${this._total}`);\n }\n }\n\n public get pageSizeOptions(): number[] | boolean {\n return this._pageSizeOptions.map(o => Number(o.value));\n }\n public set pageSizeOptions(options: number[] | boolean) {\n if (isArray(options)) {\n this._pageSizeOptions = (options as number[])\n .map(o => ({ label: o.toString(), value: o.toString() }))\n .sort((a, b) => coerceNumber(a.value) - coerceNumber(b.value));\n this._adapter.setPageSizeOptions(this._pageSizeOptions);\n this._adapter.attachPageSizeChangeListener(this._pageSizeListener);\n this._adapter.setPageSizeVisibility(true);\n if (isDefined(this._pageSize) && this._pageSizeOptions.length && !this._pageSizeOptions.find(o => coerceNumber(o.value) === this._pageSize)) {\n const pageSize = coerceNumber(this._pageSizeOptions[0].value);\n this._applyPageSize(pageSize);\n }\n } else if (options.toString().toLowerCase() === 'false') {\n this._adapter.detachPageSizeChangeListener(this._pageSizeListener);\n this._adapter.setPageSizeVisibility(false);\n }\n }\n\n public get label(): string {\n return this._label;\n }\n public set label(value: string) {\n if (this._label !== value) {\n this._label = value;\n this._adapter.setLabel(this._label);\n this._adapter.setHostAttribute(PAGINATOR_CONSTANTS.attributes.LABEL, isDefined(this._label) ? this._label.toString() : '');\n }\n }\n\n public get firstLast(): boolean {\n return this._firstLast;\n }\n public set firstLast(value: boolean) {\n value = Boolean(value);\n if (this._firstLast !== value) {\n this._firstLast = value;\n this._toggleFirstLastButtons();\n this._adapter.toggleHostAttribute(PAGINATOR_CONSTANTS.attributes.FIRST_LAST, this._firstLast);\n }\n }\n\n public get first(): boolean {\n return this._first;\n }\n public set first(value: boolean) {\n value = Boolean(value);\n if (this._first !== value) {\n this._first = value;\n this._toggleFirstButton();\n this._adapter.toggleHostAttribute(PAGINATOR_CONSTANTS.attributes.FIRST, this._first);\n }\n }\n\n public get disabled(): boolean {\n return this._disabled;\n }\n public set disabled(value: boolean) {\n value = Boolean(value);\n if (this._disabled !== value) {\n this._applyDisabled(value);\n this._adapter.toggleHostAttribute(PAGINATOR_CONSTANTS.attributes.DISABLED, this._disabled);\n }\n }\n\n public get alternative(): boolean {\n return this._alternative;\n }\n public set alternative(value: boolean) {\n if (value !== this._alternative) {\n this._alternative = value;\n this._adapter.setAlternative(this._alternative);\n this._applyAlternativeAlignment();\n this._adapter.toggleHostAttribute(PAGINATOR_CONSTANTS.attributes.ALTERNATIVE, this._alternative);\n }\n }\n\n public get alignment(): PaginatorAlternativeAlignment {\n return this._alignment;\n }\n public set alignment(value: PaginatorAlternativeAlignment) {\n if (value !== this._alignment) {\n this._alignment = value;\n this._applyAlternativeAlignment();\n }\n }\n\n public get rangeLabelCallback(): PaginatorRangeLabelBuilder {\n return this._rangeLabelCallback;\n }\n public set rangeLabelCallback(value: PaginatorRangeLabelBuilder) {\n this._rangeLabelCallback = value;\n this._updateRangeLabel();\n }\n}\n", "import { addClass, getShadowElement, removeAllChildren, removeClass, toggleElementPlaceholder, toggleClass } from '@tylertech/forge-core';\nimport { BaseAdapter, IBaseAdapter } from '../core/base/base-adapter';\nimport { IIconButtonComponent } from '../icon-button';\nimport { ISelectComponent, ISelectOption } from '../select';\nimport { IPaginatorComponent } from './paginator';\nimport { PaginatorAlternativeAlignment, PAGINATOR_CONSTANTS } from './paginator-constants';\n\nexport type PaginatorFieldIdentifier = 'first' | 'last' | 'previous' | 'next' | 'page-size';\n\nexport interface IPaginatorAdapter extends IBaseAdapter {\n setLabel(value: string): void;\n setPageSizeOptions(options: ISelectOption[]): void;\n setPageSize(value: number): void;\n setRangeLabel(value: string): void;\n hasFirstPageButton(): boolean;\n showFirstPageButton(): void;\n hideFirstPageButton(): void;\n hasLastPageButton(): boolean;\n showLastPageButton(): void;\n hideLastPageButton(): void;\n attachPageSizeChangeListener(listener: (evt: CustomEvent) => void): void;\n attachFirstPageListener(listener: (evt: Event) => void): void;\n attachPreviousPageListener(listener: (evt: Event) => void): void;\n attachNextPageListener(listener: (evt: Event) => void): void;\n attachLastPageListener(listener: (evt: Event) => void): void;\n detachPageSizeChangeListener(listener: (evt: CustomEvent) => void): void;\n detachFirstPageListener(listener: (evt: Event) => void): void;\n detachPreviousPageListener(listener: (evt: Event) => void): void;\n detachNextPageListener(listener: (evt: Event) => void): void;\n detachLastPageListener(listener: (evt: Event) => void): void;\n disableFirstPageButton(): void;\n enableFirstPageButton(): void;\n disablePreviousPageButton(): void;\n enablePreviousPageButton(): void;\n disableNextPageButton(): void;\n enableNextPageButton(): void;\n disablePageSizeSelect(): void;\n enablePageSizeSelect(): void;\n setPageSizeVisibility(visible: boolean): void;\n disableLastPageButton(): void;\n enableLastPageButton(): void;\n setAlternative(alternative: boolean): void;\n setAlignment(alignment: PaginatorAlternativeAlignment): void;\n hasFocus(): boolean;\n setFocus(options?: FocusOptions): void;\n getFocusedField(): PaginatorFieldIdentifier | null;\n tryDisableFields(fieldsToDisable: PaginatorFieldIdentifier[]): void;\n}\n\n/**\n * Provides facilities for interacting with the internal DOM of `PaginatorComponent`.\n */\nexport class PaginatorAdapter extends BaseAdapter<IPaginatorComponent> implements IPaginatorAdapter {\n private _labelElement: HTMLElement;\n private _root: HTMLElement;\n private _pageSizeSelect: ISelectComponent;\n private _rangeLabel: HTMLElement;\n private _rangeLabelAlternative: HTMLElement;\n private _firstPageButton: HTMLButtonElement;\n private _firstPageIconButton: IIconButtonComponent;\n private _firstPagePlaceholder: Comment;\n private _previousPageButton: HTMLButtonElement;\n private _nextPageButton: HTMLButtonElement;\n private _lastPageButton: HTMLButtonElement;\n private _lastPageIconButton: IIconButtonComponent;\n private _lastPagePlaceholder: Comment;\n\n constructor(component: IPaginatorComponent) {\n super(component);\n this._labelElement = getShadowElement(component, PAGINATOR_CONSTANTS.selectors.LABEL);\n this._root = getShadowElement(component, PAGINATOR_CONSTANTS.selectors.ROOT);\n this._pageSizeSelect = getShadowElement(component, PAGINATOR_CONSTANTS.selectors.PAGE_SIZE_SELECT) as ISelectComponent;\n this._rangeLabel = getShadowElement(component, PAGINATOR_CONSTANTS.selectors.RANGE_LABEL);\n this._rangeLabelAlternative = getShadowElement(component, PAGINATOR_CONSTANTS.selectors.RANGE_LABEL_ALTERNATIVE);\n this._firstPageButton = getShadowElement(component, PAGINATOR_CONSTANTS.selectors.FIRST_PAGE_BUTTON) as HTMLButtonElement;\n this._firstPageIconButton = getShadowElement(component, PAGINATOR_CONSTANTS.selectors.FIRST_PAGE_ICON_BUTTON) as IIconButtonComponent;\n this._previousPageButton = getShadowElement(component, PAGINATOR_CONSTANTS.selectors.PREVIOUS_PAGE_BUTTON) as HTMLButtonElement;\n this._nextPageButton = getShadowElement(component, PAGINATOR_CONSTANTS.selectors.NEXT_PAGE_BUTTON) as HTMLButtonElement;\n this._lastPageButton = getShadowElement(component, PAGINATOR_CONSTANTS.selectors.LAST_PAGE_BUTTON) as HTMLButtonElement;\n this._lastPageIconButton = getShadowElement(component, PAGINATOR_CONSTANTS.selectors.LAST_PAGE_ICON_BUTTON) as IIconButtonComponent;\n }\n\n public setLabel(value: string): void {\n this._labelElement.textContent = value;\n }\n\n public setPageSizeOptions(options: ISelectOption[]): void {\n removeAllChildren(this._pageSizeSelect);\n this._pageSizeSelect.options = options;\n }\n\n public setPageSize(value: number): void {\n this._pageSizeSelect.value = value.toString();\n }\n\n public setRangeLabel(value: string): void {\n this._rangeLabel.innerText = value;\n this._rangeLabelAlternative.innerText = value;\n }\n\n public hasFirstPageButton(): boolean {\n return !!getShadowElement(this._component, PAGINATOR_CONSTANTS.selectors.FIRST_PAGE_ICON_BUTTON);\n }\n\n public showFirstPageButton(): void {\n this._firstPagePlaceholder = toggleElementPlaceholder(\n this._component,\n true,\n PAGINATOR_CONSTANTS.elementName,\n PAGINATOR_CONSTANTS.selectors.FIRST_PAGE_ICON_BUTTON,\n this._firstPageIconButton,\n this._firstPagePlaceholder\n );\n }\n\n public hideFirstPageButton(): void {\n this._firstPagePlaceholder = toggleElementPlaceholder(\n this._component,\n false,\n PAGINATOR_CONSTANTS.elementName,\n PAGINATOR_CONSTANTS.selectors.FIRST_PAGE_ICON_BUTTON,\n this._firstPageIconButton,\n this._firstPagePlaceholder\n );\n }\n\n public hasLastPageButton(): boolean {\n return !!getShadowElement(this._component, PAGINATOR_CONSTANTS.selectors.LAST_PAGE_ICON_BUTTON);\n }\n\n public showLastPageButton(): void {\n this._lastPagePlaceholder = toggleElementPlaceholder(\n this._component,\n true,\n PAGINATOR_CONSTANTS.elementName,\n PAGINATOR_CONSTANTS.selectors.LAST_PAGE_ICON_BUTTON,\n this._lastPageIconButton,\n this._lastPagePlaceholder\n );\n }\n\n public hideLastPageButton(): void {\n this._lastPagePlaceholder = toggleElementPlaceholder(\n this._component,\n false,\n PAGINATOR_CONSTANTS.elementName,\n PAGINATOR_CONSTANTS.selectors.LAST_PAGE_ICON_BUTTON,\n this._lastPageIconButton,\n this._lastPagePlaceholder\n );\n }\n\n public attachPageSizeChangeListener(listener: (evt: CustomEvent) => void): void {\n this._pageSizeSelect.addEventListener('change', listener);\n }\n\n public attachFirstPageListener(listener: (evt: Event) => void): void {\n this._firstPageButton.addEventListener('click', listener);\n }\n\n public attachPreviousPageListener(listener: (evt: Event) => void): void {\n this._previousPageButton.addEventListener('click', listener);\n }\n\n public attachNextPageListener(listener: (evt: Event) => void): void {\n this._nextPageButton.addEventListener('click', listener);\n }\n\n public attachLastPageListener(listener: (evt: Event) => void): void {\n this._lastPageButton.addEventListener('click', listener);\n }\n\n public detachPageSizeChangeListener(listener: (evt: CustomEvent) => void): void {\n this._pageSizeSelect.removeEventListener('change', listener);\n }\n\n public detachFirstPageListener(listener: (evt: Event) => void): void {\n this._firstPageButton.removeEventListener('click', listener);\n }\n\n public detachPreviousPageListener(listener: (evt: Event) => void): void {\n this._previousPageButton.removeEventListener('click', listener);\n }\n\n public detachNextPageListener(listener: (evt: Event) => void): void {\n this._nextPageButton.removeEventListener('click', listener);\n }\n\n public detachLastPageListener(listener: (evt: Event) => void): void {\n this._lastPageButton.removeEventListener('click', listener);\n }\n\n public disableFirstPageButton(): void {\n this._firstPageButton.setAttribute('disabled', 'disabled');\n }\n\n public enableFirstPageButton(): void {\n this._firstPageButton.removeAttribute('disabled');\n }\n\n public disablePreviousPageButton(): void {\n this._previousPageButton.setAttribute('disabled', 'disabled');\n }\n\n public enablePreviousPageButton(): void {\n this._previousPageButton.removeAttribute('disabled');\n }\n\n public disableNextPageButton(): void {\n this._nextPageButton.setAttribute('disabled', 'disabled');\n }\n\n public enableNextPageButton(): void {\n this._nextPageButton.removeAttribute('disabled');\n }\n\n public disablePageSizeSelect(): void {\n this._pageSizeSelect.setAttribute('disabled', 'disabled');\n }\n\n public enablePageSizeSelect(): void {\n this._pageSizeSelect.removeAttribute('disabled');\n }\n\n public setPageSizeVisibility(visible: boolean): void {\n if (visible) {\n this._pageSizeSelect.style.removeProperty('display');\n } else {\n this._pageSizeSelect.style.display = 'none';\n }\n }\n\n public disableLastPageButton(): void {\n this._lastPageButton.setAttribute('disabled', 'disabled');\n }\n\n public enableLastPageButton(): void {\n this._lastPageButton.removeAttribute('disabled');\n }\n\n public setAlternative(alternative: boolean): void {\n toggleClass(this._root, alternative, PAGINATOR_CONSTANTS.classes.ALTERNATIVE);\n }\n\n public setAlignment(alignment: PaginatorAlternativeAlignment): void {\n removeClass([\n PAGINATOR_CONSTANTS.classes.ALIGNMENT_SPACE_BETWEEN,\n PAGINATOR_CONSTANTS.classes.ALIGNMENT_START,\n PAGINATOR_CONSTANTS.classes.ALIGNMENT_END\n ], this._root);\n\n switch (alignment) {\n case 'start':\n addClass(PAGINATOR_CONSTANTS.classes.ALIGNMENT_START, this._root);\n break;\n case 'end':\n addClass(PAGINATOR_CONSTANTS.classes.ALIGNMENT_END, this._root);\n break;\n case 'space-between':\n default:\n addClass(PAGINATOR_CONSTANTS.classes.ALIGNMENT_SPACE_BETWEEN, this._root);\n break;\n }\n }\n\n public hasFocus(): boolean {\n return this._component.matches(':focus');\n }\n\n public setFocus(options?: FocusOptions): void {\n this._tryFocus([\n this._pageSizeSelect,\n this._firstPageButton,\n this._previousPageButton,\n this._nextPageButton,\n this._lastPageButton\n ], options);\n }\n\n public getFocusedField(): PaginatorFieldIdentifier | null {\n if (this._pageSizeSelect.matches(':focus-within')) {\n return 'page-size';\n } else if (this._firstPageButton.matches(':focus-within')) {\n return 'first';\n } else if (this._previousPageButton.matches(':focus-within')) {\n return 'previous';\n } else if (this._nextPageButton.matches(':focus-within')) {\n return 'next';\n } else if (this._lastPageButton.matches(':focus-within')) {\n return 'last';\n }\n return null;\n }\n\n public tryDisableFields(fieldsToDisable: PaginatorFieldIdentifier[]): void {\n const fieldDisablers = {\n 'first': () => this.disableFirstPageButton(),\n 'last': () => this.disableLastPageButton(),\n 'previous': () => this.disablePreviousPageButton(),\n 'next': () => this.disableNextPageButton()\n };\n fieldsToDisable.forEach(field => fieldDisablers[field]?.());\n }\n\n private _tryFocus(elements: Array<HTMLButtonElement | ISelectComponent>, options?: FocusOptions): void {\n const preventScroll = typeof options?.preventScroll === 'boolean' ? options.preventScroll : true;\n for (const el of elements) {\n if (el && el.isConnected && !el.disabled && el.style.display !== 'none') {\n el.focus({ ...options, preventScroll });\n return;\n }\n }\n }\n}\n", "import { CustomElement, attachShadowTemplate, FoundationProperty, coerceBoolean } from '@tylertech/forge-core';\nimport { tylIconFirstPage, tylIconLastPage, tylIconKeyboardArrowRight, tylIconKeyboardArrowLeft } from '@tylertech/tyler-icons/standard';\nimport { PaginatorAlternativeAlignment, PAGINATOR_CONSTANTS, IPaginatorChangeEvent, PaginatorRangeLabelBuilder } from './paginator-constants';\nimport { PaginatorFoundation } from './paginator-foundation';\nimport { PaginatorAdapter } from './paginator-adapter';\nimport { IconButtonComponent } from '../icon-button';\nimport { SelectComponent } from '../select';\nimport { IconComponent, IconRegistry } from '../icon';\nimport { BaseComponent, IBaseComponent } from '../core/base/base-component';\nimport { TooltipComponent } from '../tooltip';\n\nconst template = '<template><div class=\\\"forge-paginator\\\" part=\\\"root\\\"><div class=\\\"forge-paginator__container\\\" part=\\\"container\\\"><div class=\\\"forge-paginator__label\\\" part=\\\"label\\\"></div><forge-select class=\\\"forge-paginator__page-size-options\\\" aria-label=\\\"Choose page size\\\" density=\\\"dense\\\" part=\\\"page-size-options\\\"></forge-select><div class=\\\"forge-paginator__range-label\\\" part=\\\"range-label\\\"></div><forge-icon-button class=\\\"forge-paginator__first-page\\\" part=\\\"first-page-button\\\" part=\\\"first-page-button-element\\\"><forge-icon name=\\\"first_page\\\" part=\\\"first-page-icon\\\"></forge-icon></forge-icon-button><forge-tooltip type=\\\"label\\\" placement=\\\"top\\\">Go to the first page</forge-tooltip><forge-icon-button class=\\\"forge-paginator__previous-page\\\" part=\\\"previous-page-button\\\" part=\\\"previous-page-button-element\\\"><forge-icon name=\\\"keyboard_arrow_left\\\" part=\\\"previous-page-button-icon\\\"></forge-icon></forge-icon-button><forge-tooltip type=\\\"label\\\" placement=\\\"top\\\">Go to the previous page</forge-tooltip><div class=\\\"forge-paginator__range-label--alternative\\\" part=\\\"range-label-alternative\\\"></div><forge-icon-button class=\\\"forge-paginator__next-page\\\" part=\\\"next-page-button\\\" part=\\\"next-page-button-element\\\"><forge-icon name=\\\"keyboard_arrow_right\\\" part=\\\"next-page-icon\\\"></forge-icon></forge-icon-button><forge-tooltip type=\\\"label\\\" placement=\\\"top\\\">Go to the next page</forge-tooltip><forge-icon-button class=\\\"forge-paginator__last-page\\\" part=\\\"last-page-button\\\" part=\\\"last-page-button-element\\\"><forge-icon name=\\\"last_page\\\" part=\\\"last-page-icon\\\"></forge-icon></forge-icon-button><forge-tooltip type=\\\"label\\\" placement=\\\"top\\\">Go to the last page</forge-tooltip></div></div></template>';\nconst styles = '.forge-paginator{display:inline-block}.forge-paginator--alternative{display:-webkit-box;display:flex}.forge-paginator--alternative .forge-paginator__label,.forge-paginator--alternative .forge-paginator__page-size-options,.forge-paginator--alternative .forge-paginator__range-label{display:none}.forge-paginator--alternative .forge-paginator__range-label--alternative{display:inline-block;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-body2-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:.875rem;font-size:var(--mdc-typography-body2-font-size, .875rem);line-height:1.25rem;line-height:var(--mdc-typography-body2-line-height, 1.25rem);font-weight:400;font-weight:var(--mdc-typography-body2-font-weight,400);letter-spacing:.0178571429em;letter-spacing:var(--mdc-typography-body2-letter-spacing, .0178571429em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-body2-text-decoration,inherit);text-decoration:var(--mdc-typography-body2-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-body2-text-transform,inherit);margin:0 12px}.forge-paginator__range-label--alternative{display:none}.forge-paginator__container{display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center}.forge-paginator__label{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-caption-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:.75rem;font-size:var(--mdc-typography-caption-font-size, .75rem);line-height:1.25rem;line-height:var(--mdc-typography-caption-line-height, 1.25rem);font-weight:400;font-weight:var(--mdc-typography-caption-font-weight,400);letter-spacing:.0333333333em;letter-spacing:var(--mdc-typography-caption-letter-spacing, .0333333333em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-caption-text-decoration,inherit);text-decoration:var(--mdc-typography-caption-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-caption-text-transform,inherit);margin-right:16px}.forge-paginator__page-size-options{margin-right:16px}.forge-paginator__range-label{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-caption-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:.75rem;font-size:var(--mdc-typography-caption-font-size, .75rem);line-height:1.25rem;line-height:var(--mdc-typography-caption-line-height, 1.25rem);font-weight:400;font-weight:var(--mdc-typography-caption-font-weight,400);letter-spacing:.0333333333em;letter-spacing:var(--mdc-typography-caption-letter-spacing, .0333333333em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-caption-text-decoration,inherit);text-decoration:var(--mdc-typography-caption-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-caption-text-transform,inherit);margin-right:8px}.forge-paginator__first-page,.forge-paginator__last-page,.forge-paginator__next-page,.forge-paginator__previous-page{color:rgba(0,0,0,.87);color:var(--mdc-theme-text-primary-on-background,rgba(0,0,0,.87))}:host{display:inline-block}:host([hidden]){display:none}:host([alternative]) .forge-paginator--alignment-center .forge-paginator__container{-webkit-box-pack:center;justify-content:center}:host([alternative]) .forge-paginator--alignment-center .forge-paginator__range-label--alternative{margin:0 auto}:host([alternative]) .forge-paginator--alignment-start .forge-paginator__container{-webkit-box-pack:start;justify-content:flex-start}:host([alternative]) .forge-paginator--alignment-end .forge-paginator__container{-webkit-box-pack:end;justify-content:flex-end}:host([alternative]) .forge-paginator .forge-paginator__container{-webkit-box-flex:1;flex:1}';\n\nexport interface IPaginatorComponent extends IBaseComponent {\n pageIndex: number;\n pageSize: number;\n offset: number;\n total: number;\n pageSizeOptions: number[] | boolean;\n label: string;\n firstLast: boolean;\n first: boolean;\n disabled: boolean;\n alternative: boolean;\n alignment: PaginatorAlternativeAlignment;\n rangeLabelCallback: PaginatorRangeLabelBuilder;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'forge-paginator': IPaginatorComponent;\n }\n\n interface HTMLElementEventMap {\n 'forge-paginator-change': CustomEvent<IPaginatorChangeEvent>;\n }\n}\n\n/**\n * @tag forge-paginator\n */\n@CustomElement({\n name: PAGINATOR_CONSTANTS.elementName,\n dependencies: [\n IconButtonComponent,\n SelectComponent,\n IconComponent,\n TooltipComponent\n ]\n})\nexport class PaginatorComponent extends BaseComponent implements IPaginatorComponent {\n public static get observedAttributes(): string[] {\n return [\n PAGINATOR_CONSTANTS.attributes.PAGE_INDEX,\n PAGINATOR_CONSTANTS.attributes.PAGE_SIZE,\n PAGINATOR_CONSTANTS.attributes.OFFSET,\n PAGINATOR_CONSTANTS.attributes.TOTAL,\n PAGINATOR_CONSTANTS.attributes.PAGE_SIZE_OPTIONS,\n PAGINATOR_CONSTANTS.attributes.LABEL,\n PAGINATOR_CONSTANTS.attributes.FIRST_LAST,\n PAGINATOR_CONSTANTS.attributes.FIRST,\n PAGINATOR_CONSTANTS.attributes.DISABLED,\n PAGINATOR_CONSTANTS.attributes.ALTERNATIVE,\n PAGINATOR_CONSTANTS.attributes.ALIGNMENT\n ];\n }\n\n private _foundation: PaginatorFoundation;\n\n constructor() {\n super();\n IconRegistry.define([\n tylIconFirstPage,\n tylIconKeyboardArrowLeft,\n tylIconKeyboardArrowRight,\n tylIconLastPage\n ]);\n attachShadowTemplate(this, template, styles);\n this._foundation = new PaginatorFoundation(new PaginatorAdapter(this));\n }\n\n public connectedCallback(): void {\n this._foundation.initialize();\n }\n\n public disconnectedCallback(): void {\n this._foundation.disconnect();\n }\n\n public attributeChangedCallback(name: string, oldValue: string, newValue: string): void {\n switch (name) {\n case PAGINATOR_CONSTANTS.attributes.PAGE_INDEX:\n this.pageIndex = Number(newValue) || PAGINATOR_CONSTANTS.numbers.DEFAULT_PAGE_INDEX;\n break;\n case PAGINATOR_CONSTANTS.attributes.PAGE_SIZE:\n this.pageSize = Number(newValue) || PAGINATOR_CONSTANTS.numbers.DEFAULT_PAGE_SIZE;\n break;\n case PAGINATOR_CONSTANTS.attributes.OFFSET:\n this.offset = Number(newValue);\n break;\n case PAGINATOR_CONSTANTS.attributes.TOTAL:\n this.total = Number(newValue) || PAGINATOR_CONSTANTS.numbers.DEFAULT_TOTAL;\n break;\n case PAGINATOR_CONSTANTS.attributes.PAGE_SIZE_OPTIONS:\n this.pageSizeOptions = newValue as any;\n break;\n case PAGINATOR_CONSTANTS.attributes.LABEL:\n this.label = newValue;\n break;\n case PAGINATOR_CONSTANTS.attributes.FIRST_LAST:\n this.firstLast = coerceBoolean(newValue);\n break;\n case PAGINATOR_CONSTANTS.attributes.FIRST:\n this.first = coerceBoolean(newValue);\n break;\n case PAGINATOR_CONSTANTS.attributes.DISABLED:\n this.disabled = coerceBoolean(newValue);\n break;\n case PAGINATOR_CONSTANTS.attributes.ALTERNATIVE:\n this.alternative = coerceBoolean(newValue);\n break;\n case PAGINATOR_CONSTANTS.attributes.ALIGNMENT:\n this.alignment = newValue as PaginatorAlternativeAlignment;\n break;\n }\n }\n\n /** The zero-based page index. Default is 0. */\n @FoundationProperty()\n public declare pageIndex: number;\n\n /** Number of items to display on a page. By default set to 25. */\n @FoundationProperty()\n public declare pageSize: number;\n\n /** Sets page index by providing the number of items to skip. The getter for this property returns the number of items to skip. */\n @FoundationProperty()\n public declare offset: number;\n\n /** The total number of items to be paginated. Default is 0. */\n @FoundationProperty()\n public declare total: number;\n\n /** The set of provided page size options to display to the user. */\n @FoundationProperty()\n public declare pageSizeOptions: number[] | boolean;\n\n /** A label for the paginator. Default is \"Rows per page:\". */\n @FoundationProperty()\n public declare label: string;\n\n /** Whether to show the first page and last page buttons. Default is false. */\n @FoundationProperty()\n public declare firstLast: boolean;\n\n /** Whether to show the first page button. Default is false. */\n @FoundationProperty()\n public declare first: boolean;\n\n /** Whether the paginator is disabled. Default is false. */\n @FoundationProperty()\n public declare disabled: boolean;\n\n @FoundationProperty()\n public declare alternative: boolean;\n\n @FoundationProperty()\n public declare alignment: PaginatorAlternativeAlignment;\n\n @FoundationProperty()\n public declare rangeLabelCallback: PaginatorRangeLabelBuilder;\n\n public override focus(options?: FocusOptions): void {\n this._foundation.focus(options);\n }\n}\n", "import { defineCustomElement } from '@tylertech/forge-core';\n\nimport { PaginatorComponent } from './paginator';\n\nexport * from './paginator-adapter';\nexport * from './paginator-constants';\nexport * from './paginator-foundation';\nexport * from './paginator';\n\nexport function definePaginatorComponent(): void {\n defineCustomElement(PaginatorComponent);\n}\n"],
5
- "mappings": "ulBAEA,IAAMA,EAA2C,GAAGC,aAE9CC,EAAU,CACd,MAAO,yBACP,kBAAmB,qCACnB,YAAa,+BACb,wBAAyB,4CACzB,kBAAmB,8BACnB,qBAAsB,iCACtB,iBAAkB,6BAClB,iBAAkB,6BAClB,KAAM,kBACN,YAAa,+BACb,gBAAiB,mCACjB,wBAAyB,oCACzB,cAAe,gCACjB,EAEMC,EAAY,CAChB,MAAO,IAAID,EAAQ,QACnB,iBAAkB,IAAIA,EAAQ,oBAC9B,YAAa,IAAIA,EAAQ,cACzB,kBAAmB,IAAIA,EAAQ,oBAC/B,uBAAwB,IAAIA,EAAQ,oBACpC,qBAAsB,IAAIA,EAAQ,uBAClC,iBAAkB,IAAIA,EAAQ,mBAC9B,iBAAkB,IAAIA,EAAQ,mBAC9B,sBAAuB,IAAIA,EAAQ,mBACnC,KAAM,IAAIA,EAAQ,OAClB,wBAAyB,IAAIA,EAAQ,yBACvC,EAEME,EAAa,CACjB,WAAY,aACZ,UAAW,YACX,OAAQ,SACR,kBAAmB,oBACnB,MAAO,QACP,MAAO,QACP,WAAY,aACZ,MAAO,QACP,SAAU,WACV,YAAa,cACb,UAAW,WACb,EAEMC,EAAS,CACb,OAAQ,GAAGL,UACb,EAEMM,EAAU,CACd,mBAAoB,EACpB,cAAe,EACf,kBAAmB,GACnB,0BAA2B,CAAC,EAAG,GAAI,GAAI,GAAI,GAAG,CAChD,EAEMC,EAAU,CACd,cAAe,iBACf,sBAAuB,KACvB,WAAY,aACZ,cAAe,gBACf,UAAW,YACX,UAAW,YACX,UAAW,WACb,EAEaC,EAAsB,CACjC,YAAAR,EACA,QAAAE,EACA,UAAAC,EACA,WAAAC,EACA,OAAAC,EACA,QAAAC,EACA,QAAAC,CACF,EC7DO,IAAME,EAAN,KAA0B,CAoB/B,YAAoBC,EAA6B,CAA7B,cAAAA,EAnBpB,KAAQ,WAAaC,EAAoB,QAAQ,mBACjD,KAAQ,UAAYA,EAAoB,QAAQ,kBAChD,KAAQ,QAAU,EAClB,KAAQ,OAASA,EAAoB,QAAQ,cAC7C,KAAQ,iBAAoCA,EAAoB,QAAQ,0BAA0B,IAAIC,IAAM,CAAE,MAAO,GAAGA,IAAK,MAAO,GAAGA,GAAI,EAAE,EAC7I,KAAQ,OAASD,EAAoB,QAAQ,cAC7C,KAAQ,WAAa,GACrB,KAAQ,OAAS,GACjB,KAAQ,UAAY,GAEpB,KAAQ,WAA4C,gBAUlD,KAAK,kBAAqBE,GAA6B,KAAK,mBAAmBA,CAAG,EAClF,KAAK,mBAAsBA,GAAe,KAAK,aAAaA,CAAG,EAC/D,KAAK,sBAAyBA,GAAe,KAAK,gBAAgBA,CAAG,EACrE,KAAK,kBAAqBA,GAAe,KAAK,YAAYA,CAAG,EAC7D,KAAK,kBAAqBA,GAAe,KAAK,YAAYA,CAAG,CAC/D,CAEO,YAAmB,CACxB,KAAK,kBAAkB,EACvB,KAAK,SAAS,SAAS,KAAK,MAAM,EAClC,KAAK,SAAS,mBAAmB,KAAK,gBAAgB,EACtD,KAAK,SAAS,YAAY,KAAK,SAAS,EACxC,KAAK,iBAAiB,EACtB,KAAK,wBAAwB,EAC7B,KAAK,sBAAsB,CAC7B,CAEO,YAAmB,CACxB,KAAK,iBAAiB,CACxB,CAEO,MAAMC,EAA8B,CACzC,KAAK,SAAS,SAASA,CAAO,CAChC,CAEQ,kBAAyB,CAC/B,KAAK,SAAS,6BAA6B,KAAK,iBAAiB,EACjE,KAAK,SAAS,wBAAwB,KAAK,kBAAkB,EAC7D,KAAK,SAAS,2BAA2B,KAAK,qBAAqB,EACnE,KAAK,SAAS,uBAAuB,KAAK,iBAAiB,EAC3D,KAAK,SAAS,uBAAuB,KAAK,iBAAiB,CAC7D,CAEQ,kBAAyB,CAC/B,KAAK,SAAS,6BAA6B,KAAK,iBAAiB,EACjE,KAAK,SAAS,wBAAwB,KAAK,kBAAkB,EAC7D,KAAK,SAAS,2BAA2B,KAAK,qBAAqB,EACnE,KAAK,SAAS,uBAAuB,KAAK,iBAAiB,EAC3D,KAAK,SAAS,uBAAuB,KAAK,iBAAiB,CAC7D,CAEQ,aAAaD,EAAkB,CAGrC,GAFAA,EAAI,gBAAgB,EAEhB,CAAC,KAAK,cAAc,EACtB,OAGF,IAAME,EAAY,EACF,KAAK,iBAAiBJ,EAAoB,QAAQ,WAAY,CAAE,UAAWI,CAAU,CAAC,GAEpG,KAAK,gBAAgBA,CAAS,CAElC,CAEQ,gBAAgBF,EAAkB,CAGxC,GAFAA,EAAI,gBAAgB,EAEhB,CAAC,KAAK,iBAAiB,EACzB,OAGF,IAAMG,EAAW,KAAK,WAAa,EACnB,KAAK,iBAAiBL,EAAoB,QAAQ,cAAe,CAAE,UAAWK,CAAS,CAAC,GAEtG,KAAK,gBAAgBA,CAAQ,CAEjC,CAEQ,YAAYH,EAAkB,CAGpC,GAFAA,EAAI,gBAAgB,EAEhB,CAAC,KAAK,aAAa,EACrB,OAGF,IAAMI,EAAW,KAAK,WAAa,EACnB,KAAK,iBAAiBN,EAAoB,QAAQ,UAAW,CAAE,UAAWM,CAAS,CAAC,GAElG,KAAK,gBAAgBA,CAAQ,CAEjC,CAEQ,YAAYJ,EAAkB,CAGpC,GAFAA,EAAI,gBAAgB,EAEhB,CAAC,KAAK,aAAa,EACrB,OAGF,IAAMK,EAAW,KAAK,aAAa,EACnB,KAAK,iBAAiBP,EAAoB,QAAQ,UAAW,CAAE,UAAWO,CAAS,CAAC,GAElG,KAAK,gBAAgBA,CAAQ,CAEjC,CAEQ,mBAAmBL,EAAwB,CACjDA,EAAI,gBAAgB,EAEpB,IAAMM,EAAW,OAAON,EAAI,MAAM,EAClB,KAAK,iBAAiBF,EAAoB,QAAQ,UAAW,CAAE,UAAW,EAAG,SAAAQ,CAAS,CAAC,GAErG,KAAK,gBAAgB,CAAC,EACtB,KAAK,eAAeA,CAAQ,GAE5BN,EAAI,eAAe,CAEvB,CAEQ,iBAAiBO,EAAc,CAAE,SAAAD,EAAW,KAAK,UAAW,UAAAE,EAAY,KAAK,UAAW,EAAI,CAAC,EAAY,CAC/G,IAAMC,EAASD,EAAYF,EACrBI,EAAgC,CAAE,KAAAH,EAAM,SAAAD,EAAU,UAAAE,EAAW,OAAAC,CAAO,EAC1E,OAAO,KAAK,SAAS,cAAcX,EAAoB,OAAO,OAAQY,EAAQ,GAAM,EAAI,CAC1F,CAEQ,cAAuB,CAC7B,OAAO,KAAK,KAAK,KAAK,OAAS,KAAK,SAAS,EAAI,CACnD,CAEQ,mBAA0B,CAChC,IAAIC,EAEJ,GAAI,OAAO,KAAK,qBAAwB,WAAY,CAClD,IAAMC,EAA8B,CAClC,SAAU,KAAK,UACf,UAAW,KAAK,WAChB,OAAQ,KAAK,QACb,UAAY,KAAK,WAAa,KAAK,UAAa,EAChD,QAAS,KAAK,KAAK,KAAK,WAAa,GAAK,KAAK,UAAW,KAAK,MAAM,EACrE,MAAO,KAAK,MACd,EACAD,EAAa,KAAK,oBAAoB,KAAK,KAAMC,CAAK,UAElD,KAAK,SAAW,EAAG,CACrB,IAAMC,EAAa,KAAK,WAAa,KAAK,UAEpCC,GADa,KAAK,MAAMD,EAAa,KAAK,SAAS,GAAK,GAC9B,KAAK,UAAa,EAC5CE,EAAUF,EAAa,KAAK,OAAS,KAAK,IAAIA,EAAa,KAAK,UAAW,KAAK,MAAM,EAAIA,EAAa,KAAK,UAClHF,EAAa,GAAGG,KAAaC,KAAWjB,EAAoB,QAAQ,yBAAyB,KAAK,cAElGa,EAAa,GAAG,KAAK,WAAa,KAAKb,EAAoB,QAAQ,yBAAyB,KAAK,SAIrG,KAAK,SAAS,cAAca,CAAU,CACxC,CAEQ,uBAA8B,CACpC,KAAK,SAAS,sBAAsB,EACpC,KAAK,SAAS,yBAAyB,EACvC,KAAK,SAAS,qBAAqB,EACnC,KAAK,SAAS,qBAAqB,EAEnC,IAAMK,EAA8C,CAAC,EAEhD,KAAK,cAAc,GACtBA,EAAgB,KAAK,OAAO,EAEzB,KAAK,iBAAiB,GACzBA,EAAgB,KAAK,UAAU,EAE5B,KAAK,aAAa,GACrBA,EAAgB,KAAK,MAAM,EAExB,KAAK,aAAa,GACrBA,EAAgB,KAAK,MAAM,EAG7B,KAAK,SAAS,iBAAiBA,CAAe,CAChD,CAEQ,yBAAgC,CACtC,KAAK,mBAAmB,EACpB,KAAK,WACF,KAAK,SAAS,kBAAkB,GACnC,KAAK,SAAS,mBAAmB,EAG/B,KAAK,SAAS,kBAAkB,GAClC,KAAK,SAAS,mBAAmB,CAGvC,CAEQ,oBAA2B,CAC7B,KAAK,QAAU,KAAK,WACjB,KAAK,SAAS,mBAAmB,GACpC,KAAK,SAAS,oBAAoB,EAGhC,KAAK,SAAS,mBAAmB,GACnC,KAAK,SAAS,oBAAoB,CAGxC,CAEQ,eAAyB,CAC/B,OAAO,KAAK,iBAAiB,CAC/B,CAEQ,kBAA4B,CAClC,OAAO,KAAK,WAAa,GAAK,KAAK,UAAY,CACjD,CAEQ,cAAwB,CAC9B,IAAMC,EAAW,KAAK,aAAa,EACnC,OAAO,KAAK,WAAaA,GAAY,KAAK,UAAY,CACxD,CAEQ,cAAwB,CAC9B,OAAO,KAAK,aAAa,CAC3B,CAEQ,4BAA4BC,EAAqB,CACnDA,GAAS,KAAK,SACZ,KAAK,QAAU,KAAK,UACtBA,EAAQ,KAAK,OAAS,KAAK,UAE3BA,EAAQ,GAGZ,IAAMC,EAAe,KAAK,IAAI,KAAK,IAAID,EAAO,CAAC,EAAG,KAAK,MAAM,EACvDV,EAAY,KAAK,MAAMW,EAAe,KAAK,SAAS,EAC1D,KAAK,gBAAgBX,CAAS,CAChC,CAEQ,gBAAuB,CACzB,KAAK,OAAS,IAChB,KAAK,QAAU,KAAK,WAAa,KAAK,UAE1C,CAEQ,gBAAgBU,EAAqB,CAC3C,KAAK,WAAaA,EAClB,KAAK,eAAe,EACpB,KAAK,kBAAkB,EACvB,KAAK,sBAAsB,EAC3B,KAAK,SAAS,oBAAoBpB,EAAoB,WAAW,WAAY,KAAK,YAAc,KAAM,KAAK,WAAW,SAAS,CAAC,CAClI,CAEQ,eAAeoB,EAAqB,CAC1C,KAAK,UAAYA,EACjB,KAAK,SAAS,YAAY,KAAK,SAAS,EACxC,KAAK,eAAe,EACpB,KAAK,kBAAkB,EACvB,KAAK,sBAAsB,CAC7B,CAEQ,YAAYA,EAAqB,CACvC,KAAK,OAASA,EACd,KAAK,kBAAkB,EAEnB,KAAK,QAAU,GAAK,KAAK,OAAS,GACpC,KAAK,4BAA4B,KAAK,OAAO,EAG/C,KAAK,sBAAsB,CAC7B,CAEQ,4BAAmC,CACzC,KAAK,SAAS,iBAAiBpB,EAAoB,WAAW,UAAW,KAAK,UAAU,EACxF,KAAK,SAAS,aAAa,KAAK,UAAU,CAC5C,CAEQ,eAAesB,EAAyB,CAC9C,KAAK,UAAYA,EACbA,GACF,KAAK,SAAS,sBAAsB,EACpC,KAAK,SAAS,uBAAuB,EACrC,KAAK,SAAS,0BAA0B,EACxC,KAAK,SAAS,sBAAsB,EACpC,KAAK,SAAS,sBAAsB,IAEpC,KAAK,SAAS,qBAAqB,EACnC,KAAK,sBAAsB,EAE/B,CAEA,IAAW,WAAoB,CAC7B,OAAO,KAAK,UACd,CACA,IAAW,UAAUF,EAAe,CAC9B,KAAK,aAAeA,IAClBG,EAAUH,CAAK,EACjB,KAAK,gBAAgBA,CAAK,EAE1B,KAAK,SAAS,oBAAoBpB,EAAoB,WAAW,UAAU,EAGjF,CAEA,IAAW,UAAmB,CAC5B,OAAO,KAAK,SACd,CACA,IAAW,SAASoB,EAAe,CAC7B,KAAK,YAAcA,IACrB,KAAK,eAAeA,CAAK,EACzB,KAAK,SAAS,iBAAiBpB,EAAoB,WAAW,UAAW,GAAG,KAAK,WAAW,EAEhG,CAEA,IAAW,QAAiB,CAC1B,OAAO,KAAK,OACd,CACA,IAAW,OAAOoB,EAAe,CAC3B,KAAK,UAAYA,IACnB,KAAK,QAAUA,EACf,KAAK,4BAA4BA,CAAK,EAE1C,CAEA,IAAW,OAAgB,CACzB,OAAO,KAAK,MACd,CACA,IAAW,MAAMA,EAAe,CAC1B,KAAK,SAAWA,IAClB,KAAK,YAAYA,CAAK,EACtB,KAAK,SAAS,iBAAiBpB,EAAoB,WAAW,MAAO,GAAG,KAAK,QAAQ,EAEzF,CAEA,IAAW,iBAAsC,CAC/C,OAAO,KAAK,iBAAiB,IAAIC,GAAK,OAAOA,EAAE,KAAK,CAAC,CACvD,CACA,IAAW,gBAAgBE,EAA6B,CACtD,GAAIqB,EAAQrB,CAAO,GAOjB,GANA,KAAK,iBAAoBA,EACtB,IAAIF,IAAM,CAAE,MAAOA,EAAE,SAAS,EAAG,MAAOA,EAAE,SAAS,CAAE,EAAE,EACvD,KAAK,CAACwB,EAAGC,IAAMC,EAAaF,EAAE,KAAK,EAAIE,EAAaD,EAAE,KAAK,CAAC,EAC/D,KAAK,SAAS,mBAAmB,KAAK,gBAAgB,EACtD,KAAK,SAAS,6BAA6B,KAAK,iBAAiB,EACjE,KAAK,SAAS,sBAAsB,EAAI,EACpCH,EAAU,KAAK,SAAS,GAAK,KAAK,iBAAiB,QAAU,CAAC,KAAK,iBAAiB,KAAKtB,GAAK0B,EAAa1B,EAAE,KAAK,IAAM,KAAK,SAAS,EAAG,CAC3I,IAAMO,EAAWmB,EAAa,KAAK,iBAAiB,CAAC,EAAE,KAAK,EAC5D,KAAK,eAAenB,CAAQ,QAErBL,EAAQ,SAAS,EAAE,YAAY,IAAM,UAC9C,KAAK,SAAS,6BAA6B,KAAK,iBAAiB,EACjE,KAAK,SAAS,sBAAsB,EAAK,EAE7C,CAEA,IAAW,OAAgB,CACzB,OAAO,KAAK,MACd,CACA,IAAW,MAAMiB,EAAe,CAC1B,KAAK,SAAWA,IAClB,KAAK,OAASA,EACd,KAAK,SAAS,SAAS,KAAK,MAAM,EAClC,KAAK,SAAS,iBAAiBpB,EAAoB,WAAW,MAAOuB,EAAU,KAAK,MAAM,EAAI,KAAK,OAAO,SAAS,EAAI,EAAE,EAE7H,CAEA,IAAW,WAAqB,CAC9B,OAAO,KAAK,UACd,CACA,IAAW,UAAUH,EAAgB,CACnCA,EAAQ,EAAQA,EACZ,KAAK,aAAeA,IACtB,KAAK,WAAaA,EAClB,KAAK,wBAAwB,EAC7B,KAAK,SAAS,oBAAoBpB,EAAoB,WAAW,WAAY,KAAK,UAAU,EAEhG,CAEA,IAAW,OAAiB,CAC1B,OAAO,KAAK,MACd,CACA,IAAW,MAAMoB,EAAgB,CAC/BA,EAAQ,EAAQA,EACZ,KAAK,SAAWA,IAClB,KAAK,OAASA,EACd,KAAK,mBAAmB,EACxB,KAAK,SAAS,oBAAoBpB,EAAoB,WAAW,MAAO,KAAK,MAAM,EAEvF,CAEA,IAAW,UAAoB,CAC7B,OAAO,KAAK,SACd,CACA,IAAW,SAASoB,EAAgB,CAClCA,EAAQ,EAAQA,EACZ,KAAK,YAAcA,IACrB,KAAK,eAAeA,CAAK,EACzB,KAAK,SAAS,oBAAoBpB,EAAoB,WAAW,SAAU,KAAK,SAAS,EAE7F,CAEA,IAAW,aAAuB,CAChC,OAAO,KAAK,YACd,CACA,IAAW,YAAYoB,EAAgB,CACjCA,IAAU,KAAK,eACjB,KAAK,aAAeA,EACpB,KAAK,SAAS,eAAe,KAAK,YAAY,EAC9C,KAAK,2BAA2B,EAChC,KAAK,SAAS,oBAAoBpB,EAAoB,WAAW,YAAa,KAAK,YAAY,EAEnG,CAEA,IAAW,WAA2C,CACpD,OAAO,KAAK,UACd,CACA,IAAW,UAAUoB,EAAsC,CACrDA,IAAU,KAAK,aACjB,KAAK,WAAaA,EAClB,KAAK,2BAA2B,EAEpC,CAEA,IAAW,oBAAiD,CAC1D,OAAO,KAAK,mBACd,CACA,IAAW,mBAAmBA,EAAmC,CAC/D,KAAK,oBAAsBA,EAC3B,KAAK,kBAAkB,CACzB,CACF,ECnZO,IAAMQ,EAAN,cAA+BC,CAA8D,CAelG,YAAYC,EAAgC,CAC1C,MAAMA,CAAS,EACf,KAAK,cAAgBC,EAAiBD,EAAWE,EAAoB,UAAU,KAAK,EACpF,KAAK,MAAQD,EAAiBD,EAAWE,EAAoB,UAAU,IAAI,EAC3E,KAAK,gBAAkBD,EAAiBD,EAAWE,EAAoB,UAAU,gBAAgB,EACjG,KAAK,YAAcD,EAAiBD,EAAWE,EAAoB,UAAU,WAAW,EACxF,KAAK,uBAAyBD,EAAiBD,EAAWE,EAAoB,UAAU,uBAAuB,EAC/G,KAAK,iBAAmBD,EAAiBD,EAAWE,EAAoB,UAAU,iBAAiB,EACnG,KAAK,qBAAuBD,EAAiBD,EAAWE,EAAoB,UAAU,sBAAsB,EAC5G,KAAK,oBAAsBD,EAAiBD,EAAWE,EAAoB,UAAU,oBAAoB,EACzG,KAAK,gBAAkBD,EAAiBD,EAAWE,EAAoB,UAAU,gBAAgB,EACjG,KAAK,gBAAkBD,EAAiBD,EAAWE,EAAoB,UAAU,gBAAgB,EACjG,KAAK,oBAAsBD,EAAiBD,EAAWE,EAAoB,UAAU,qBAAqB,CAC5G,CAEO,SAASC,EAAqB,CACnC,KAAK,cAAc,YAAcA,CACnC,CAEO,mBAAmBC,EAAgC,CACxDC,EAAkB,KAAK,eAAe,EACtC,KAAK,gBAAgB,QAAUD,CACjC,CAEO,YAAYD,EAAqB,CACtC,KAAK,gBAAgB,MAAQA,EAAM,SAAS,CAC9C,CAEO,cAAcA,EAAqB,CACxC,KAAK,YAAY,UAAYA,EAC7B,KAAK,uBAAuB,UAAYA,CAC1C,CAEO,oBAA8B,CACnC,MAAO,CAAC,CAACF,EAAiB,KAAK,WAAYC,EAAoB,UAAU,sBAAsB,CACjG,CAEO,qBAA4B,CACjC,KAAK,sBAAwBI,EAC3B,KAAK,WACL,GACAJ,EAAoB,YACpBA,EAAoB,UAAU,uBAC9B,KAAK,qBACL,KAAK,qBACP,CACF,CAEO,qBAA4B,CACjC,KAAK,sBAAwBI,EAC3B,KAAK,WACL,GACAJ,EAAoB,YACpBA,EAAoB,UAAU,uBAC9B,KAAK,qBACL,KAAK,qBACP,CACF,CAEO,mBAA6B,CAClC,MAAO,CAAC,CAACD,EAAiB,KAAK,WAAYC,EAAoB,UAAU,qBAAqB,CAChG,CAEO,oBAA2B,CAChC,KAAK,qBAAuBI,EAC1B,KAAK,WACL,GACAJ,EAAoB,YACpBA,EAAoB,UAAU,sBAC9B,KAAK,oBACL,KAAK,oBACP,CACF,CAEO,oBAA2B,CAChC,KAAK,qBAAuBI,EAC1B,KAAK,WACL,GACAJ,EAAoB,YACpBA,EAAoB,UAAU,sBAC9B,KAAK,oBACL,KAAK,oBACP,CACF,CAEO,6BAA6BK,EAA4C,CAC9E,KAAK,gBAAgB,iBAAiB,SAAUA,CAAQ,CAC1D,CAEO,wBAAwBA,EAAsC,CACnE,KAAK,iBAAiB,iBAAiB,QAASA,CAAQ,CAC1D,CAEO,2BAA2BA,EAAsC,CACtE,KAAK,oBAAoB,iBAAiB,QAASA,CAAQ,CAC7D,CAEO,uBAAuBA,EAAsC,CAClE,KAAK,gBAAgB,iBAAiB,QAASA,CAAQ,CACzD,CAEO,uBAAuBA,EAAsC,CAClE,KAAK,gBAAgB,iBAAiB,QAASA,CAAQ,CACzD,CAEO,6BAA6BA,EAA4C,CAC9E,KAAK,gBAAgB,oBAAoB,SAAUA,CAAQ,CAC7D,CAEO,wBAAwBA,EAAsC,CACnE,KAAK,iBAAiB,oBAAoB,QAASA,CAAQ,CAC7D,CAEO,2BAA2BA,EAAsC,CACtE,KAAK,oBAAoB,oBAAoB,QAASA,CAAQ,CAChE,CAEO,uBAAuBA,EAAsC,CAClE,KAAK,gBAAgB,oBAAoB,QAASA,CAAQ,CAC5D,CAEO,uBAAuBA,EAAsC,CAClE,KAAK,gBAAgB,oBAAoB,QAASA,CAAQ,CAC5D,CAEO,wBAA+B,CACpC,KAAK,iBAAiB,aAAa,WAAY,UAAU,CAC3D,CAEO,uBAA8B,CACnC,KAAK,iBAAiB,gBAAgB,UAAU,CAClD,CAEO,2BAAkC,CACvC,KAAK,oBAAoB,aAAa,WAAY,UAAU,CAC9D,CAEO,0BAAiC,CACtC,KAAK,oBAAoB,gBAAgB,UAAU,CACrD,CAEO,uBAA8B,CACnC,KAAK,gBAAgB,aAAa,WAAY,UAAU,CAC1D,CAEO,sBAA6B,CAClC,KAAK,gBAAgB,gBAAgB,UAAU,CACjD,CAEO,uBAA8B,CACnC,KAAK,gBAAgB,aAAa,WAAY,UAAU,CAC1D,CAEO,sBAA6B,CAClC,KAAK,gBAAgB,gBAAgB,UAAU,CACjD,CAEO,sBAAsBC,EAAwB,CAC/CA,EACF,KAAK,gBAAgB,MAAM,eAAe,SAAS,EAEnD,KAAK,gBAAgB,MAAM,QAAU,MAEzC,CAEO,uBAA8B,CACnC,KAAK,gBAAgB,aAAa,WAAY,UAAU,CAC1D,CAEO,sBAA6B,CAClC,KAAK,gBAAgB,gBAAgB,UAAU,CACjD,CAEO,eAAeC,EAA4B,CAChDC,EAAY,KAAK,MAAOD,EAAaP,EAAoB,QAAQ,WAAW,CAC9E,CAEO,aAAaS,EAAgD,CAOlE,OANAC,EAAY,CACVV,EAAoB,QAAQ,wBAC5BA,EAAoB,QAAQ,gBAC5BA,EAAoB,QAAQ,aAC9B,EAAG,KAAK,KAAK,EAELS,EAAW,CACjB,IAAK,QACHE,EAASX,EAAoB,QAAQ,gBAAiB,KAAK,KAAK,EAChE,MACF,IAAK,MACHW,EAASX,EAAoB,QAAQ,cAAe,KAAK,KAAK,EAC9D,MACF,IAAK,gBACL,QACEW,EAASX,EAAoB,QAAQ,wBAAyB,KAAK,KAAK,EACxE,KACJ,CACF,CAEO,UAAoB,CACzB,OAAO,KAAK,WAAW,QAAQ,QAAQ,CACzC,CAEO,SAASE,EAA8B,CAC5C,KAAK,UAAU,CACb,KAAK,gBACL,KAAK,iBACL,KAAK,oBACL,KAAK,gBACL,KAAK,eACP,EAAGA,CAAO,CACZ,CAEO,iBAAmD,CACxD,OAAI,KAAK,gBAAgB,QAAQ,eAAe,EACvC,YACE,KAAK,iBAAiB,QAAQ,eAAe,EAC/C,QACE,KAAK,oBAAoB,QAAQ,eAAe,EAClD,WACE,KAAK,gBAAgB,QAAQ,eAAe,EAC9C,OACE,KAAK,gBAAgB,QAAQ,eAAe,EAC9C,OAEF,IACT,CAEO,iBAAiBU,EAAmD,CACzE,IAAMC,EAAiB,CACrB,MAAS,IAAM,KAAK,uBAAuB,EAC3C,KAAQ,IAAM,KAAK,sBAAsB,EACzC,SAAY,IAAM,KAAK,0BAA0B,EACjD,KAAQ,IAAM,KAAK,sBAAsB,CAC3C,EACAD,EAAgB,QAAQE,GAAM,CA7SlC,IAAAC,EA6SqC,OAAAA,EAAAF,EAAeC,KAAf,YAAAC,EAAA,KAAAF,GAAyB,CAC5D,CAEQ,UAAUG,EAAuDd,EAA8B,CACrG,IAAMe,EAAgB,OAAOf,GAAA,YAAAA,EAAS,gBAAkB,UAAYA,EAAQ,cAAgB,GAC5F,QAAWgB,KAAMF,EACf,GAAIE,GAAMA,EAAG,aAAe,CAACA,EAAG,UAAYA,EAAG,MAAM,UAAY,OAAQ,CACvEA,EAAG,MAAMC,EAAAC,EAAA,GAAKlB,GAAL,CAAc,cAAAe,CAAc,EAAC,EACtC,OAGN,CACF,EC9SA,IAAMI,EAAW,qmDACXC,EAAS,q4HAuCFC,EAAN,cAAiCC,CAA6C,CAmBnF,aAAc,CACZ,MAAM,EACNC,EAAa,OAAO,CAClBC,EACAC,EACAC,EACAC,CACF,CAAC,EACDC,EAAqB,KAAMT,EAAUC,CAAM,EAC3C,KAAK,YAAc,IAAIS,EAAoB,IAAIC,EAAiB,IAAI,CAAC,CACvE,CA5BA,WAAkB,oBAA+B,CAC/C,MAAO,CACLC,EAAoB,WAAW,WAC/BA,EAAoB,WAAW,UAC/BA,EAAoB,WAAW,OAC/BA,EAAoB,WAAW,MAC/BA,EAAoB,WAAW,kBAC/BA,EAAoB,WAAW,MAC/BA,EAAoB,WAAW,WAC/BA,EAAoB,WAAW,MAC/BA,EAAoB,WAAW,SAC/BA,EAAoB,WAAW,YAC/BA,EAAoB,WAAW,SACjC,CACF,CAgBO,mBAA0B,CAC/B,KAAK,YAAY,WAAW,CAC9B,CAEO,sBAA6B,CAClC,KAAK,YAAY,WAAW,CAC9B,CAEO,yBAAyBC,EAAcC,EAAkBC,EAAwB,CACtF,OAAQF,EAAM,CACZ,KAAKD,EAAoB,WAAW,WAClC,KAAK,UAAY,OAAOG,CAAQ,GAAKH,EAAoB,QAAQ,mBACjE,MACF,KAAKA,EAAoB,WAAW,UAClC,KAAK,SAAW,OAAOG,CAAQ,GAAKH,EAAoB,QAAQ,kBAChE,MACF,KAAKA,EAAoB,WAAW,OAClC,KAAK,OAAS,OAAOG,CAAQ,EAC7B,MACF,KAAKH,EAAoB,WAAW,MAClC,KAAK,MAAQ,OAAOG,CAAQ,GAAKH,EAAoB,QAAQ,cAC7D,MACF,KAAKA,EAAoB,WAAW,kBAClC,KAAK,gBAAkBG,EACvB,MACF,KAAKH,EAAoB,WAAW,MAClC,KAAK,MAAQG,EACb,MACF,KAAKH,EAAoB,WAAW,WAClC,KAAK,UAAYI,EAAcD,CAAQ,EACvC,MACF,KAAKH,EAAoB,WAAW,MAClC,KAAK,MAAQI,EAAcD,CAAQ,EACnC,MACF,KAAKH,EAAoB,WAAW,SAClC,KAAK,SAAWI,EAAcD,CAAQ,EACtC,MACF,KAAKH,EAAoB,WAAW,YAClC,KAAK,YAAcI,EAAcD,CAAQ,EACzC,MACF,KAAKH,EAAoB,WAAW,UAClC,KAAK,UAAYG,EACjB,KACJ,CACF,CA+CgB,MAAME,EAA8B,CAClD,KAAK,YAAY,MAAMA,CAAO,CAChC,CACF,EA9CiBC,EAAA,CADdC,EAAmB,GA9ETjB,EA+EI,yBAIAgB,EAAA,CADdC,EAAmB,GAlFTjB,EAmFI,wBAIAgB,EAAA,CADdC,EAAmB,GAtFTjB,EAuFI,sBAIAgB,EAAA,CADdC,EAAmB,GA1FTjB,EA2FI,qBAIAgB,EAAA,CADdC,EAAmB,GA9FTjB,EA+FI,+BAIAgB,EAAA,CADdC,EAAmB,GAlGTjB,EAmGI,qBAIAgB,EAAA,CADdC,EAAmB,GAtGTjB,EAuGI,yBAIAgB,EAAA,CADdC,EAAmB,GA1GTjB,EA2GI,qBAIAgB,EAAA,CADdC,EAAmB,GA9GTjB,EA+GI,wBAGAgB,EAAA,CADdC,EAAmB,GAjHTjB,EAkHI,2BAGAgB,EAAA,CADdC,EAAmB,GApHTjB,EAqHI,yBAGAgB,EAAA,CADdC,EAAmB,GAvHTjB,EAwHI,kCAxHJA,EAANgB,EAAA,CATNE,EAAc,CACb,KAAMR,EAAoB,YAC1B,aAAc,CACZS,EACAC,EACAC,EACAC,CACF,CACF,CAAC,GACYtB,GC1CN,SAASuB,IAAiC,CAC/CC,EAAoBC,CAAkB,CACxC",
4
+ "sourcesContent": ["import { COMPONENT_NAME_PREFIX } from '../constants';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}paginator`;\n\nconst classes = {\n LABEL: 'forge-paginator__label',\n PAGE_SIZE_OPTIONS: 'forge-paginator__page-size-options',\n RANGE_LABEL: 'forge-paginator__range-label',\n RANGE_LABEL_ALTERNATIVE: 'forge-paginator__range-label--alternative',\n FIRST_PAGE_BUTTON: 'forge-paginator__first-page',\n PREVIOUS_PAGE_BUTTON: 'forge-paginator__previous-page',\n NEXT_PAGE_BUTTON: 'forge-paginator__next-page',\n LAST_PAGE_BUTTON: 'forge-paginator__last-page',\n ROOT: 'forge-paginator',\n ALTERNATIVE: 'forge-paginator--alternative',\n ALIGNMENT_START: 'forge-paginator--alignment-start',\n ALIGNMENT_SPACE_BETWEEN: 'forge-paginator--alignment-center',\n ALIGNMENT_END: 'forge-paginator--alignment-end'\n};\n\nconst selectors = {\n LABEL: `.${classes.LABEL}`,\n PAGE_SIZE_SELECT: `.${classes.PAGE_SIZE_OPTIONS}`,\n RANGE_LABEL: `.${classes.RANGE_LABEL}`,\n FIRST_PAGE_BUTTON: `.${classes.FIRST_PAGE_BUTTON}`,\n FIRST_PAGE_ICON_BUTTON: `.${classes.FIRST_PAGE_BUTTON}`,\n PREVIOUS_PAGE_BUTTON: `.${classes.PREVIOUS_PAGE_BUTTON}`,\n NEXT_PAGE_BUTTON: `.${classes.NEXT_PAGE_BUTTON}`,\n LAST_PAGE_BUTTON: `.${classes.LAST_PAGE_BUTTON}`,\n LAST_PAGE_ICON_BUTTON: `.${classes.LAST_PAGE_BUTTON}`,\n ROOT: `.${classes.ROOT}`,\n RANGE_LABEL_ALTERNATIVE: `.${classes.RANGE_LABEL_ALTERNATIVE}`\n};\n\nconst attributes = {\n PAGE_INDEX: 'page-index',\n PAGE_SIZE: 'page-size',\n OFFSET: 'offset',\n PAGE_SIZE_OPTIONS: 'page-size-options',\n TOTAL: 'total',\n LABEL: 'label',\n FIRST_LAST: 'first-last',\n FIRST: 'first',\n DISABLED: 'disabled',\n ALTERNATIVE: 'alternative',\n ALIGNMENT: 'alignment'\n};\n\nconst events = {\n CHANGE: `${elementName}-change`\n} as const;\n\nconst numbers = {\n DEFAULT_PAGE_INDEX: 0,\n DEFAULT_TOTAL: 0,\n DEFAULT_PAGE_SIZE: 25,\n DEFAULT_PAGE_SIZE_OPTIONS: [5, 15, 25, 50, 100]\n};\n\nconst strings = {\n DEFAULT_LABEL: 'Rows per page:',\n RANGE_SEPARATOR_LABEL: 'of',\n FIRST_PAGE: 'first-page',\n PREVIOUS_PAGE: 'previous-page',\n NEXT_PAGE: 'next-page',\n LAST_PAGE: 'last-page',\n PAGE_SIZE: 'page-size'\n};\n\nexport const PAGINATOR_CONSTANTS = {\n elementName,\n classes,\n selectors,\n attributes,\n events,\n numbers,\n strings\n};\n\nexport type PaginatorAlternativeAlignment = 'start' | 'space-between' | 'end';\nexport interface IPaginatorChangeEvent {\n type: string;\n pageSize: number;\n pageIndex: number;\n offset: number;\n}\n\nexport interface IPaginatorRangeState {\n pageSize: number;\n pageIndex: number;\n offset: number;\n pageStart: number;\n pageEnd: number;\n total: number;\n}\n\nexport type PaginatorRangeLabelBuilder = ((state: IPaginatorRangeState) => string) | undefined | null;\n", "import { coerceNumber, ICustomElementFoundation, isArray, isDefined } from '@tylertech/forge-core';\nimport { IPaginatorAdapter, PaginatorFieldIdentifier } from './paginator-adapter';\nimport { PaginatorAlternativeAlignment, PAGINATOR_CONSTANTS, IPaginatorChangeEvent, PaginatorRangeLabelBuilder, IPaginatorRangeState } from './paginator-constants';\nimport { ISelectOption } from '../select';\n\nexport interface IPaginatorFoundation extends ICustomElementFoundation {\n pageIndex: number;\n pageSize: number;\n offset: number;\n total: number;\n pageSizeOptions: number[] | boolean;\n pageSizeLabel: string;\n rangeLabelCallback: PaginatorRangeLabelBuilder;\n focus(options?: FocusOptions): void;\n}\n\nexport class PaginatorFoundation {\n private _pageIndex = PAGINATOR_CONSTANTS.numbers.DEFAULT_PAGE_INDEX;\n private _pageSize = PAGINATOR_CONSTANTS.numbers.DEFAULT_PAGE_SIZE;\n private _offset = 0;\n private _total = PAGINATOR_CONSTANTS.numbers.DEFAULT_TOTAL;\n private _pageSizeOptions: ISelectOption[] = PAGINATOR_CONSTANTS.numbers.DEFAULT_PAGE_SIZE_OPTIONS.map(o => ({ label: `${o}`, value: `${o}` }));\n private _label = PAGINATOR_CONSTANTS.strings.DEFAULT_LABEL;\n private _firstLast = false;\n private _first = false;\n private _disabled = false;\n private _alternative: boolean;\n private _alignment: PaginatorAlternativeAlignment = 'space-between';\n private _rangeLabelCallback: PaginatorRangeLabelBuilder;\n\n private _firstPageListener: (evt: Event) => void;\n private _previousPageListener: (evt: Event) => void;\n private _nextPageListener: (evt: Event) => void;\n private _lastPageListener: (evt: Event) => void;\n private _pageSizeListener: (evt: Event) => void;\n\n constructor(private _adapter: IPaginatorAdapter) {\n this._pageSizeListener = (evt: CustomEvent<number>) => this._onPageSizeChanged(evt);\n this._firstPageListener = (evt: Event) => this._onFirstPage(evt);\n this._previousPageListener = (evt: Event) => this._onPreviousPage(evt);\n this._nextPageListener = (evt: Event) => this._onNextPage(evt);\n this._lastPageListener = (evt: Event) => this._onLastPage(evt);\n }\n\n public initialize(): void {\n this._updateRangeLabel();\n this._adapter.setLabel(this._label);\n this._adapter.setPageSizeOptions(this._pageSizeOptions);\n this._adapter.setPageSize(this._pageSize);\n this._attachListeners();\n this._toggleFirstLastButtons();\n this._syncInteractionState();\n }\n\n public disconnect(): void {\n this._detachListeners();\n }\n\n public focus(options?: FocusOptions): void {\n this._adapter.setFocus(options);\n }\n\n private _attachListeners(): void {\n this._adapter.attachPageSizeChangeListener(this._pageSizeListener);\n this._adapter.attachFirstPageListener(this._firstPageListener);\n this._adapter.attachPreviousPageListener(this._previousPageListener);\n this._adapter.attachNextPageListener(this._nextPageListener);\n this._adapter.attachLastPageListener(this._lastPageListener);\n }\n\n private _detachListeners(): void {\n this._adapter.detachPageSizeChangeListener(this._pageSizeListener);\n this._adapter.detachFirstPageListener(this._firstPageListener);\n this._adapter.detachPreviousPageListener(this._previousPageListener);\n this._adapter.detachNextPageListener(this._nextPageListener);\n this._adapter.detachLastPageListener(this._lastPageListener);\n }\n\n private _onFirstPage(evt: Event): void {\n evt.stopPropagation();\n\n if (!this._hasFirstPage()) {\n return;\n }\n\n const firstPage = 0;\n const canPage = this._emitChangeEvent(PAGINATOR_CONSTANTS.strings.FIRST_PAGE, { pageIndex: firstPage });\n if (canPage) {\n this._applyPageIndex(firstPage);\n }\n }\n\n private _onPreviousPage(evt: Event): void {\n evt.stopPropagation();\n\n if (!this._hasPreviousPage()) {\n return;\n }\n \n const prevPage = this._pageIndex - 1;\n const canPage = this._emitChangeEvent(PAGINATOR_CONSTANTS.strings.PREVIOUS_PAGE, { pageIndex: prevPage });\n if (canPage) {\n this._applyPageIndex(prevPage);\n }\n }\n\n private _onNextPage(evt: Event): void {\n evt.stopPropagation();\n\n if (!this._hasNextPage()) {\n return;\n }\n\n const nextPage = this._pageIndex + 1;\n const canPage = this._emitChangeEvent(PAGINATOR_CONSTANTS.strings.NEXT_PAGE, { pageIndex: nextPage });\n if (canPage) {\n this._applyPageIndex(nextPage);\n }\n }\n\n private _onLastPage(evt: Event): void {\n evt.stopPropagation();\n\n if (!this._hasLastPage()) {\n return;\n }\n\n const lastPage = this._getMaxPages();\n const canPage = this._emitChangeEvent(PAGINATOR_CONSTANTS.strings.LAST_PAGE, { pageIndex: lastPage });\n if (canPage) {\n this._applyPageIndex(lastPage);\n }\n }\n\n private _onPageSizeChanged(evt: CustomEvent): void {\n evt.stopPropagation();\n\n const pageSize = Number(evt.detail);\n const canPage = this._emitChangeEvent(PAGINATOR_CONSTANTS.strings.PAGE_SIZE, { pageIndex: 0, pageSize });\n if (canPage) {\n this._applyPageIndex(0);\n this._applyPageSize(pageSize);\n } else {\n evt.preventDefault();\n }\n }\n\n private _emitChangeEvent(type: string, { pageSize = this._pageSize, pageIndex = this._pageIndex } = {}): boolean {\n const offset = pageIndex * pageSize;\n const detail: IPaginatorChangeEvent = { type, pageSize, pageIndex, offset };\n return this._adapter.emitHostEvent(PAGINATOR_CONSTANTS.events.CHANGE, detail, true, true);\n }\n\n private _getMaxPages(): number {\n return Math.ceil(this._total / this._pageSize) - 1;\n }\n\n private _updateRangeLabel(): void {\n let rangeLabel: string;\n\n if (typeof this._rangeLabelCallback === 'function') {\n const state: IPaginatorRangeState = {\n pageSize: this._pageSize,\n pageIndex: this._pageIndex,\n offset: this._offset,\n pageStart: (this._pageIndex * this._pageSize) + 1,\n pageEnd: Math.min((this._pageIndex + 1) * this._pageSize, this._total),\n total: this._total\n };\n rangeLabel = this._rangeLabelCallback.call(null, state);\n } else {\n if (this.pageSize > 1) {\n const startIndex = this._pageIndex * this._pageSize;\n const indexStart = Math.floor(startIndex / this._pageSize) || 0;\n const pageStart = (indexStart * this._pageSize) + 1;\n const pageEnd = startIndex < this._total ? Math.min(startIndex + this._pageSize, this._total) : startIndex + this._pageSize;\n rangeLabel = `${pageStart}-${pageEnd} ${PAGINATOR_CONSTANTS.strings.RANGE_SEPARATOR_LABEL} ${this._total}`;\n } else {\n rangeLabel = `${this._pageIndex + 1} ${PAGINATOR_CONSTANTS.strings.RANGE_SEPARATOR_LABEL} ${this._total}`;\n }\n }\n\n this._adapter.setRangeLabel(rangeLabel);\n }\n\n private _syncInteractionState(): void {\n this._adapter.enableFirstPageButton();\n this._adapter.enablePreviousPageButton();\n this._adapter.enableNextPageButton();\n this._adapter.enableLastPageButton();\n\n const fieldsToDisable: PaginatorFieldIdentifier[] = [];\n\n if (!this._hasFirstPage()) {\n fieldsToDisable.push('first');\n }\n if (!this._hasPreviousPage()) {\n fieldsToDisable.push('previous');\n }\n if (!this._hasNextPage()) {\n fieldsToDisable.push('next');\n }\n if (!this._hasLastPage()) {\n fieldsToDisable.push('last');\n }\n\n this._adapter.tryDisableFields(fieldsToDisable);\n }\n\n private _toggleFirstLastButtons(): void {\n this._toggleFirstButton();\n if (this._firstLast) {\n if (!this._adapter.hasLastPageButton()) {\n this._adapter.showLastPageButton();\n }\n } else {\n if (this._adapter.hasLastPageButton()) {\n this._adapter.hideLastPageButton();\n }\n }\n }\n\n private _toggleFirstButton(): void {\n if (this._first || this._firstLast) {\n if (!this._adapter.hasFirstPageButton()) {\n this._adapter.showFirstPageButton();\n }\n } else {\n if (this._adapter.hasFirstPageButton()) {\n this._adapter.hideFirstPageButton();\n }\n }\n }\n\n private _hasFirstPage(): boolean {\n return this._hasPreviousPage();\n }\n\n private _hasPreviousPage(): boolean {\n return this._pageIndex > 0 && this._pageSize > 0;\n }\n\n private _hasNextPage(): boolean {\n const maxPages = this._getMaxPages();\n return this._pageIndex < maxPages && this._pageSize > 0;\n }\n\n private _hasLastPage(): boolean {\n return this._hasNextPage();\n }\n\n private _computePageIndexFromOffset(value: number): void {\n if (value >= this._total) {\n if (this._total >= this._pageSize) {\n value = this._total - this._pageSize;\n } else {\n value = 0;\n }\n }\n const clampedValue = Math.min(Math.max(value, 0), this._total);\n const pageIndex = Math.floor(clampedValue / this._pageSize);\n this._applyPageIndex(pageIndex);\n }\n\n private _computeOffset(): void {\n if (this._total > 0) {\n this._offset = this._pageIndex * this._pageSize;\n }\n }\n\n private _applyPageIndex(value: number): void {\n this._pageIndex = value;\n this._computeOffset();\n this._updateRangeLabel();\n this._syncInteractionState();\n this._adapter.toggleHostAttribute(PAGINATOR_CONSTANTS.attributes.PAGE_INDEX, this._pageIndex != null, this._pageIndex.toString());\n }\n\n private _applyPageSize(value: number): void {\n this._pageSize = value;\n this._adapter.setPageSize(this._pageSize);\n this._computeOffset();\n this._updateRangeLabel();\n this._syncInteractionState();\n }\n\n private _applyTotal(value: number): void {\n this._total = value;\n this._updateRangeLabel();\n\n if (this._offset > 0 && this._total > 0) {\n this._computePageIndexFromOffset(this._offset);\n }\n\n this._syncInteractionState();\n }\n\n private _applyAlternativeAlignment(): void {\n this._adapter.setHostAttribute(PAGINATOR_CONSTANTS.attributes.ALIGNMENT, this._alignment);\n this._adapter.setAlignment(this._alignment);\n }\n\n private _applyDisabled(disabled: boolean): void {\n this._disabled = disabled;\n if (disabled) {\n this._adapter.disablePageSizeSelect();\n this._adapter.disableFirstPageButton();\n this._adapter.disablePreviousPageButton();\n this._adapter.disableNextPageButton();\n this._adapter.disableLastPageButton();\n } else {\n this._adapter.enablePageSizeSelect();\n this._syncInteractionState();\n }\n }\n\n public get pageIndex(): number {\n return this._pageIndex;\n }\n public set pageIndex(value: number) {\n if (this._pageIndex !== value) {\n if (isDefined(value)) {\n this._applyPageIndex(value);\n } else {\n this._adapter.removeHostAttribute(PAGINATOR_CONSTANTS.attributes.PAGE_INDEX);\n }\n }\n }\n\n public get pageSize(): number {\n return this._pageSize;\n }\n public set pageSize(value: number) {\n if (this._pageSize !== value) {\n this._applyPageSize(value);\n this._adapter.setHostAttribute(PAGINATOR_CONSTANTS.attributes.PAGE_SIZE, `${this._pageSize}`);\n }\n }\n\n public get offset(): number {\n return this._offset;\n }\n public set offset(value: number) {\n if (this._offset !== value) {\n this._offset = value;\n this._computePageIndexFromOffset(value);\n }\n }\n\n public get total(): number {\n return this._total;\n }\n public set total(value: number) {\n if (this._total !== value) {\n this._applyTotal(value);\n this._adapter.setHostAttribute(PAGINATOR_CONSTANTS.attributes.TOTAL, `${this._total}`);\n }\n }\n\n public get pageSizeOptions(): number[] | boolean {\n return this._pageSizeOptions.map(o => Number(o.value));\n }\n public set pageSizeOptions(options: number[] | boolean) {\n if (isArray(options)) {\n this._pageSizeOptions = (options as number[])\n .map(o => ({ label: o.toString(), value: o.toString() }))\n .sort((a, b) => coerceNumber(a.value) - coerceNumber(b.value));\n this._adapter.setPageSizeOptions(this._pageSizeOptions);\n this._adapter.attachPageSizeChangeListener(this._pageSizeListener);\n this._adapter.setPageSizeVisibility(true);\n if (isDefined(this._pageSize) && this._pageSizeOptions.length && !this._pageSizeOptions.find(o => coerceNumber(o.value) === this._pageSize)) {\n const pageSize = coerceNumber(this._pageSizeOptions[0].value);\n this._applyPageSize(pageSize);\n }\n } else if (options.toString().toLowerCase() === 'false') {\n this._adapter.detachPageSizeChangeListener(this._pageSizeListener);\n this._adapter.setPageSizeVisibility(false);\n }\n }\n\n public get label(): string {\n return this._label;\n }\n public set label(value: string) {\n if (this._label !== value) {\n this._label = value;\n this._adapter.setLabel(this._label);\n this._adapter.setHostAttribute(PAGINATOR_CONSTANTS.attributes.LABEL, isDefined(this._label) ? this._label.toString() : '');\n }\n }\n\n public get firstLast(): boolean {\n return this._firstLast;\n }\n public set firstLast(value: boolean) {\n value = Boolean(value);\n if (this._firstLast !== value) {\n this._firstLast = value;\n this._toggleFirstLastButtons();\n this._adapter.toggleHostAttribute(PAGINATOR_CONSTANTS.attributes.FIRST_LAST, this._firstLast);\n }\n }\n\n public get first(): boolean {\n return this._first;\n }\n public set first(value: boolean) {\n value = Boolean(value);\n if (this._first !== value) {\n this._first = value;\n this._toggleFirstButton();\n this._adapter.toggleHostAttribute(PAGINATOR_CONSTANTS.attributes.FIRST, this._first);\n }\n }\n\n public get disabled(): boolean {\n return this._disabled;\n }\n public set disabled(value: boolean) {\n value = Boolean(value);\n if (this._disabled !== value) {\n this._applyDisabled(value);\n this._adapter.toggleHostAttribute(PAGINATOR_CONSTANTS.attributes.DISABLED, this._disabled);\n }\n }\n\n public get alternative(): boolean {\n return this._alternative;\n }\n public set alternative(value: boolean) {\n if (value !== this._alternative) {\n this._alternative = value;\n this._adapter.setAlternative(this._alternative);\n this._applyAlternativeAlignment();\n this._adapter.toggleHostAttribute(PAGINATOR_CONSTANTS.attributes.ALTERNATIVE, this._alternative);\n }\n }\n\n public get alignment(): PaginatorAlternativeAlignment {\n return this._alignment;\n }\n public set alignment(value: PaginatorAlternativeAlignment) {\n if (value !== this._alignment) {\n this._alignment = value;\n this._applyAlternativeAlignment();\n }\n }\n\n public get rangeLabelCallback(): PaginatorRangeLabelBuilder {\n return this._rangeLabelCallback;\n }\n public set rangeLabelCallback(value: PaginatorRangeLabelBuilder) {\n this._rangeLabelCallback = value;\n this._updateRangeLabel();\n }\n}\n", "import { addClass, getShadowElement, removeAllChildren, removeClass, toggleElementPlaceholder, toggleClass } from '@tylertech/forge-core';\nimport { BaseAdapter, IBaseAdapter } from '../core/base/base-adapter';\nimport { IIconButtonComponent } from '../icon-button';\nimport { ISelectComponent, ISelectOption } from '../select';\nimport { IPaginatorComponent } from './paginator';\nimport { PaginatorAlternativeAlignment, PAGINATOR_CONSTANTS } from './paginator-constants';\n\nexport type PaginatorFieldIdentifier = 'first' | 'last' | 'previous' | 'next' | 'page-size';\n\nexport interface IPaginatorAdapter extends IBaseAdapter {\n setLabel(value: string): void;\n setPageSizeOptions(options: ISelectOption[]): void;\n setPageSize(value: number): void;\n setRangeLabel(value: string): void;\n hasFirstPageButton(): boolean;\n showFirstPageButton(): void;\n hideFirstPageButton(): void;\n hasLastPageButton(): boolean;\n showLastPageButton(): void;\n hideLastPageButton(): void;\n attachPageSizeChangeListener(listener: (evt: CustomEvent) => void): void;\n attachFirstPageListener(listener: (evt: Event) => void): void;\n attachPreviousPageListener(listener: (evt: Event) => void): void;\n attachNextPageListener(listener: (evt: Event) => void): void;\n attachLastPageListener(listener: (evt: Event) => void): void;\n detachPageSizeChangeListener(listener: (evt: CustomEvent) => void): void;\n detachFirstPageListener(listener: (evt: Event) => void): void;\n detachPreviousPageListener(listener: (evt: Event) => void): void;\n detachNextPageListener(listener: (evt: Event) => void): void;\n detachLastPageListener(listener: (evt: Event) => void): void;\n disableFirstPageButton(): void;\n enableFirstPageButton(): void;\n disablePreviousPageButton(): void;\n enablePreviousPageButton(): void;\n disableNextPageButton(): void;\n enableNextPageButton(): void;\n disablePageSizeSelect(): void;\n enablePageSizeSelect(): void;\n setPageSizeVisibility(visible: boolean): void;\n disableLastPageButton(): void;\n enableLastPageButton(): void;\n setAlternative(alternative: boolean): void;\n setAlignment(alignment: PaginatorAlternativeAlignment): void;\n hasFocus(): boolean;\n setFocus(options?: FocusOptions): void;\n getFocusedField(): PaginatorFieldIdentifier | null;\n tryDisableFields(fieldsToDisable: PaginatorFieldIdentifier[]): void;\n}\n\n/**\n * Provides facilities for interacting with the internal DOM of `PaginatorComponent`.\n */\nexport class PaginatorAdapter extends BaseAdapter<IPaginatorComponent> implements IPaginatorAdapter {\n private _labelElement: HTMLElement;\n private _root: HTMLElement;\n private _pageSizeSelect: ISelectComponent;\n private _rangeLabel: HTMLElement;\n private _rangeLabelAlternative: HTMLElement;\n private _firstPageButton: HTMLButtonElement;\n private _firstPageIconButton: IIconButtonComponent;\n private _firstPagePlaceholder: Comment;\n private _previousPageButton: HTMLButtonElement;\n private _nextPageButton: HTMLButtonElement;\n private _lastPageButton: HTMLButtonElement;\n private _lastPageIconButton: IIconButtonComponent;\n private _lastPagePlaceholder: Comment;\n\n constructor(component: IPaginatorComponent) {\n super(component);\n this._labelElement = getShadowElement(component, PAGINATOR_CONSTANTS.selectors.LABEL);\n this._root = getShadowElement(component, PAGINATOR_CONSTANTS.selectors.ROOT);\n this._pageSizeSelect = getShadowElement(component, PAGINATOR_CONSTANTS.selectors.PAGE_SIZE_SELECT) as ISelectComponent;\n this._rangeLabel = getShadowElement(component, PAGINATOR_CONSTANTS.selectors.RANGE_LABEL);\n this._rangeLabelAlternative = getShadowElement(component, PAGINATOR_CONSTANTS.selectors.RANGE_LABEL_ALTERNATIVE);\n this._firstPageButton = getShadowElement(component, PAGINATOR_CONSTANTS.selectors.FIRST_PAGE_BUTTON) as HTMLButtonElement;\n this._firstPageIconButton = getShadowElement(component, PAGINATOR_CONSTANTS.selectors.FIRST_PAGE_ICON_BUTTON) as IIconButtonComponent;\n this._previousPageButton = getShadowElement(component, PAGINATOR_CONSTANTS.selectors.PREVIOUS_PAGE_BUTTON) as HTMLButtonElement;\n this._nextPageButton = getShadowElement(component, PAGINATOR_CONSTANTS.selectors.NEXT_PAGE_BUTTON) as HTMLButtonElement;\n this._lastPageButton = getShadowElement(component, PAGINATOR_CONSTANTS.selectors.LAST_PAGE_BUTTON) as HTMLButtonElement;\n this._lastPageIconButton = getShadowElement(component, PAGINATOR_CONSTANTS.selectors.LAST_PAGE_ICON_BUTTON) as IIconButtonComponent;\n }\n\n public setLabel(value: string): void {\n this._labelElement.textContent = value;\n }\n\n public setPageSizeOptions(options: ISelectOption[]): void {\n removeAllChildren(this._pageSizeSelect);\n this._pageSizeSelect.options = options;\n }\n\n public setPageSize(value: number): void {\n this._pageSizeSelect.value = value.toString();\n }\n\n public setRangeLabel(value: string): void {\n this._rangeLabel.innerText = value;\n this._rangeLabelAlternative.innerText = value;\n }\n\n public hasFirstPageButton(): boolean {\n return !!getShadowElement(this._component, PAGINATOR_CONSTANTS.selectors.FIRST_PAGE_ICON_BUTTON);\n }\n\n public showFirstPageButton(): void {\n this._firstPagePlaceholder = toggleElementPlaceholder(\n this._component,\n true,\n PAGINATOR_CONSTANTS.elementName,\n PAGINATOR_CONSTANTS.selectors.FIRST_PAGE_ICON_BUTTON,\n this._firstPageIconButton,\n this._firstPagePlaceholder\n );\n }\n\n public hideFirstPageButton(): void {\n this._firstPagePlaceholder = toggleElementPlaceholder(\n this._component,\n false,\n PAGINATOR_CONSTANTS.elementName,\n PAGINATOR_CONSTANTS.selectors.FIRST_PAGE_ICON_BUTTON,\n this._firstPageIconButton,\n this._firstPagePlaceholder\n );\n }\n\n public hasLastPageButton(): boolean {\n return !!getShadowElement(this._component, PAGINATOR_CONSTANTS.selectors.LAST_PAGE_ICON_BUTTON);\n }\n\n public showLastPageButton(): void {\n this._lastPagePlaceholder = toggleElementPlaceholder(\n this._component,\n true,\n PAGINATOR_CONSTANTS.elementName,\n PAGINATOR_CONSTANTS.selectors.LAST_PAGE_ICON_BUTTON,\n this._lastPageIconButton,\n this._lastPagePlaceholder\n );\n }\n\n public hideLastPageButton(): void {\n this._lastPagePlaceholder = toggleElementPlaceholder(\n this._component,\n false,\n PAGINATOR_CONSTANTS.elementName,\n PAGINATOR_CONSTANTS.selectors.LAST_PAGE_ICON_BUTTON,\n this._lastPageIconButton,\n this._lastPagePlaceholder\n );\n }\n\n public attachPageSizeChangeListener(listener: (evt: CustomEvent) => void): void {\n this._pageSizeSelect.addEventListener('change', listener);\n }\n\n public attachFirstPageListener(listener: (evt: Event) => void): void {\n this._firstPageButton.addEventListener('click', listener);\n }\n\n public attachPreviousPageListener(listener: (evt: Event) => void): void {\n this._previousPageButton.addEventListener('click', listener);\n }\n\n public attachNextPageListener(listener: (evt: Event) => void): void {\n this._nextPageButton.addEventListener('click', listener);\n }\n\n public attachLastPageListener(listener: (evt: Event) => void): void {\n this._lastPageButton.addEventListener('click', listener);\n }\n\n public detachPageSizeChangeListener(listener: (evt: CustomEvent) => void): void {\n this._pageSizeSelect.removeEventListener('change', listener);\n }\n\n public detachFirstPageListener(listener: (evt: Event) => void): void {\n this._firstPageButton.removeEventListener('click', listener);\n }\n\n public detachPreviousPageListener(listener: (evt: Event) => void): void {\n this._previousPageButton.removeEventListener('click', listener);\n }\n\n public detachNextPageListener(listener: (evt: Event) => void): void {\n this._nextPageButton.removeEventListener('click', listener);\n }\n\n public detachLastPageListener(listener: (evt: Event) => void): void {\n this._lastPageButton.removeEventListener('click', listener);\n }\n\n public disableFirstPageButton(): void {\n this._firstPageButton.setAttribute('disabled', 'disabled');\n }\n\n public enableFirstPageButton(): void {\n this._firstPageButton.removeAttribute('disabled');\n }\n\n public disablePreviousPageButton(): void {\n this._previousPageButton.setAttribute('disabled', 'disabled');\n }\n\n public enablePreviousPageButton(): void {\n this._previousPageButton.removeAttribute('disabled');\n }\n\n public disableNextPageButton(): void {\n this._nextPageButton.setAttribute('disabled', 'disabled');\n }\n\n public enableNextPageButton(): void {\n this._nextPageButton.removeAttribute('disabled');\n }\n\n public disablePageSizeSelect(): void {\n this._pageSizeSelect.setAttribute('disabled', 'disabled');\n }\n\n public enablePageSizeSelect(): void {\n this._pageSizeSelect.removeAttribute('disabled');\n }\n\n public setPageSizeVisibility(visible: boolean): void {\n if (visible) {\n this._pageSizeSelect.style.removeProperty('display');\n } else {\n this._pageSizeSelect.style.display = 'none';\n }\n }\n\n public disableLastPageButton(): void {\n this._lastPageButton.setAttribute('disabled', 'disabled');\n }\n\n public enableLastPageButton(): void {\n this._lastPageButton.removeAttribute('disabled');\n }\n\n public setAlternative(alternative: boolean): void {\n toggleClass(this._root, alternative, PAGINATOR_CONSTANTS.classes.ALTERNATIVE);\n }\n\n public setAlignment(alignment: PaginatorAlternativeAlignment): void {\n removeClass([\n PAGINATOR_CONSTANTS.classes.ALIGNMENT_SPACE_BETWEEN,\n PAGINATOR_CONSTANTS.classes.ALIGNMENT_START,\n PAGINATOR_CONSTANTS.classes.ALIGNMENT_END\n ], this._root);\n\n switch (alignment) {\n case 'start':\n addClass(PAGINATOR_CONSTANTS.classes.ALIGNMENT_START, this._root);\n break;\n case 'end':\n addClass(PAGINATOR_CONSTANTS.classes.ALIGNMENT_END, this._root);\n break;\n case 'space-between':\n default:\n addClass(PAGINATOR_CONSTANTS.classes.ALIGNMENT_SPACE_BETWEEN, this._root);\n break;\n }\n }\n\n public hasFocus(): boolean {\n return this._component.matches(':focus');\n }\n\n public setFocus(options?: FocusOptions): void {\n this._tryFocus([\n this._pageSizeSelect,\n this._firstPageButton,\n this._previousPageButton,\n this._nextPageButton,\n this._lastPageButton\n ], options);\n }\n\n public getFocusedField(): PaginatorFieldIdentifier | null {\n if (this._pageSizeSelect.matches(':focus-within')) {\n return 'page-size';\n } else if (this._firstPageButton.matches(':focus-within')) {\n return 'first';\n } else if (this._previousPageButton.matches(':focus-within')) {\n return 'previous';\n } else if (this._nextPageButton.matches(':focus-within')) {\n return 'next';\n } else if (this._lastPageButton.matches(':focus-within')) {\n return 'last';\n }\n return null;\n }\n\n public tryDisableFields(fieldsToDisable: PaginatorFieldIdentifier[]): void {\n const fieldDisablers = {\n 'first': () => this.disableFirstPageButton(),\n 'last': () => this.disableLastPageButton(),\n 'previous': () => this.disablePreviousPageButton(),\n 'next': () => this.disableNextPageButton()\n };\n fieldsToDisable.forEach(field => fieldDisablers[field]?.());\n }\n\n private _tryFocus(elements: Array<HTMLButtonElement | ISelectComponent>, options?: FocusOptions): void {\n const preventScroll = typeof options?.preventScroll === 'boolean' ? options.preventScroll : true;\n for (const el of elements) {\n if (el && el.isConnected && !el.disabled && el.style.display !== 'none') {\n el.focus({ ...options, preventScroll });\n return;\n }\n }\n }\n}\n", "import { CustomElement, attachShadowTemplate, FoundationProperty, coerceBoolean } from '@tylertech/forge-core';\nimport { tylIconFirstPage, tylIconLastPage, tylIconKeyboardArrowRight, tylIconKeyboardArrowLeft } from '@tylertech/tyler-icons/standard';\nimport { PaginatorAlternativeAlignment, PAGINATOR_CONSTANTS, IPaginatorChangeEvent, PaginatorRangeLabelBuilder } from './paginator-constants';\nimport { PaginatorFoundation } from './paginator-foundation';\nimport { PaginatorAdapter } from './paginator-adapter';\nimport { IconButtonComponent } from '../icon-button';\nimport { SelectComponent } from '../select';\nimport { IconComponent, IconRegistry } from '../icon';\nimport { BaseComponent, IBaseComponent } from '../core/base/base-component';\nimport { TooltipComponent } from '../tooltip';\n\nconst template = '<template><div class=\\\"forge-paginator\\\" part=\\\"root\\\"><div class=\\\"forge-paginator__container\\\" part=\\\"container\\\"><div class=\\\"forge-paginator__label\\\" part=\\\"label\\\"></div><forge-select class=\\\"forge-paginator__page-size-options\\\" aria-label=\\\"Choose page size\\\" label-position=\\\"none\\\" density=\\\"extra-small\\\" part=\\\"page-size-options\\\"></forge-select><div class=\\\"forge-paginator__range-label\\\" part=\\\"range-label\\\"></div><forge-icon-button class=\\\"forge-paginator__first-page\\\" part=\\\"first-page-button\\\" part=\\\"first-page-button-element\\\"><forge-icon name=\\\"first_page\\\" part=\\\"first-page-icon\\\"></forge-icon></forge-icon-button><forge-tooltip type=\\\"label\\\" placement=\\\"top\\\">Go to the first page</forge-tooltip><forge-icon-button class=\\\"forge-paginator__previous-page\\\" part=\\\"previous-page-button\\\" part=\\\"previous-page-button-element\\\"><forge-icon name=\\\"keyboard_arrow_left\\\" part=\\\"previous-page-button-icon\\\"></forge-icon></forge-icon-button><forge-tooltip type=\\\"label\\\" placement=\\\"top\\\">Go to the previous page</forge-tooltip><div class=\\\"forge-paginator__range-label--alternative\\\" part=\\\"range-label-alternative\\\"></div><forge-icon-button class=\\\"forge-paginator__next-page\\\" part=\\\"next-page-button\\\" part=\\\"next-page-button-element\\\"><forge-icon name=\\\"keyboard_arrow_right\\\" part=\\\"next-page-icon\\\"></forge-icon></forge-icon-button><forge-tooltip type=\\\"label\\\" placement=\\\"top\\\">Go to the next page</forge-tooltip><forge-icon-button class=\\\"forge-paginator__last-page\\\" part=\\\"last-page-button\\\" part=\\\"last-page-button-element\\\"><forge-icon name=\\\"last_page\\\" part=\\\"last-page-icon\\\"></forge-icon></forge-icon-button><forge-tooltip type=\\\"label\\\" placement=\\\"top\\\">Go to the last page</forge-tooltip></div></div></template>';\nconst styles = '.forge-paginator{display:inline-block}.forge-paginator--alternative{display:-webkit-box;display:flex}.forge-paginator--alternative .forge-paginator__label,.forge-paginator--alternative .forge-paginator__page-size-options,.forge-paginator--alternative .forge-paginator__range-label{display:none}.forge-paginator--alternative .forge-paginator__range-label--alternative{display:inline-block;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-body2-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:.875rem;font-size:var(--mdc-typography-body2-font-size, .875rem);line-height:1.25rem;line-height:var(--mdc-typography-body2-line-height, 1.25rem);font-weight:400;font-weight:var(--mdc-typography-body2-font-weight,400);letter-spacing:.0178571429em;letter-spacing:var(--mdc-typography-body2-letter-spacing, .0178571429em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-body2-text-decoration,inherit);text-decoration:var(--mdc-typography-body2-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-body2-text-transform,inherit);margin:0 12px}.forge-paginator__range-label--alternative{display:none}.forge-paginator__container{display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center}.forge-paginator__label{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-caption-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:.75rem;font-size:var(--mdc-typography-caption-font-size, .75rem);line-height:1.25rem;line-height:var(--mdc-typography-caption-line-height, 1.25rem);font-weight:400;font-weight:var(--mdc-typography-caption-font-weight,400);letter-spacing:.0333333333em;letter-spacing:var(--mdc-typography-caption-letter-spacing, .0333333333em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-caption-text-decoration,inherit);text-decoration:var(--mdc-typography-caption-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-caption-text-transform,inherit);margin-right:16px}.forge-paginator__page-size-options{margin-right:16px}.forge-paginator__range-label{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-caption-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:.75rem;font-size:var(--mdc-typography-caption-font-size, .75rem);line-height:1.25rem;line-height:var(--mdc-typography-caption-line-height, 1.25rem);font-weight:400;font-weight:var(--mdc-typography-caption-font-weight,400);letter-spacing:.0333333333em;letter-spacing:var(--mdc-typography-caption-letter-spacing, .0333333333em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-caption-text-decoration,inherit);text-decoration:var(--mdc-typography-caption-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-caption-text-transform,inherit);margin-right:8px}.forge-paginator__first-page,.forge-paginator__last-page,.forge-paginator__next-page,.forge-paginator__previous-page{color:rgba(0,0,0,.87);color:var(--mdc-theme-text-primary-on-background,rgba(0,0,0,.87))}:host{display:inline-block}:host([hidden]){display:none}:host([alternative]) .forge-paginator--alignment-center .forge-paginator__container{-webkit-box-pack:center;justify-content:center}:host([alternative]) .forge-paginator--alignment-center .forge-paginator__range-label--alternative{margin:0 auto}:host([alternative]) .forge-paginator--alignment-start .forge-paginator__container{-webkit-box-pack:start;justify-content:flex-start}:host([alternative]) .forge-paginator--alignment-end .forge-paginator__container{-webkit-box-pack:end;justify-content:flex-end}:host([alternative]) .forge-paginator .forge-paginator__container{-webkit-box-flex:1;flex:1}';\n\nexport interface IPaginatorComponent extends IBaseComponent {\n pageIndex: number;\n pageSize: number;\n offset: number;\n total: number;\n pageSizeOptions: number[] | boolean;\n label: string;\n firstLast: boolean;\n first: boolean;\n disabled: boolean;\n alternative: boolean;\n alignment: PaginatorAlternativeAlignment;\n rangeLabelCallback: PaginatorRangeLabelBuilder;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'forge-paginator': IPaginatorComponent;\n }\n\n interface HTMLElementEventMap {\n 'forge-paginator-change': CustomEvent<IPaginatorChangeEvent>;\n }\n}\n\n/**\n * @tag forge-paginator\n */\n@CustomElement({\n name: PAGINATOR_CONSTANTS.elementName,\n dependencies: [\n IconButtonComponent,\n SelectComponent,\n IconComponent,\n TooltipComponent\n ]\n})\nexport class PaginatorComponent extends BaseComponent implements IPaginatorComponent {\n public static get observedAttributes(): string[] {\n return [\n PAGINATOR_CONSTANTS.attributes.PAGE_INDEX,\n PAGINATOR_CONSTANTS.attributes.PAGE_SIZE,\n PAGINATOR_CONSTANTS.attributes.OFFSET,\n PAGINATOR_CONSTANTS.attributes.TOTAL,\n PAGINATOR_CONSTANTS.attributes.PAGE_SIZE_OPTIONS,\n PAGINATOR_CONSTANTS.attributes.LABEL,\n PAGINATOR_CONSTANTS.attributes.FIRST_LAST,\n PAGINATOR_CONSTANTS.attributes.FIRST,\n PAGINATOR_CONSTANTS.attributes.DISABLED,\n PAGINATOR_CONSTANTS.attributes.ALTERNATIVE,\n PAGINATOR_CONSTANTS.attributes.ALIGNMENT\n ];\n }\n\n private _foundation: PaginatorFoundation;\n\n constructor() {\n super();\n IconRegistry.define([\n tylIconFirstPage,\n tylIconKeyboardArrowLeft,\n tylIconKeyboardArrowRight,\n tylIconLastPage\n ]);\n attachShadowTemplate(this, template, styles);\n this._foundation = new PaginatorFoundation(new PaginatorAdapter(this));\n }\n\n public connectedCallback(): void {\n this._foundation.initialize();\n }\n\n public disconnectedCallback(): void {\n this._foundation.disconnect();\n }\n\n public attributeChangedCallback(name: string, oldValue: string, newValue: string): void {\n switch (name) {\n case PAGINATOR_CONSTANTS.attributes.PAGE_INDEX:\n this.pageIndex = Number(newValue) || PAGINATOR_CONSTANTS.numbers.DEFAULT_PAGE_INDEX;\n break;\n case PAGINATOR_CONSTANTS.attributes.PAGE_SIZE:\n this.pageSize = Number(newValue) || PAGINATOR_CONSTANTS.numbers.DEFAULT_PAGE_SIZE;\n break;\n case PAGINATOR_CONSTANTS.attributes.OFFSET:\n this.offset = Number(newValue);\n break;\n case PAGINATOR_CONSTANTS.attributes.TOTAL:\n this.total = Number(newValue) || PAGINATOR_CONSTANTS.numbers.DEFAULT_TOTAL;\n break;\n case PAGINATOR_CONSTANTS.attributes.PAGE_SIZE_OPTIONS:\n this.pageSizeOptions = newValue as any;\n break;\n case PAGINATOR_CONSTANTS.attributes.LABEL:\n this.label = newValue;\n break;\n case PAGINATOR_CONSTANTS.attributes.FIRST_LAST:\n this.firstLast = coerceBoolean(newValue);\n break;\n case PAGINATOR_CONSTANTS.attributes.FIRST:\n this.first = coerceBoolean(newValue);\n break;\n case PAGINATOR_CONSTANTS.attributes.DISABLED:\n this.disabled = coerceBoolean(newValue);\n break;\n case PAGINATOR_CONSTANTS.attributes.ALTERNATIVE:\n this.alternative = coerceBoolean(newValue);\n break;\n case PAGINATOR_CONSTANTS.attributes.ALIGNMENT:\n this.alignment = newValue as PaginatorAlternativeAlignment;\n break;\n }\n }\n\n /** The zero-based page index. Default is 0. */\n @FoundationProperty()\n public declare pageIndex: number;\n\n /** Number of items to display on a page. By default set to 25. */\n @FoundationProperty()\n public declare pageSize: number;\n\n /** Sets page index by providing the number of items to skip. The getter for this property returns the number of items to skip. */\n @FoundationProperty()\n public declare offset: number;\n\n /** The total number of items to be paginated. Default is 0. */\n @FoundationProperty()\n public declare total: number;\n\n /** The set of provided page size options to display to the user. */\n @FoundationProperty()\n public declare pageSizeOptions: number[] | boolean;\n\n /** A label for the paginator. Default is \"Rows per page:\". */\n @FoundationProperty()\n public declare label: string;\n\n /** Whether to show the first page and last page buttons. Default is false. */\n @FoundationProperty()\n public declare firstLast: boolean;\n\n /** Whether to show the first page button. Default is false. */\n @FoundationProperty()\n public declare first: boolean;\n\n /** Whether the paginator is disabled. Default is false. */\n @FoundationProperty()\n public declare disabled: boolean;\n\n @FoundationProperty()\n public declare alternative: boolean;\n\n @FoundationProperty()\n public declare alignment: PaginatorAlternativeAlignment;\n\n @FoundationProperty()\n public declare rangeLabelCallback: PaginatorRangeLabelBuilder;\n\n public override focus(options?: FocusOptions): void {\n this._foundation.focus(options);\n }\n}\n", "import { defineCustomElement } from '@tylertech/forge-core';\n\nimport { PaginatorComponent } from './paginator';\n\nexport * from './paginator-adapter';\nexport * from './paginator-constants';\nexport * from './paginator-foundation';\nexport * from './paginator';\n\nexport function definePaginatorComponent(): void {\n defineCustomElement(PaginatorComponent);\n}\n"],
5
+ "mappings": "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",
6
6
  "names": ["elementName", "COMPONENT_NAME_PREFIX", "classes", "selectors", "attributes", "events", "numbers", "strings", "PAGINATOR_CONSTANTS", "PaginatorFoundation", "_adapter", "PAGINATOR_CONSTANTS", "o", "evt", "options", "firstPage", "prevPage", "nextPage", "lastPage", "pageSize", "type", "pageIndex", "offset", "detail", "rangeLabel", "state", "startIndex", "pageStart", "pageEnd", "fieldsToDisable", "maxPages", "value", "clampedValue", "disabled", "isDefined", "isArray", "a", "b", "coerceNumber", "PaginatorAdapter", "BaseAdapter", "component", "getShadowElement", "PAGINATOR_CONSTANTS", "value", "options", "removeAllChildren", "toggleElementPlaceholder", "listener", "visible", "alternative", "toggleClass", "alignment", "removeClass", "addClass", "fieldsToDisable", "fieldDisablers", "field", "_a", "elements", "preventScroll", "el", "__spreadProps", "__spreadValues", "template", "styles", "PaginatorComponent", "BaseComponent", "IconRegistry", "tylIconFirstPage", "tylIconKeyboardArrowLeft", "tylIconKeyboardArrowRight", "tylIconLastPage", "attachShadowTemplate", "PaginatorFoundation", "PaginatorAdapter", "PAGINATOR_CONSTANTS", "name", "oldValue", "newValue", "coerceBoolean", "options", "__decorateClass", "FoundationProperty", "CustomElement", "IconButtonComponent", "SelectComponent", "IconComponent", "TooltipComponent", "definePaginatorComponent", "defineCustomElement", "PaginatorComponent"]
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 g,b as l}from"./chunk.UQQQSJVM.js";import{a as i,e as s,k as t}from"./chunk.BIQTNLIF.js";import{u as a}from"./chunk.DCCFF327.js";import{d as n}from"./chunk.M3QDAYD2.js";var m=`${l}inline-message`,c={THEME:"theme"},f={THEME:"info"},e={elementName:m,attributes:c,defaults:f};var d='<template><div class="forge-inline-message" part="root"><slot name="icon"></slot><div class="container" part="container"><slot name="title"></slot><slot></slot></div></div></template>',h=':host{display:-webkit-box;display:flex}:host([hidden]){display:none}.forge-inline-message{--_inline-message-background:var(--forge-inline-message-background, var(--forge-theme-info-container-low, #e3edf7));--_inline-message-color:var(--forge-inline-message-color, var(--forge-theme-text-high, rgba(0, 0, 0, 0.87)));--_inline-message-shape:var(--forge-inline-message-shape, var(--forge-shape-medium, 4px));--_inline-message-padding:var(--forge-inline-message-padding, var(--forge-spacing-small, 12px));--_inline-message-padding-inline:var(--forge-inline-message-padding-inline, var(--_inline-message-padding));--_inline-message-padding-block:var(--forge-inline-message-padding-block, var(--_inline-message-padding));--_inline-message-border-width:var(--forge-inline-message-border-width, var(--forge-border-thin, 1px));--_inline-message-border-style:var(--forge-inline-message-border-style, none);--_inline-message-border-color:var(--forge-inline-message-border-color, var(--forge-theme-info-container, #c7daf0));--_inline-message-gap:var(--forge-inline-message-gap, var(--forge-spacing-small, 12px));--_inline-message-icon-gap:var(--forge-inline-message-icon-gap, var(--_inline-message-gap));--_inline-message-content-gap:var(--forge-inline-message-content-gap, var(--_inline-message-gap));--_inline-message-icon-color:var(--forge-inline-message-icon-color, var(--forge-theme-on-info-container-low, #0b3768))}.forge-inline-message{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:var(--forge-typography-body1-font-family, var(--forge-typography-font-family, "Roboto", sans-serif));font-size:var(--forge-typography-body1-font-size, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-body-font-size-scale, .875)));font-weight:var(--forge-typography-body1-font-weight,400);line-height:var(--forge-typography-body1-line-height, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-body-line-height-scale, 1.125)));letter-spacing:var(--forge-typography-body1-letter-spacing, .0357142857em);text-transform:var(--forge-typography-body1-text-transform,inherit);-webkit-text-decoration:var(--forge-typography-body1-text-decoration,inherit);text-decoration:var(--forge-typography-body1-text-decoration,inherit);background:var(--_inline-message-background);color:var(--_inline-message-color);border-radius:var(--_inline-message-shape);border-width:var(--_inline-message-border-width);border-style:var(--_inline-message-border-style);border-color:var(--_inline-message-border-color);display:-webkit-box;display:flex;gap:var(--_inline-message-icon-gap);-webkit-box-sizing:border-box;box-sizing:border-box;padding-inline:var(--_inline-message-padding-inline);padding-block:var(--_inline-message-padding-block)}.forge-inline-message .container{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;gap:var(--_inline-message-content-gap)}::slotted([slot=title]){-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:var(--forge-typography-heading1-font-family, var(--forge-typography-font-family, "Roboto", sans-serif));font-size:var(--forge-typography-heading1-font-size, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-heading1-font-size-scale, .875)));font-weight:var(--forge-typography-heading1-font-weight,500);line-height:var(--forge-typography-heading1-line-height, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-heading1-line-height-scale, 1.125)));letter-spacing:var(--forge-typography-heading1-letter-spacing, .0178571429em);text-transform:var(--forge-typography-heading1-text-transform,inherit);-webkit-text-decoration:var(--forge-typography-heading1-text-decoration,inherit);text-decoration:var(--forge-typography-heading1-text-decoration,inherit)}::slotted([slot=icon]){color:var(--_inline-message-icon-color)}:host([theme=primary]) .forge-inline-message{--_inline-message-background:var(--forge-inline-message-background, var(--forge-theme-primary-container-low, #e8eaf6));--_inline-message-icon-color:var(--forge-inline-message-icon-color, var(--forge-theme-on-primary-container-low, #222c62));--_inline-message-border-color:var(--forge-inline-message-border-color, var(--forge-theme-primary-container, #d1d5ed))}:host([theme=secondary]) .forge-inline-message{--_inline-message-background:var(--forge-inline-message-background, var(--forge-theme-secondary-container, #fff0c3));--_inline-message-icon-color:var(--forge-inline-message-icon-color, var(--forge-theme-on-secondary-container, #8a6804));--_inline-message-border-color:var(--forge-inline-message-border-color, var(--forge-theme-secondary, #ffc107))}:host([theme=tertiary]) .forge-inline-message{--_inline-message-background:var(--forge-inline-message-background, var(--forge-theme-tertiary-container-low, #e8ebff));--_inline-message-icon-color:var(--forge-inline-message-icon-color, var(--forge-theme-on-tertiary-container-low, #213189));--_inline-message-border-color:var(--forge-inline-message-border-color, var(--forge-theme-tertiary-container, #d0d7ff))}:host([theme=success]) .forge-inline-message{--_inline-message-background:var(--forge-inline-message-background, var(--forge-theme-success-container-low, #e6efe6));--_inline-message-icon-color:var(--forge-inline-message-icon-color, var(--forge-theme-on-success-container-low, #19441b));--_inline-message-border-color:var(--forge-inline-message-border-color, var(--forge-theme-success-container, #cde0ce))}:host([theme=warning]) .forge-inline-message{--_inline-message-background:var(--forge-inline-message-background, var(--forge-theme-warning-container-low, #f9e9e0));--_inline-message-icon-color:var(--forge-inline-message-icon-color, var(--forge-theme-on-warning-container-low, #712700));--_inline-message-border-color:var(--forge-inline-message-border-color, var(--forge-theme-warning-container, #f4d3c2))}:host(:is([theme=error],[theme=danger])) .forge-inline-message{--_inline-message-background:var(--forge-inline-message-background, var(--forge-theme-error-container-low, #f6e0e4));--_inline-message-icon-color:var(--forge-inline-message-icon-color, var(--forge-theme-on-error-container-low, #5f0011));--_inline-message-border-color:var(--forge-inline-message-border-color, var(--forge-theme-error-container, #ecc2c9))}:host([theme=info-secondary]) .forge-inline-message{--_inline-message-background:var(--forge-inline-message-background, var(--forge-theme-surface-container-low, #ebebeb));--_inline-message-icon-color:var(--forge-inline-message-icon-color, var(--forge-theme-on-surface-container-low, #000000));--_inline-message-border-color:var(--forge-inline-message-border-color, var(--forge-theme-surface-container, #e0e0e0))}',o=class extends t{constructor(){super(),s(this,d,h)}get theme(){var r;return(r=this.getAttribute(e.attributes.THEME))!=null?r:e.defaults.THEME}set theme(r){a(this,r!==e.defaults.THEME,e.attributes.THEME,r)}};o=n([g({name:e.elementName})],o);function N(){i(o)}export{e as a,o as b,N as c};
7
- //# sourceMappingURL=chunk.QUWEAFGI.js.map
6
+ import{a as g,b as l}from"./chunk.VRSPT7WX.js";import{a as i,e as s,k as t}from"./chunk.LNTTU2GL.js";import{r as a}from"./chunk.L4QSPQDE.js";import{d as n}from"./chunk.M3QDAYD2.js";var m=`${l}inline-message`,c={THEME:"theme"},f={THEME:"info"},e={elementName:m,attributes:c,defaults:f};var d='<template><div class="forge-inline-message" part="root"><slot name="icon"></slot><div class="container" part="container"><slot name="title"></slot><slot></slot></div></div></template>',h=':host{display:-webkit-box;display:flex}:host([hidden]){display:none}.forge-inline-message{--_inline-message-background:var(--forge-inline-message-background, var(--forge-theme-info-container-low, #e3edf7));--_inline-message-color:var(--forge-inline-message-color, var(--forge-theme-text-high, rgba(0, 0, 0, 0.87)));--_inline-message-shape:var(--forge-inline-message-shape, var(--forge-shape-medium, 4px));--_inline-message-padding:var(--forge-inline-message-padding, var(--forge-spacing-small, 12px));--_inline-message-padding-inline:var(--forge-inline-message-padding-inline, var(--_inline-message-padding));--_inline-message-padding-block:var(--forge-inline-message-padding-block, var(--_inline-message-padding));--_inline-message-border-width:var(--forge-inline-message-border-width, var(--forge-border-thin, 1px));--_inline-message-border-style:var(--forge-inline-message-border-style, none);--_inline-message-border-color:var(--forge-inline-message-border-color, var(--forge-theme-info-container, #c7daf0));--_inline-message-gap:var(--forge-inline-message-gap, var(--forge-spacing-small, 12px));--_inline-message-icon-gap:var(--forge-inline-message-icon-gap, var(--_inline-message-gap));--_inline-message-content-gap:var(--forge-inline-message-content-gap, var(--_inline-message-gap));--_inline-message-icon-color:var(--forge-inline-message-icon-color, var(--forge-theme-on-info-container-low, #0b3768))}.forge-inline-message{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:var(--forge-typography-body1-font-family, var(--forge-typography-font-family, "Roboto", sans-serif));font-size:var(--forge-typography-body1-font-size, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-body-font-size-scale, .875)));font-weight:var(--forge-typography-body1-font-weight,400);line-height:var(--forge-typography-body1-line-height, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-body-line-height-scale, 1.125)));letter-spacing:var(--forge-typography-body1-letter-spacing, .0357142857em);text-transform:var(--forge-typography-body1-text-transform,inherit);-webkit-text-decoration:var(--forge-typography-body1-text-decoration,inherit);text-decoration:var(--forge-typography-body1-text-decoration,inherit);background:var(--_inline-message-background);color:var(--_inline-message-color);border-radius:var(--_inline-message-shape);border-width:var(--_inline-message-border-width);border-style:var(--_inline-message-border-style);border-color:var(--_inline-message-border-color);display:-webkit-box;display:flex;gap:var(--_inline-message-icon-gap);-webkit-box-sizing:border-box;box-sizing:border-box;padding-inline:var(--_inline-message-padding-inline);padding-block:var(--_inline-message-padding-block)}.forge-inline-message .container{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;gap:var(--_inline-message-content-gap)}::slotted([slot=title]){-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:var(--forge-typography-heading1-font-family, var(--forge-typography-font-family, "Roboto", sans-serif));font-size:var(--forge-typography-heading1-font-size, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-heading1-font-size-scale, .875)));font-weight:var(--forge-typography-heading1-font-weight,500);line-height:var(--forge-typography-heading1-line-height, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-heading1-line-height-scale, 1.125)));letter-spacing:var(--forge-typography-heading1-letter-spacing, .0178571429em);text-transform:var(--forge-typography-heading1-text-transform,inherit);-webkit-text-decoration:var(--forge-typography-heading1-text-decoration,inherit);text-decoration:var(--forge-typography-heading1-text-decoration,inherit)}::slotted([slot=icon]){color:var(--_inline-message-icon-color)}:host([theme=primary]) .forge-inline-message{--_inline-message-background:var(--forge-inline-message-background, var(--forge-theme-primary-container-low, #e8eaf6));--_inline-message-icon-color:var(--forge-inline-message-icon-color, var(--forge-theme-on-primary-container-low, #222c62));--_inline-message-border-color:var(--forge-inline-message-border-color, var(--forge-theme-primary-container, #d1d5ed))}:host([theme=secondary]) .forge-inline-message{--_inline-message-background:var(--forge-inline-message-background, var(--forge-theme-secondary-container, #fff0c3));--_inline-message-icon-color:var(--forge-inline-message-icon-color, var(--forge-theme-on-secondary-container, #8a6804));--_inline-message-border-color:var(--forge-inline-message-border-color, var(--forge-theme-secondary, #ffc107))}:host([theme=tertiary]) .forge-inline-message{--_inline-message-background:var(--forge-inline-message-background, var(--forge-theme-tertiary-container-low, #e8ebff));--_inline-message-icon-color:var(--forge-inline-message-icon-color, var(--forge-theme-on-tertiary-container-low, #213189));--_inline-message-border-color:var(--forge-inline-message-border-color, var(--forge-theme-tertiary-container, #d0d7ff))}:host([theme=success]) .forge-inline-message{--_inline-message-background:var(--forge-inline-message-background, var(--forge-theme-success-container-low, #e6efe6));--_inline-message-icon-color:var(--forge-inline-message-icon-color, var(--forge-theme-on-success-container-low, #19441b));--_inline-message-border-color:var(--forge-inline-message-border-color, var(--forge-theme-success-container, #cde0ce))}:host([theme=warning]) .forge-inline-message{--_inline-message-background:var(--forge-inline-message-background, var(--forge-theme-warning-container-low, #f9e9e0));--_inline-message-icon-color:var(--forge-inline-message-icon-color, var(--forge-theme-on-warning-container-low, #712700));--_inline-message-border-color:var(--forge-inline-message-border-color, var(--forge-theme-warning-container, #f4d3c2))}:host(:is([theme=error],[theme=danger])) .forge-inline-message{--_inline-message-background:var(--forge-inline-message-background, var(--forge-theme-error-container-low, #f6e0e4));--_inline-message-icon-color:var(--forge-inline-message-icon-color, var(--forge-theme-on-error-container-low, #5f0011));--_inline-message-border-color:var(--forge-inline-message-border-color, var(--forge-theme-error-container, #ecc2c9))}:host([theme=info-secondary]) .forge-inline-message{--_inline-message-background:var(--forge-inline-message-background, var(--forge-theme-surface-container-low, #ebebeb));--_inline-message-icon-color:var(--forge-inline-message-icon-color, var(--forge-theme-on-surface-container-low, #000000));--_inline-message-border-color:var(--forge-inline-message-border-color, var(--forge-theme-surface-container, #e0e0e0))}',o=class extends t{constructor(){super(),s(this,d,h)}get theme(){var r;return(r=this.getAttribute(e.attributes.THEME))!=null?r:e.defaults.THEME}set theme(r){a(this,r!==e.defaults.THEME,e.attributes.THEME,r)}};o=n([g({name:e.elementName})],o);function N(){i(o)}export{e as a,o as b,N as c};
7
+ //# sourceMappingURL=chunk.KEOLH7G3.js.map
@@ -0,0 +1,7 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2023 Tyler Technologies, Inc.
4
+ * License: Apache-2.0
5
+ */
6
+ import{b as h,c as u,d as k}from"./chunk.S7KEO2CH.js";import{a as g,b as w}from"./chunk.PC6TW5XE.js";import{a as m,b}from"./chunk.VRSPT7WX.js";import{a as c,e as p,f}from"./chunk.LNTTU2GL.js";import{q as l}from"./chunk.L4QSPQDE.js";import{d}from"./chunk.M3QDAYD2.js";var a=class extends h{constructor(r){super(r);this._component=r;this._backdropElement=f(this._component,g.elementName)}setBackdropCloseListener(r){this._backdropElement.addEventListener("click",r)}setBackdropVisibility(r){return this._backdropElement.hasAttribute("hidden")&&this._backdropElement.removeAttribute("hidden"),!this._backdropElement.fadeIn||!this._backdropElement.fadeOut?Promise.resolve():r?this._backdropElement.fadeIn():this._backdropElement.fadeOut()}toggleBackdropClass(r,t){l(this._backdropElement,r,t)}};var v=`${b}modal-drawer`,_={DISPLAY_NONE:"forge-drawer--display-none",SCRIM_CLOSED:"forge-drawer__scrim--closed"},x={CLOSE:`${v}-close`},e={elementName:v,classes:_,events:x};var i=class extends u{constructor(r){super(r);this._adapter=r;this._open=!1;this._isInitialized=!1;this._backdropClickListener=t=>this._onBackdropClick(t)}connect(){super.connect(),this._adapter.setBackdropCloseListener(this._backdropClickListener),this._setBackdrop(this._open),this._isInitialized=!0}disconnect(){this._isInitialized=!1}_triggerDrawerOpen(){super._triggerDrawerOpen(),this._setBackdrop(!0)}_triggerDrawerClose(){super._triggerDrawerClose(),this._setBackdrop(!1)}_onBackdropClick(r){this._adapter.emitHostEvent(e.events.CLOSE,void 0,!0,!0)&&(this.open=!1)}async _setBackdrop(r){r?(this._adapter.toggleBackdropClass(!1,e.classes.SCRIM_CLOSED),this._adapter.setBackdropVisibility(!0)):this._isInitialized&&(await this._adapter.setBackdropVisibility(!1),this._open||this._adapter.toggleBackdropClass(!0,e.classes.SCRIM_CLOSED))}};var C='<template><forge-backdrop class="forge-drawer__scrim" hidden part="scrim"></forge-backdrop><div class="forge-drawer forge-drawer--modal" part="root"><slot name="header"></slot><div class="forge-drawer__content" part="content"><slot></slot></div><slot name="footer"></slot></div></template>',D='.forge-drawer{width:256px;width:var(--forge-drawer-width,256px);border-color:#e0e0e0;border-color:var(--forge-theme-border-color,#e0e0e0);background-color:#fff;background-color:var(--mdc-theme-surface,#fff);height:100%;-webkit-box-sizing:border-box;box-sizing:border-box;display:grid;grid-template-columns:1fr;grid-template-rows:auto 1fr auto;overflow:hidden;-webkit-transition-property:-webkit-transform;transition-property:-webkit-transform;transition-property:transform;transition-property:transform,-webkit-transform;-webkit-transition-duration:250ms;transition-duration:250ms;-webkit-transition-timing-function:cubic-bezier(0.4,0,0.2,1);transition-timing-function:cubic-bezier(0.4,0,0.2,1)}.forge-drawer ::slotted([slot=header]){grid-row:1}.forge-drawer ::slotted([slot=footer]){grid-row:3}.forge-drawer__content{overflow-x:auto;-webkit-overflow-scrolling:"touch";display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;grid-row:2}.forge-drawer__content::-webkit-scrollbar{height:var(--forge-scrollbar-height,16px);width:var(--forge-scrollbar-width,16px)}.forge-drawer__content::-webkit-scrollbar-track{background-color:var(--forge-scrollbar-track-container,var(--forge-theme-surface-container-low,#ebebeb))}.forge-drawer__content::-webkit-scrollbar-track:hover{background-color:var(--forge-scrollbar-track-container-hover,var(--forge-theme-surface-container-low,#ebebeb))}.forge-drawer__content::-webkit-scrollbar-corner{background-color:var(--forge-scrollbar-track-container,var(--forge-theme-surface-container-low,#ebebeb))}.forge-drawer__content::-webkit-scrollbar-thumb{height:var(--forge-scrollbar-thumb-min-height,32px);width:var(--forge-scrollbar-thumb-min-width,32px);border-radius:var(--forge-scrollbar-border-radius,var(--forge-shape-full,9999px));border-width:var(--forge-scrollbar-border-width,3px);border-style:solid;border-color:transparent;background-color:var(--forge-scrollbar-thumb-container,var(--forge-theme-surface-container-medium,#c2c2c2));background-clip:content-box}.forge-drawer__content::-webkit-scrollbar-thumb:hover{background-color:var(--forge-scrollbar-thumb-container-hover,var(--forge-theme-surface-container-high,#9e9e9e))}.forge-drawer--left{border-right-width:1px;border-right-style:solid}.forge-drawer--right{border-left-width:1px;border-left-style:solid}.forge-drawer--right.forge-drawer--closing{-webkit-transform:translateX(100%);transform:translateX(100%);right:0;left:auto;z-index:1;z-index:var(--forge-z-index-surface,1);position:absolute;top:0;right:0;-webkit-transition-duration:.2s;transition-duration:.2s}.forge-drawer--right.forge-drawer--closed{-webkit-transform:translateX(100%);transform:translateX(100%);right:0;left:auto;width:0;border:none}.forge-drawer--closing{-webkit-transform:translateX(-100%);transform:translateX(-100%);left:0;z-index:1;z-index:var(--forge-z-index-surface,1);position:absolute;top:0;right:0;-webkit-transition-duration:.2s;transition-duration:.2s}.forge-drawer--closed{-webkit-transform:translateX(-100%);transform:translateX(-100%);left:0;width:0;border:none}.forge-drawer--no-transition{-webkit-transition:none!important;transition:none!important}.forge-drawer--modal{-webkit-box-shadow:0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12);box-shadow:0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12);z-index:8;z-index:var(--forge-z-index-dialog,8);position:absolute;top:0;max-width:80%}.forge-drawer--modal+.mdc-drawer-scrim{background-color:rgba(0,0,0,.32)}.forge-drawer--modal.forge-drawer--closed,.forge-drawer--modal.forge-drawer--closing{-webkit-box-shadow:none;box-shadow:none}.forge-drawer--modal.forge-drawer--closing.forge-drawer--right{-webkit-transform:translateX(100%);transform:translateX(100%)}.forge-drawer__scrim{z-index:8;z-index:var(--forge-z-index-dialog,8)}.forge-drawer__scrim--closed{display:none}.forge-drawer.forge-drawer--right{right:0}.forge-drawer--display-none{display:none!important}:host{--forge-divider-margin:4px 0}',o=class extends k{constructor(){super();p(this,C,D),this._foundation=new i(new a(this))}};o=d([m({name:e.elementName,dependencies:[w]})],o);function q(){c(o)}export{a,e as b,i as c,o as d,q as e};
7
+ //# sourceMappingURL=chunk.KLU54MDQ.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/drawer/modal-drawer/modal-drawer-adapter.ts", "../../src/drawer/modal-drawer/modal-drawer-constants.ts", "../../src/drawer/modal-drawer/modal-drawer-foundation.ts", "../../src/drawer/modal-drawer/modal-drawer.ts", "../../src/drawer/modal-drawer/index.ts"],
4
+ "sourcesContent": ["import { getShadowElement, toggleClass } from '@tylertech/forge-core';\nimport { BACKDROP_CONSTANTS, IBackdropComponent } from '../../backdrop';\nimport { BaseDrawerAdapter, IBaseDrawerAdapter } from '../base';\nimport { IModalDrawerComponent } from './modal-drawer';\n\nexport interface IModalDrawerAdapter extends IBaseDrawerAdapter {\n setBackdropCloseListener(listener: (evt: Event) => void): void;\n setBackdropVisibility(visible: boolean): Promise<void>;\n toggleBackdropClass(hasClass: boolean, className: string): void;\n}\n\nexport class ModalDrawerAdapter extends BaseDrawerAdapter implements IModalDrawerAdapter {\n private _backdropElement: IBackdropComponent;\n\n constructor(protected _component: IModalDrawerComponent) {\n super(_component);\n this._backdropElement = getShadowElement(this._component, BACKDROP_CONSTANTS.elementName) as IBackdropComponent;\n }\n\n public setBackdropCloseListener(listener: (evt: Event) => void): void {\n this._backdropElement.addEventListener('click', listener);\n }\n\n public setBackdropVisibility(visible: boolean): Promise<void> {\n if (this._backdropElement.hasAttribute('hidden')) {\n this._backdropElement.removeAttribute('hidden');\n }\n if (!this._backdropElement.fadeIn || !this._backdropElement.fadeOut) {\n return Promise.resolve();\n }\n return visible ? this._backdropElement.fadeIn() : this._backdropElement.fadeOut();\n }\n\n public toggleBackdropClass(hasClass: boolean, className: string): void {\n toggleClass(this._backdropElement, hasClass, className);\n }\n}\n", "import { COMPONENT_NAME_PREFIX } from '../../constants';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}modal-drawer`;\n\nconst classes = {\n DISPLAY_NONE: 'forge-drawer--display-none',\n SCRIM_CLOSED: 'forge-drawer__scrim--closed'\n};\n\nconst events = {\n CLOSE: `${elementName}-close`\n};\n\nexport const MODAL_DRAWER_CONSTANTS = {\n elementName,\n classes,\n events\n};\n", "import { Platform } from '@tylertech/forge-core';\nimport { BaseDrawerFoundation, IBaseDrawerFoundation } from '../base';\n\nimport { IModalDrawerAdapter } from './modal-drawer-adapter';\nimport { MODAL_DRAWER_CONSTANTS } from './modal-drawer-constants';\n\nexport interface IModalDrawerFoundation extends IBaseDrawerFoundation {}\n\nexport class ModalDrawerFoundation extends BaseDrawerFoundation implements IModalDrawerFoundation {\n protected _open = false;\n private _backdropClickListener: (evt: Event) => void;\n private _isInitialized = false;\n\n constructor(protected _adapter: IModalDrawerAdapter) {\n super(_adapter);\n this._backdropClickListener = evt => this._onBackdropClick(evt);\n }\n\n public connect(): void {\n super.connect();\n this._adapter.setBackdropCloseListener(this._backdropClickListener);\n this._setBackdrop(this._open);\n this._isInitialized = true;\n }\n\n public disconnect(): void {\n this._isInitialized = false;\n }\n\n protected _triggerDrawerOpen(): void {\n super._triggerDrawerOpen();\n this._setBackdrop(true);\n }\n\n protected _triggerDrawerClose(): void {\n super._triggerDrawerClose();\n this._setBackdrop(false);\n }\n\n private _onBackdropClick(evt: Event): void {\n const canClose = this._adapter.emitHostEvent(MODAL_DRAWER_CONSTANTS.events.CLOSE, undefined, true, true);\n if (canClose) {\n this.open = false;\n }\n }\n\n private async _setBackdrop(open: boolean): Promise<void> {\n if (open) {\n this._adapter.toggleBackdropClass(false, MODAL_DRAWER_CONSTANTS.classes.SCRIM_CLOSED);\n this._adapter.setBackdropVisibility(true);\n } else if (this._isInitialized) {\n await this._adapter.setBackdropVisibility(false);\n if (!this._open) {\n this._adapter.toggleBackdropClass(true, MODAL_DRAWER_CONSTANTS.classes.SCRIM_CLOSED);\n }\n }\n }\n}\n", "import { attachShadowTemplate, CustomElement } from '@tylertech/forge-core';\nimport { BackdropComponent } from '../../backdrop';\nimport { BaseDrawerComponent, IBaseDrawerComponent } from '../base';\nimport { ModalDrawerAdapter } from './modal-drawer-adapter';\nimport { MODAL_DRAWER_CONSTANTS } from './modal-drawer-constants';\nimport { ModalDrawerFoundation } from './modal-drawer-foundation';\n\nconst template = '<template><forge-backdrop class=\\\"forge-drawer__scrim\\\" hidden part=\\\"scrim\\\"></forge-backdrop><div class=\\\"forge-drawer forge-drawer--modal\\\" part=\\\"root\\\"><slot name=\\\"header\\\"></slot><div class=\\\"forge-drawer__content\\\" part=\\\"content\\\"><slot></slot></div><slot name=\\\"footer\\\"></slot></div></template>';\nconst styles = '.forge-drawer{width:256px;width:var(--forge-drawer-width,256px);border-color:#e0e0e0;border-color:var(--forge-theme-border-color,#e0e0e0);background-color:#fff;background-color:var(--mdc-theme-surface,#fff);height:100%;-webkit-box-sizing:border-box;box-sizing:border-box;display:grid;grid-template-columns:1fr;grid-template-rows:auto 1fr auto;overflow:hidden;-webkit-transition-property:-webkit-transform;transition-property:-webkit-transform;transition-property:transform;transition-property:transform,-webkit-transform;-webkit-transition-duration:250ms;transition-duration:250ms;-webkit-transition-timing-function:cubic-bezier(0.4,0,0.2,1);transition-timing-function:cubic-bezier(0.4,0,0.2,1)}.forge-drawer ::slotted([slot=header]){grid-row:1}.forge-drawer ::slotted([slot=footer]){grid-row:3}.forge-drawer__content{overflow-x:auto;-webkit-overflow-scrolling:\\\"touch\\\";display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;grid-row:2}.forge-drawer__content::-webkit-scrollbar{height:var(--forge-scrollbar-height,16px);width:var(--forge-scrollbar-width,16px)}.forge-drawer__content::-webkit-scrollbar-track{background-color:var(--forge-scrollbar-track-container,var(--forge-theme-surface-container-low,#ebebeb))}.forge-drawer__content::-webkit-scrollbar-track:hover{background-color:var(--forge-scrollbar-track-container-hover,var(--forge-theme-surface-container-low,#ebebeb))}.forge-drawer__content::-webkit-scrollbar-corner{background-color:var(--forge-scrollbar-track-container,var(--forge-theme-surface-container-low,#ebebeb))}.forge-drawer__content::-webkit-scrollbar-thumb{height:var(--forge-scrollbar-thumb-min-height,32px);width:var(--forge-scrollbar-thumb-min-width,32px);border-radius:var(--forge-scrollbar-border-radius,var(--forge-shape-full,9999px));border-width:var(--forge-scrollbar-border-width,3px);border-style:solid;border-color:transparent;background-color:var(--forge-scrollbar-thumb-container,var(--forge-theme-surface-container-medium,#c2c2c2));background-clip:content-box}.forge-drawer__content::-webkit-scrollbar-thumb:hover{background-color:var(--forge-scrollbar-thumb-container-hover,var(--forge-theme-surface-container-high,#9e9e9e))}.forge-drawer--left{border-right-width:1px;border-right-style:solid}.forge-drawer--right{border-left-width:1px;border-left-style:solid}.forge-drawer--right.forge-drawer--closing{-webkit-transform:translateX(100%);transform:translateX(100%);right:0;left:auto;z-index:1;z-index:var(--forge-z-index-surface,1);position:absolute;top:0;right:0;-webkit-transition-duration:.2s;transition-duration:.2s}.forge-drawer--right.forge-drawer--closed{-webkit-transform:translateX(100%);transform:translateX(100%);right:0;left:auto;width:0;border:none}.forge-drawer--closing{-webkit-transform:translateX(-100%);transform:translateX(-100%);left:0;z-index:1;z-index:var(--forge-z-index-surface,1);position:absolute;top:0;right:0;-webkit-transition-duration:.2s;transition-duration:.2s}.forge-drawer--closed{-webkit-transform:translateX(-100%);transform:translateX(-100%);left:0;width:0;border:none}.forge-drawer--no-transition{-webkit-transition:none!important;transition:none!important}.forge-drawer--modal{-webkit-box-shadow:0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12);box-shadow:0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12);z-index:8;z-index:var(--forge-z-index-dialog,8);position:absolute;top:0;max-width:80%}.forge-drawer--modal+.mdc-drawer-scrim{background-color:rgba(0,0,0,.32)}.forge-drawer--modal.forge-drawer--closed,.forge-drawer--modal.forge-drawer--closing{-webkit-box-shadow:none;box-shadow:none}.forge-drawer--modal.forge-drawer--closing.forge-drawer--right{-webkit-transform:translateX(100%);transform:translateX(100%)}.forge-drawer__scrim{z-index:8;z-index:var(--forge-z-index-dialog,8)}.forge-drawer__scrim--closed{display:none}.forge-drawer.forge-drawer--right{right:0}.forge-drawer--display-none{display:none!important}:host{--forge-divider-margin:4px 0}';\n\nexport interface IModalDrawerComponent extends IBaseDrawerComponent {}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'forge-modal-drawer': IModalDrawerComponent;\n }\n\n interface HTMLElementEventMap {\n 'forge-modal-drawer-close': CustomEvent<void>;\n }\n}\n\n/**\n * The web component class behind the `<forge-modal-drawer>` custom element.\n * \n * @tag forge-modal-drawer\n */\n@CustomElement({\n name: MODAL_DRAWER_CONSTANTS.elementName,\n dependencies: [BackdropComponent]\n})\nexport class ModalDrawerComponent extends BaseDrawerComponent<ModalDrawerFoundation> implements IModalDrawerComponent {\n protected _foundation: ModalDrawerFoundation;\n\n constructor() {\n super();\n attachShadowTemplate(this, template, styles);\n this._foundation = new ModalDrawerFoundation(new ModalDrawerAdapter(this));\n }\n}\n", "import { defineCustomElement } from '@tylertech/forge-core';\nimport { ModalDrawerComponent } from './modal-drawer';\n\nexport * from './modal-drawer-adapter';\nexport * from './modal-drawer-constants';\nexport * from './modal-drawer-foundation';\nexport * from './modal-drawer';\n\nexport function defineModalDrawerComponent(): void {\n defineCustomElement(ModalDrawerComponent);\n}\n"],
5
+ "mappings": "2QAWO,IAAMA,EAAN,cAAiCC,CAAiD,CAGvF,YAAsBC,EAAmC,CACvD,MAAMA,CAAU,EADI,gBAAAA,EAEpB,KAAK,iBAAmBC,EAAiB,KAAK,WAAYC,EAAmB,WAAW,CAC1F,CAEO,yBAAyBC,EAAsC,CACpE,KAAK,iBAAiB,iBAAiB,QAASA,CAAQ,CAC1D,CAEO,sBAAsBC,EAAiC,CAI5D,OAHI,KAAK,iBAAiB,aAAa,QAAQ,GAC7C,KAAK,iBAAiB,gBAAgB,QAAQ,EAE5C,CAAC,KAAK,iBAAiB,QAAU,CAAC,KAAK,iBAAiB,QACnD,QAAQ,QAAQ,EAElBA,EAAU,KAAK,iBAAiB,OAAO,EAAI,KAAK,iBAAiB,QAAQ,CAClF,CAEO,oBAAoBC,EAAmBC,EAAyB,CACrEC,EAAY,KAAK,iBAAkBF,EAAUC,CAAS,CACxD,CACF,EClCA,IAAME,EAA2C,GAAGC,gBAE9CC,EAAU,CACd,aAAc,6BACd,aAAc,6BAChB,EAEMC,EAAS,CACb,MAAO,GAAGH,SACZ,EAEaI,EAAyB,CACpC,YAAAJ,EACA,QAAAE,EACA,OAAAC,CACF,ECTO,IAAME,EAAN,cAAoCC,CAAuD,CAKhG,YAAsBC,EAA+B,CACnD,MAAMA,CAAQ,EADM,cAAAA,EAJtB,KAAU,MAAQ,GAElB,KAAQ,eAAiB,GAIvB,KAAK,uBAAyBC,GAAO,KAAK,iBAAiBA,CAAG,CAChE,CAEO,SAAgB,CACrB,MAAM,QAAQ,EACd,KAAK,SAAS,yBAAyB,KAAK,sBAAsB,EAClE,KAAK,aAAa,KAAK,KAAK,EAC5B,KAAK,eAAiB,EACxB,CAEO,YAAmB,CACxB,KAAK,eAAiB,EACxB,CAEU,oBAA2B,CACnC,MAAM,mBAAmB,EACzB,KAAK,aAAa,EAAI,CACxB,CAEU,qBAA4B,CACpC,MAAM,oBAAoB,EAC1B,KAAK,aAAa,EAAK,CACzB,CAEQ,iBAAiBA,EAAkB,CACxB,KAAK,SAAS,cAAcC,EAAuB,OAAO,MAAO,OAAW,GAAM,EAAI,IAErG,KAAK,KAAO,GAEhB,CAEA,MAAc,aAAaC,EAA8B,CACnDA,GACF,KAAK,SAAS,oBAAoB,GAAOD,EAAuB,QAAQ,YAAY,EACpF,KAAK,SAAS,sBAAsB,EAAI,GAC/B,KAAK,iBACd,MAAM,KAAK,SAAS,sBAAsB,EAAK,EAC1C,KAAK,OACR,KAAK,SAAS,oBAAoB,GAAMA,EAAuB,QAAQ,YAAY,EAGzF,CACF,EClDA,IAAME,EAAW,oSACXC,EAAS,g/HAuBFC,EAAN,cAAmCC,CAA4E,CAGpH,aAAc,CACZ,MAAM,EACNC,EAAqB,KAAMJ,EAAUC,CAAM,EAC3C,KAAK,YAAc,IAAII,EAAsB,IAAIC,EAAmB,IAAI,CAAC,CAC3E,CACF,EARaJ,EAANK,EAAA,CAJNC,EAAc,CACb,KAAMC,EAAuB,YAC7B,aAAc,CAACC,CAAiB,CAClC,CAAC,GACYR,GCvBN,SAASS,GAAmC,CACjDC,EAAoBC,CAAoB,CAC1C",
6
+ "names": ["ModalDrawerAdapter", "BaseDrawerAdapter", "_component", "getShadowElement", "BACKDROP_CONSTANTS", "listener", "visible", "hasClass", "className", "toggleClass", "elementName", "COMPONENT_NAME_PREFIX", "classes", "events", "MODAL_DRAWER_CONSTANTS", "ModalDrawerFoundation", "BaseDrawerFoundation", "_adapter", "evt", "MODAL_DRAWER_CONSTANTS", "open", "template", "styles", "ModalDrawerComponent", "BaseDrawerComponent", "attachShadowTemplate", "ModalDrawerFoundation", "ModalDrawerAdapter", "__decorateClass", "CustomElement", "MODAL_DRAWER_CONSTANTS", "BackdropComponent", "defineModalDrawerComponent", "defineCustomElement", "ModalDrawerComponent"]
7
+ }
@@ -0,0 +1,7 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2023 Tyler Technologies, Inc.
4
+ * License: Apache-2.0
5
+ */
6
+ import{a as S}from"./chunk.MFQRXVKO.js";import{a as B}from"./chunk.INQZNXG6.js";import{c as m}from"./chunk.RLQB7224.js";import{d as I}from"./chunk.T7NWP7DB.js";import{b as k}from"./chunk.FLF5RTYO.js";import{a as O}from"./chunk.ASLHRT3N.js";import{a as P,b as C}from"./chunk.BQ52JYLA.js";import{k as T,n as y}from"./chunk.J2Y5KPON.js";import{c as L}from"./chunk.BX4AQRHB.js";import{a}from"./chunk.NVUMRW44.js";import{a as v}from"./chunk.OLFOVKQG.js";import{k as d,m as _,n as h}from"./chunk.VRSPT7WX.js";import{f as p,k as g}from"./chunk.LNTTU2GL.js";import{b as A}from"./chunk.DJSHVUEM.js";import{k as l}from"./chunk.J2M2MXP2.js";import{a as E,d as s}from"./chunk.M3QDAYD2.js";var H={TYPE:"type",DISABLED:"disabled",POPOVER_ICON:"popover-icon",ANCHOR:"anchor",HREF:"href",TARGET:"target",DOWNLOAD:"download",REL:"rel",DENSE:"dense",TABINDEX:"tabindex"},D=E({},H),w={ROOT:"forge-button",POPOVER_ICON:"forge-button__popover-icon"},R={ROOT:"[part=root]",END_SLOT:"slot[name=end]"},r={observedAttributes:H,attributes:D,selectors:R,classes:w};var x=C(P(B(S(g)))),n=class extends x{constructor(){super();I.define(m)}static get observedAttributes(){return Object.values(r.observedAttributes)}connectedCallback(){super.connectedCallback(),this._foundation.initialize()}attributeChangedCallback(t,i,o){switch(t){case r.observedAttributes.TYPE:this.type=o;return;case r.observedAttributes.DISABLED:this.disabled=l(o);return;case r.observedAttributes.POPOVER_ICON:this.popoverIcon=l(o);return;case r.observedAttributes.ANCHOR:this.anchor=l(o);return;case r.observedAttributes.HREF:this.href=o;return;case r.observedAttributes.TARGET:this.target=o;return;case r.observedAttributes.DOWNLOAD:this.download=o;return;case r.observedAttributes.REL:this.rel=o;return;case r.observedAttributes.DENSE:this.dense=l(o);return}super.attributeChangedCallback(t,i,o)}labelClickedCallback(){this._foundation.click({animateStateLayer:!0})}labelChangedCallback(t){this[h]({ariaLabel:t},{setAttribute:!this.hasAttribute("aria-label")})}get form(){return this[d].form}get name(){var t;return(t=this.getAttribute("name"))!=null?t:""}set name(t){this.setAttribute("name",t)}get value(){var t;return(t=this.getAttribute("value"))!=null?t:""}set value(t){this.setAttribute("value",t)}click(){this._foundation.click({animateStateLayer:!0})}focus(t){this._foundation.focus(t)}};n.formAssociated=!0,s([a()],n.prototype,"type",2),s([a()],n.prototype,"disabled",2),s([a()],n.prototype,"popoverIcon",2),s([a()],n.prototype,"anchor",2),s([a()],n.prototype,"href",2),s([a()],n.prototype,"target",2),s([a()],n.prototype,"download",2),s([a()],n.prototype,"rel",2),s([a()],n.prototype,"dense",2);var F=class{constructor(e){this._adapter=e;this._type="button";this._disabled=!1;this._popoverIcon=!1;this._anchor=!1;this._href="";this._target="";this._download="";this._rel="";this._dense=!1;this._clickListener=t=>this._onClick(t),this._keydownListener=t=>this._onKeydown(t),this._anchorFocusListener=()=>this._adapter.focusHost(),this._adapter.addHostListener("keydown",this._keydownListener)}initialize(){this._adapter.initialize(),this._anchor?this._adapter.addAnchorEventListener("focus",this._anchorFocusListener):this._adapter.addHostListener("click",this._clickListener)}click({animateStateLayer:e=!1}={}){this._disabled||(this._anchor?this._adapter.clickAnchor():this._adapter.clickHost(),e&&this._adapter.animateStateLayer())}focus(e){this._adapter.focusHost(e),(e==null?void 0:e.focusVisible)!==!1&&this._adapter.forceFocusVisible()}async _onClick(e){let t=this._type==="submit"||this._type==="reset";!t&&this._adapter.hasPopoverTarget()&&this._adapter.managePopover()||(await new Promise(i=>setTimeout(i)),!(e.defaultPrevented||this._disabled)&&t&&this._adapter.clickFormButton(this._type))}async _onKeydown(e){if(e.key===" "&&!this._anchor){e.preventDefault(),this.click();return}await L(),!(e.defaultPrevented||this._disabled)&&e.key==="Enter"&&(this._anchor?this._adapter.clickAnchor():this.click())}_toggleAnchor(){this._anchor?(this._adapter.initializeAnchor(),this._manageAnchorListeners(),this.disabled=!1):(this._adapter.removeAnchor(),this._manageAnchorListeners())}_manageAnchorListeners(){this._anchor?(this._adapter.removeHostListener("click",this._clickListener),this._adapter.addAnchorEventListener("focus",this._anchorFocusListener)):(this._adapter.addHostListener("click",this._clickListener),this._adapter.removeAnchorEventListener("focus",this._anchorFocusListener))}get type(){return this._type}set type(e){this._type!==e&&(this._type=e,this._adapter.setHostAttribute(r.attributes.TYPE,e))}get disabled(){return this._disabled}set disabled(e){e=!!e,this._disabled!==e&&(this._anchor&&(e=!1),this._disabled=e,this._adapter.setDisabled(this._disabled),this._adapter.toggleHostAttribute(r.attributes.DISABLED,e))}get popoverIcon(){return this._popoverIcon}set popoverIcon(e){e=!!e,this._popoverIcon!==e&&(this._popoverIcon=e,this._adapter.toggleDefaultPopoverIcon(this._popoverIcon),this._adapter.toggleHostAttribute(r.attributes.POPOVER_ICON,e))}get anchor(){return this._anchor}set anchor(e){e=!!e,this._anchor!==e&&(this._anchor=e,this._toggleAnchor(),this._adapter.toggleHostAttribute(r.attributes.ANCHOR,e))}get href(){return this._href}set href(e){e=(e!=null?e:"").trim(),this._href!==e&&(this._href=e,this.anchor=this._href.length>0,this._anchor&&this._adapter.setAnchorProperty("href",this._href),this._adapter.toggleHostAttribute(r.attributes.HREF,!!this._href,this._href))}get target(){return this._target}set target(e){this._target!==e&&(this._target=e!=null?e:"_self",this._adapter.setAnchorProperty("target",e),this._adapter.toggleHostAttribute(r.attributes.TARGET,!!this._target,this._target))}get download(){return this._download}set download(e){this._download!==e&&(this._download=e,this._adapter.setAnchorProperty("download",this._download),this._adapter.toggleHostAttribute(r.attributes.DOWNLOAD,!!this._download,this._download))}get rel(){return this._rel}set rel(e){this._rel!==e&&(this._rel=e,this._adapter.setAnchorProperty("rel",this._rel),this._adapter.toggleHostAttribute(r.attributes.REL,!!this._rel,this._rel))}get dense(){return this._dense}set dense(e){e=!!e,this._dense!==e&&(this._dense=e,this._adapter.toggleHostAttribute(r.attributes.DENSE,e))}};var N=class extends v{constructor(t){super(t);this._rootElement=p(this._component,r.selectors.ROOT),this._focusIndicatorElement=p(this._component,k.elementName),this._stateLayerElement=p(this._component,O.elementName),this._endSlotElement=p(this._component,r.selectors.END_SLOT)}initialize(){this._applyHostSemantics()}initializeAnchor(){this._anchorElement=this._createAnchorRootElement(),this._rootElement.insertAdjacentElement("afterend",this._anchorElement),this._applyHostSemantics()}removeAnchor(){var t;(t=this._anchorElement)==null||t.remove(),this._anchorElement=void 0,this._applyHostSemantics()}setAnchorProperty(t,i){this._anchorElement&&(this._anchorElement[t]=i)}setDisabled(t){if(this._anchorElement){this.hasHostAttribute("aria-disabled")&&this.removeHostAttribute("aria-disabled"),this._focusIndicatorElement.isConnected||this._rootElement.append(this._focusIndicatorElement),this._stateLayerElement.isConnected||(this._stateLayerElement.disabled&&(this._stateLayerElement.disabled=!1),this._rootElement.append(this._stateLayerElement));return}t?(this._focusIndicatorElement.remove(),this._stateLayerElement.remove()):this._rootElement.append(this._focusIndicatorElement,this._stateLayerElement),this._component[_]=!t,this._component[h]({ariaDisabled:t?"true":null})}clickAnchor(){var t;(t=this._anchorElement)==null||t.click()}clickHost(){HTMLElement.prototype.click.call(this._component)}forceFocusVisible(){this._focusIndicatorElement.active=!0}clickFormButton(t){var i;if(this._component.form)if(t==="submit"){this._component[d].setFormValue(this._component.value);let o=document.createElement("button");o.type=t,y(this._component,o,T),this._component.form.addEventListener("submit",c=>{Object.defineProperty(c,"submitter",{configurable:!0,enumerable:!0,get:()=>this._component})},{capture:!0,once:!0}),this._component.insertAdjacentElement("afterend",o),o.click(),o.remove()}else t==="reset"&&((i=this._component.form)==null||i.reset())}addAnchorEventListener(t,i){this._rootElement.addEventListener(t,i)}removeAnchorEventListener(t,i){this._rootElement.removeEventListener(t,i)}hasPopoverTarget(){return this._component.hasAttribute("popovertarget")||!!this._component.popoverTargetElement}managePopover(){if(this._component.form||!this.hasPopoverTarget()||!A())return!1;let t=this._locatePopoverTargetElement();if(!t)return!1;let i=this._component.getAttribute("popovertargetaction")||"toggle",o=t.matches(":popover-open");switch(i){case"show":return o||t.showPopover(),!0;case"hide":return o&&t.hidePopover(),!1;case"toggle":default:let c=t.togglePopover();if(c&&t.popover!=="manual"){let f=u=>{u.stopPropagation(),t.matches(":popover-open")&&t.hidePopover()};this._component.addEventListener("click",f,{capture:!0,once:!0}),t.addEventListener("beforetoggle",async()=>{await new Promise(u=>setTimeout(u)),this._component.removeEventListener("click",f,{capture:!0})},{once:!0})}return c}}toggleDefaultPopoverIcon(t){if(t){if(!this._endSlotElement.querySelector("forge-icon")){let o=document.createElement("forge-icon");o.classList.add(r.classes.POPOVER_ICON),o.name=m.name,this._endSlotElement.append(o)}}else{let i=this._endSlotElement.querySelector("forge-icon");i==null||i.remove()}}animateStateLayer(){var t;this._stateLayerElement.disabled||(t=this._stateLayerElement)==null||t.playAnimation()}_locatePopoverTargetElement(){var i;let t=(i=this._component.popoverTargetElement)!=null?i:null;if(!t){let o=this._component.ownerDocument.getRootNode();if(!o)return null;let c=this._component.getAttribute("popovertarget");t=o.querySelector(`#${c}`)}return t}_applyHostSemantics(){let t=this._component.getAttribute("role"),i=!t||["button","link"].includes(t);this._component[h]({role:this._anchorElement?"link":"button"},{setAttribute:i}),this._component[_]=!!this._anchorElement||!this._component.disabled}_createAnchorRootElement(){let t=document.createElement("a");return t.setAttribute("aria-hidden","true"),t.tabIndex=-1,this._component.href&&(t.href=this._component.href),this._component.target&&(t.target=this._component.target),this._component.download&&(t.download=this._component.download),this._component.rel&&(t.rel=this._component.rel),t}};export{r as a,n as b,F as c,N as d};
7
+ //# sourceMappingURL=chunk.KO6ODCZC.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/button/base/base-button-constants.ts", "../../src/button/base/base-button.ts", "../../src/button/base/base-button-foundation.ts", "../../src/button/base/base-button-adapter.ts"],
4
+ "sourcesContent": ["const observedAttributes = {\n TYPE: 'type',\n DISABLED: 'disabled',\n POPOVER_ICON: 'popover-icon',\n ANCHOR: 'anchor',\n HREF: 'href',\n TARGET: 'target',\n DOWNLOAD: 'download',\n REL: 'rel',\n DENSE: 'dense',\n TABINDEX: 'tabindex'\n} as const;\n\nconst attributes = {\n ...observedAttributes\n} as const;\n\nconst classes = {\n ROOT: 'forge-button',\n POPOVER_ICON: 'forge-button__popover-icon'\n} as const;\n\nconst selectors = {\n ROOT:'[part=root]',\n END_SLOT: 'slot[name=end]'\n} as const;\n\nexport const BASE_BUTTON_CONSTANTS = {\n observedAttributes,\n attributes,\n selectors,\n classes\n} as const;\n\nexport type ButtonType = 'button' | 'submit' | 'reset';\nexport type ButtonTarget = '_blank' | '_self' | '_parent' | '_top';\nexport type ButtonClickOptions = { animateStateLayer?: boolean };\n", "import { coerceBoolean, FoundationProperty } from '@tylertech/forge-core';\nimport { tylIconArrowDropDown } from '@tylertech/tyler-icons/standard';\nimport { IconRegistry } from '../../icon/icon-registry';\nimport { WithFocusable, IWithFocusable } from '../../core/mixins/focus/with-focusable';\nimport { BaseComponent } from '../../core/base/base-component';\nimport { ExperimentalFocusOptions, internals, setDefaultAria } from '../../constants';\nimport { IBaseButtonAdapter } from './base-button-adapter';\nimport { BASE_BUTTON_CONSTANTS, ButtonType } from './base-button-constants';\nimport { BaseButtonFoundation } from './base-button-foundation';\nimport { WithLabelAwareness, IWithLabelAwareness } from '../../core/mixins/label/with-label-aware';\nimport { IWithElementInternals, WithElementInternals } from '../../core/mixins/internals/with-element-internals';\nimport { IWithDefaultAria, WithDefaultAria } from '../../core/mixins/internals/with-default-aria';\n\nexport interface IBaseButton extends IWithFocusable, IWithLabelAwareness, IWithElementInternals, IWithDefaultAria {\n type: ButtonType;\n disabled: boolean;\n popoverIcon: boolean;\n name: string;\n value: string;\n dense: boolean;\n anchor: boolean;\n href: string;\n target: string;\n download: string;\n rel: string;\n form: HTMLFormElement | null;\n focus(options?: ExperimentalFocusOptions): void;\n}\n\nconst BaseButtonClass = WithDefaultAria(WithElementInternals(WithLabelAwareness(WithFocusable(BaseComponent))));\n\nexport abstract class BaseButton<T extends BaseButtonFoundation<IBaseButtonAdapter>> extends BaseButtonClass implements IBaseButton {\n public static get observedAttributes(): string[] {\n return Object.values(BASE_BUTTON_CONSTANTS.observedAttributes);\n }\n\n public static readonly formAssociated = true;\n\n protected abstract _foundation: T;\n\n constructor() {\n super();\n IconRegistry.define(tylIconArrowDropDown);\n }\n\n public override connectedCallback(): void {\n super.connectedCallback();\n this._foundation.initialize();\n }\n\n public override attributeChangedCallback(name: string, oldValue: string, newValue: string): void {\n switch (name) {\n case BASE_BUTTON_CONSTANTS.observedAttributes.TYPE:\n this.type = newValue as ButtonType;\n return;\n case BASE_BUTTON_CONSTANTS.observedAttributes.DISABLED:\n this.disabled = coerceBoolean(newValue);\n return;\n case BASE_BUTTON_CONSTANTS.observedAttributes.POPOVER_ICON:\n this.popoverIcon = coerceBoolean(newValue);\n return;\n case BASE_BUTTON_CONSTANTS.observedAttributes.ANCHOR:\n this.anchor = coerceBoolean(newValue);\n return;\n case BASE_BUTTON_CONSTANTS.observedAttributes.HREF:\n this.href = newValue;\n return;\n case BASE_BUTTON_CONSTANTS.observedAttributes.TARGET:\n this.target = newValue;\n return;\n case BASE_BUTTON_CONSTANTS.observedAttributes.DOWNLOAD:\n this.download = newValue;\n return;\n case BASE_BUTTON_CONSTANTS.observedAttributes.REL:\n this.rel = newValue;\n return;\n case BASE_BUTTON_CONSTANTS.observedAttributes.DENSE:\n this.dense = coerceBoolean(newValue);\n return;\n }\n super.attributeChangedCallback(name, oldValue, newValue);\n }\n\n public labelClickedCallback(): void {\n this._foundation.click({ animateStateLayer: true });\n }\n\n public labelChangedCallback(value: string | null): void {\n this[setDefaultAria]({ ariaLabel: value }, { setAttribute: !this.hasAttribute('aria-label') });\n }\n\n public get form(): HTMLFormElement | null {\n return this[internals].form;\n }\n\n public get name(): string {\n return this.getAttribute('name') ?? '';\n }\n public set name(name: string) {\n this.setAttribute('name', name);\n }\n\n public get value(): string {\n return this.getAttribute('value') ?? '';\n }\n public set value(value: string) {\n this.setAttribute('value', value);\n }\n\n @FoundationProperty()\n public declare type: ButtonType;\n\n @FoundationProperty()\n public declare disabled: boolean;\n\n @FoundationProperty()\n public declare popoverIcon: boolean;\n\n @FoundationProperty()\n public declare anchor: boolean;\n\n @FoundationProperty()\n public declare href: string;\n\n @FoundationProperty()\n public declare target: string;\n\n @FoundationProperty()\n public declare download: string;\n\n @FoundationProperty()\n public declare rel: string;\n\n @FoundationProperty()\n public declare dense: boolean;\n\n public override click(): void {\n this._foundation.click({ animateStateLayer: true });\n }\n\n public override focus(options: ExperimentalFocusOptions): void {\n this._foundation.focus(options);\n }\n}\n", "import { ICustomElementFoundation } from '@tylertech/forge-core';\nimport { ExperimentalFocusOptions } from '../../constants';\nimport { task } from '../../core/utils/event-utils';\nimport { IBaseButtonAdapter } from './base-button-adapter';\nimport { BASE_BUTTON_CONSTANTS, ButtonClickOptions, ButtonType } from './base-button-constants';\n\nexport interface IBaseButtonFoundation extends ICustomElementFoundation {\n type: ButtonType;\n disabled: boolean;\n popoverIcon: boolean;\n anchor: boolean;\n href: string;\n target: string;\n download: string;\n rel: string;\n dense: boolean;\n click(options: ButtonClickOptions): void;\n focus(options?: ExperimentalFocusOptions): void;\n}\n\nexport abstract class BaseButtonFoundation<T extends IBaseButtonAdapter> implements IBaseButtonFoundation {\n private _type: ButtonType = 'button'; // We default our buttons to the \"button\" type instead of \"submit\" as that is more common\n private _disabled = false;\n private _popoverIcon = false;\n private _anchor = false;\n private _href = '';\n private _target = '';\n private _download = '';\n private _rel = '';\n private _dense = false;\n\n private _clickListener: EventListener;\n private _keydownListener: EventListener;\n private _anchorFocusListener: EventListener;\n\n constructor(protected _adapter: T) {\n this._clickListener = (evt: MouseEvent) => this._onClick(evt);\n this._keydownListener = (evt: KeyboardEvent) => this._onKeydown(evt);\n this._anchorFocusListener = () => this._adapter.focusHost(); // Always ensure our host is focused when the anchor is focused\n this._adapter.addHostListener('keydown', this._keydownListener);\n }\n\n public initialize(): void {\n this._adapter.initialize();\n\n if (this._anchor) {\n // When we're in anchor mode, we swap to us an `<a>` internally as the root. Since the `<a>`\n // element is interactive by default, we can remove our click listener since the anchor will\n // take over the default interaction handling\n this._adapter.addAnchorEventListener('focus', this._anchorFocusListener);\n } else {\n // When we're in button mode, we need to handle the click event on the host element\n this._adapter.addHostListener('click', this._clickListener);\n }\n }\n\n /**\n * Handles overriding the the `click()` method on the HTMLElement instance\n */\n public click({ animateStateLayer = false }: ButtonClickOptions = {}): void {\n if (this._disabled) {\n return;\n }\n\n if (this._anchor) {\n this._adapter.clickAnchor();\n } else {\n this._adapter.clickHost();\n }\n\n if (animateStateLayer) {\n this._adapter.animateStateLayer();\n }\n }\n\n public focus(options?: ExperimentalFocusOptions): void {\n this._adapter.focusHost(options);\n\n if (options?.focusVisible !== false) {\n this._adapter.forceFocusVisible();\n }\n }\n\n protected async _onClick(evt: MouseEvent): Promise<void> {\n const isFormType = this._type === 'submit' || this._type === 'reset';\n\n // Custom elements do not work with the popover* attributes by default so we need to manually\n // manage the popover functionality for now...\n if (!isFormType && this._adapter.hasPopoverTarget()) {\n const isOpen = this._adapter.managePopover();\n\n // If the popover was opened successfully we can stop here since there is no need to\n // handle any other scenarios\n if (isOpen) {\n return;\n }\n }\n\n // Wait a cycle to allow the click event to propagate\n await new Promise<void>(resolve => setTimeout(resolve));\n\n // We allow for our click event to bubble first before we handle it in case the developer\n // wants to prevent the default behavior\n if (evt.defaultPrevented || this._disabled) {\n return;\n }\n\n // For button types of submit or reset, we need to manually submit or reset the form\n // since the click event doesn't do that for us with custom elements\n if (isFormType) {\n this._adapter.clickFormButton(this._type);\n }\n }\n\n /**\n * Handle keydown events on the host element to manually trigger click events.\n */\n private async _onKeydown(evt: KeyboardEvent): Promise<void> {\n // Handle the special case for the space key (when not an anchor) to avoid\n // scrolling when triggered\n if (evt.key === ' ' && !this._anchor) {\n evt.preventDefault();\n this.click();\n return;\n }\n\n // Wait a cycle for the keydown event to propagate\n await task();\n\n if (evt.defaultPrevented || this._disabled) {\n return;\n }\n \n if (evt.key === 'Enter') {\n if (this._anchor) {\n this._adapter.clickAnchor();\n } else {\n this.click();\n }\n }\n }\n\n private _toggleAnchor(): void {\n if (this._anchor) {\n this._adapter.initializeAnchor();\n this._manageAnchorListeners();\n this.disabled = false; // Anchor elements are always enabled\n } else {\n this._adapter.removeAnchor();\n this._manageAnchorListeners();\n }\n }\n\n private _manageAnchorListeners(): void {\n if (this._anchor) {\n this._adapter.removeHostListener('click', this._clickListener);\n this._adapter.addAnchorEventListener('focus', this._anchorFocusListener);\n } else {\n this._adapter.addHostListener('click', this._clickListener);\n this._adapter.removeAnchorEventListener('focus', this._anchorFocusListener);\n }\n }\n\n public get type(): ButtonType {\n return this._type;\n }\n public set type(type: ButtonType) {\n if (this._type !== type) {\n this._type = type;\n this._adapter.setHostAttribute(BASE_BUTTON_CONSTANTS.attributes.TYPE, type);\n }\n }\n\n public get disabled(): boolean {\n return this._disabled;\n }\n public set disabled(value: boolean) {\n value = Boolean(value);\n\n if (this._disabled === value) {\n return;\n }\n\n // When we're in anchor mode we need to ensure that the anchor is always enabled\n if (this._anchor) {\n value = false;\n }\n\n this._disabled = value;\n this._adapter.setDisabled(this._disabled);\n this._adapter.toggleHostAttribute(BASE_BUTTON_CONSTANTS.attributes.DISABLED, value);\n }\n\n public get popoverIcon(): boolean {\n return this._popoverIcon;\n }\n public set popoverIcon(value: boolean) {\n value = Boolean(value);\n if (this._popoverIcon !== value) {\n this._popoverIcon = value;\n this._adapter.toggleDefaultPopoverIcon(this._popoverIcon);\n this._adapter.toggleHostAttribute(BASE_BUTTON_CONSTANTS.attributes.POPOVER_ICON, value);\n }\n }\n\n /**\n * Anchor properties\n */\n\n public get anchor(): boolean {\n return this._anchor;\n }\n public set anchor(value: boolean) {\n value = Boolean(value);\n if (this._anchor !== value) {\n this._anchor = value;\n this._toggleAnchor();\n this._adapter.toggleHostAttribute(BASE_BUTTON_CONSTANTS.attributes.ANCHOR, value);\n }\n }\n\n public get href(): string {\n return this._href;\n }\n public set href(value: string) {\n value = (value ?? '').trim();\n if (this._href !== value) {\n this._href = value;\n this.anchor = this._href.length > 0;\n if (this._anchor) {\n this._adapter.setAnchorProperty('href', this._href);\n }\n this._adapter.toggleHostAttribute(BASE_BUTTON_CONSTANTS.attributes.HREF, !!this._href, this._href);\n }\n }\n\n public get target(): string {\n return this._target;\n }\n public set target(value: string) {\n if (this._target !== value) {\n this._target = value ?? '_self';\n this._adapter.setAnchorProperty('target', value);\n this._adapter.toggleHostAttribute(BASE_BUTTON_CONSTANTS.attributes.TARGET, !!this._target, this._target);\n }\n }\n\n public get download(): string {\n return this._download;\n }\n public set download(value: string) {\n if (this._download !== value) {\n this._download = value;\n this._adapter.setAnchorProperty('download', this._download);\n this._adapter.toggleHostAttribute(BASE_BUTTON_CONSTANTS.attributes.DOWNLOAD, !!this._download, this._download);\n }\n }\n\n public get rel(): string {\n return this._rel;\n }\n public set rel(value: string) {\n if (this._rel !== value) {\n this._rel = value;\n this._adapter.setAnchorProperty('rel', this._rel);\n this._adapter.toggleHostAttribute(BASE_BUTTON_CONSTANTS.attributes.REL, !!this._rel, this._rel);\n }\n }\n\n public get dense(): boolean {\n return this._dense;\n }\n public set dense(value: boolean) {\n value = Boolean(value);\n if (this._dense !== value) {\n this._dense = value;\n this._adapter.toggleHostAttribute(BASE_BUTTON_CONSTANTS.attributes.DENSE, value);\n }\n }\n}\n", "import { getShadowElement } from '@tylertech/forge-core';\nimport { tylIconArrowDropDown } from '@tylertech/tyler-icons/standard';\nimport { BaseAdapter, IBaseAdapter } from '../../core/base/base-adapter';\nimport { FOCUS_INDICATOR_CONSTANTS, IFocusIndicatorComponent } from '../../focus-indicator';\nimport { IStateLayerComponent, STATE_LAYER_CONSTANTS } from '../../state-layer';\nimport { IBaseButton } from './base-button';\nimport { BASE_BUTTON_CONSTANTS } from './base-button-constants';\nimport { BUTTON_FORM_ATTRIBUTES, cloneAttributes } from '../../core/utils/reflect-utils';\nimport { internals, isFocusable, setDefaultAria } from '../../constants';\nimport { supportsPopover } from '../../core/utils/feature-detection';\n\nexport interface IBaseButtonAdapter extends IBaseAdapter {\n initialize(): void;\n initializeAnchor(): void;\n removeAnchor(): void;\n setAnchorProperty<T extends keyof HTMLAnchorElement>(name: T, value: HTMLAnchorElement[T]): void;\n setDisabled(value: boolean): void;\n clickAnchor(): void;\n clickHost(): void;\n clickFormButton(type: string): void;\n forceFocusVisible(): void;\n addAnchorEventListener(type: string, listener: EventListener): void;\n removeAnchorEventListener(type: string, listener: EventListener): void;\n hasPopoverTarget(): boolean;\n managePopover(): boolean;\n toggleDefaultPopoverIcon(value: boolean): void;\n animateStateLayer(): void;\n}\n\nexport abstract class BaseButtonAdapter extends BaseAdapter<IBaseButton> implements IBaseButtonAdapter {\n protected _rootElement: HTMLElement;\n protected _anchorElement: HTMLAnchorElement | undefined;\n protected _focusIndicatorElement: IFocusIndicatorComponent;\n protected _stateLayerElement: IStateLayerComponent;\n protected _endSlotElement: HTMLSlotElement;\n\n constructor(component: IBaseButton) {\n super(component);\n this._rootElement = getShadowElement(this._component, BASE_BUTTON_CONSTANTS.selectors.ROOT) as HTMLButtonElement;\n this._focusIndicatorElement = getShadowElement(this._component, FOCUS_INDICATOR_CONSTANTS.elementName) as IFocusIndicatorComponent;\n this._stateLayerElement = getShadowElement(this._component, STATE_LAYER_CONSTANTS.elementName) as IStateLayerComponent;\n this._endSlotElement = getShadowElement(this._component, BASE_BUTTON_CONSTANTS.selectors.END_SLOT) as HTMLSlotElement;\n }\n\n public initialize(): void {\n this._applyHostSemantics();\n }\n\n public initializeAnchor(): void {\n this._anchorElement = this._createAnchorRootElement();\n this._rootElement.insertAdjacentElement('afterend', this._anchorElement);\n this._applyHostSemantics();\n }\n\n public removeAnchor(): void {\n this._anchorElement?.remove();\n this._anchorElement = undefined;\n this._applyHostSemantics();\n }\n\n public setAnchorProperty<T extends keyof HTMLAnchorElement>(name: T, value: HTMLAnchorElement[T]): void {\n if (this._anchorElement) {\n this._anchorElement[name] = value;\n }\n }\n\n public setDisabled(value: boolean): void {\n if (this._anchorElement) {\n if (this.hasHostAttribute('aria-disabled')) {\n this.removeHostAttribute('aria-disabled');\n }\n if (!this._focusIndicatorElement.isConnected) {\n this._rootElement.append(this._focusIndicatorElement);\n }\n if (!this._stateLayerElement.isConnected) {\n if (this._stateLayerElement.disabled) {\n this._stateLayerElement.disabled = false;\n }\n this._rootElement.append(this._stateLayerElement);\n }\n return; // Cannot disable an anchor element\n }\n\n if (value) {\n this._focusIndicatorElement.remove();\n this._stateLayerElement.remove();\n } else {\n this._rootElement.append(this._focusIndicatorElement, this._stateLayerElement);\n }\n\n this._component[isFocusable] = !value;\n this._component[setDefaultAria]({ ariaDisabled: value ? 'true' : null });\n }\n\n public clickAnchor(): void {\n this._anchorElement?.click();\n }\n\n public clickHost(): void {\n // Calling click() on the prototype ensures we don't end up in an infinite\n // recursion since the host overrides the HTMLElement.click() method\n HTMLElement.prototype.click.call(this._component);\n }\n\n public forceFocusVisible(): void {\n this._focusIndicatorElement.active = true;\n }\n\n public clickFormButton(type: string): void {\n if (!this._component.form) {\n return; // Nothing for us to do if there is no form element associated to us\n }\n\n if (type === 'submit') {\n // We need to set the form value to the button value before submitting the form\n this._component[internals].setFormValue(this._component.value);\n\n // We don't use a real <button> since the host is the semantic button, so for\n // the \"submit\" button type we need to create a temporary button and click it\n // to trigger the form submission\n const tempBtn = document.createElement('button');\n tempBtn.type = type;\n cloneAttributes(this._component, tempBtn, BUTTON_FORM_ATTRIBUTES);\n\n // form.requestSubmit(submitter) does not work with form associated custom\n // elements. This patches the dispatched submit event to add the correct `submitter`.\n // See https://github.com/WICG/webcomponents/issues/814\n this._component.form.addEventListener('submit', evt => {\n Object.defineProperty(evt, 'submitter', {\n configurable: true,\n enumerable: true,\n get: () => this._component\n });\n }, { capture: true, once: true });\n\n this._component.insertAdjacentElement('afterend', tempBtn);\n tempBtn.click();\n tempBtn.remove();\n } else if (type === 'reset') {\n this._component.form?.reset();\n }\n }\n\n public addAnchorEventListener(type: string, listener: EventListener): void {\n this._rootElement.addEventListener(type, listener);\n }\n\n public removeAnchorEventListener(type: string, listener: EventListener): void {\n this._rootElement.removeEventListener(type, listener);\n }\n\n public hasPopoverTarget(): boolean {\n return this._component.hasAttribute('popovertarget') || !!this._component.popoverTargetElement;\n }\n\n /**\n * We are emulating native behavior here since custom elements do not support integrating with the\n * native popover element. This method will attempt to find the popover target element and handle\n * its `popovertargetaction`\n */\n public managePopover(): boolean {\n if (this._component.form || !this.hasPopoverTarget() || !supportsPopover()) {\n return false;\n }\n \n const popoverElement = this._locatePopoverTargetElement();\n if (!popoverElement) {\n return false;\n }\n\n const action = this._component.getAttribute('popovertargetaction') || 'toggle';\n const isPopoverOpen = popoverElement.matches(':popover-open');\n\n switch (action) {\n case 'show':\n if (!isPopoverOpen) {\n popoverElement.showPopover();\n }\n return true;\n case 'hide':\n if (isPopoverOpen) {\n popoverElement.hidePopover();\n }\n return false;\n case 'toggle':\n default:\n const result = popoverElement.togglePopover();\n\n // When the popover is open and is using an \"auto\" popover mode, we need to handle\n // clicking ourselves again to close without re-opening the popover. We do this by\n // adding a click listener to the component that will stop propagation of the event\n // and then remove itself after the first click (or when the popover is closed externally).\n if (result && popoverElement.popover !== 'manual') {\n const listener: EventListener = evt => {\n evt.stopPropagation();\n\n // The popover will already be closed via pointer, but we need to ensure that\n // it closes via keyboard as well so we perform the following check regardless\n if (popoverElement.matches(':popover-open')) {\n popoverElement.hidePopover();\n }\n };\n this._component.addEventListener('click', listener, { capture: true, once: true });\n popoverElement.addEventListener('beforetoggle', async () => {\n await new Promise<void>(resolve => setTimeout(resolve)); // Wait a cycle to allow the click event to propagate first\n this._component.removeEventListener('click', listener, { capture: true });\n }, { once: true });\n }\n\n return result;\n }\n }\n\n public toggleDefaultPopoverIcon(value: boolean): void {\n if (value) {\n // We support a built-in \"popover icon\" for convenience that can be used to indicate that the button will show a popover\n const hasIcon = this._endSlotElement.querySelector('forge-icon');\n if (!hasIcon) {\n const icon = document.createElement('forge-icon');\n icon.classList.add(BASE_BUTTON_CONSTANTS.classes.POPOVER_ICON);\n icon.name = tylIconArrowDropDown.name;\n this._endSlotElement.append(icon);\n }\n } else {\n const icon = this._endSlotElement.querySelector('forge-icon');\n icon?.remove();\n }\n }\n\n public animateStateLayer(): void {\n if (this._stateLayerElement.disabled) {\n return;\n }\n this._stateLayerElement?.playAnimation();\n }\n\n private _locatePopoverTargetElement(): HTMLElement | null {\n let popoverElement = this._component.popoverTargetElement ?? null;\n\n if (!popoverElement) {\n const rootNode = this._component.ownerDocument.getRootNode() as Document | ShadowRoot;\n if (!rootNode) {\n return null;\n }\n\n const targetId = this._component.getAttribute('popovertarget');\n popoverElement = rootNode.querySelector(`#${targetId}`);\n }\n\n return popoverElement;\n }\n\n private _applyHostSemantics(): void {\n const role = this._component.getAttribute('role');\n const setAttribute = !role || ['button', 'link'].includes(role);\n this._component[setDefaultAria]({ role: this._anchorElement ? 'link' : 'button' }, { setAttribute });\n this._component[isFocusable] = !!this._anchorElement || !this._component.disabled;\n }\n\n /**\n * Our anchor element is the interactive element that will be used to trigger the click event when it is present.\n * \n * We use the <a> element as an overlay on top of all content to ensure that it provides the native functionality,\n * while removing it from the accessibility tree and tab order so that it does not interfere with the host semantics.\n */\n private _createAnchorRootElement(): HTMLAnchorElement {\n const a = document.createElement('a');\n a.setAttribute('aria-hidden', 'true');\n a.tabIndex = -1;\n if (this._component.href) {\n a.href = this._component.href;\n }\n if (this._component.target) {\n a.target = this._component.target;\n }\n if (this._component.download) {\n a.download = this._component.download;\n }\n if (this._component.rel) {\n a.rel = this._component.rel;\n }\n return a;\n }\n}\n"],
5
+ "mappings": "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",
6
+ "names": ["observedAttributes", "attributes", "__spreadValues", "classes", "selectors", "BASE_BUTTON_CONSTANTS", "BaseButtonClass", "WithDefaultAria", "WithElementInternals", "WithLabelAwareness", "WithFocusable", "BaseComponent", "BaseButton", "IconRegistry", "tylIconArrowDropDown", "BASE_BUTTON_CONSTANTS", "name", "oldValue", "newValue", "coerceBoolean", "value", "setDefaultAria", "internals", "_a", "options", "__decorateClass", "FoundationProperty", "BaseButtonFoundation", "_adapter", "evt", "animateStateLayer", "options", "isFormType", "resolve", "task", "type", "BASE_BUTTON_CONSTANTS", "value", "BaseButtonAdapter", "BaseAdapter", "component", "getShadowElement", "BASE_BUTTON_CONSTANTS", "FOCUS_INDICATOR_CONSTANTS", "STATE_LAYER_CONSTANTS", "_a", "name", "value", "isFocusable", "setDefaultAria", "type", "internals", "tempBtn", "cloneAttributes", "BUTTON_FORM_ATTRIBUTES", "evt", "listener", "supportsPopover", "popoverElement", "action", "isPopoverOpen", "result", "resolve", "icon", "tylIconArrowDropDown", "rootNode", "targetId", "role", "setAttribute", "a"]
7
+ }
@@ -0,0 +1,7 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2023 Tyler Technologies, Inc.
4
+ * License: Apache-2.0
5
+ */
6
+ import{i as a}from"./chunk.J2M2MXP2.js";function u(t){return t.ownerDocument||document}function p(t){return t&&t.nodeType===1}function S(t,e){if(!p(t))throw new Error("DOMUtils - elementParents: invalid element argument");let o=[];for(;t.parentElement&&(o.push(t.parentElement),!(t.parentElement===e||t.parentElement===u(t).body));)t.parentElement&&t.parentElement.parentNode&&t.parentElement.parentNode.nodeType===11?t=t.parentElement.parentNode.host:t=t.parentElement;return o}function g(t,e){if(!p(t))throw new Error("DOMUtils - offset: invalid element argument");let o=t.getBoundingClientRect(),n=u(t).defaultView,i=e||n.document.documentElement,r={width:o.width,height:o.width,top:0,left:0,bottom:0,right:0};if(!e||i===n.document.documentElement||i===n.document.body)r.top=n.scrollY+o.top,r.bottom=i.clientHeight-n.scrollY-o.bottom,r.left=n.scrollX+o.left,r.right=i.clientWidth-n.scrollX-o.right;else{if(!p(e))throw new Error("DOMUtils - offset: invalid parentElement argument");let s=e.getBoundingClientRect();r.top=o.top-s.top,r.bottom=s.bottom-o.bottom,r.left=o.left-s.left,r.right=s.right-o.right}return{width:Math.round(o.width),height:Math.round(o.height),top:Math.round(r.top),bottom:Math.round(r.bottom),left:Math.round(r.left),right:Math.round(r.right)}}function L(t,e,o){let n=r=>{let s=()=>{r.stopPropagation(),r.cancelable&&r.preventDefault();let l=r.type==="touchstart"?r.target:u(t).activeElement;t.contains(l)||e(l)};o?window.requestAnimationFrame(()=>s()):s()},i=u(t);return i.addEventListener("blur",n,!0),i.addEventListener("touchstart",n,!0),()=>{i.removeEventListener("blur",n,!0),i.removeEventListener("touchstart",n,!0)}}function M(t){for(;t.lastChild;)t.removeChild(t.lastChild)}function N(t,e){return e.parentNode.replaceChild(t,e)}function b(t,e){a(t)?t.forEach(o=>e.classList.add(o)):e.classList.add(t)}function v(t,e){a(t)?t.forEach(o=>e.classList.remove(o)):e.classList.remove(t)}function x(){let t=document.createElement("fakeelement"),e={animation:"animationend",OAnimation:"oAnimationEnd",MozAnimation:"animationend",WebkitAnimation:"webkitAnimationEnd"};for(let o in e)if(t.style[o]!==void 0)return e[o]}async function P(t,e,o=!0){return t.classList.add(e),new Promise(n=>{let i=x(),r=()=>{o&&t.classList.remove(e),t.removeEventListener(i,r),n()};t.addEventListener(i,r)})}function W(t){t.removeNode?t.removeNode(!0):t.remove?t.remove():t.parentNode.removeChild(t)}function O(t){if(typeof t=="string"){if(t[t.length-1]==="%")return t;if(t.slice(-2)==="px")return t;if(Number(t)>=0)return`${t}px`}else if(typeof t=="number"&&t>=0)return`${t}px`}function R(t){return t.children.length?Promise.resolve():new Promise(e=>{let o=new MutationObserver(n=>{t.children.length&&(o.disconnect(),e())});o.observe(t,{childList:!0})})}function H(t,e){let o=f(t,e);return o.length?Promise.resolve(o[0]):new Promise(n=>{let i=new MutationObserver(r=>{if(r.reduce((l,c)=>l+c.addedNodes.length,0)>0){let l=f(t,e);l.length&&(i.disconnect(),n(l[0]))}});i.observe(t,{childList:!0,subtree:!0})})}function T(t){return new Promise(e=>{let o=t.querySelector("input");o&&e(o);let n=new MutationObserver(i=>{if(i.reduce((s,l)=>s+l.addedNodes.length,0)>0){let s=t.querySelector("input");s&&(n.disconnect(),e(s))}});n.observe(t,{childList:!0,subtree:!0})})}function D(t,e){let o=t&&t.parentNode;for(;o;){if(e(o))return o;o=o.parentNode}return null}function E(t,e){if(t.nodeType!==Node.ELEMENT_NODE)return!1;typeof e=="string"&&(e=e.replace(/\s+/,"").split(","));let o=Element.prototype.matches;return e.some(n=>o.call(t,n))}function f(t,e,o=!1){let n=[];if(!t)return n;if(typeof e=="string"&&(e=e.replace(/\s+/,"").split(",")),o&&E(t,e)&&n.indexOf(t)===-1&&n.push(t),t.tagName==="SLOT")t.assignedNodes().forEach(r=>n=n.concat(f(r,e,!0)));else{let i=t.shadowRoot?t.shadowRoot.firstElementChild:t.firstElementChild;for(;i;)n=n.concat(f(i,e,!0)),i=i.nextElementSibling}return n}function U(t=document){let e=t.activeElement;return!e||e===t.body?e:m(e)}function m(t){return t.shadowRoot&&t.shadowRoot.activeElement&&(t=m(t.shadowRoot.activeElement)),t}function V(t,e,o){e?b(o,t):v(o,t)}function $(t,e,o,n=""){e?t.setAttribute(o,n):t.removeAttribute(o)}function B(t,e,o,n){let i=t.getAttribute(e);(n===void 0||n===!0)&&(!i||!i.includes(o))?y(t,e,o):n||A(t,e,o)}function y(t,e,o){let n=t.getAttribute(e);!n||!n.length?t.setAttribute(e,o):t.setAttribute(e,`${n} ${o}`)}function A(t,e,o){if(!t.hasAttribute(e))return;let n=t.getAttribute(e);if(n){let i=n==null?void 0:n.replace(o,"");i=i.replace(/\s+/g," ").trim(),i.length?t.setAttribute(e,i):t.removeAttribute(e)}}function F(t,e,o="auto",n="nearest"){if(!t)return;if(t.scrollHeight>t.clientHeight||t.scrollWidth>t.clientWidth){let r=g(e,t),s=r.top<=e.clientHeight,l=r.bottom<=e.clientHeight;if(s||l){let d=h(n,s,e.offsetTop,e.clientHeight,t.offsetTop,t.offsetHeight);t.scrollTo({top:d,behavior:o});return}let c=r.left<=e.clientWidth,w=r.right<=e.clientWidth;if(c||w){let d=h(n,c,e.offsetLeft,e.clientWidth,t.offsetLeft,t.offsetWidth);t.scrollTo({left:d,behavior:o})}}}function h(t,e,o,n,i,r){return t==="nearest"?e?o-i-n:o-r+n*2:o-i-r/2+n/2}function I(t){let e=document.createElement("template");return t=t.trim(),e.innerHTML=t,e.content.firstElementChild}export{S as a,L as b,M as c,N as d,b as e,v as f,P as g,W as h,O as i,R as j,H as k,T as l,D as m,E as n,f as o,U as p,V as q,$ as r,B as s,y as t,F as u,I as v};
7
+ //# sourceMappingURL=chunk.L4QSPQDE.js.map