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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (709) hide show
  1. package/README.md +1 -6
  2. package/custom-elements.json +53072 -38831
  3. package/dist/esm/accordion/index.js +1 -1
  4. package/dist/esm/app-bar/help-button/index.js +1 -1
  5. package/dist/esm/app-bar/index.js +1 -1
  6. package/dist/esm/app-bar/menu-button/index.js +1 -1
  7. package/dist/esm/app-bar/notification-button/index.js +1 -1
  8. package/dist/esm/app-bar/profile-button/index.js +1 -1
  9. package/dist/esm/app-bar/search/index.js +1 -1
  10. package/dist/esm/autocomplete/index.js +1 -1
  11. package/dist/esm/avatar/index.js +1 -1
  12. package/dist/esm/backdrop/index.js +1 -1
  13. package/dist/esm/badge/index.js +1 -1
  14. package/dist/esm/banner/index.js +1 -1
  15. package/dist/esm/bottom-sheet/index.js +1 -1
  16. package/dist/esm/busy-indicator/index.js +1 -1
  17. package/dist/esm/button/index.js +1 -1
  18. package/dist/esm/button-area/index.js +1 -1
  19. package/dist/esm/button-toggle/button-toggle/index.js +1 -1
  20. package/dist/esm/button-toggle/button-toggle-group/index.js +1 -1
  21. package/dist/esm/button-toggle/index.js +1 -1
  22. package/dist/esm/calendar/calendar-dropdown/index.js +1 -1
  23. package/dist/esm/calendar/calendar-menu/index.js +1 -1
  24. package/dist/esm/calendar/index.js +1 -1
  25. package/dist/esm/card/index.js +1 -1
  26. package/dist/esm/checkbox/index.js +1 -1
  27. package/dist/esm/chip-field/index.js +1 -1
  28. package/dist/esm/chips/chip/index.js +1 -1
  29. package/dist/esm/chips/chip-set/index.js +1 -1
  30. package/dist/esm/chips/index.js +1 -1
  31. package/dist/esm/chunks/{chunk.4USQ2AP6.js → chunk.2MSL7CYM.js} +2 -2
  32. package/dist/esm/chunks/chunk.2ZU6LWHE.js +7 -0
  33. package/dist/esm/chunks/chunk.2ZU6LWHE.js.map +7 -0
  34. package/dist/esm/chunks/{chunk.OXGOCF4L.js → chunk.36C6SIPW.js} +2 -2
  35. package/dist/esm/chunks/{chunk.OXGOCF4L.js.map → chunk.36C6SIPW.js.map} +2 -2
  36. package/dist/esm/chunks/chunk.36F2GVWS.js +7 -0
  37. package/dist/esm/chunks/chunk.36F2GVWS.js.map +7 -0
  38. package/dist/esm/chunks/{chunk.HDO3WRH7.js → chunk.3HCYRDRI.js} +2 -2
  39. package/dist/esm/chunks/{chunk.UVJFHSMF.js → chunk.3R4BUIQP.js} +2 -2
  40. package/dist/esm/chunks/{chunk.37JFBP4X.js → chunk.3ZPSN2QG.js} +2 -2
  41. package/dist/esm/chunks/chunk.4SPEX2GJ.js +7 -0
  42. package/dist/esm/chunks/chunk.4SPEX2GJ.js.map +7 -0
  43. package/dist/esm/chunks/chunk.4YFJVHXN.js +7 -0
  44. package/dist/esm/chunks/chunk.4YFJVHXN.js.map +7 -0
  45. package/dist/esm/chunks/chunk.5A2PA7TL.js +7 -0
  46. package/dist/esm/chunks/chunk.5A2PA7TL.js.map +7 -0
  47. package/dist/esm/chunks/chunk.5CSXPRL3.js +7 -0
  48. package/dist/esm/chunks/chunk.5CSXPRL3.js.map +7 -0
  49. package/dist/esm/chunks/chunk.5LVZVQXB.js +7 -0
  50. package/dist/esm/chunks/{chunk.Q7BWJCT5.js.map → chunk.5LVZVQXB.js.map} +2 -2
  51. package/dist/esm/chunks/{chunk.HKSXC5VK.js → chunk.5N4N6DL6.js} +2 -2
  52. package/dist/esm/chunks/{chunk.AQ7ROWO4.js → chunk.5PG6WIIX.js} +2 -2
  53. package/dist/esm/chunks/{chunk.CLD75EBJ.js → chunk.5RM65QPN.js} +2 -2
  54. package/dist/esm/chunks/{chunk.CLD75EBJ.js.map → chunk.5RM65QPN.js.map} +3 -3
  55. package/dist/esm/chunks/chunk.5WMYF27O.js +7 -0
  56. package/dist/esm/chunks/chunk.5WMYF27O.js.map +7 -0
  57. package/dist/esm/chunks/{chunk.C7VEJINB.js → chunk.675V42JS.js} +2 -2
  58. package/dist/esm/chunks/chunk.6M27ERWW.js +12 -0
  59. package/dist/esm/chunks/chunk.6M27ERWW.js.map +7 -0
  60. package/dist/esm/chunks/chunk.6NTYTHAL.js +7 -0
  61. package/dist/esm/chunks/chunk.6NTYTHAL.js.map +7 -0
  62. package/dist/esm/chunks/chunk.6ZNBFKNP.js +7 -0
  63. package/dist/esm/chunks/chunk.6ZNBFKNP.js.map +7 -0
  64. package/dist/esm/chunks/{chunk.5ASOX23Q.js → chunk.72JVXGHF.js} +2 -2
  65. package/dist/esm/chunks/{chunk.5ASOX23Q.js.map → chunk.72JVXGHF.js.map} +1 -1
  66. package/dist/esm/chunks/chunk.7V4BDSA5.js +7 -0
  67. package/dist/esm/chunks/chunk.7V4BDSA5.js.map +7 -0
  68. package/dist/esm/chunks/chunk.7VMJLHQY.js +7 -0
  69. package/dist/esm/chunks/chunk.7VMJLHQY.js.map +7 -0
  70. package/dist/esm/chunks/{chunk.OQAD6MFL.js → chunk.7ZROQ6D3.js} +2 -2
  71. package/dist/esm/chunks/{chunk.W7H2ZYNR.js → chunk.AMLT6XJP.js} +2 -2
  72. package/dist/esm/chunks/{chunk.TCFKFKZW.js → chunk.AMZZKEAE.js} +2 -2
  73. package/dist/esm/chunks/{chunk.DH76CMUT.js → chunk.APPY5AYL.js} +2 -2
  74. package/dist/esm/chunks/{chunk.7M4HRJYP.js → chunk.ARQMMZJL.js} +2 -2
  75. package/dist/esm/chunks/{chunk.QNVVUUNQ.js → chunk.AUBOJZQ7.js} +2 -2
  76. package/dist/esm/chunks/chunk.AUCBR6CC.js +7 -0
  77. package/dist/esm/chunks/{chunk.UAVC4YLD.js.map → chunk.AUCBR6CC.js.map} +2 -2
  78. package/dist/esm/chunks/{chunk.RXLORASN.js → chunk.BB4UF5RX.js} +2 -2
  79. package/dist/esm/chunks/chunk.BBCZNGT3.js +7 -0
  80. package/dist/esm/chunks/chunk.BBCZNGT3.js.map +7 -0
  81. package/dist/esm/chunks/chunk.BQ2X5SBP.js +7 -0
  82. package/dist/esm/chunks/{chunk.TSH7BTC3.js.map → chunk.BQ2X5SBP.js.map} +2 -2
  83. package/dist/esm/chunks/{chunk.NDJZYFRT.js → chunk.BTXY3XMJ.js} +2 -2
  84. package/dist/esm/chunks/{chunk.AY43NTAK.js → chunk.DTLZOIUQ.js} +2 -2
  85. package/dist/esm/chunks/chunk.EJX6RI4I.js +7 -0
  86. package/dist/esm/chunks/chunk.EJX6RI4I.js.map +7 -0
  87. package/dist/esm/chunks/chunk.EWK76SPH.js +7 -0
  88. package/dist/esm/chunks/chunk.EWK76SPH.js.map +7 -0
  89. package/dist/esm/chunks/chunk.FAXYCG55.js +7 -0
  90. package/dist/esm/chunks/chunk.FAXYCG55.js.map +7 -0
  91. package/dist/esm/chunks/chunk.FFHSUJFM.js +7 -0
  92. package/dist/esm/chunks/chunk.FFHSUJFM.js.map +7 -0
  93. package/dist/esm/chunks/{chunk.PLNLLKP2.js → chunk.FLWNOP42.js} +2 -2
  94. package/dist/esm/chunks/{chunk.IJ2I25V3.js → chunk.FXIWCHLW.js} +2 -2
  95. package/dist/esm/chunks/chunk.FYVDTZLF.js +7 -0
  96. package/dist/esm/chunks/{chunk.YP2NHWIW.js.map → chunk.FYVDTZLF.js.map} +2 -2
  97. package/dist/esm/chunks/{chunk.6VSFLBZF.js → chunk.G73KL7P2.js} +2 -2
  98. package/dist/esm/chunks/chunk.G7SMCLHQ.js +7 -0
  99. package/dist/esm/chunks/chunk.G7SMCLHQ.js.map +7 -0
  100. package/dist/esm/chunks/{chunk.PDSOXEMY.js → chunk.GNDKQPDV.js} +2 -2
  101. package/dist/esm/chunks/{chunk.RWUJGZ3R.js → chunk.HAKF2T2D.js} +2 -2
  102. package/dist/esm/chunks/{chunk.ZYVXIP42.js → chunk.HDG2GHKC.js} +2 -2
  103. package/dist/esm/chunks/{chunk.EY37FYZ4.js → chunk.HOLCNJXC.js} +2 -2
  104. package/dist/esm/chunks/{chunk.DQVYB55P.js → chunk.HRRJIFC5.js} +2 -2
  105. package/dist/esm/chunks/chunk.HSI7B43D.js +7 -0
  106. package/dist/esm/chunks/chunk.HSI7B43D.js.map +7 -0
  107. package/dist/esm/chunks/chunk.IAWYYNUU.js +7 -0
  108. package/dist/esm/chunks/chunk.IAWYYNUU.js.map +7 -0
  109. package/dist/esm/chunks/{chunk.WK2L7BPJ.js → chunk.IDMDBMBR.js} +2 -2
  110. package/dist/esm/chunks/{chunk.WJXDDQUK.js → chunk.IHAHJPMB.js} +2 -2
  111. package/dist/esm/chunks/chunk.IISWKFCX.js +7 -0
  112. package/dist/esm/chunks/chunk.IISWKFCX.js.map +7 -0
  113. package/dist/esm/chunks/{chunk.DABGA7I6.js → chunk.IMLJD35R.js} +2 -2
  114. package/dist/esm/chunks/{chunk.66X366TV.js → chunk.IT7XPDAV.js} +2 -2
  115. package/dist/esm/chunks/chunk.JAWV5Y5T.js +7 -0
  116. package/dist/esm/chunks/{chunk.I5SFCLDD.js.map → chunk.JAWV5Y5T.js.map} +3 -3
  117. package/dist/esm/chunks/{chunk.RNUGVHZF.js → chunk.JVLJH6PR.js} +2 -2
  118. package/dist/esm/chunks/chunk.KPJWP77R.js +7 -0
  119. package/dist/esm/chunks/{chunk.Z6AFASMO.js → chunk.KV5IKYG2.js} +2 -2
  120. package/dist/esm/chunks/chunk.KV67JXOC.js +7 -0
  121. package/dist/esm/chunks/{chunk.OQ75YGB6.js.map → chunk.KV67JXOC.js.map} +2 -2
  122. package/dist/esm/chunks/{chunk.7UJAI6P2.js → chunk.LCR4YH3O.js} +2 -2
  123. package/dist/esm/chunks/{chunk.2WSXSOYB.js → chunk.LOG6GQOK.js} +2 -2
  124. package/dist/esm/chunks/chunk.LUIKMPQR.js +7 -0
  125. package/dist/esm/chunks/chunk.LUIKMPQR.js.map +7 -0
  126. package/dist/esm/chunks/chunk.LUNKNRRH.js +7 -0
  127. package/dist/esm/chunks/chunk.LUNKNRRH.js.map +7 -0
  128. package/dist/esm/chunks/{chunk.VDGJ4UDL.js → chunk.MKJCHUJH.js} +2 -2
  129. package/dist/esm/chunks/{chunk.IXGXASHQ.js → chunk.MWYQRG5W.js} +2 -2
  130. package/dist/esm/chunks/{chunk.CBIHNCT5.js → chunk.NUMKGUCK.js} +2 -2
  131. package/dist/esm/chunks/{chunk.R6NA7SV2.js → chunk.O6V3YNMO.js} +2 -2
  132. package/dist/esm/chunks/chunk.OWZREAT6.js +15 -0
  133. package/dist/esm/chunks/chunk.OWZREAT6.js.map +7 -0
  134. package/dist/esm/chunks/chunk.PMYQY3D3.js +7 -0
  135. package/dist/esm/chunks/chunk.PMYQY3D3.js.map +7 -0
  136. package/dist/esm/chunks/chunk.PYR2OCCH.js +7 -0
  137. package/dist/esm/chunks/{chunk.LNLO36U6.js.map → chunk.PYR2OCCH.js.map} +2 -2
  138. package/dist/esm/chunks/chunk.QJCNMYD3.js +7 -0
  139. package/dist/esm/chunks/{chunk.URFSXQKR.js.map → chunk.QJCNMYD3.js.map} +2 -2
  140. package/dist/esm/chunks/{chunk.CQQSOTZ5.js → chunk.QLCVRJ3Q.js} +2 -2
  141. package/dist/esm/chunks/chunk.QLOYOZN3.js +7 -0
  142. package/dist/esm/chunks/{chunk.JCO4M4PF.js.map → chunk.QLOYOZN3.js.map} +3 -3
  143. package/dist/esm/chunks/chunk.QN5T26HH.js +7 -0
  144. package/dist/esm/chunks/chunk.QN5T26HH.js.map +7 -0
  145. package/dist/esm/chunks/chunk.QQRPV4RN.js +7 -0
  146. package/dist/esm/chunks/{chunk.YXXKPT6P.js.map → chunk.QQRPV4RN.js.map} +2 -2
  147. package/dist/esm/chunks/{chunk.E4TAHUQO.js → chunk.R6LQBI42.js} +2 -2
  148. package/dist/esm/chunks/{chunk.FK6NNHXH.js → chunk.RES7WDKH.js} +2 -2
  149. package/dist/esm/chunks/chunk.RP674CRC.js +7 -0
  150. package/dist/esm/chunks/chunk.S5QL4SPT.js +7 -0
  151. package/dist/esm/chunks/chunk.S5QL4SPT.js.map +7 -0
  152. package/dist/esm/chunks/{chunk.SEWAMWO6.js → chunk.SIRXAA3O.js} +2 -2
  153. package/dist/esm/chunks/{chunk.WWTQAN4G.js → chunk.SLJ6HDK7.js} +2 -2
  154. package/dist/esm/chunks/chunk.STB2FEUA.js +7 -0
  155. package/dist/esm/chunks/chunk.STB2FEUA.js.map +7 -0
  156. package/dist/esm/chunks/chunk.TBGMJQYJ.js +7 -0
  157. package/dist/esm/chunks/chunk.TBGMJQYJ.js.map +7 -0
  158. package/dist/esm/chunks/{chunk.RBFGJH3C.js → chunk.TU74SREL.js} +2 -2
  159. package/dist/esm/chunks/{chunk.4JF54GDJ.js → chunk.URJQNB3S.js} +2 -2
  160. package/dist/esm/chunks/{chunk.C2MQN7MI.js → chunk.V24M62MC.js} +2 -2
  161. package/dist/esm/chunks/chunk.VFKHRAWD.js +7 -0
  162. package/dist/esm/chunks/chunk.VFKHRAWD.js.map +7 -0
  163. package/dist/esm/chunks/{chunk.R2KOYHIZ.js → chunk.VO6YJCEU.js} +2 -2
  164. package/dist/esm/chunks/{chunk.C5ZUGOOC.js → chunk.W2LN45WY.js} +2 -2
  165. package/dist/esm/chunks/{chunk.4XJYS5WH.js → chunk.WMVYRDUJ.js} +2 -2
  166. package/dist/esm/chunks/{chunk.4XJYS5WH.js.map → chunk.WMVYRDUJ.js.map} +2 -2
  167. package/dist/esm/chunks/chunk.WY3E33CW.js +7 -0
  168. package/dist/esm/chunks/chunk.WY3E33CW.js.map +7 -0
  169. package/dist/esm/chunks/{chunk.HBCDD25D.js → chunk.XEFWZKHQ.js} +2 -2
  170. package/dist/esm/chunks/{chunk.MHU452GM.js → chunk.XLL7L2UB.js} +2 -2
  171. package/dist/esm/chunks/{chunk.UZPZ6KUN.js → chunk.XNFS7YIB.js} +2 -2
  172. package/dist/esm/chunks/{chunk.UZPZ6KUN.js.map → chunk.XNFS7YIB.js.map} +2 -2
  173. package/dist/esm/chunks/chunk.XYAZVLPR.js +7 -0
  174. package/dist/esm/chunks/{chunk.AHAARGYM.js → chunk.YAERJVPL.js} +2 -2
  175. package/dist/esm/chunks/chunk.YBZK6LJZ.js +7 -0
  176. package/dist/esm/chunks/chunk.YKIBREM5.js +7 -0
  177. package/dist/esm/chunks/chunk.YWAUEUAH.js +7 -0
  178. package/dist/esm/chunks/chunk.YWAUEUAH.js.map +7 -0
  179. package/dist/esm/chunks/{chunk.YIFI5D2X.js → chunk.Z5RROENA.js} +2 -2
  180. package/dist/esm/chunks/{chunk.YIFI5D2X.js.map → chunk.Z5RROENA.js.map} +3 -3
  181. package/dist/esm/chunks/{chunk.ZREXLSAJ.js → chunk.Z5ZLKM7W.js} +2 -2
  182. package/dist/esm/chunks/chunk.ZGRQDDHO.js +7 -0
  183. package/dist/esm/chunks/{chunk.U5XNDTSZ.js.map → chunk.ZGRQDDHO.js.map} +2 -2
  184. package/dist/esm/chunks/{chunk.TGVLYX5F.js → chunk.ZKM667OT.js} +2 -2
  185. package/dist/esm/chunks/{chunk.TGVLYX5F.js.map → chunk.ZKM667OT.js.map} +2 -2
  186. package/dist/esm/chunks/chunk.ZRSDTCSD.js +7 -0
  187. package/dist/esm/chunks/chunk.ZRSDTCSD.js.map +7 -0
  188. package/dist/esm/chunks/chunk.ZSZFWZAI.js +7 -0
  189. package/dist/esm/chunks/chunk.ZSZFWZAI.js.map +7 -0
  190. package/dist/esm/circular-progress/index.js +1 -1
  191. package/dist/esm/color-picker/index.js +1 -1
  192. package/dist/esm/core/base/index.js +1 -1
  193. package/dist/esm/core/index.js +1 -1
  194. package/dist/esm/core/utils/index.js +1 -1
  195. package/dist/esm/date-picker/index.js +1 -1
  196. package/dist/esm/date-range-picker/index.js +1 -1
  197. package/dist/esm/dialog/index.js +1 -1
  198. package/dist/esm/divider/index.js +1 -1
  199. package/dist/esm/drawer/base/index.js +1 -1
  200. package/dist/esm/drawer/drawer/index.js +1 -1
  201. package/dist/esm/drawer/index.js +1 -1
  202. package/dist/esm/drawer/mini-drawer/index.js +1 -1
  203. package/dist/esm/drawer/modal-drawer/index.js +1 -1
  204. package/dist/esm/expansion-panel/index.js +1 -1
  205. package/dist/esm/file-picker/index.js +1 -1
  206. package/dist/esm/floating-action-button/index.js +1 -1
  207. package/dist/esm/focus-indicator/index.js +1 -1
  208. package/dist/esm/icon/index.js +1 -1
  209. package/dist/esm/icon-button/index.js +1 -1
  210. package/dist/esm/index.js +1 -1
  211. package/dist/esm/inline-message/index.js +1 -1
  212. package/dist/esm/keyboard-shortcut/index.js +1 -1
  213. package/dist/esm/label/index.js +7 -0
  214. package/dist/esm/label/index.js.map +7 -0
  215. package/dist/esm/label-value/index.js +1 -1
  216. package/dist/esm/linear-progress/index.js +1 -1
  217. package/dist/esm/list/index.js +1 -1
  218. package/dist/esm/list/list/index.js +1 -1
  219. package/dist/esm/list/list-item/index.js +1 -1
  220. package/dist/esm/list-dropdown/index.js +1 -1
  221. package/dist/esm/menu/index.js +1 -1
  222. package/dist/esm/open-icon/index.js +1 -1
  223. package/dist/esm/page-state/index.js +1 -1
  224. package/dist/esm/paginator/index.js +1 -1
  225. package/dist/esm/popup/index.js +1 -1
  226. package/dist/esm/product-icon/index.js +1 -1
  227. package/dist/esm/profile-card/index.js +1 -1
  228. package/dist/esm/quantity-field/index.js +1 -1
  229. package/dist/esm/radio/index.js +1 -1
  230. package/dist/esm/ripple/index.js +1 -1
  231. package/dist/esm/scaffold/index.js +1 -1
  232. package/dist/esm/select/core/index.js +1 -1
  233. package/dist/esm/select/index.js +1 -1
  234. package/dist/esm/select/option/index.js +1 -1
  235. package/dist/esm/select/option-group/index.js +1 -1
  236. package/dist/esm/select/select/index.js +1 -1
  237. package/dist/esm/select/select-dropdown/index.js +1 -1
  238. package/dist/esm/skeleton/index.js +1 -1
  239. package/dist/esm/slider/index.js +1 -1
  240. package/dist/esm/split-button/index.js +7 -0
  241. package/dist/esm/split-button/index.js.map +7 -0
  242. package/dist/esm/split-view/index.js +1 -1
  243. package/dist/esm/split-view/split-view/index.js +1 -1
  244. package/dist/esm/split-view/split-view-panel/index.js +1 -1
  245. package/dist/esm/stack/index.js +1 -1
  246. package/dist/esm/state-layer/index.js +1 -1
  247. package/dist/esm/stepper/index.js +1 -1
  248. package/dist/esm/stepper/step/index.js +1 -1
  249. package/dist/esm/stepper/stepper/index.js +1 -1
  250. package/dist/esm/switch/index.js +1 -1
  251. package/dist/esm/table/index.js +1 -1
  252. package/dist/esm/tabs/index.js +1 -1
  253. package/dist/esm/tabs/tab/index.js +1 -1
  254. package/dist/esm/tabs/tab-bar/index.js +1 -1
  255. package/dist/esm/text-field/index.js +1 -1
  256. package/dist/esm/time-picker/index.js +1 -1
  257. package/dist/esm/toast/index.js +1 -1
  258. package/dist/esm/toolbar/index.js +1 -1
  259. package/dist/esm/tooltip/index.js +1 -1
  260. package/dist/esm/view-switcher/index.js +1 -1
  261. package/dist/esm/view-switcher/view/index.js +1 -1
  262. package/dist/forge-dark.css +1 -1
  263. package/dist/forge.css +1 -1
  264. package/dist/table/forge-table.css +1 -1
  265. package/dist/theme/forge-theme.css +1 -1
  266. package/dist/typography/forge-typography.css +1 -1
  267. package/esm/app-bar/app-bar.js +1 -1
  268. package/esm/app-bar/help-button/app-bar-help-button.js +1 -1
  269. package/esm/app-bar/menu-button/app-bar-menu-button.js +1 -1
  270. package/esm/app-bar/notification-button/app-bar-notification-button.js +1 -1
  271. package/esm/app-bar/profile-button/app-bar-profile-button-constants.js +1 -1
  272. package/esm/app-bar/profile-button/app-bar-profile-button.js +1 -1
  273. package/esm/autocomplete/autocomplete-foundation.js +2 -2
  274. package/esm/banner/banner-constants.js +1 -1
  275. package/esm/banner/banner.js +2 -2
  276. package/esm/bottom-sheet/bottom-sheet.js +1 -1
  277. package/esm/busy-indicator/busy-indicator.js +2 -2
  278. package/esm/button/base/base-button-adapter.d.ts +72 -0
  279. package/esm/button/base/base-button-adapter.js +250 -0
  280. package/esm/button/base/base-button-constants.d.ts +41 -0
  281. package/esm/button/base/base-button-constants.js +32 -0
  282. package/esm/button/base/base-button-foundation.d.ts +75 -0
  283. package/esm/button/base/base-button-foundation.js +234 -0
  284. package/esm/button/base/base-button.d.ts +51 -0
  285. package/esm/button/base/base-button.js +106 -0
  286. package/esm/button/button-adapter.d.ts +14 -0
  287. package/esm/button/button-adapter.js +14 -0
  288. package/esm/button/button-component-delegate.d.ts +4 -4
  289. package/esm/button/button-component-delegate.js +13 -17
  290. package/esm/button/button-constants.d.ts +10 -18
  291. package/esm/button/button-constants.js +6 -22
  292. package/esm/button/button-foundation.d.ts +25 -0
  293. package/esm/button/button-foundation.js +49 -0
  294. package/esm/button/button.d.ts +126 -30
  295. package/esm/button/button.js +160 -159
  296. package/esm/button/index.d.ts +3 -1
  297. package/esm/button/index.js +3 -1
  298. package/esm/button-toggle/button-toggle/button-toggle.js +1 -1
  299. package/esm/calendar/calendar-dom-utils.js +18 -30
  300. package/esm/calendar/calendar.js +1 -1
  301. package/esm/checkbox/checkbox-adapter.d.ts +50 -59
  302. package/esm/checkbox/checkbox-adapter.js +104 -186
  303. package/esm/checkbox/checkbox-component-delegate.d.ts +18 -9
  304. package/esm/checkbox/checkbox-component-delegate.js +58 -51
  305. package/esm/checkbox/checkbox-constants.d.ts +14 -56
  306. package/esm/checkbox/checkbox-constants.js +17 -50
  307. package/esm/checkbox/checkbox-foundation.d.ts +48 -18
  308. package/esm/checkbox/checkbox-foundation.js +139 -139
  309. package/esm/checkbox/checkbox.d.ts +120 -9
  310. package/esm/checkbox/checkbox.js +235 -36
  311. package/esm/checkbox/index.d.ts +1 -1
  312. package/esm/checkbox/index.js +1 -1
  313. package/esm/chip-field/chip-field-constants.d.ts +3 -0
  314. package/esm/chip-field/chip-field-constants.js +4 -0
  315. package/esm/chip-field/chip-field-foundation.d.ts +5 -0
  316. package/esm/chip-field/chip-field-foundation.js +20 -1
  317. package/esm/chip-field/chip-field.d.ts +5 -0
  318. package/esm/chip-field/chip-field.js +19 -1
  319. package/esm/chips/chip/chip.js +1 -1
  320. package/esm/circular-progress/circular-progress-constants.d.ts +4 -0
  321. package/esm/circular-progress/circular-progress-constants.js +2 -0
  322. package/esm/circular-progress/circular-progress-foundation.d.ts +9 -0
  323. package/esm/circular-progress/circular-progress-foundation.js +21 -0
  324. package/esm/circular-progress/circular-progress.d.ts +15 -2
  325. package/esm/circular-progress/circular-progress.js +25 -3
  326. package/esm/color-picker/color-picker.js +2 -2
  327. package/esm/constants.d.ts +7 -0
  328. package/esm/constants.js +4 -0
  329. package/esm/core/base/base-adapter.d.ts +13 -1
  330. package/esm/core/base/base-adapter.js +17 -0
  331. package/esm/core/base/base-component.d.ts +0 -38
  332. package/esm/core/base/base-component.js +0 -4
  333. package/esm/core/base/base-focusable-component.d.ts +49 -0
  334. package/esm/core/base/base-focusable-component.js +90 -0
  335. package/esm/core/base/base-form-component.d.ts +45 -0
  336. package/esm/core/base/base-form-component.js +19 -0
  337. package/esm/core/base/base-nullable-form-component.d.ts +35 -0
  338. package/esm/core/base/base-nullable-form-component.js +20 -0
  339. package/esm/core/utils/feature-detection.d.ts +10 -0
  340. package/esm/core/utils/feature-detection.js +12 -0
  341. package/esm/core/utils/index.d.ts +2 -1
  342. package/esm/core/utils/index.js +2 -1
  343. package/esm/core/utils/reflect-utils.d.ts +107 -0
  344. package/esm/core/utils/reflect-utils.js +227 -0
  345. package/esm/date-picker/base/base-date-picker-utils.js +5 -8
  346. package/esm/field/field-constants.d.ts +8 -0
  347. package/esm/field/field-constants.js +10 -8
  348. package/esm/file-picker/file-picker-component-delegate.js +1 -1
  349. package/esm/file-picker/file-picker.js +1 -1
  350. package/esm/focus-indicator/focus-indicator-adapter.d.ts +2 -2
  351. package/esm/focus-indicator/focus-indicator-adapter.js +3 -3
  352. package/esm/focus-indicator/focus-indicator-foundation.js +3 -2
  353. package/esm/focus-indicator/focus-indicator.js +1 -1
  354. package/esm/icon-button/icon-button-adapter.d.ts +12 -0
  355. package/esm/icon-button/icon-button-adapter.js +11 -0
  356. package/esm/icon-button/icon-button-component-delegate.d.ts +0 -4
  357. package/esm/icon-button/icon-button-component-delegate.js +8 -18
  358. package/esm/icon-button/icon-button-constants.d.ts +26 -17
  359. package/esm/icon-button/icon-button-constants.js +17 -28
  360. package/esm/icon-button/icon-button-foundation.d.ts +39 -0
  361. package/esm/icon-button/icon-button-foundation.js +122 -0
  362. package/esm/icon-button/icon-button.d.ts +69 -41
  363. package/esm/icon-button/icon-button.js +107 -213
  364. package/esm/index.d.ts +2 -0
  365. package/esm/index.js +4 -0
  366. package/esm/label/index.d.ts +11 -0
  367. package/esm/label/index.js +15 -0
  368. package/esm/label/label-adapter.d.ts +51 -0
  369. package/esm/label/label-adapter.js +102 -0
  370. package/esm/label/label-aware.d.ts +15 -0
  371. package/esm/label/label-aware.js +13 -0
  372. package/esm/label/label-constants.d.ts +17 -0
  373. package/esm/label/label-constants.js +31 -0
  374. package/esm/label/label-foundation.d.ts +40 -0
  375. package/esm/label/label-foundation.js +106 -0
  376. package/esm/label/label.d.ts +49 -0
  377. package/esm/label/label.js +80 -0
  378. package/esm/linear-progress/linear-progress-constants.d.ts +3 -0
  379. package/esm/linear-progress/linear-progress-constants.js +1 -0
  380. package/esm/linear-progress/linear-progress-foundation.d.ts +5 -0
  381. package/esm/linear-progress/linear-progress-foundation.js +13 -3
  382. package/esm/linear-progress/linear-progress.d.ts +8 -1
  383. package/esm/linear-progress/linear-progress.js +13 -2
  384. package/esm/list/list/list-adapter.js +0 -1
  385. package/esm/list/list/list.js +1 -1
  386. package/esm/list/list-item/list-item-adapter.d.ts +12 -4
  387. package/esm/list/list-item/list-item-adapter.js +36 -5
  388. package/esm/list/list-item/list-item-constants.d.ts +4 -0
  389. package/esm/list/list-item/list-item-constants.js +3 -1
  390. package/esm/list/list-item/list-item-foundation.d.ts +9 -0
  391. package/esm/list/list-item/list-item-foundation.js +34 -4
  392. package/esm/list/list-item/list-item.d.ts +15 -4
  393. package/esm/list/list-item/list-item.js +29 -6
  394. package/esm/menu/menu-constants.js +1 -1
  395. package/esm/menu/menu-foundation.js +0 -4
  396. package/esm/menu/menu.js +1 -1
  397. package/esm/paginator/paginator-adapter.d.ts +4 -2
  398. package/esm/paginator/paginator-adapter.js +21 -8
  399. package/esm/paginator/paginator-constants.js +4 -4
  400. package/esm/paginator/paginator-foundation.d.ts +2 -0
  401. package/esm/paginator/paginator-foundation.js +19 -16
  402. package/esm/paginator/paginator.d.ts +1 -0
  403. package/esm/paginator/paginator.js +5 -2
  404. package/esm/profile-card/profile-card.js +2 -2
  405. package/esm/quantity-field/quantity-field-constants.js +2 -2
  406. package/esm/select/core/base-select-foundation.js +3 -1
  407. package/esm/slider/slider-adapter.d.ts +1 -1
  408. package/esm/slider/slider-adapter.js +3 -2
  409. package/esm/slider/slider-constants.js +3 -3
  410. package/esm/slider/slider.d.ts +6 -11
  411. package/esm/slider/slider.js +11 -7
  412. package/esm/split-button/index.d.ts +10 -0
  413. package/esm/split-button/index.js +14 -0
  414. package/esm/split-button/split-button-adapter.d.ts +30 -0
  415. package/esm/split-button/split-button-adapter.js +84 -0
  416. package/esm/split-button/split-button-constants.d.ts +21 -0
  417. package/esm/split-button/split-button-constants.js +23 -0
  418. package/esm/split-button/split-button-foundation.d.ts +37 -0
  419. package/esm/split-button/split-button-foundation.js +77 -0
  420. package/esm/split-button/split-button.d.ts +57 -0
  421. package/esm/split-button/split-button.js +103 -0
  422. package/esm/split-view/split-view-panel/split-view-panel.js +1 -1
  423. package/esm/state-layer/state-layer-adapter.js +1 -0
  424. package/esm/state-layer/state-layer-foundation.js +10 -1
  425. package/esm/state-layer/state-layer.js +1 -1
  426. package/esm/stepper/stepper/stepper-foundation.js +1 -1
  427. package/esm/switch/index.d.ts +2 -0
  428. package/esm/switch/index.js +2 -0
  429. package/esm/switch/switch-adapter.d.ts +30 -4
  430. package/esm/switch/switch-adapter.js +100 -18
  431. package/esm/switch/switch-component-delegate.d.ts +22 -7
  432. package/esm/switch/switch-component-delegate.js +63 -28
  433. package/esm/switch/switch-constants.d.ts +12 -2
  434. package/esm/switch/switch-constants.js +22 -11
  435. package/esm/switch/switch-foundation.d.ts +23 -4
  436. package/esm/switch/switch-foundation.js +63 -11
  437. package/esm/switch/switch.d.ts +28 -16
  438. package/esm/switch/switch.js +65 -36
  439. package/esm/table/table-foundation.d.ts +2 -0
  440. package/esm/table/table-foundation.js +17 -6
  441. package/esm/table/table-utils.js +13 -1
  442. package/esm/table/types.d.ts +1 -0
  443. package/esm/tabs/tab/tab.js +2 -2
  444. package/esm/tabs/tab-bar/tab-bar-adapter.js +17 -20
  445. package/esm/tabs/tab-bar/tab-bar.js +1 -1
  446. package/esm/time-picker/time-picker-adapter.js +5 -8
  447. package/esm/toast/toast-adapter.d.ts +1 -1
  448. package/esm/toast/toast-adapter.js +1 -1
  449. package/esm/toast/toast.js +2 -2
  450. package/package.json +1 -2
  451. package/styles/app-bar/_mixins.scss +9 -4
  452. package/styles/banner/banner.scss +0 -1
  453. package/styles/bottom-sheet/bottom-sheet.scss +0 -1
  454. package/styles/busy-indicator/_mixins.scss +1 -1
  455. package/styles/busy-indicator/busy-indicator.scss +0 -1
  456. package/styles/button/_configuration.scss +16 -0
  457. package/styles/button/_core.scss +183 -0
  458. package/styles/button/_token-utils.scss +30 -0
  459. package/styles/button/button.scss +208 -0
  460. package/styles/button/index.scss +8 -0
  461. package/styles/button-toggle/button-toggle/_mixins.scss +26 -7
  462. package/styles/calendar/calendar.scss +0 -4
  463. package/styles/{button/forge-button.scss → checkbox/_configuration.scss} +4 -3
  464. package/styles/checkbox/_core.scss +157 -0
  465. package/styles/checkbox/_token-utils.scss +30 -0
  466. package/styles/checkbox/checkbox.scss +143 -7
  467. package/styles/checkbox/index.scss +8 -0
  468. package/styles/chips/chip/_mixins.scss +21 -7
  469. package/styles/circular-progress/_configuration.scss +8 -15
  470. package/styles/circular-progress/_core.scss +19 -19
  471. package/styles/circular-progress/_token-utils.scss +30 -0
  472. package/styles/circular-progress/circular-progress.scss +51 -4
  473. package/styles/circular-progress/index.scss +1 -0
  474. package/styles/color-picker/color-picker.scss +0 -3
  475. package/styles/core/styles/_utils.scss +67 -4
  476. package/styles/core/styles/spacing/index.scss +7 -0
  477. package/styles/core/styles/tokens/_token-utils.scss +118 -0
  478. package/styles/core/styles/tokens/button/_tokens.scss +115 -0
  479. package/styles/core/styles/tokens/checkbox/_tokens.scss +69 -0
  480. package/styles/core/styles/tokens/circular-progress/_tokens.scss +13 -3
  481. package/styles/core/styles/tokens/focus-indicator/_tokens.scss +8 -5
  482. package/styles/core/styles/tokens/icon-button/_tokens.scss +106 -0
  483. package/styles/core/styles/tokens/index.scss +0 -1
  484. package/styles/core/styles/tokens/linear-progress/_tokens.scss +14 -3
  485. package/styles/core/styles/tokens/spacing/_tokens.scss +15 -1
  486. package/styles/core/styles/tokens/split-button/_tokens.scss +21 -0
  487. package/styles/core/styles/tokens/switch/_tokens.scss +4 -4
  488. package/styles/core/styles/tokens/tabs/tab/_tokens.scss +1 -1
  489. package/styles/core/styles/tokens/tabs/tab-bar/_tokens.scss +2 -2
  490. package/styles/core/styles/tokens/theme/_token-utils.scss +8 -4
  491. package/styles/core/styles/tokens/typography/_tokens.label.scss +0 -1
  492. package/styles/core/styles/typography/index.scss +26 -1
  493. package/styles/file-picker/_mixins.scss +1 -1
  494. package/styles/focus-indicator/_animations.scss +6 -4
  495. package/styles/focus-indicator/_configuration.scss +2 -15
  496. package/styles/focus-indicator/_core.scss +20 -25
  497. package/styles/focus-indicator/_token-utils.scss +31 -0
  498. package/styles/focus-indicator/focus-indicator.scss +28 -6
  499. package/styles/focus-indicator/index.scss +1 -0
  500. package/styles/forge.scss +0 -2
  501. package/styles/icon-button/_configuration.scss +16 -0
  502. package/styles/icon-button/_core.scss +145 -0
  503. package/styles/icon-button/_token-utils.scss +30 -0
  504. package/styles/icon-button/icon-button.scss +315 -0
  505. package/styles/icon-button/index.scss +8 -0
  506. package/styles/label/_core.scss +17 -0
  507. package/styles/{icon-button/forge-icon-button.scss → label/index.scss} +1 -3
  508. package/styles/label/label.scss +18 -0
  509. package/styles/linear-progress/_animations.scss +3 -1
  510. package/styles/linear-progress/_configuration.scss +15 -16
  511. package/styles/linear-progress/_core.scss +17 -19
  512. package/styles/linear-progress/_token-utils.scss +31 -0
  513. package/styles/linear-progress/index.scss +1 -0
  514. package/styles/linear-progress/linear-progress.scss +42 -6
  515. package/styles/list/list/_configuration.scss +2 -4
  516. package/styles/list/list/_core.scss +3 -8
  517. package/styles/list/list/_token-utils.scss +30 -0
  518. package/styles/list/list/index.scss +1 -0
  519. package/styles/list/list/list.scss +11 -0
  520. package/styles/list/list-item/_configuration.scss +5 -61
  521. package/styles/list/list-item/_core.scss +51 -56
  522. package/styles/list/list-item/_token-utils.scss +30 -0
  523. package/styles/list/list-item/index.scss +1 -0
  524. package/styles/list/list-item/list-item.scss +10 -3
  525. package/styles/menu/menu.scss +1 -1
  526. package/styles/paginator/paginator.scss +0 -1
  527. package/styles/profile-card/profile-card.scss +0 -1
  528. package/styles/slider/_configuration.scss +5 -50
  529. package/styles/slider/_core.scss +58 -63
  530. package/styles/slider/_token-utils.scss +30 -0
  531. package/styles/slider/index.scss +1 -0
  532. package/styles/slider/slider.scss +26 -3
  533. package/styles/split-button/_configuration.scss +12 -0
  534. package/styles/split-button/_token-utils.scss +30 -0
  535. package/styles/split-button/index.scss +7 -0
  536. package/styles/split-button/split-button.scss +97 -0
  537. package/styles/state-layer/_configuration.scss +2 -9
  538. package/styles/state-layer/_core.scss +11 -16
  539. package/styles/state-layer/_token-utils.scss +31 -0
  540. package/styles/state-layer/index.scss +1 -0
  541. package/styles/state-layer/state-layer.scss +7 -0
  542. package/styles/switch/_configuration.scss +2 -87
  543. package/styles/switch/_core.scss +83 -86
  544. package/styles/switch/_token-utils.scss +30 -0
  545. package/styles/switch/index.scss +1 -0
  546. package/styles/switch/switch.scss +118 -84
  547. package/styles/table/_mixins.scss +20 -2
  548. package/styles/tabs/tab/_configuration.scss +7 -49
  549. package/styles/tabs/tab/_core.scss +27 -32
  550. package/styles/tabs/tab/_token-utils.scss +30 -0
  551. package/styles/tabs/tab/index.scss +1 -0
  552. package/styles/tabs/tab/tab.scss +87 -44
  553. package/styles/tabs/tab-bar/_configuration.scss +2 -5
  554. package/styles/tabs/tab-bar/_core.scss +26 -9
  555. package/styles/tabs/tab-bar/_token-utils.scss +30 -0
  556. package/styles/tabs/tab-bar/index.scss +2 -1
  557. package/styles/tabs/tab-bar/tab-bar.scss +68 -34
  558. package/styles/toast/_mixins.scss +1 -1
  559. package/styles/toast/toast.scss +0 -2
  560. package/styles/typography/forge-typography.scss +5 -2
  561. package/dist/button/forge-button.css +0 -6
  562. package/dist/esm/chunks/chunk.2LIWNFQK.js +0 -7
  563. package/dist/esm/chunks/chunk.3X4N4ZPY.js +0 -7
  564. package/dist/esm/chunks/chunk.3X4N4ZPY.js.map +0 -7
  565. package/dist/esm/chunks/chunk.436MTO6R.js +0 -7
  566. package/dist/esm/chunks/chunk.436MTO6R.js.map +0 -7
  567. package/dist/esm/chunks/chunk.4CXLGEJO.js +0 -7
  568. package/dist/esm/chunks/chunk.4CXLGEJO.js.map +0 -7
  569. package/dist/esm/chunks/chunk.7L66GZDN.js +0 -7
  570. package/dist/esm/chunks/chunk.7PPBXNAD.js +0 -7
  571. package/dist/esm/chunks/chunk.7PPBXNAD.js.map +0 -7
  572. package/dist/esm/chunks/chunk.A3ZDCBLA.js +0 -7
  573. package/dist/esm/chunks/chunk.A3ZDCBLA.js.map +0 -7
  574. package/dist/esm/chunks/chunk.CMRVP4EA.js +0 -7
  575. package/dist/esm/chunks/chunk.CZEF72BG.js +0 -12
  576. package/dist/esm/chunks/chunk.CZEF72BG.js.map +0 -7
  577. package/dist/esm/chunks/chunk.D5ZHKPCL.js +0 -7
  578. package/dist/esm/chunks/chunk.D5ZHKPCL.js.map +0 -7
  579. package/dist/esm/chunks/chunk.DLQSINSS.js +0 -7
  580. package/dist/esm/chunks/chunk.DLQSINSS.js.map +0 -7
  581. package/dist/esm/chunks/chunk.G6JWSERI.js +0 -7
  582. package/dist/esm/chunks/chunk.G6JWSERI.js.map +0 -7
  583. package/dist/esm/chunks/chunk.GO5A4GKZ.js +0 -7
  584. package/dist/esm/chunks/chunk.GO5A4GKZ.js.map +0 -7
  585. package/dist/esm/chunks/chunk.GWIXDVIA.js +0 -7
  586. package/dist/esm/chunks/chunk.GWIXDVIA.js.map +0 -7
  587. package/dist/esm/chunks/chunk.HGH6SSHZ.js +0 -7
  588. package/dist/esm/chunks/chunk.HGH6SSHZ.js.map +0 -7
  589. package/dist/esm/chunks/chunk.HJ23XQDJ.js +0 -7
  590. package/dist/esm/chunks/chunk.HJ23XQDJ.js.map +0 -7
  591. package/dist/esm/chunks/chunk.I5SFCLDD.js +0 -7
  592. package/dist/esm/chunks/chunk.IURDWGLD.js +0 -7
  593. package/dist/esm/chunks/chunk.IURDWGLD.js.map +0 -7
  594. package/dist/esm/chunks/chunk.JCO4M4PF.js +0 -7
  595. package/dist/esm/chunks/chunk.LNLO36U6.js +0 -7
  596. package/dist/esm/chunks/chunk.LV7XF22P.js +0 -7
  597. package/dist/esm/chunks/chunk.LV7XF22P.js.map +0 -7
  598. package/dist/esm/chunks/chunk.MLTEGJH6.js +0 -7
  599. package/dist/esm/chunks/chunk.MWWY5TX5.js +0 -7
  600. package/dist/esm/chunks/chunk.MWWY5TX5.js.map +0 -7
  601. package/dist/esm/chunks/chunk.O5GE3FFV.js +0 -7
  602. package/dist/esm/chunks/chunk.O5GE3FFV.js.map +0 -7
  603. package/dist/esm/chunks/chunk.OQ75YGB6.js +0 -7
  604. package/dist/esm/chunks/chunk.PCOOIP2H.js +0 -7
  605. package/dist/esm/chunks/chunk.PCOOIP2H.js.map +0 -7
  606. package/dist/esm/chunks/chunk.PDICDA2V.js +0 -7
  607. package/dist/esm/chunks/chunk.PDICDA2V.js.map +0 -7
  608. package/dist/esm/chunks/chunk.Q7BWJCT5.js +0 -7
  609. package/dist/esm/chunks/chunk.TSH7BTC3.js +0 -7
  610. package/dist/esm/chunks/chunk.U5XNDTSZ.js +0 -7
  611. package/dist/esm/chunks/chunk.UAKQY7QB.js +0 -7
  612. package/dist/esm/chunks/chunk.UAKQY7QB.js.map +0 -7
  613. package/dist/esm/chunks/chunk.UAVC4YLD.js +0 -7
  614. package/dist/esm/chunks/chunk.URFSXQKR.js +0 -7
  615. package/dist/esm/chunks/chunk.V6443MP3.js +0 -7
  616. package/dist/esm/chunks/chunk.V6443MP3.js.map +0 -7
  617. package/dist/esm/chunks/chunk.VAAID3SH.js +0 -7
  618. package/dist/esm/chunks/chunk.VAAID3SH.js.map +0 -7
  619. package/dist/esm/chunks/chunk.VPNDAKM3.js +0 -7
  620. package/dist/esm/chunks/chunk.VPNDAKM3.js.map +0 -7
  621. package/dist/esm/chunks/chunk.WCTSXMGU.js +0 -7
  622. package/dist/esm/chunks/chunk.WCTSXMGU.js.map +0 -7
  623. package/dist/esm/chunks/chunk.WOMYKBUG.js +0 -12
  624. package/dist/esm/chunks/chunk.WOMYKBUG.js.map +0 -7
  625. package/dist/esm/chunks/chunk.WVGIT7F7.js +0 -7
  626. package/dist/esm/chunks/chunk.WVGIT7F7.js.map +0 -7
  627. package/dist/esm/chunks/chunk.YOXZOPAC.js +0 -7
  628. package/dist/esm/chunks/chunk.YOXZOPAC.js.map +0 -7
  629. package/dist/esm/chunks/chunk.YP2NHWIW.js +0 -7
  630. package/dist/esm/chunks/chunk.YPA27RX7.js +0 -7
  631. package/dist/esm/chunks/chunk.YXXKPT6P.js +0 -7
  632. package/dist/esm/chunks/chunk.ZMUDT5UK.js +0 -7
  633. package/dist/esm/chunks/chunk.ZMUDT5UK.js.map +0 -7
  634. package/dist/icon-button/forge-icon-button.css +0 -6
  635. package/esm/core/utils/a11y-utils.d.ts +0 -32
  636. package/esm/core/utils/a11y-utils.js +0 -111
  637. package/styles/button/_button-base.scss +0 -183
  638. package/styles/button/_button-filled-theme.scss +0 -60
  639. package/styles/button/_button-filled.scss +0 -71
  640. package/styles/button/_button-outlined-theme.scss +0 -175
  641. package/styles/button/_button-outlined.scss +0 -76
  642. package/styles/button/_button-protected-theme.scss +0 -60
  643. package/styles/button/_button-protected.scss +0 -88
  644. package/styles/button/_button-ripple.scss +0 -69
  645. package/styles/button/_button-shared-theme.scss +0 -447
  646. package/styles/button/_button-text-theme.scss +0 -60
  647. package/styles/button/_button-text.scss +0 -57
  648. package/styles/button/_button.mixins.scss +0 -148
  649. package/styles/button/_mixins.scss +0 -183
  650. package/styles/checkbox/_checkbox-custom-properties.scss +0 -11
  651. package/styles/checkbox/_checkbox-theme.scss +0 -577
  652. package/styles/checkbox/_checkbox.mixins.scss +0 -595
  653. package/styles/icon-button/_mixins.scss +0 -345
  654. package/styles/icon-button/_variables.scss +0 -42
  655. /package/dist/esm/chunks/{chunk.4USQ2AP6.js.map → chunk.2MSL7CYM.js.map} +0 -0
  656. /package/dist/esm/chunks/{chunk.HDO3WRH7.js.map → chunk.3HCYRDRI.js.map} +0 -0
  657. /package/dist/esm/chunks/{chunk.UVJFHSMF.js.map → chunk.3R4BUIQP.js.map} +0 -0
  658. /package/dist/esm/chunks/{chunk.37JFBP4X.js.map → chunk.3ZPSN2QG.js.map} +0 -0
  659. /package/dist/esm/chunks/{chunk.HKSXC5VK.js.map → chunk.5N4N6DL6.js.map} +0 -0
  660. /package/dist/esm/chunks/{chunk.AQ7ROWO4.js.map → chunk.5PG6WIIX.js.map} +0 -0
  661. /package/dist/esm/chunks/{chunk.C7VEJINB.js.map → chunk.675V42JS.js.map} +0 -0
  662. /package/dist/esm/chunks/{chunk.OQAD6MFL.js.map → chunk.7ZROQ6D3.js.map} +0 -0
  663. /package/dist/esm/chunks/{chunk.W7H2ZYNR.js.map → chunk.AMLT6XJP.js.map} +0 -0
  664. /package/dist/esm/chunks/{chunk.TCFKFKZW.js.map → chunk.AMZZKEAE.js.map} +0 -0
  665. /package/dist/esm/chunks/{chunk.DH76CMUT.js.map → chunk.APPY5AYL.js.map} +0 -0
  666. /package/dist/esm/chunks/{chunk.7M4HRJYP.js.map → chunk.ARQMMZJL.js.map} +0 -0
  667. /package/dist/esm/chunks/{chunk.QNVVUUNQ.js.map → chunk.AUBOJZQ7.js.map} +0 -0
  668. /package/dist/esm/chunks/{chunk.RXLORASN.js.map → chunk.BB4UF5RX.js.map} +0 -0
  669. /package/dist/esm/chunks/{chunk.NDJZYFRT.js.map → chunk.BTXY3XMJ.js.map} +0 -0
  670. /package/dist/esm/chunks/{chunk.AY43NTAK.js.map → chunk.DTLZOIUQ.js.map} +0 -0
  671. /package/dist/esm/chunks/{chunk.PLNLLKP2.js.map → chunk.FLWNOP42.js.map} +0 -0
  672. /package/dist/esm/chunks/{chunk.IJ2I25V3.js.map → chunk.FXIWCHLW.js.map} +0 -0
  673. /package/dist/esm/chunks/{chunk.6VSFLBZF.js.map → chunk.G73KL7P2.js.map} +0 -0
  674. /package/dist/esm/chunks/{chunk.PDSOXEMY.js.map → chunk.GNDKQPDV.js.map} +0 -0
  675. /package/dist/esm/chunks/{chunk.RWUJGZ3R.js.map → chunk.HAKF2T2D.js.map} +0 -0
  676. /package/dist/esm/chunks/{chunk.ZYVXIP42.js.map → chunk.HDG2GHKC.js.map} +0 -0
  677. /package/dist/esm/chunks/{chunk.EY37FYZ4.js.map → chunk.HOLCNJXC.js.map} +0 -0
  678. /package/dist/esm/chunks/{chunk.DQVYB55P.js.map → chunk.HRRJIFC5.js.map} +0 -0
  679. /package/dist/esm/chunks/{chunk.WK2L7BPJ.js.map → chunk.IDMDBMBR.js.map} +0 -0
  680. /package/dist/esm/chunks/{chunk.WJXDDQUK.js.map → chunk.IHAHJPMB.js.map} +0 -0
  681. /package/dist/esm/chunks/{chunk.DABGA7I6.js.map → chunk.IMLJD35R.js.map} +0 -0
  682. /package/dist/esm/chunks/{chunk.66X366TV.js.map → chunk.IT7XPDAV.js.map} +0 -0
  683. /package/dist/esm/chunks/{chunk.RNUGVHZF.js.map → chunk.JVLJH6PR.js.map} +0 -0
  684. /package/dist/esm/chunks/{chunk.MLTEGJH6.js.map → chunk.KPJWP77R.js.map} +0 -0
  685. /package/dist/esm/chunks/{chunk.Z6AFASMO.js.map → chunk.KV5IKYG2.js.map} +0 -0
  686. /package/dist/esm/chunks/{chunk.7UJAI6P2.js.map → chunk.LCR4YH3O.js.map} +0 -0
  687. /package/dist/esm/chunks/{chunk.2WSXSOYB.js.map → chunk.LOG6GQOK.js.map} +0 -0
  688. /package/dist/esm/chunks/{chunk.VDGJ4UDL.js.map → chunk.MKJCHUJH.js.map} +0 -0
  689. /package/dist/esm/chunks/{chunk.IXGXASHQ.js.map → chunk.MWYQRG5W.js.map} +0 -0
  690. /package/dist/esm/chunks/{chunk.CBIHNCT5.js.map → chunk.NUMKGUCK.js.map} +0 -0
  691. /package/dist/esm/chunks/{chunk.R6NA7SV2.js.map → chunk.O6V3YNMO.js.map} +0 -0
  692. /package/dist/esm/chunks/{chunk.CQQSOTZ5.js.map → chunk.QLCVRJ3Q.js.map} +0 -0
  693. /package/dist/esm/chunks/{chunk.E4TAHUQO.js.map → chunk.R6LQBI42.js.map} +0 -0
  694. /package/dist/esm/chunks/{chunk.FK6NNHXH.js.map → chunk.RES7WDKH.js.map} +0 -0
  695. /package/dist/esm/chunks/{chunk.2LIWNFQK.js.map → chunk.RP674CRC.js.map} +0 -0
  696. /package/dist/esm/chunks/{chunk.SEWAMWO6.js.map → chunk.SIRXAA3O.js.map} +0 -0
  697. /package/dist/esm/chunks/{chunk.WWTQAN4G.js.map → chunk.SLJ6HDK7.js.map} +0 -0
  698. /package/dist/esm/chunks/{chunk.RBFGJH3C.js.map → chunk.TU74SREL.js.map} +0 -0
  699. /package/dist/esm/chunks/{chunk.4JF54GDJ.js.map → chunk.URJQNB3S.js.map} +0 -0
  700. /package/dist/esm/chunks/{chunk.C2MQN7MI.js.map → chunk.V24M62MC.js.map} +0 -0
  701. /package/dist/esm/chunks/{chunk.R2KOYHIZ.js.map → chunk.VO6YJCEU.js.map} +0 -0
  702. /package/dist/esm/chunks/{chunk.C5ZUGOOC.js.map → chunk.W2LN45WY.js.map} +0 -0
  703. /package/dist/esm/chunks/{chunk.HBCDD25D.js.map → chunk.XEFWZKHQ.js.map} +0 -0
  704. /package/dist/esm/chunks/{chunk.MHU452GM.js.map → chunk.XLL7L2UB.js.map} +0 -0
  705. /package/dist/esm/chunks/{chunk.YPA27RX7.js.map → chunk.XYAZVLPR.js.map} +0 -0
  706. /package/dist/esm/chunks/{chunk.AHAARGYM.js.map → chunk.YAERJVPL.js.map} +0 -0
  707. /package/dist/esm/chunks/{chunk.7L66GZDN.js.map → chunk.YBZK6LJZ.js.map} +0 -0
  708. /package/dist/esm/chunks/{chunk.CMRVP4EA.js.map → chunk.YKIBREM5.js.map} +0 -0
  709. /package/dist/esm/chunks/{chunk.ZREXLSAJ.js.map → chunk.Z5ZLKM7W.js.map} +0 -0
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/calendar/calendar-constants.ts", "../../src/calendar/calendar-locale-utils.ts", "../../src/calendar/calendar-dom-utils.ts", "../../src/calendar/calendar-dropdown/calendar-dropdown-constants.ts", "../../src/calendar/calendar-dropdown/calendar-dropdown.ts"],
4
- "sourcesContent": ["import { TOOLTIP_CONSTANTS } from '../tooltip/tooltip-constants';\nimport { COMPONENT_NAME_PREFIX } from '../constants';\nimport { CALENDAR_MENU_CONSTANTS } from './calendar-menu';\nimport { DateRange } from './core/date-range';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}calendar`;\n\nconst observedAttributes = {\n ALLOW_SINGLE_DATE_RANGE: 'allow-single-date-range',\n CLEAR_BUTTON: 'clear-button',\n CONSTRAIN_TO_ENABLED: 'constrain-to-enabled',\n FIRST_DAY_OF_WEEK: 'first-day-of-week',\n FIXED_HEIGHT: 'static-height',\n LIST_YEARS: 'list-years',\n LOCALE: 'locale',\n MAX: 'max',\n MENU_ANIMATION: 'menu-animation',\n MIN: 'min',\n MODE: 'mode',\n MONTH: 'month',\n PREVENT_FOCUS: 'prevent-focus',\n READONLY: 'readonly',\n SELECTION_FOLLOWS_MONTH: 'selection-follows-month',\n SHOW_HEADER: 'show-header',\n SHOW_OTHER_MONTHS: 'show-other-months',\n SHOW_TODAY: 'show-today',\n TODAY_BUTTON: 'today-button',\n VIEW: 'view',\n YEAR: 'year',\n YEAR_RANGE: 'year-range'\n};\n\nconst attributes = {\n ...observedAttributes,\n DATA_DATE: 'data-date',\n DATA_EVENT_THEME: 'data-event-theme',\n POPUP_CONTEXT: 'forge-popup-context'\n};\n\nconst classes = {\n ALLOW_SINGLE_DATE_RANGE: 'forge-calendar--allow-single-date-range',\n DATE: 'forge-calendar__date',\n DATE_GRID: 'forge-calendar__date-grid',\n DATE_INNER: 'forge-calendar__date__inner',\n DATE_OTHER_MONTH: 'forge-calendar__date--other-month',\n DATE_SPACER: 'forge-calendar__date-spacer',\n DATE_SELECTED: 'forge-calendar__date--selected',\n DATE_TODAY: 'forge-calendar__date--today',\n DATE_VIEW: 'forge-calendar__date-view',\n DATE_VIEW_ROW: 'forge-calendar__date-view__row',\n DATE_WRAPPER: 'forge-calendar__date-wrapper',\n DAY: 'forge-calendar__day',\n EVENT: 'forge-calendar__event',\n EVENT_OVERFLOW: 'forge-calendar__event--overflow',\n EVENT_WRAPPER: 'forge-calendar__event__wrapper',\n FIXED_HEIGHT: 'forge-calendar--fixed-height',\n FOOTER: 'forge-calendar__footer',\n HEADER: 'forge-calendar__header',\n MDC_RIPPLE_UPGRADED_FOCUSED: 'mdc-ripple-upgraded--background-focused',\n MONTH_MENU_OPEN: 'forge-calendar--month-menu-open',\n PREVENT_FOCUS: 'forge-calendar--prevent-focus',\n RANGE: 'forge-calendar__range',\n RANGE_END: 'forge-calendar__range--end',\n RANGE_START: 'forge-calendar__range--start',\n RANGE_TARGET: 'forge-calendar__range__target',\n READONLY: 'forge-calendar--readonly',\n RTL: 'forge-calendar--rtl',\n SHOW_OTHER_MONTHS: 'forge-calendar--show-other-months',\n SHOW_TODAY: 'forge-calendar--show-today',\n VIEW: 'forge-calendar__view',\n YEAR_MENU_OPEN: 'forge-calendar--year-menu-open'\n};\n\nconst ids = {\n ACCESSIBLE_HEADER: 'accessible-header',\n ACCESSIBLE_MONTH: 'accessible-month',\n ACCESSIBLE_YEAR: 'accessible-year',\n CLEAR_BUTTON: 'clear-button',\n DATE_GRID: 'date-grid',\n DATE_VIEW: 'date-view',\n DAY_ROW: 'day-row',\n FOOTER: 'footer',\n HEADER: 'header',\n MENU: 'menu',\n MONTH_BUTTON: 'month-button',\n NEXT_BUTTON: 'next-button',\n NEXT_BUTTON_TOOLTIP: 'next-button-tooltip',\n PREVIOUS_BUTTON: 'previous-button',\n PREVIOUS_BUTTON_TOOLTIP: 'previous-button-tooltip',\n TODAY_BUTTON: 'today-button',\n YEAR_BUTTON: 'year-button'\n};\n\nconst weekdayParts = {\n SUNDAY: 'sunday',\n MONDAY: 'monday',\n TUESDAY: 'tuesday',\n WEDNESDAY: 'wednesday',\n THURSDAY: 'thursday',\n FRIDAY: 'friday',\n SATURDAY: 'saturday'\n};\n\nconst parts = {\n ...weekdayParts,\n CLEAR_BUTTON: 'clear-button',\n DATE: 'date',\n DATE_OTHER_MONTH: 'date-other-month',\n DATE_VIEW: 'date-view',\n DATE_WRAPPER: 'date-wrapper',\n DAY: 'day',\n EVENT: 'event',\n EVENT_WRAPPER: 'event-wrapper',\n FOOTER: 'footer',\n HEADER: 'header',\n MONTH_BUTTON: 'month-button',\n MONTH_BUTTON_ELEMENT: 'month-button-element',\n NEXT_BUTTON: 'next-button',\n PREVIOUS_BUTTON: 'previous-button',\n RANGE: 'range',\n RANGE_END: 'range-end',\n RANGE_START: 'range-start',\n TODAY: 'today',\n TODAY_BUTTON: 'today-button',\n WEEKEND: 'weekend',\n YEAR_BUTTON: 'year-button',\n YEAR_BUTTON_ELEMENT: 'year-button-element'\n};\n\nconst selectors = {\n ACCESSIBLE_HEADER: `#${ids.ACCESSIBLE_HEADER}`,\n ACCESSIBLE_MONTH: `#${ids.ACCESSIBLE_MONTH}`,\n ACCESSIBLE_YEAR: `#${ids.ACCESSIBLE_YEAR}`,\n CALENDAR: '.forge-calendar',\n CLEAR_BUTTON: `#${ids.CLEAR_BUTTON}`,\n DATE: `.${classes.DATE}`,\n DATE_GRID: `#${ids.DATE_GRID}`,\n DATE_INNER: `.${classes.DATE_INNER}`,\n DATE_OTHER_MONTH: `.${classes.DATE_OTHER_MONTH}`,\n DATE_SPACER: `.${classes.DATE_SPACER}`,\n DATE_SELECTED: `.${classes.DATE_SELECTED}`,\n DATE_TODAY: `.${classes.DATE_TODAY}`,\n DATE_VIEW: `#${ids.DATE_VIEW}`,\n DATE_WRAPPER: `.${classes.DATE_WRAPPER}`,\n DAY_ROW: `#${ids.DAY_ROW}`,\n EVENT_WRAPPER: `.${classes.EVENT_WRAPPER}`,\n FOOTER: `#${ids.FOOTER}`,\n HEADER: `#${ids.HEADER}`,\n MENU: CALENDAR_MENU_CONSTANTS.elementName,\n MONTH_BUTTON: `#${ids.MONTH_BUTTON}`,\n NEXT_BUTTON: `#${ids.NEXT_BUTTON}`,\n NEXT_BUTTON_TOOLTIP: `#${ids.NEXT_BUTTON_TOOLTIP}`,\n PREVIOUS_BUTTON: `#${ids.PREVIOUS_BUTTON}`,\n PREVIOUS_BUTTON_TOOLTIP: `#${ids.PREVIOUS_BUTTON_TOOLTIP}`,\n RANGE: `.${classes.RANGE}`,\n RANGE_END: `.${classes.RANGE_END}`,\n RANGE_START: `.${classes.RANGE_START}`,\n TODAY_BUTTON: `#${ids.TODAY_BUTTON}`,\n TOOLTIP: TOOLTIP_CONSTANTS.elementName,\n VIEW: '#view',\n YEAR_BUTTON: `#${ids.YEAR_BUTTON}`\n};\n\nconst events = {\n DATE_SELECT: `${elementName}-date-select`,\n FOCUS_CHANGE: `${elementName}-focus-change`,\n MONTH_CHANGE: `${elementName}-month-change`,\n VIEW_CHANGE: `${elementName}-view-change`\n};\n\nconst numbers = {\n DEFAULT_MAX_YEAR_OFFSET: 50,\n DEFAULT_MIN_YEAR_OFFSET: 50,\n FINAL_WEEK_BEGIN_INDEX: 35,\n MONTH_LENGTH: 42,\n PENULTIMATE_WEEK_BEGIN_INDEX: 28,\n WEEK_LENGTH: 7,\n YEARS_IN_VIEW: 20\n};\n\nexport const CALENDAR_CONSTANTS = {\n elementName,\n attributes,\n classes,\n ids,\n parts,\n selectors,\n events,\n numbers\n};\n\nexport type CalendarDateBuilder = (date: ICalendarDateConfig, element: HTMLElement) => HTMLElement;\nexport type CalendarDateSelectCallback = (date: ICalendarDate) => boolean | Promise<boolean>;\nexport type CalendarDayBuilder = (day: DayOfWeek, element: HTMLElement) => HTMLElement;\nexport type CalendarDisabledDateBuilder = (date: Date) => boolean;\nexport type CalendarEventBuilder = (date: Date) => ICalendarEvent[] | ICalendarEvent | null;\nexport type CalendarTooltipBuilder = (date: ICalendarDate, content: string) => string | null;\n\nexport type CalendarMode = 'single' | 'multiple' | 'range';\nexport type CalendarView = 'date' | 'month' | 'year';\nexport type RangeSelectionState = 'none' | 'from' | 'to';\nexport type CalendarEventColor = 'primary' | 'secondary' | 'blue' | 'light-green' | 'cyan' | 'teal' | 'orange' | 'blue-grey' | 'grey' | 'red' | 'pink' | 'purple' | 'light-blue' | 'deep-purple' | 'green' | 'lime' | 'yellow' | 'brown' | 'deep-orange';\n\nexport interface ICalendarDate {\n date: Date;\n selected: boolean;\n events: ICalendarEvent[];\n}\n\nexport interface ICalendarDateConfig {\n date: Date;\n selected: boolean;\n today: boolean;\n thisMonth: boolean;\n disabled: boolean;\n}\n\nexport interface ICalendarDateOptions {\n builder?: CalendarDateBuilder;\n locale?: string;\n showOtherMonths?: boolean;\n}\n\nexport interface ICalendarDayOptions {\n builder?: CalendarDayBuilder;\n locale?: string;\n}\n\nexport interface ICalendarEvent {\n date: Date;\n label: string;\n color: CalendarEventColor | string;\n}\n\nexport interface ICalendarDateSelectEventData {\n date: Date | null;\n selected: boolean;\n range?: DateRange;\n rangeSelectionState?: RangeSelectionState;\n type: CalendarView;\n}\n\nexport interface ICalendarMonthChangeEventData {\n month: number;\n userSelected: boolean; // Indicates whether event is from explicit selection or regular navigation\n year: number;\n}\n\nexport interface ICalendarFocusChangeEventData {\n selected: boolean;\n text: string;\n type: CalendarView;\n value: Date | number;\n}\n\nexport interface ICalendarNumberRange {\n max: number;\n min: number;\n}\n\nexport interface ICalendarDisabledDateParams {\n builder: CalendarDisabledDateBuilder | undefined;\n disabledDates: Date[];\n disabledDaysOfWeek: DayOfWeek[];\n maxDate: Date | null;\n minDate: Date | null;\n otherMonth?: boolean;\n}\n\nexport interface ICalendarMenuMonthConfig {\n locale?: string;\n max: Date | null;\n min: Date | null;\n selectedMonth: number;\n selectedYear: number;\n}\n\nexport interface ICalendarMenuYearConfig {\n locale?: string;\n max: number;\n min: number;\n selectedYear: number;\n yearInView: number;\n}\n\nexport enum DayOfWeek {\n Sunday = 0,\n Monday = 1,\n Tuesday = 2,\n Wednesday = 3,\n Thursday = 4,\n Friday = 5,\n Saturday = 6\n}\n\nexport enum CalendarMonthFocus {\n First = 1,\n Last = 2,\n Current = 3\n}\n", "// TODO: implement year before month support\n// TODO: use a more robust strategy to get language and region parts from a locale, like the Intl API (in TypeScript 4.1.2 and es2020.intl)\n\nimport { DayOfWeek } from './calendar-constants';\n\n/** Returns a localized day name. */\nexport function getLocalizedDayOfWeek(day: DayOfWeek, format: 'long' | 'short' | 'narrow' | undefined, locale?: string): string {\n if (!locale) {\n locale = navigator.language;\n }\n // January 2017 starts on a Sunday\n return new Date(2017, 0, day + 1).toLocaleString(locale, {weekday: format});\n}\n\n/** Returns a localized date of the month. */\nexport function getLocalizedDayOfMonth(date: number, format: 'numeric' | '2-digit' | undefined, locale?: string): string {\n if (!locale) {\n locale = navigator.language;\n }\n return new Date(1970, 0, date).toLocaleDateString(locale, {day: format});\n}\n\n/** Returns a localized month name. */\nexport function getLocalizedMonth(month: number, format: 'long' | 'short' | 'narrow' | 'numeric' | '2-digit' | undefined, locale?: string): string {\n if (!locale) {\n locale = navigator.language;\n }\n return new Date(1970, month, 1).toLocaleString(locale, {month: format});\n}\n\n/** Returns a localized year name. */\nexport function getLocalizedYear(year: number, format: 'numeric' | '2-digit' | undefined, locale?: string): string {\n if (!locale) {\n locale = navigator.language;\n }\n return new Date(year, 0, 1).toLocaleDateString(locale, {year: format});\n}\n\n/** Returns the first day of week for a locale. */\nexport function getFirstDayOfWeekForLocale(locale?: string): DayOfWeek {\n if (!locale) {\n locale = navigator.language;\n }\n const localeParts = locale.match(/^([a-z]{2,3})(?:-([a-z]{3})(?=$|-))?(?:-([a-z]{4})(?=$|-))?(?:-([a-z]{2}|\\d{3})(?=$|-))?/i);\n if (!localeParts || !localeParts.length) {\n return DayOfWeek.Monday;\n }\n\n const language = localeParts[1];\n const region = localeParts[4];\n const saturdayRegions = 'AEAFBHDJDZEGIQIRJOKWLYOMQASDSY'.match(/../g);\n const sundayRegions = 'AGARASAUBDBRBSBTBWBZCACNCODMDOETGTGUHKHNIDILINJMJPKEKHKRLAMHMMMOMTMXMZNINPPAPEPHPKPRPTPYSASGSVTHTTTWUMUSVEVIWSYEZAZW'.match(/../g);\n const saturdayLanguages = ['ar', 'arq', 'arz', 'fa'];\n const sundayLanguages = 'amasbndzengnguhehiidjajvkmknkolomhmlmrmtmyneomorpapssdsmsnsutatethtnurzhzu'.match(/../g);\n\n if (region) {\n if (sundayRegions && sundayRegions.includes(region)) {\n return DayOfWeek.Sunday;\n } else if (saturdayRegions && saturdayRegions.includes(region)) {\n return DayOfWeek.Saturday;\n } else {\n return DayOfWeek.Monday;\n }\n } else {\n if (sundayLanguages && sundayLanguages.includes(language)) {\n return DayOfWeek.Sunday;\n } else if (saturdayLanguages && saturdayLanguages.includes(language)) {\n return DayOfWeek.Saturday;\n } else {\n return DayOfWeek.Monday;\n }\n }\n}\n\n/** Returns an array of weekend days for a locale. */\nexport function getWeekendDaysForLocale(locale?: string): DayOfWeek[] {\n if (!locale) {\n locale = navigator.language;\n }\n const region: string = locale.split('-')[1];\n switch (region) {\n case 'DZ':\n case 'BH':\n case 'BD':\n case 'EG':\n case 'IQ':\n case 'IL':\n case 'JO':\n case 'KW':\n case 'LY':\n case 'MV': // Not consistent across Malaysia\n case 'MR':\n case 'NP':\n case 'OM':\n case 'QA':\n case 'SA':\n case 'SD':\n case 'SY':\n case 'AE': // Not consistent across UAE\n case 'YE':\n case 'AF': // Thursday morning is a workday\n case 'IR': // Thursday morning is a workday\n return [DayOfWeek.Thursday, DayOfWeek.Friday];\n case 'BN':\n return [DayOfWeek.Sunday, DayOfWeek.Friday];\n default:\n return [DayOfWeek.Sunday, DayOfWeek.Saturday];\n }\n}\n\n/** Returns whether a language is written right-to-left. */\nexport function isRtlLocale(locale?: string): boolean {\n if (!locale) {\n locale = navigator.language;\n }\n const rtlLocales: string[] = [\n 'ar',\n 'arc',\n 'ckb',\n 'dv',\n 'fa',\n 'ha',\n 'he',\n 'khw',\n 'ks',\n 'ps',\n 'sd',\n 'ur',\n 'uz-AF',\n 'yi'\n ];\n return rtlLocales.some(l => locale ? locale.startsWith(l) : false);\n}\n", "import { getEventPath, appendToAttribute, toggleOnAttribute } from '@tylertech/forge-core';\n\nimport { IIconComponent } from '../icon';\nimport { ITooltipComponent } from '../tooltip';\nimport { CALENDAR_CONSTANTS, DayOfWeek, ICalendarDateConfig, ICalendarDateOptions, ICalendarEvent } from './calendar-constants';\nimport { getLocalizedDayOfMonth, getLocalizedDayOfWeek, getLocalizedMonth, getLocalizedYear } from './calendar-locale-utils';\n\n/** Converts a day into an id string prefixed with \"d\". */\nexport function getDayId(day: DayOfWeek): string {\n return `d${day}`;\n}\n\n/** Converts a date object into a \"yyyymmdd\" id string prefixed with \"d\". */\nexport function getDateId(date: Date): string {\n const month = String(date.getMonth()).padStart(2, '0');\n const day = String(date.getDate()).padStart(2, '0');\n const year = date.getFullYear();\n return ['d', year, month, day].join('');\n}\n\n/** Converts a date object into a \"yyyymmdd\" if string prefixed with \"e\". */\nexport function getEventWrapperId(date: Date): string {\n const month = String(date.getMonth()).padStart(2, '0');\n const day = String(date.getDate()).padStart(2, '0');\n const year = date.getFullYear();\n return ['e', year, month, day].join('');\n}\n\n/** Returns a day element. */\nexport function getDayElement(day: DayOfWeek, locale?: string): HTMLElement {\n const element = document.createElement('div');\n element.classList.add(CALENDAR_CONSTANTS.classes.DAY);\n element.id = getDayId(day);\n element.setAttribute('role', 'columnheader');\n element.setAttribute('aria-label', getLocalizedDayOfWeek(day, 'long', locale));\n element.setAttribute('part', CALENDAR_CONSTANTS.parts.DAY);\n element.textContent = getLocalizedDayOfWeek(day, 'short', locale);\n return element;\n}\n\n/** Returns a date row element. */\nexport function getDateRow(dates: ICalendarDateConfig[], index: number, options?: ICalendarDateOptions): HTMLElement {\n const element = document.createElement('div');\n element.classList.add(CALENDAR_CONSTANTS.classes.DATE_VIEW_ROW);\n element.setAttribute('role', 'row');\n\n // Populate the row\n if (index > 0 && !dates[0]?.thisMonth) {\n // A row after the first that begins on another month is all spacers and should be hidden from the accessibility tree\n dates.forEach(d => element.appendChild(getDateSpacerElement(d.date)));\n element.setAttribute('aria-hidden', 'true');\n } else {\n dates.forEach(d => {\n let dateElement = d.thisMonth || options?.showOtherMonths ? getDateElement(d, options?.locale) : getDateSpacerElement(d.date);\n if ((d.thisMonth || options?.showOtherMonths) && options?.builder) {\n dateElement = options.builder(d, dateElement);\n }\n element.appendChild(dateElement);\n });\n }\n\n return element;\n}\n\n/** Returns a date element. */\nexport function getDateElement(date: ICalendarDateConfig, locale?: string): HTMLElement {\n const element = document.createElement('div');\n const rangeElement = document.createElement('div');\n const innerElement = document.createElement('div');\n const rippleElement = document.createElement('div');\n const day = date.date.getDay();\n\n element.id = getDateId(date.date);\n element.tabIndex = -1;\n element.classList.add(CALENDAR_CONSTANTS.classes.DATE);\n element.classList.toggle(CALENDAR_CONSTANTS.classes.DATE_TODAY, date.today);\n element.classList.toggle(CALENDAR_CONSTANTS.classes.DATE_SELECTED, date.selected);\n element.classList.toggle(CALENDAR_CONSTANTS.classes.DATE_OTHER_MONTH, !date.thisMonth);\n element.setAttribute('role', 'gridcell');\n element.setAttribute('aria-disabled', date.disabled.toString());\n element.setAttribute('aria-label', `${date.today ? 'Today, ' : ''}${date.date.toLocaleDateString(locale ?? navigator.language, {weekday: 'long', month: 'long', day: 'numeric', year: 'numeric'})}`);\n element.setAttribute('aria-selected', date.selected.toString());\n element.setAttribute(CALENDAR_CONSTANTS.attributes.DATA_DATE, date.date.toDateString());\n element.toggleAttribute('disabled', date.disabled);\n element.setAttribute('part', CALENDAR_CONSTANTS.parts.DATE_WRAPPER);\n \n // Add day of week part\n let dayOfWeekPart = '';\n switch (day) {\n case DayOfWeek.Sunday:\n dayOfWeekPart = CALENDAR_CONSTANTS.parts.SUNDAY;\n break;\n case DayOfWeek.Monday:\n dayOfWeekPart = CALENDAR_CONSTANTS.parts.MONDAY;\n break;\n case DayOfWeek.Tuesday:\n dayOfWeekPart = CALENDAR_CONSTANTS.parts.TUESDAY;\n break;\n case DayOfWeek.Wednesday:\n dayOfWeekPart = CALENDAR_CONSTANTS.parts.WEDNESDAY;\n break;\n case DayOfWeek.Thursday:\n dayOfWeekPart = CALENDAR_CONSTANTS.parts.THURSDAY;\n break;\n case DayOfWeek.Friday:\n dayOfWeekPart = CALENDAR_CONSTANTS.parts.FRIDAY;\n break;\n case DayOfWeek.Saturday:\n dayOfWeekPart = CALENDAR_CONSTANTS.parts.SATURDAY;\n break;\n }\n appendToAttribute(innerElement, 'part', dayOfWeekPart);\n appendToAttribute(innerElement, 'part', CALENDAR_CONSTANTS.parts.DATE);\n toggleOnAttribute(innerElement, 'part', CALENDAR_CONSTANTS.parts.TODAY, date.today);\n toggleOnAttribute(innerElement, 'part', CALENDAR_CONSTANTS.parts.DATE_OTHER_MONTH, !date.thisMonth);\n\n rangeElement.classList.add(CALENDAR_CONSTANTS.classes.RANGE_TARGET);\n element.appendChild(rangeElement);\n innerElement.textContent = getLocalizedDayOfMonth(date.date.getDate(), 'numeric', locale);\n innerElement.classList.add(CALENDAR_CONSTANTS.classes.DATE_INNER);\n element.appendChild(innerElement);\n rippleElement.classList.add('mdc-ripple-surface');\n element.appendChild(rippleElement);\n return element;\n}\n\n/** Returns a date spacer element. */\nexport function getDateSpacerElement(date: Date): HTMLElement {\n // This is a span to easiliy differentiate it from a date in CSS\n const element = document.createElement('span');\n element.classList.add(CALENDAR_CONSTANTS.classes.DATE_SPACER);\n element.id = getDateId(date);\n return element;\n}\n\n/** Returns an event wrapper element. */\nexport function getEventWrapperElement(date: Date): HTMLElement {\n const element = document.createElement('div');\n element.classList.add(CALENDAR_CONSTANTS.classes.EVENT_WRAPPER);\n element.id = getEventWrapperId(date);\n element.setAttribute('part', CALENDAR_CONSTANTS.parts.EVENT_WRAPPER);\n return element;\n}\n\n/** Returns an event element. */\nexport function getEventElement(event: ICalendarEvent, overflow?: boolean): HTMLElement {\n const element: IIconComponent = document.createElement('forge-icon');\n element.classList.add(CALENDAR_CONSTANTS.classes.EVENT);\n element.setAttribute('part', CALENDAR_CONSTANTS.parts.EVENT);\n if (overflow) {\n element.classList.add(CALENDAR_CONSTANTS.classes.EVENT_OVERFLOW);\n element.name = 'add';\n } else {\n const svg = '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path d=\"M0 0h24v24H0z\" fill=\"none\"></path><path d=\"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2z\" stroke=\"var(--forge-calendar-event-stroke-color)\" stroke-width=\"4px\" paint-order=\"stroke\"></path></svg>';\n element.src = svg;\n element.setAttribute(CALENDAR_CONSTANTS.attributes.DATA_EVENT_THEME, event.color);\n }\n return element;\n}\n\n/** Returns a tooltip element. */\nexport function getTooltip(content: string): HTMLElement {\n const tooltip: ITooltipComponent = document.createElement('forge-tooltip');\n tooltip.text = content;\n tooltip.setAttribute('aria-hidden', 'true');\n return tooltip;\n}\n\n/** Returns a calendar header. */\nexport function getHeader(): HTMLElement {\n const element = document.createElement('div');\n element.classList.add(CALENDAR_CONSTANTS.classes.HEADER);\n element.id = CALENDAR_CONSTANTS.ids.HEADER;\n element.setAttribute('part', CALENDAR_CONSTANTS.parts.HEADER);\n\n const previousButton = document.createElement('forge-icon-button');\n const previousButtonElement = document.createElement('button');\n const previousIcon = document.createElement('forge-icon');\n const previousTooltip = document.createElement('forge-tooltip');\n previousButton.setAttribute('part', CALENDAR_CONSTANTS.parts.PREVIOUS_BUTTON);\n previousButtonElement.id = CALENDAR_CONSTANTS.ids.PREVIOUS_BUTTON;\n previousButtonElement.type = 'button';\n previousButtonElement.setAttribute('aria-label', 'Previous');\n previousIcon.setAttribute('name', 'keyboard_arrow_left');\n previousTooltip.id = CALENDAR_CONSTANTS.ids.PREVIOUS_BUTTON_TOOLTIP;\n previousTooltip.setAttribute('aria-hidden', 'true');\n previousTooltip.innerText = 'Previous';\n previousButton.appendChild(previousButtonElement);\n previousButton.appendChild(previousTooltip);\n previousButtonElement.appendChild(previousIcon);\n\n const nextButton = document.createElement('forge-icon-button');\n const nextButtonElement = document.createElement('button');\n const nextIcon = document.createElement('forge-icon');\n const nextTooltip = document.createElement('forge-tooltip');\n nextButton.setAttribute('part', CALENDAR_CONSTANTS.parts.NEXT_BUTTON);\n nextButtonElement.id = CALENDAR_CONSTANTS.ids.NEXT_BUTTON;\n nextButtonElement.type = 'button';\n nextButtonElement.setAttribute('aria-label', 'Next');\n nextIcon.setAttribute('name', 'keyboard_arrow_right');\n nextTooltip.id = CALENDAR_CONSTANTS.ids.NEXT_BUTTON_TOOLTIP;\n nextTooltip.setAttribute('aria-hidden', 'true');\n nextTooltip.innerText = 'Next';\n nextButton.appendChild(nextButtonElement);\n nextButton.appendChild(nextTooltip);\n nextButtonElement.appendChild(nextIcon);\n\n const monthButton = document.createElement('forge-button');\n const monthButtonElement = document.createElement('button');\n monthButton.setAttribute('part', CALENDAR_CONSTANTS.parts.MONTH_BUTTON);\n monthButtonElement.id = CALENDAR_CONSTANTS.ids.MONTH_BUTTON;\n monthButtonElement.type = 'button';\n monthButtonElement.setAttribute('aria-pressed', 'false');\n monthButton.appendChild(monthButtonElement);\n\n const yearButton = document.createElement('forge-button');\n const yearButtonElement = document.createElement('button');\n yearButton.setAttribute('part', CALENDAR_CONSTANTS.parts.YEAR_BUTTON);\n yearButtonElement.id = CALENDAR_CONSTANTS.ids.YEAR_BUTTON;\n yearButtonElement.type = 'button';\n yearButtonElement.setAttribute('aria-pressed', 'false');\n yearButton.appendChild(yearButtonElement);\n\n // TODO: change order of month and year based on locale\n const centerContainer = document.createElement('div');\n centerContainer.setAttribute('aria-live', 'polite');\n centerContainer.appendChild(monthButton);\n centerContainer.appendChild(yearButton);\n\n element.appendChild(previousButton);\n element.appendChild(centerContainer);\n element.appendChild(nextButton);\n return element;\n}\n\n/** Returns content for the month button. */\nexport function getMonthButtonContent(month: number, locale?: string): HTMLElement[] {\n const span = document.createElement('span');\n const icon = document.createElement('forge-icon');\n span.innerHTML = getLocalizedMonth(month, 'long', locale);\n icon.setAttribute('name', 'arrow_drop_down');\n return [span, icon];\n}\n\n/** Returns content for the year button. */\nexport function getYearButtonContent(year: number, locale?: string): HTMLElement[] {\n const span = document.createElement('span');\n const icon = document.createElement('forge-icon');\n span.innerHTML = getLocalizedYear(year, 'numeric', locale);\n icon.setAttribute('name', 'arrow_drop_down');\n return [span, icon];\n}\n\n/** Returns a hidden, accessible header. */\nexport function getAccessibleHeader(): HTMLElement {\n const element = document.createElement('div');\n element.id = CALENDAR_CONSTANTS.ids.ACCESSIBLE_HEADER;\n element.setAttribute('aria-live', 'polite');\n\n const month = document.createElement('span');\n month.id = CALENDAR_CONSTANTS.ids.ACCESSIBLE_MONTH;\n\n const year = document.createElement('span');\n year.id = CALENDAR_CONSTANTS.ids.ACCESSIBLE_YEAR;\n\n // TODO: change order of month and year based on locale\n element.appendChild(month);\n element.appendChild(year);\n return element;\n}\n\n/** Returns a calendar footer. */\nexport function getFooter(): HTMLElement {\n const element = document.createElement('div');\n element.id = CALENDAR_CONSTANTS.ids.FOOTER;\n element.classList.add(CALENDAR_CONSTANTS.classes.FOOTER);\n element.setAttribute('part', CALENDAR_CONSTANTS.parts.FOOTER);\n return element;\n}\n\n/** Returns a clear button. */\nexport function getClearButton(): HTMLElement {\n const clearButton = document.createElement('forge-button');\n const clearButtonElement = document.createElement('button');\n clearButton.id = CALENDAR_CONSTANTS.ids.CLEAR_BUTTON;\n clearButton.setAttribute('part', CALENDAR_CONSTANTS.parts.CLEAR_BUTTON);\n clearButtonElement.type = 'button';\n clearButtonElement.innerText = 'Clear';\n clearButton.appendChild(clearButtonElement);\n return clearButton;\n}\n\n/** Returns a today button. */\nexport function getTodayButton(): HTMLElement {\n const todayButton = document.createElement('forge-button');\n const todayButtonElement = document.createElement('button');\n todayButton.id = CALENDAR_CONSTANTS.ids.TODAY_BUTTON;\n todayButton.setAttribute('part', CALENDAR_CONSTANTS.parts.TODAY_BUTTON);\n todayButtonElement.type = 'button';\n todayButtonElement.innerText = 'Today';\n todayButton.appendChild(todayButtonElement);\n return todayButton;\n}\n\n/** Checks whether an event originated from a date element, returning the element if it did. */\nexport function eventIncludesDate(evt: Event, includeDisabled?: boolean): HTMLElement | null {\n const element = getEventPath(evt).find(p => p.classList && p.classList.contains(CALENDAR_CONSTANTS.classes.DATE));\n if (!element || (!includeDisabled && element.hasAttribute('disabled'))) {\n return null;\n }\n return element;\n}\n\n/** Checks whether an event originated from an element with the given id, returning the element if it did. */\nexport function eventIncludesElement(evt: Event, id: string): HTMLElement | null {\n const element = getEventPath(evt).find(p => p.id === id);\n return element ?? null;\n}\n\n/** Sets the tabindex on a date element. */\nexport function setTabindexOnElement(element: HTMLElement, value: number, setFocus: boolean, preventFocus?: boolean): void {\n element.tabIndex = preventFocus ? -1 : value;\n element.classList.toggle(CALENDAR_CONSTANTS.classes.MDC_RIPPLE_UPGRADED_FOCUSED, preventFocus && value > -1);\n if (value > -1 && setFocus && !preventFocus) {\n element.focus();\n } else {\n element.blur();\n }\n}\n", "export interface ICalendarDropdownPopupConfig {\n activeChangeCallback?: (id: string) => void;\n closeCallback?: () => void;\n popupClasses?: string | string[] | null;\n}\n\nconst classes = {\n POPUP: `forge-calendar-dropdown__popup`\n};\n\nexport const CALENDAR_DROPDOWN_CONSTANTS = {\n classes\n};\n", "import { addClass, isArray, createVisuallyHiddenElement } from '@tylertech/forge-core';\n\nimport { IPopupComponent, PopupAnimationType, POPUP_CONSTANTS } from '../../popup';\nimport { ICalendarComponent } from '../calendar';\nimport { CALENDAR_CONSTANTS, ICalendarFocusChangeEventData } from '../calendar-constants';\nimport { getDateId } from '../calendar-dom-utils';\nimport { CALENDAR_DROPDOWN_CONSTANTS } from './calendar-dropdown-constants';\n\nexport interface ICalendarDropdown {\n calendar: ICalendarComponent | undefined;\n dropdownElement: IPopupComponent | undefined;\n id: string;\n targetElement: HTMLElement;\n popupClasses: string | string[] | null;\n locale: string | undefined;\n isOpen: boolean;\n activeChangeCallback: ((id: string) => void) | undefined;\n closeCallback: (() => void) | undefined;\n open(config: Partial<ICalendarComponent>): void;\n close(): void;\n destroy(): void;\n propagateKeyboardEvent(evt: KeyboardEvent): void;\n}\n\nexport class CalendarDropdown implements ICalendarDropdown {\n public calendar: ICalendarComponent | undefined;\n public dropdownElement: IPopupComponent | undefined;\n public id: string;\n public targetElement: HTMLElement;\n public activeChangeCallback: ((id: string) => void) | undefined;\n public closeCallback: (() => void) | undefined;\n\n private _announcerElement: HTMLElement | undefined;\n private _popupClasses: string[] = [];\n\n public get isOpen(): boolean {\n return this.dropdownElement?.open ?? false;\n }\n\n public get popupClasses(): string | string[] | null {\n return this._popupClasses;\n }\n public set popupClasses(value: string | string[] | null) {\n this._popupClasses = !!value ? isArray(value) ? [...value as string[]] : [value as string] : [];\n }\n\n public get locale(): string | undefined {\n return this.calendar?.locale;\n }\n public set locale(value: string | undefined) {\n if (this.calendar) {\n this.calendar.locale = value;\n }\n }\n \n constructor(targetElement: HTMLElement, id: string) {\n this.targetElement = targetElement;\n this.id = id;\n }\n\n public close(): void {\n if (!this.dropdownElement) {\n return;\n }\n this.dropdownElement.open = false;\n this.dropdownElement = undefined;\n this.calendar = undefined;\n }\n\n public destroy(): void {\n this.close();\n }\n\n public open(config: Partial<ICalendarComponent>): void {\n // Create calendar element\n this.calendar = this._createCalendar(config);\n this._announcerElement = createVisuallyHiddenElement();\n (this._announcerElement as HTMLElement).id = `${this.id}-activedescendant`;\n\n // Create dropdown element\n this.dropdownElement = this._createDropdown();\n this.dropdownElement.appendChild(this.calendar);\n this.dropdownElement.appendChild(this._announcerElement as HTMLElement);\n this.dropdownElement.static = true;\n\n // Add a listener for when the active descendent is updated\n this.calendar.addEventListener(CALENDAR_CONSTANTS.events.FOCUS_CHANGE, (evt: CustomEvent<ICalendarFocusChangeEventData>) => {\n let id = `${this.id}-activedescendent-`;\n switch (evt.detail.type) {\n case 'date':\n id += getDateId(evt.detail.value as Date);\n break;\n case 'month':\n id += `month-${evt.detail.value.toString()}`;\n break;\n case 'year':\n id += `year-${evt.detail.value.toString()}`;\n break;\n }\n this.activeChangeCallback?.call(this, id);\n if (this._announcerElement) {\n this._announcerElement.id = id;\n this._announcerElement.setAttribute('aria-selected', evt.detail.selected.toString());\n this._announcerElement.textContent = evt.detail.text;\n }\n });\n\n // Open the popup\n this.dropdownElement.open = true;\n\n // Attempt to re-layout the calendar to account for updates in rendering during scale\n // transition within popup (fixes ripple alignment... etc.)\n window.requestAnimationFrame(() => {\n setTimeout(() => {\n if (this.dropdownElement && this.dropdownElement.open && this.calendar && this.calendar.isConnected) {\n this.calendar.layout();\n }\n }, POPUP_CONSTANTS.numbers.ANIMATION_DURATION);\n });\n }\n\n public propagateKeyboardEvent(evt: KeyboardEvent): void {\n this.calendar?.handleKey(evt);\n }\n\n private _createCalendar(config: Partial<ICalendarComponent>): ICalendarComponent {\n const calendarElement = document.createElement(CALENDAR_CONSTANTS.elementName);\n Object.assign(calendarElement, config);\n return calendarElement;\n }\n\n private _createDropdown(): IPopupComponent {\n const popupElement = document.createElement(POPUP_CONSTANTS.elementName) as IPopupComponent;\n popupElement.targetElement = this.targetElement;\n popupElement.placement = 'bottom-start';\n popupElement.animationType = PopupAnimationType.Menu;\n popupElement.classList.add(CALENDAR_DROPDOWN_CONSTANTS.classes.POPUP);\n popupElement.id = this.id;\n addClass(this._popupClasses, popupElement);\n\n popupElement.addEventListener(POPUP_CONSTANTS.events.CLOSE, () => {\n if (this.closeCallback) {\n this.closeCallback();\n }\n });\n\n return popupElement;\n }\n}\n"],
5
- "mappings": "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",
6
- "names": ["elementName", "COMPONENT_NAME_PREFIX", "observedAttributes", "attributes", "__spreadProps", "__spreadValues", "classes", "ids", "weekdayParts", "parts", "selectors", "CALENDAR_MENU_CONSTANTS", "TOOLTIP_CONSTANTS", "events", "numbers", "CALENDAR_CONSTANTS", "DayOfWeek", "CalendarMonthFocus", "getLocalizedDayOfWeek", "day", "format", "locale", "getLocalizedDayOfMonth", "date", "getLocalizedMonth", "month", "getLocalizedYear", "year", "getFirstDayOfWeekForLocale", "localeParts", "language", "region", "saturdayRegions", "sundayRegions", "saturdayLanguages", "sundayLanguages", "getWeekendDaysForLocale", "isRtlLocale", "l", "getDayId", "day", "getDateId", "date", "month", "getEventWrapperId", "getDayElement", "locale", "element", "CALENDAR_CONSTANTS", "getLocalizedDayOfWeek", "getDateRow", "dates", "index", "options", "_a", "d", "getDateSpacerElement", "dateElement", "getDateElement", "rangeElement", "innerElement", "rippleElement", "dayOfWeekPart", "appendToAttribute", "toggleOnAttribute", "getLocalizedDayOfMonth", "getEventWrapperElement", "getEventElement", "event", "overflow", "svg", "getTooltip", "content", "tooltip", "getHeader", "previousButton", "previousButtonElement", "previousIcon", "previousTooltip", "nextButton", "nextButtonElement", "nextIcon", "nextTooltip", "monthButton", "monthButtonElement", "yearButton", "yearButtonElement", "centerContainer", "getMonthButtonContent", "span", "icon", "getLocalizedMonth", "getYearButtonContent", "year", "getLocalizedYear", "getAccessibleHeader", "getFooter", "getClearButton", "clearButton", "clearButtonElement", "getTodayButton", "todayButton", "todayButtonElement", "eventIncludesDate", "evt", "includeDisabled", "getEventPath", "p", "eventIncludesElement", "id", "setTabindexOnElement", "value", "setFocus", "preventFocus", "classes", "CALENDAR_DROPDOWN_CONSTANTS", "CalendarDropdown", "targetElement", "id", "_a", "_b", "value", "isArray", "config", "createVisuallyHiddenElement", "CALENDAR_CONSTANTS", "evt", "getDateId", "POPUP_CONSTANTS", "calendarElement", "popupElement", "CALENDAR_DROPDOWN_CONSTANTS", "addClass"]
4
+ "sourcesContent": ["import { TOOLTIP_CONSTANTS } from '../tooltip/tooltip-constants';\nimport { COMPONENT_NAME_PREFIX } from '../constants';\nimport { CALENDAR_MENU_CONSTANTS } from './calendar-menu';\nimport { DateRange } from './core/date-range';\n\nconst elementName: keyof HTMLElementTagNameMap = `${COMPONENT_NAME_PREFIX}calendar`;\n\nconst observedAttributes = {\n ALLOW_SINGLE_DATE_RANGE: 'allow-single-date-range',\n CLEAR_BUTTON: 'clear-button',\n CONSTRAIN_TO_ENABLED: 'constrain-to-enabled',\n FIRST_DAY_OF_WEEK: 'first-day-of-week',\n FIXED_HEIGHT: 'static-height',\n LIST_YEARS: 'list-years',\n LOCALE: 'locale',\n MAX: 'max',\n MENU_ANIMATION: 'menu-animation',\n MIN: 'min',\n MODE: 'mode',\n MONTH: 'month',\n PREVENT_FOCUS: 'prevent-focus',\n READONLY: 'readonly',\n SELECTION_FOLLOWS_MONTH: 'selection-follows-month',\n SHOW_HEADER: 'show-header',\n SHOW_OTHER_MONTHS: 'show-other-months',\n SHOW_TODAY: 'show-today',\n TODAY_BUTTON: 'today-button',\n VIEW: 'view',\n YEAR: 'year',\n YEAR_RANGE: 'year-range'\n};\n\nconst attributes = {\n ...observedAttributes,\n DATA_DATE: 'data-date',\n DATA_EVENT_THEME: 'data-event-theme',\n POPUP_CONTEXT: 'forge-popup-context'\n};\n\nconst classes = {\n ALLOW_SINGLE_DATE_RANGE: 'forge-calendar--allow-single-date-range',\n DATE: 'forge-calendar__date',\n DATE_GRID: 'forge-calendar__date-grid',\n DATE_INNER: 'forge-calendar__date__inner',\n DATE_OTHER_MONTH: 'forge-calendar__date--other-month',\n DATE_SPACER: 'forge-calendar__date-spacer',\n DATE_SELECTED: 'forge-calendar__date--selected',\n DATE_TODAY: 'forge-calendar__date--today',\n DATE_VIEW: 'forge-calendar__date-view',\n DATE_VIEW_ROW: 'forge-calendar__date-view__row',\n DATE_WRAPPER: 'forge-calendar__date-wrapper',\n DAY: 'forge-calendar__day',\n EVENT: 'forge-calendar__event',\n EVENT_OVERFLOW: 'forge-calendar__event--overflow',\n EVENT_WRAPPER: 'forge-calendar__event__wrapper',\n FIXED_HEIGHT: 'forge-calendar--fixed-height',\n FOOTER: 'forge-calendar__footer',\n HEADER: 'forge-calendar__header',\n MDC_RIPPLE_UPGRADED_FOCUSED: 'mdc-ripple-upgraded--background-focused',\n MONTH_MENU_OPEN: 'forge-calendar--month-menu-open',\n PREVENT_FOCUS: 'forge-calendar--prevent-focus',\n RANGE: 'forge-calendar__range',\n RANGE_END: 'forge-calendar__range--end',\n RANGE_START: 'forge-calendar__range--start',\n RANGE_TARGET: 'forge-calendar__range__target',\n READONLY: 'forge-calendar--readonly',\n RTL: 'forge-calendar--rtl',\n SHOW_OTHER_MONTHS: 'forge-calendar--show-other-months',\n SHOW_TODAY: 'forge-calendar--show-today',\n VIEW: 'forge-calendar__view',\n YEAR_MENU_OPEN: 'forge-calendar--year-menu-open'\n};\n\nconst ids = {\n ACCESSIBLE_HEADER: 'accessible-header',\n ACCESSIBLE_MONTH: 'accessible-month',\n ACCESSIBLE_YEAR: 'accessible-year',\n CLEAR_BUTTON: 'clear-button',\n DATE_GRID: 'date-grid',\n DATE_VIEW: 'date-view',\n DAY_ROW: 'day-row',\n FOOTER: 'footer',\n HEADER: 'header',\n MENU: 'menu',\n MONTH_BUTTON: 'month-button',\n NEXT_BUTTON: 'next-button',\n NEXT_BUTTON_TOOLTIP: 'next-button-tooltip',\n PREVIOUS_BUTTON: 'previous-button',\n PREVIOUS_BUTTON_TOOLTIP: 'previous-button-tooltip',\n TODAY_BUTTON: 'today-button',\n YEAR_BUTTON: 'year-button'\n};\n\nconst weekdayParts = {\n SUNDAY: 'sunday',\n MONDAY: 'monday',\n TUESDAY: 'tuesday',\n WEDNESDAY: 'wednesday',\n THURSDAY: 'thursday',\n FRIDAY: 'friday',\n SATURDAY: 'saturday'\n};\n\nconst parts = {\n ...weekdayParts,\n CLEAR_BUTTON: 'clear-button',\n DATE: 'date',\n DATE_OTHER_MONTH: 'date-other-month',\n DATE_VIEW: 'date-view',\n DATE_WRAPPER: 'date-wrapper',\n DAY: 'day',\n EVENT: 'event',\n EVENT_WRAPPER: 'event-wrapper',\n FOOTER: 'footer',\n HEADER: 'header',\n MONTH_BUTTON: 'month-button',\n MONTH_BUTTON_ELEMENT: 'month-button-element',\n NEXT_BUTTON: 'next-button',\n PREVIOUS_BUTTON: 'previous-button',\n RANGE: 'range',\n RANGE_END: 'range-end',\n RANGE_START: 'range-start',\n TODAY: 'today',\n TODAY_BUTTON: 'today-button',\n WEEKEND: 'weekend',\n YEAR_BUTTON: 'year-button',\n YEAR_BUTTON_ELEMENT: 'year-button-element'\n};\n\nconst selectors = {\n ACCESSIBLE_HEADER: `#${ids.ACCESSIBLE_HEADER}`,\n ACCESSIBLE_MONTH: `#${ids.ACCESSIBLE_MONTH}`,\n ACCESSIBLE_YEAR: `#${ids.ACCESSIBLE_YEAR}`,\n CALENDAR: '.forge-calendar',\n CLEAR_BUTTON: `#${ids.CLEAR_BUTTON}`,\n DATE: `.${classes.DATE}`,\n DATE_GRID: `#${ids.DATE_GRID}`,\n DATE_INNER: `.${classes.DATE_INNER}`,\n DATE_OTHER_MONTH: `.${classes.DATE_OTHER_MONTH}`,\n DATE_SPACER: `.${classes.DATE_SPACER}`,\n DATE_SELECTED: `.${classes.DATE_SELECTED}`,\n DATE_TODAY: `.${classes.DATE_TODAY}`,\n DATE_VIEW: `#${ids.DATE_VIEW}`,\n DATE_WRAPPER: `.${classes.DATE_WRAPPER}`,\n DAY_ROW: `#${ids.DAY_ROW}`,\n EVENT_WRAPPER: `.${classes.EVENT_WRAPPER}`,\n FOOTER: `#${ids.FOOTER}`,\n HEADER: `#${ids.HEADER}`,\n MENU: CALENDAR_MENU_CONSTANTS.elementName,\n MONTH_BUTTON: `#${ids.MONTH_BUTTON}`,\n NEXT_BUTTON: `#${ids.NEXT_BUTTON}`,\n NEXT_BUTTON_TOOLTIP: `#${ids.NEXT_BUTTON_TOOLTIP}`,\n PREVIOUS_BUTTON: `#${ids.PREVIOUS_BUTTON}`,\n PREVIOUS_BUTTON_TOOLTIP: `#${ids.PREVIOUS_BUTTON_TOOLTIP}`,\n RANGE: `.${classes.RANGE}`,\n RANGE_END: `.${classes.RANGE_END}`,\n RANGE_START: `.${classes.RANGE_START}`,\n TODAY_BUTTON: `#${ids.TODAY_BUTTON}`,\n TOOLTIP: TOOLTIP_CONSTANTS.elementName,\n VIEW: '#view',\n YEAR_BUTTON: `#${ids.YEAR_BUTTON}`\n};\n\nconst events = {\n DATE_SELECT: `${elementName}-date-select`,\n FOCUS_CHANGE: `${elementName}-focus-change`,\n MONTH_CHANGE: `${elementName}-month-change`,\n VIEW_CHANGE: `${elementName}-view-change`\n};\n\nconst numbers = {\n DEFAULT_MAX_YEAR_OFFSET: 50,\n DEFAULT_MIN_YEAR_OFFSET: 50,\n FINAL_WEEK_BEGIN_INDEX: 35,\n MONTH_LENGTH: 42,\n PENULTIMATE_WEEK_BEGIN_INDEX: 28,\n WEEK_LENGTH: 7,\n YEARS_IN_VIEW: 20\n};\n\nexport const CALENDAR_CONSTANTS = {\n elementName,\n attributes,\n classes,\n ids,\n parts,\n selectors,\n events,\n numbers\n};\n\nexport type CalendarDateBuilder = (date: ICalendarDateConfig, element: HTMLElement) => HTMLElement;\nexport type CalendarDateSelectCallback = (date: ICalendarDate) => boolean | Promise<boolean>;\nexport type CalendarDayBuilder = (day: DayOfWeek, element: HTMLElement) => HTMLElement;\nexport type CalendarDisabledDateBuilder = (date: Date) => boolean;\nexport type CalendarEventBuilder = (date: Date) => ICalendarEvent[] | ICalendarEvent | null;\nexport type CalendarTooltipBuilder = (date: ICalendarDate, content: string) => string | null;\n\nexport type CalendarMode = 'single' | 'multiple' | 'range';\nexport type CalendarView = 'date' | 'month' | 'year';\nexport type RangeSelectionState = 'none' | 'from' | 'to';\nexport type CalendarEventColor = 'primary' | 'secondary' | 'blue' | 'light-green' | 'cyan' | 'teal' | 'orange' | 'blue-grey' | 'grey' | 'red' | 'pink' | 'purple' | 'light-blue' | 'deep-purple' | 'green' | 'lime' | 'yellow' | 'brown' | 'deep-orange';\n\nexport interface ICalendarDate {\n date: Date;\n selected: boolean;\n events: ICalendarEvent[];\n}\n\nexport interface ICalendarDateConfig {\n date: Date;\n selected: boolean;\n today: boolean;\n thisMonth: boolean;\n disabled: boolean;\n}\n\nexport interface ICalendarDateOptions {\n builder?: CalendarDateBuilder;\n locale?: string;\n showOtherMonths?: boolean;\n}\n\nexport interface ICalendarDayOptions {\n builder?: CalendarDayBuilder;\n locale?: string;\n}\n\nexport interface ICalendarEvent {\n date: Date;\n label: string;\n color: CalendarEventColor | string;\n}\n\nexport interface ICalendarDateSelectEventData {\n date: Date | null;\n selected: boolean;\n range?: DateRange;\n rangeSelectionState?: RangeSelectionState;\n type: CalendarView;\n}\n\nexport interface ICalendarMonthChangeEventData {\n month: number;\n userSelected: boolean; // Indicates whether event is from explicit selection or regular navigation\n year: number;\n}\n\nexport interface ICalendarFocusChangeEventData {\n selected: boolean;\n text: string;\n type: CalendarView;\n value: Date | number;\n}\n\nexport interface ICalendarNumberRange {\n max: number;\n min: number;\n}\n\nexport interface ICalendarDisabledDateParams {\n builder: CalendarDisabledDateBuilder | undefined;\n disabledDates: Date[];\n disabledDaysOfWeek: DayOfWeek[];\n maxDate: Date | null;\n minDate: Date | null;\n otherMonth?: boolean;\n}\n\nexport interface ICalendarMenuMonthConfig {\n locale?: string;\n max: Date | null;\n min: Date | null;\n selectedMonth: number;\n selectedYear: number;\n}\n\nexport interface ICalendarMenuYearConfig {\n locale?: string;\n max: number;\n min: number;\n selectedYear: number;\n yearInView: number;\n}\n\nexport enum DayOfWeek {\n Sunday = 0,\n Monday = 1,\n Tuesday = 2,\n Wednesday = 3,\n Thursday = 4,\n Friday = 5,\n Saturday = 6\n}\n\nexport enum CalendarMonthFocus {\n First = 1,\n Last = 2,\n Current = 3\n}\n", "// TODO: implement year before month support\n// TODO: use a more robust strategy to get language and region parts from a locale, like the Intl API (in TypeScript 4.1.2 and es2020.intl)\n\nimport { DayOfWeek } from './calendar-constants';\n\n/** Returns a localized day name. */\nexport function getLocalizedDayOfWeek(day: DayOfWeek, format: 'long' | 'short' | 'narrow' | undefined, locale?: string): string {\n if (!locale) {\n locale = navigator.language;\n }\n // January 2017 starts on a Sunday\n return new Date(2017, 0, day + 1).toLocaleString(locale, {weekday: format});\n}\n\n/** Returns a localized date of the month. */\nexport function getLocalizedDayOfMonth(date: number, format: 'numeric' | '2-digit' | undefined, locale?: string): string {\n if (!locale) {\n locale = navigator.language;\n }\n return new Date(1970, 0, date).toLocaleDateString(locale, {day: format});\n}\n\n/** Returns a localized month name. */\nexport function getLocalizedMonth(month: number, format: 'long' | 'short' | 'narrow' | 'numeric' | '2-digit' | undefined, locale?: string): string {\n if (!locale) {\n locale = navigator.language;\n }\n return new Date(1970, month, 1).toLocaleString(locale, {month: format});\n}\n\n/** Returns a localized year name. */\nexport function getLocalizedYear(year: number, format: 'numeric' | '2-digit' | undefined, locale?: string): string {\n if (!locale) {\n locale = navigator.language;\n }\n return new Date(year, 0, 1).toLocaleDateString(locale, {year: format});\n}\n\n/** Returns the first day of week for a locale. */\nexport function getFirstDayOfWeekForLocale(locale?: string): DayOfWeek {\n if (!locale) {\n locale = navigator.language;\n }\n const localeParts = locale.match(/^([a-z]{2,3})(?:-([a-z]{3})(?=$|-))?(?:-([a-z]{4})(?=$|-))?(?:-([a-z]{2}|\\d{3})(?=$|-))?/i);\n if (!localeParts || !localeParts.length) {\n return DayOfWeek.Monday;\n }\n\n const language = localeParts[1];\n const region = localeParts[4];\n const saturdayRegions = 'AEAFBHDJDZEGIQIRJOKWLYOMQASDSY'.match(/../g);\n const sundayRegions = 'AGARASAUBDBRBSBTBWBZCACNCODMDOETGTGUHKHNIDILINJMJPKEKHKRLAMHMMMOMTMXMZNINPPAPEPHPKPRPTPYSASGSVTHTTTWUMUSVEVIWSYEZAZW'.match(/../g);\n const saturdayLanguages = ['ar', 'arq', 'arz', 'fa'];\n const sundayLanguages = 'amasbndzengnguhehiidjajvkmknkolomhmlmrmtmyneomorpapssdsmsnsutatethtnurzhzu'.match(/../g);\n\n if (region) {\n if (sundayRegions && sundayRegions.includes(region)) {\n return DayOfWeek.Sunday;\n } else if (saturdayRegions && saturdayRegions.includes(region)) {\n return DayOfWeek.Saturday;\n } else {\n return DayOfWeek.Monday;\n }\n } else {\n if (sundayLanguages && sundayLanguages.includes(language)) {\n return DayOfWeek.Sunday;\n } else if (saturdayLanguages && saturdayLanguages.includes(language)) {\n return DayOfWeek.Saturday;\n } else {\n return DayOfWeek.Monday;\n }\n }\n}\n\n/** Returns an array of weekend days for a locale. */\nexport function getWeekendDaysForLocale(locale?: string): DayOfWeek[] {\n if (!locale) {\n locale = navigator.language;\n }\n const region: string = locale.split('-')[1];\n switch (region) {\n case 'DZ':\n case 'BH':\n case 'BD':\n case 'EG':\n case 'IQ':\n case 'IL':\n case 'JO':\n case 'KW':\n case 'LY':\n case 'MV': // Not consistent across Malaysia\n case 'MR':\n case 'NP':\n case 'OM':\n case 'QA':\n case 'SA':\n case 'SD':\n case 'SY':\n case 'AE': // Not consistent across UAE\n case 'YE':\n case 'AF': // Thursday morning is a workday\n case 'IR': // Thursday morning is a workday\n return [DayOfWeek.Thursday, DayOfWeek.Friday];\n case 'BN':\n return [DayOfWeek.Sunday, DayOfWeek.Friday];\n default:\n return [DayOfWeek.Sunday, DayOfWeek.Saturday];\n }\n}\n\n/** Returns whether a language is written right-to-left. */\nexport function isRtlLocale(locale?: string): boolean {\n if (!locale) {\n locale = navigator.language;\n }\n const rtlLocales: string[] = [\n 'ar',\n 'arc',\n 'ckb',\n 'dv',\n 'fa',\n 'ha',\n 'he',\n 'khw',\n 'ks',\n 'ps',\n 'sd',\n 'ur',\n 'uz-AF',\n 'yi'\n ];\n return rtlLocales.some(l => locale ? locale.startsWith(l) : false);\n}\n", "import { getEventPath, appendToAttribute, toggleOnAttribute } from '@tylertech/forge-core';\n\nimport { IIconComponent } from '../icon';\nimport { ITooltipComponent } from '../tooltip';\nimport { CALENDAR_CONSTANTS, DayOfWeek, ICalendarDateConfig, ICalendarDateOptions, ICalendarEvent } from './calendar-constants';\nimport { getLocalizedDayOfMonth, getLocalizedDayOfWeek, getLocalizedMonth, getLocalizedYear } from './calendar-locale-utils';\n\n/** Converts a day into an id string prefixed with \"d\". */\nexport function getDayId(day: DayOfWeek): string {\n return `d${day}`;\n}\n\n/** Converts a date object into a \"yyyymmdd\" id string prefixed with \"d\". */\nexport function getDateId(date: Date): string {\n const month = String(date.getMonth()).padStart(2, '0');\n const day = String(date.getDate()).padStart(2, '0');\n const year = date.getFullYear();\n return ['d', year, month, day].join('');\n}\n\n/** Converts a date object into a \"yyyymmdd\" if string prefixed with \"e\". */\nexport function getEventWrapperId(date: Date): string {\n const month = String(date.getMonth()).padStart(2, '0');\n const day = String(date.getDate()).padStart(2, '0');\n const year = date.getFullYear();\n return ['e', year, month, day].join('');\n}\n\n/** Returns a day element. */\nexport function getDayElement(day: DayOfWeek, locale?: string): HTMLElement {\n const element = document.createElement('div');\n element.classList.add(CALENDAR_CONSTANTS.classes.DAY);\n element.id = getDayId(day);\n element.setAttribute('role', 'columnheader');\n element.setAttribute('aria-label', getLocalizedDayOfWeek(day, 'long', locale));\n element.setAttribute('part', CALENDAR_CONSTANTS.parts.DAY);\n element.textContent = getLocalizedDayOfWeek(day, 'short', locale);\n return element;\n}\n\n/** Returns a date row element. */\nexport function getDateRow(dates: ICalendarDateConfig[], index: number, options?: ICalendarDateOptions): HTMLElement {\n const element = document.createElement('div');\n element.classList.add(CALENDAR_CONSTANTS.classes.DATE_VIEW_ROW);\n element.setAttribute('role', 'row');\n\n // Populate the row\n if (index > 0 && !dates[0]?.thisMonth) {\n // A row after the first that begins on another month is all spacers and should be hidden from the accessibility tree\n dates.forEach(d => element.appendChild(getDateSpacerElement(d.date)));\n element.setAttribute('aria-hidden', 'true');\n } else {\n dates.forEach(d => {\n let dateElement = d.thisMonth || options?.showOtherMonths ? getDateElement(d, options?.locale) : getDateSpacerElement(d.date);\n if ((d.thisMonth || options?.showOtherMonths) && options?.builder) {\n dateElement = options.builder(d, dateElement);\n }\n element.appendChild(dateElement);\n });\n }\n\n return element;\n}\n\n/** Returns a date element. */\nexport function getDateElement(date: ICalendarDateConfig, locale?: string): HTMLElement {\n const element = document.createElement('div');\n const rangeElement = document.createElement('div');\n const innerElement = document.createElement('div');\n const rippleElement = document.createElement('div');\n const day = date.date.getDay();\n\n element.id = getDateId(date.date);\n element.tabIndex = -1;\n element.classList.add(CALENDAR_CONSTANTS.classes.DATE);\n element.classList.toggle(CALENDAR_CONSTANTS.classes.DATE_TODAY, date.today);\n element.classList.toggle(CALENDAR_CONSTANTS.classes.DATE_SELECTED, date.selected);\n element.classList.toggle(CALENDAR_CONSTANTS.classes.DATE_OTHER_MONTH, !date.thisMonth);\n element.setAttribute('role', 'gridcell');\n element.setAttribute('aria-disabled', date.disabled.toString());\n element.setAttribute('aria-label', `${date.today ? 'Today, ' : ''}${date.date.toLocaleDateString(locale ?? navigator.language, {weekday: 'long', month: 'long', day: 'numeric', year: 'numeric'})}`);\n element.setAttribute('aria-selected', date.selected.toString());\n element.setAttribute(CALENDAR_CONSTANTS.attributes.DATA_DATE, date.date.toDateString());\n element.toggleAttribute('disabled', date.disabled);\n element.setAttribute('part', CALENDAR_CONSTANTS.parts.DATE_WRAPPER);\n \n // Add day of week part\n let dayOfWeekPart = '';\n switch (day) {\n case DayOfWeek.Sunday:\n dayOfWeekPart = CALENDAR_CONSTANTS.parts.SUNDAY;\n break;\n case DayOfWeek.Monday:\n dayOfWeekPart = CALENDAR_CONSTANTS.parts.MONDAY;\n break;\n case DayOfWeek.Tuesday:\n dayOfWeekPart = CALENDAR_CONSTANTS.parts.TUESDAY;\n break;\n case DayOfWeek.Wednesday:\n dayOfWeekPart = CALENDAR_CONSTANTS.parts.WEDNESDAY;\n break;\n case DayOfWeek.Thursday:\n dayOfWeekPart = CALENDAR_CONSTANTS.parts.THURSDAY;\n break;\n case DayOfWeek.Friday:\n dayOfWeekPart = CALENDAR_CONSTANTS.parts.FRIDAY;\n break;\n case DayOfWeek.Saturday:\n dayOfWeekPart = CALENDAR_CONSTANTS.parts.SATURDAY;\n break;\n }\n appendToAttribute(innerElement, 'part', dayOfWeekPart);\n appendToAttribute(innerElement, 'part', CALENDAR_CONSTANTS.parts.DATE);\n toggleOnAttribute(innerElement, 'part', CALENDAR_CONSTANTS.parts.TODAY, date.today);\n toggleOnAttribute(innerElement, 'part', CALENDAR_CONSTANTS.parts.DATE_OTHER_MONTH, !date.thisMonth);\n\n rangeElement.classList.add(CALENDAR_CONSTANTS.classes.RANGE_TARGET);\n element.appendChild(rangeElement);\n innerElement.textContent = getLocalizedDayOfMonth(date.date.getDate(), 'numeric', locale);\n innerElement.classList.add(CALENDAR_CONSTANTS.classes.DATE_INNER);\n element.appendChild(innerElement);\n rippleElement.classList.add('mdc-ripple-surface');\n element.appendChild(rippleElement);\n return element;\n}\n\n/** Returns a date spacer element. */\nexport function getDateSpacerElement(date: Date): HTMLElement {\n // This is a span to easiliy differentiate it from a date in CSS\n const element = document.createElement('span');\n element.classList.add(CALENDAR_CONSTANTS.classes.DATE_SPACER);\n element.id = getDateId(date);\n return element;\n}\n\n/** Returns an event wrapper element. */\nexport function getEventWrapperElement(date: Date): HTMLElement {\n const element = document.createElement('div');\n element.classList.add(CALENDAR_CONSTANTS.classes.EVENT_WRAPPER);\n element.id = getEventWrapperId(date);\n element.setAttribute('part', CALENDAR_CONSTANTS.parts.EVENT_WRAPPER);\n return element;\n}\n\n/** Returns an event element. */\nexport function getEventElement(event: ICalendarEvent, overflow?: boolean): HTMLElement {\n const element: IIconComponent = document.createElement('forge-icon');\n element.classList.add(CALENDAR_CONSTANTS.classes.EVENT);\n element.setAttribute('part', CALENDAR_CONSTANTS.parts.EVENT);\n if (overflow) {\n element.classList.add(CALENDAR_CONSTANTS.classes.EVENT_OVERFLOW);\n element.name = 'add';\n } else {\n const svg = '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path d=\"M0 0h24v24H0z\" fill=\"none\"></path><path d=\"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2z\" stroke=\"var(--forge-calendar-event-stroke-color)\" stroke-width=\"4px\" paint-order=\"stroke\"></path></svg>';\n element.src = svg;\n element.setAttribute(CALENDAR_CONSTANTS.attributes.DATA_EVENT_THEME, event.color);\n }\n return element;\n}\n\n/** Returns a tooltip element. */\nexport function getTooltip(content: string): HTMLElement {\n const tooltip: ITooltipComponent = document.createElement('forge-tooltip');\n tooltip.text = content;\n tooltip.setAttribute('aria-hidden', 'true');\n return tooltip;\n}\n\n/** Returns a calendar header. */\nexport function getHeader(): HTMLElement {\n const element = document.createElement('div');\n element.classList.add(CALENDAR_CONSTANTS.classes.HEADER);\n element.id = CALENDAR_CONSTANTS.ids.HEADER;\n element.setAttribute('part', CALENDAR_CONSTANTS.parts.HEADER);\n\n const previousButton = document.createElement('forge-icon-button');\n const previousIcon = document.createElement('forge-icon');\n const previousTooltip = document.createElement('forge-tooltip');\n previousButton.setAttribute('part', CALENDAR_CONSTANTS.parts.PREVIOUS_BUTTON);\n previousButton.id = CALENDAR_CONSTANTS.ids.PREVIOUS_BUTTON;\n previousButton.type = 'button';\n previousButton.setAttribute('aria-label', 'Previous');\n previousIcon.setAttribute('name', 'keyboard_arrow_left');\n previousTooltip.id = CALENDAR_CONSTANTS.ids.PREVIOUS_BUTTON_TOOLTIP;\n previousTooltip.setAttribute('aria-hidden', 'true');\n previousTooltip.innerText = 'Previous';\n previousButton.appendChild(previousTooltip);\n previousButton.appendChild(previousIcon);\n\n const nextButton = document.createElement('forge-icon-button');\n const nextIcon = document.createElement('forge-icon');\n const nextTooltip = document.createElement('forge-tooltip');\n nextButton.setAttribute('part', CALENDAR_CONSTANTS.parts.NEXT_BUTTON);\n nextButton.id = CALENDAR_CONSTANTS.ids.NEXT_BUTTON;\n nextButton.type = 'button';\n nextButton.setAttribute('aria-label', 'Next');\n nextIcon.setAttribute('name', 'keyboard_arrow_right');\n nextTooltip.id = CALENDAR_CONSTANTS.ids.NEXT_BUTTON_TOOLTIP;\n nextTooltip.setAttribute('aria-hidden', 'true');\n nextTooltip.innerText = 'Next';\n nextButton.appendChild(nextTooltip);\n nextButton.appendChild(nextIcon);\n\n const monthButton = document.createElement('forge-button');\n monthButton.setAttribute('part', CALENDAR_CONSTANTS.parts.MONTH_BUTTON);\n monthButton.id = CALENDAR_CONSTANTS.ids.MONTH_BUTTON;\n monthButton.type = 'button';\n monthButton.setAttribute('aria-pressed', 'false');\n\n const yearButton = document.createElement('forge-button');\n yearButton.setAttribute('part', CALENDAR_CONSTANTS.parts.YEAR_BUTTON);\n yearButton.id = CALENDAR_CONSTANTS.ids.YEAR_BUTTON;\n yearButton.type = 'button';\n yearButton.setAttribute('aria-pressed', 'false');\n\n // TODO: change order of month and year based on locale\n const centerContainer = document.createElement('div');\n centerContainer.setAttribute('aria-live', 'polite');\n centerContainer.appendChild(monthButton);\n centerContainer.appendChild(yearButton);\n\n element.appendChild(previousButton);\n element.appendChild(centerContainer);\n element.appendChild(nextButton);\n return element;\n}\n\n/** Returns content for the month button. */\nexport function getMonthButtonContent(month: number, locale?: string): HTMLElement[] {\n const span = document.createElement('span');\n const icon = document.createElement('forge-icon');\n span.innerHTML = getLocalizedMonth(month, 'long', locale);\n icon.setAttribute('name', 'arrow_drop_down');\n return [span, icon];\n}\n\n/** Returns content for the year button. */\nexport function getYearButtonContent(year: number, locale?: string): HTMLElement[] {\n const span = document.createElement('span');\n const icon = document.createElement('forge-icon');\n span.innerHTML = getLocalizedYear(year, 'numeric', locale);\n icon.setAttribute('name', 'arrow_drop_down');\n return [span, icon];\n}\n\n/** Returns a hidden, accessible header. */\nexport function getAccessibleHeader(): HTMLElement {\n const element = document.createElement('div');\n element.id = CALENDAR_CONSTANTS.ids.ACCESSIBLE_HEADER;\n element.setAttribute('aria-live', 'polite');\n\n const month = document.createElement('span');\n month.id = CALENDAR_CONSTANTS.ids.ACCESSIBLE_MONTH;\n\n const year = document.createElement('span');\n year.id = CALENDAR_CONSTANTS.ids.ACCESSIBLE_YEAR;\n\n // TODO: change order of month and year based on locale\n element.appendChild(month);\n element.appendChild(year);\n return element;\n}\n\n/** Returns a calendar footer. */\nexport function getFooter(): HTMLElement {\n const element = document.createElement('div');\n element.id = CALENDAR_CONSTANTS.ids.FOOTER;\n element.classList.add(CALENDAR_CONSTANTS.classes.FOOTER);\n element.setAttribute('part', CALENDAR_CONSTANTS.parts.FOOTER);\n return element;\n}\n\n/** Returns a clear button. */\nexport function getClearButton(): HTMLElement {\n const clearButton = document.createElement('forge-button');\n clearButton.id = CALENDAR_CONSTANTS.ids.CLEAR_BUTTON;\n clearButton.setAttribute('part', CALENDAR_CONSTANTS.parts.CLEAR_BUTTON);\n clearButton.type = 'button';\n clearButton.innerText = 'Clear';\n return clearButton;\n}\n\n/** Returns a today button. */\nexport function getTodayButton(): HTMLElement {\n const todayButton = document.createElement('forge-button');\n todayButton.id = CALENDAR_CONSTANTS.ids.TODAY_BUTTON;\n todayButton.setAttribute('part', CALENDAR_CONSTANTS.parts.TODAY_BUTTON);\n todayButton.type = 'button';\n todayButton.innerText = 'Today';\n return todayButton;\n}\n\n/** Checks whether an event originated from a date element, returning the element if it did. */\nexport function eventIncludesDate(evt: Event, includeDisabled?: boolean): HTMLElement | null {\n const element = getEventPath(evt).find(p => p.classList && p.classList.contains(CALENDAR_CONSTANTS.classes.DATE));\n if (!element || (!includeDisabled && element.hasAttribute('disabled'))) {\n return null;\n }\n return element;\n}\n\n/** Checks whether an event originated from an element with the given id, returning the element if it did. */\nexport function eventIncludesElement(evt: Event, id: string): HTMLElement | null {\n const element = getEventPath(evt).find(p => p.id === id);\n return element ?? null;\n}\n\n/** Sets the tabindex on a date element. */\nexport function setTabindexOnElement(element: HTMLElement, value: number, setFocus: boolean, preventFocus?: boolean): void {\n element.tabIndex = preventFocus ? -1 : value;\n element.classList.toggle(CALENDAR_CONSTANTS.classes.MDC_RIPPLE_UPGRADED_FOCUSED, preventFocus && value > -1);\n if (value > -1 && setFocus && !preventFocus) {\n element.focus();\n } else {\n element.blur();\n }\n}\n", "export interface ICalendarDropdownPopupConfig {\n activeChangeCallback?: (id: string) => void;\n closeCallback?: () => void;\n popupClasses?: string | string[] | null;\n}\n\nconst classes = {\n POPUP: `forge-calendar-dropdown__popup`\n};\n\nexport const CALENDAR_DROPDOWN_CONSTANTS = {\n classes\n};\n", "import { addClass, isArray, createVisuallyHiddenElement } from '@tylertech/forge-core';\n\nimport { IPopupComponent, PopupAnimationType, POPUP_CONSTANTS } from '../../popup';\nimport { ICalendarComponent } from '../calendar';\nimport { CALENDAR_CONSTANTS, ICalendarFocusChangeEventData } from '../calendar-constants';\nimport { getDateId } from '../calendar-dom-utils';\nimport { CALENDAR_DROPDOWN_CONSTANTS } from './calendar-dropdown-constants';\n\nexport interface ICalendarDropdown {\n calendar: ICalendarComponent | undefined;\n dropdownElement: IPopupComponent | undefined;\n id: string;\n targetElement: HTMLElement;\n popupClasses: string | string[] | null;\n locale: string | undefined;\n isOpen: boolean;\n activeChangeCallback: ((id: string) => void) | undefined;\n closeCallback: (() => void) | undefined;\n open(config: Partial<ICalendarComponent>): void;\n close(): void;\n destroy(): void;\n propagateKeyboardEvent(evt: KeyboardEvent): void;\n}\n\nexport class CalendarDropdown implements ICalendarDropdown {\n public calendar: ICalendarComponent | undefined;\n public dropdownElement: IPopupComponent | undefined;\n public id: string;\n public targetElement: HTMLElement;\n public activeChangeCallback: ((id: string) => void) | undefined;\n public closeCallback: (() => void) | undefined;\n\n private _announcerElement: HTMLElement | undefined;\n private _popupClasses: string[] = [];\n\n public get isOpen(): boolean {\n return this.dropdownElement?.open ?? false;\n }\n\n public get popupClasses(): string | string[] | null {\n return this._popupClasses;\n }\n public set popupClasses(value: string | string[] | null) {\n this._popupClasses = !!value ? isArray(value) ? [...value as string[]] : [value as string] : [];\n }\n\n public get locale(): string | undefined {\n return this.calendar?.locale;\n }\n public set locale(value: string | undefined) {\n if (this.calendar) {\n this.calendar.locale = value;\n }\n }\n \n constructor(targetElement: HTMLElement, id: string) {\n this.targetElement = targetElement;\n this.id = id;\n }\n\n public close(): void {\n if (!this.dropdownElement) {\n return;\n }\n this.dropdownElement.open = false;\n this.dropdownElement = undefined;\n this.calendar = undefined;\n }\n\n public destroy(): void {\n this.close();\n }\n\n public open(config: Partial<ICalendarComponent>): void {\n // Create calendar element\n this.calendar = this._createCalendar(config);\n this._announcerElement = createVisuallyHiddenElement();\n (this._announcerElement as HTMLElement).id = `${this.id}-activedescendant`;\n\n // Create dropdown element\n this.dropdownElement = this._createDropdown();\n this.dropdownElement.appendChild(this.calendar);\n this.dropdownElement.appendChild(this._announcerElement as HTMLElement);\n this.dropdownElement.static = true;\n\n // Add a listener for when the active descendent is updated\n this.calendar.addEventListener(CALENDAR_CONSTANTS.events.FOCUS_CHANGE, (evt: CustomEvent<ICalendarFocusChangeEventData>) => {\n let id = `${this.id}-activedescendent-`;\n switch (evt.detail.type) {\n case 'date':\n id += getDateId(evt.detail.value as Date);\n break;\n case 'month':\n id += `month-${evt.detail.value.toString()}`;\n break;\n case 'year':\n id += `year-${evt.detail.value.toString()}`;\n break;\n }\n this.activeChangeCallback?.call(this, id);\n if (this._announcerElement) {\n this._announcerElement.id = id;\n this._announcerElement.setAttribute('aria-selected', evt.detail.selected.toString());\n this._announcerElement.textContent = evt.detail.text;\n }\n });\n\n // Open the popup\n this.dropdownElement.open = true;\n\n // Attempt to re-layout the calendar to account for updates in rendering during scale\n // transition within popup (fixes ripple alignment... etc.)\n window.requestAnimationFrame(() => {\n setTimeout(() => {\n if (this.dropdownElement && this.dropdownElement.open && this.calendar && this.calendar.isConnected) {\n this.calendar.layout();\n }\n }, POPUP_CONSTANTS.numbers.ANIMATION_DURATION);\n });\n }\n\n public propagateKeyboardEvent(evt: KeyboardEvent): void {\n this.calendar?.handleKey(evt);\n }\n\n private _createCalendar(config: Partial<ICalendarComponent>): ICalendarComponent {\n const calendarElement = document.createElement(CALENDAR_CONSTANTS.elementName);\n Object.assign(calendarElement, config);\n return calendarElement;\n }\n\n private _createDropdown(): IPopupComponent {\n const popupElement = document.createElement(POPUP_CONSTANTS.elementName) as IPopupComponent;\n popupElement.targetElement = this.targetElement;\n popupElement.placement = 'bottom-start';\n popupElement.animationType = PopupAnimationType.Menu;\n popupElement.classList.add(CALENDAR_DROPDOWN_CONSTANTS.classes.POPUP);\n popupElement.id = this.id;\n addClass(this._popupClasses, popupElement);\n\n popupElement.addEventListener(POPUP_CONSTANTS.events.CLOSE, () => {\n if (this.closeCallback) {\n this.closeCallback();\n }\n });\n\n return popupElement;\n }\n}\n"],
5
+ "mappings": "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",
6
+ "names": ["elementName", "COMPONENT_NAME_PREFIX", "observedAttributes", "attributes", "__spreadProps", "__spreadValues", "classes", "ids", "weekdayParts", "parts", "selectors", "CALENDAR_MENU_CONSTANTS", "TOOLTIP_CONSTANTS", "events", "numbers", "CALENDAR_CONSTANTS", "DayOfWeek", "CalendarMonthFocus", "getLocalizedDayOfWeek", "day", "format", "locale", "getLocalizedDayOfMonth", "date", "getLocalizedMonth", "month", "getLocalizedYear", "year", "getFirstDayOfWeekForLocale", "localeParts", "language", "region", "saturdayRegions", "sundayRegions", "saturdayLanguages", "sundayLanguages", "getWeekendDaysForLocale", "isRtlLocale", "l", "getDayId", "day", "getDateId", "date", "month", "getEventWrapperId", "getDayElement", "locale", "element", "CALENDAR_CONSTANTS", "getLocalizedDayOfWeek", "getDateRow", "dates", "index", "options", "_a", "getDateSpacerElement", "dateElement", "getDateElement", "rangeElement", "innerElement", "rippleElement", "dayOfWeekPart", "appendToAttribute", "toggleOnAttribute", "getLocalizedDayOfMonth", "getEventWrapperElement", "getEventElement", "event", "overflow", "svg", "getTooltip", "content", "tooltip", "getHeader", "previousButton", "previousIcon", "previousTooltip", "nextButton", "nextIcon", "nextTooltip", "monthButton", "yearButton", "centerContainer", "getMonthButtonContent", "span", "icon", "getLocalizedMonth", "getYearButtonContent", "year", "getLocalizedYear", "getAccessibleHeader", "getFooter", "getClearButton", "clearButton", "getTodayButton", "todayButton", "eventIncludesDate", "evt", "includeDisabled", "getEventPath", "p", "eventIncludesElement", "id", "setTabindexOnElement", "value", "setFocus", "preventFocus", "classes", "CALENDAR_DROPDOWN_CONSTANTS", "CalendarDropdown", "targetElement", "id", "_a", "_b", "value", "isArray", "config", "createVisuallyHiddenElement", "CALENDAR_CONSTANTS", "evt", "getDateId", "POPUP_CONSTANTS", "calendarElement", "popupElement", "CALENDAR_DROPDOWN_CONSTANTS", "addClass"]
7
7
  }
@@ -0,0 +1,7 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2023 Tyler Technologies, Inc.
4
+ * License: Apache-2.0
5
+ */
6
+ import{b as w,d as T}from"./chunk.STB2FEUA.js";import{a as k,p as x}from"./chunk.VFKHRAWD.js";import{k as v}from"./chunk.YA3RDJCV.js";import{a as y}from"./chunk.HSI7B43D.js";import{a as n}from"./chunk.NVUMRW44.js";import{a as I,b as g}from"./chunk.36F2GVWS.js";import{a as A,e as L,f as m}from"./chunk.JAWV5Y5T.js";import{u as E}from"./chunk.K7FPXAFS.js";import{k as l,n as u}from"./chunk.J2M2MXP2.js";import{a as h,d as a}from"./chunk.M3QDAYD2.js";var R=`${g}list`,H={ROLE:"role",STATIC:"static",NON_INTERACTIVE:"non-interactive",DISABLED:"disabled",DENSE:"dense",PROPAGATE_CLICK:"propagate-click",SELECTED_VALUE:"selected-value",INDENTED:"indented",TWO_LINE:"two-line",THREE_LINE:"three-line",WRAP:"wrap"},O=h({},H),c={elementName:R,attributes:O},C={list:"listitem",listbox:"option",menu:"menuitem"};var N=`${g}list-item`,S={HREF:"href",TARGET:"target",DOWNLOAD:"download",REL:"rel",STATIC:"static",NON_INTERACTIVE:"non-interactive",DISABLED:"disabled",SELECTED:"selected",ACTIVE:"active",VALUE:"value",DENSE:"dense",PROPAGATE_CLICK:"propagate-click",INDENTED:"indented",TWO_LINE:"two-line",THREE_LINE:"three-line",WRAP:"wrap"},z=h({},S),D={ROOT:"forge-list-item"},P={ROOT:`.${D.ROOT}`,CHECKBOX_RADIO_SELECTOR:":is(input[type=checkbox], input[type=radio], forge-checkbox):not(:disabled):not([forge-ignore])",SWITCH_SELECTOR:"forge-switch:not([disabled]):not([forge-ignore])",IGNORE:"[forge-ignore],[data-forge-ignore]"},M={SELECT:`${N}-select`},i={elementName:N,observedAttributes:S,attributes:z,classes:D,selectors:P,events:M};var p=class extends y{constructor(t){super(t);this._rootElement=m(t,i.selectors.ROOT),this._focusIndicatorElement=m(t,w.elementName),this._stateLayerElement=m(t,k.elementName)}initialize(){let t=this._getParentList();t&&this._inheritParentListProps(t),this._rootElement.tabIndex=this._component.nonInteractive||this._component.disabled?-1:0,this._component.hasAttribute("role")||this._setRole(t)}setHref(t){if(t){if(this._rootElement.tagName!=="A"){let s=this._createAnchorRootElement();this._rootElement=v(this._rootElement,s)}this._rootElement.href=t}else if(this._rootElement.tagName==="A"){let s=this._createDefaultRootElement();this._rootElement=v(this._rootElement,s)}}setAnchorTarget(t){this._rootElement.tagName==="A"&&(this._rootElement.target=t)}setAnchorDownload(t){this._rootElement.tagName==="A"&&(this._rootElement.download=t)}setAnchorRel(t){this._rootElement.tagName==="A"&&(this._rootElement.rel=t)}setNonInteractive(t){this._rootElement.tabIndex=t?-1:0,t?(this._focusIndicatorElement.remove(),this._stateLayerElement.remove()):this._rootElement.append(this._focusIndicatorElement,this._stateLayerElement)}setDisabled(t){this._rootElement.tabIndex=t?-1:0,E(this._component,t,"aria-disabled","true"),t?(this._focusIndicatorElement.remove(),this._stateLayerElement.remove()):this._rootElement.append(this._focusIndicatorElement,this._stateLayerElement)}setActive(t){this._focusIndicatorElement.active=t}trySelect(t){let s=this._getParentList();if((s==null?void 0:s.selectedValue)===void 0)return null;let d=(Array.isArray(s.selectedValue)?s.selectedValue:[s.selectedValue]).some(_=>u(_,t));return this.tryToggleSelectionControl(d),d}tryToggleSelectionControl(t){let s=this._component.querySelector(i.selectors.CHECKBOX_RADIO_SELECTOR);if(s){let r=typeof t=="boolean",d=s.checked;s.checked=r?t:!s.checked,(!r||d!==t)&&s.dispatchEvent(new Event("change",{bubbles:!0}))}else{let r=this._component.querySelector(i.selectors.SWITCH_SELECTOR);if(!r)return;let d=typeof t=="boolean",_=r.on;r.on=d?t:!r.on,(!d||_!==t)&&r.dispatchEvent(new CustomEvent("forge-switch-change",{bubbles:!0,detail:r.on}))}}isFocused(){return this._component.matches(":focus")}setFocus(){this._rootElement.focus({preventScroll:!0})}animateStateLayer(){this._stateLayerElement.playAnimation()}clickAnchor(){this._rootElement.tagName==="A"&&this._rootElement.click()}clickHost(){HTMLElement.prototype.click.call(this._component)}_createAnchorRootElement(){let t=document.createElement("a");return t.classList.add(i.classes.ROOT),t.setAttribute("part","root"),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}_createDefaultRootElement(){let t=document.createElement("div");return t.classList.add(i.classes.ROOT),t.setAttribute("part","root"),t.tabIndex=this._component.nonInteractive||this._component.disabled?-1:0,t}_getParentList(){return this._component.closest(c.elementName)}_inheritParentListProps(t){(t.hasAttribute(c.attributes.NON_INTERACTIVE)||t.hasAttribute(c.attributes.STATIC))&&(this._component.nonInteractive=!0),t.hasAttribute(c.attributes.DISABLED)&&(this._component.disabled=!0),t.hasAttribute(c.attributes.DENSE)&&(this._component.dense=!0),t.getAttribute(c.attributes.PROPAGATE_CLICK)==="false"&&(this._component.propagateClick=!1),t.hasAttribute(c.attributes.INDENTED)&&(this._component.indented=!0),t.hasAttribute(c.attributes.TWO_LINE)&&(this._component.twoLine=!0),t.hasAttribute(c.attributes.THREE_LINE)&&(this._component.threeLine=!0)}_setRole(t){var d;let s=t==null?void 0:t.getAttribute("role"),r=(d=C[s])!=null?d:"listitem";this._component.setAttribute("role",r)}};var b=class{constructor(e){this._adapter=e;this._target="";this._download="";this._rel="";this._nonInteractive=!1;this._disabled=!1;this._selected=!1;this._active=!1;this._dense=!1;this._propagateClick=!0;this._indented=!1;this._twoLine=!1;this._threeLine=!1;this._wrap=!1;this._clickListener=this._onClick.bind(this),this._pointerDownListener=this._onPointerDown.bind(this),this._keydownListener=this._onKeydown.bind(this)}initialize(){this._adapter.initialize(),!this._nonInteractive&&!this._disabled&&(this._adapter.addHostListener("click",this._clickListener),this._adapter.addHostListener("keydown",this._keydownListener),this._propagateClick||this._adapter.addHostListener("pointerdown",this._pointerDownListener))}disconnect(){this._adapter.removeHostListener("click",this._clickListener),this._adapter.removeHostListener("pointerdown",this._pointerDownListener),this._adapter.removeHostListener("keydown",this._keydownListener)}setFocus(){this._adapter.setFocus()}click(){this._href?this._adapter.clickAnchor():this._adapter.clickHost()}_onPointerDown(e){this._adapter.isFocused()&&e.preventDefault()}_onKeydown(e){(e.key==="Enter"||e.key===" ")&&(!this._href&&e.key===" "&&e.preventDefault(),this._adapter.animateStateLayer(),this._select(e.target))}_onClick(e){this._select(e.target)}_select(e){let t=e==null?void 0:e.matches(i.selectors.IGNORE);if(this._nonInteractive||this._disabled||t)return;!this._adapter.isFocused()&&this._propagateClick&&this.setFocus(),e.matches(i.selectors.CHECKBOX_RADIO_SELECTOR)||this._adapter.tryToggleSelectionControl();let s={value:this._value,listItem:this._adapter.hostElement};this._adapter.emitHostEvent(i.events.SELECT,s)}get href(){return this._href}set href(e){this._href!==e&&(this._href=e,this._adapter.setHref(this._href),this._adapter.toggleHostAttribute(i.attributes.HREF,!!this._href,this._href))}get target(){return this._target}set target(e){this._target!==e&&(this._target=e,this._href&&this._adapter.setAnchorTarget(this._target),this._adapter.toggleHostAttribute(i.attributes.TARGET,!!this._target,this._target))}get download(){return this._download}set download(e){this._download!==e&&(this._download=e,this._adapter.setAnchorDownload(this._download),this._adapter.toggleHostAttribute(i.attributes.DOWNLOAD,!!this._download,this._download))}get rel(){return this._rel}set rel(e){this._rel!==e&&(this._rel=e,this._adapter.setAnchorRel(this._rel),this._adapter.toggleHostAttribute(i.attributes.REL,!!this._rel,this._rel))}get static(){return this.nonInteractive}set static(e){this.nonInteractive=e}get nonInteractive(){return this._nonInteractive}set nonInteractive(e){this._nonInteractive!==e&&(this._nonInteractive=e,this._nonInteractive?this._adapter.removeHostListener("click",this._clickListener):this._adapter.addHostListener("click",this._clickListener),this._adapter.setNonInteractive(this._nonInteractive),this._adapter.toggleHostAttribute(i.attributes.STATIC,this._nonInteractive),this._adapter.toggleHostAttribute(i.attributes.NON_INTERACTIVE,this._nonInteractive))}get disabled(){return this._disabled}set disabled(e){this._disabled!==e&&(this._disabled=e,this._disabled?this._adapter.removeHostListener("click",this._clickListener):this._adapter.addHostListener("click",this._clickListener),this._adapter.setDisabled(this._disabled),this._adapter.toggleHostAttribute(i.attributes.DISABLED,this._disabled))}get selected(){return this._selected}set selected(e){this._selected!==e&&(this._selected=e,this._adapter.tryToggleSelectionControl(this._selected),this._adapter.toggleHostAttribute(i.attributes.SELECTED,this._selected))}get active(){return this._active}set active(e){this._active!==e&&(this._active=e,this._adapter.setActive(this._active),this._adapter.toggleHostAttribute(i.attributes.ACTIVE,this._active))}get value(){return this._value}set value(e){this._value=e;let t=this._adapter.trySelect(this._value);t!==null&&t!==this._selected&&(this.selected=t)}get dense(){return this._dense}set dense(e){this._dense!==e&&(this._dense=e,this._adapter.toggleHostAttribute(i.attributes.DENSE,this._dense))}get propagateClick(){return this._propagateClick}set propagateClick(e){this._propagateClick!==e&&(this._propagateClick=e,this._propagateClick?this._adapter.removeHostListener("pointerdown",this._pointerDownListener):this._adapter.addHostListener("pointerdown",this._pointerDownListener),this._adapter.setHostAttribute(i.attributes.PROPAGATE_CLICK,this._propagateClick?"true":"false"))}get indented(){return this._indented}set indented(e){this._indented!==e&&(this._indented=e,this._adapter.toggleHostAttribute(i.attributes.INDENTED,this._indented))}get twoLine(){return this._twoLine}set twoLine(e){this._twoLine!==e&&(this._twoLine=e,this._adapter.toggleHostAttribute(i.attributes.TWO_LINE,this._twoLine))}get threeLine(){return this._threeLine}set threeLine(e){this._threeLine!==e&&(this._threeLine=e,this._adapter.toggleHostAttribute(i.attributes.THREE_LINE,this._threeLine))}get wrap(){return this._wrap}set wrap(e){this._wrap!==e&&(this._wrap=e,this._adapter.toggleHostAttribute(i.attributes.WRAP,this._wrap))}};var F='<template><div class="forge-list-item" tabindex="0" part="root"><slot name="leading"></slot><slot name="avatar"></slot><div class="text-container" part="text-container"><slot></slot><slot name="title"></slot><slot name="primary-text"></slot><slot name="subtitle"></slot><slot name="secondary-text"></slot><slot name="tertiary-text"></slot><slot name="tertiary-title"></slot></div><slot name="trailing"></slot><forge-state-layer exportparts="surface:state-layer"></forge-state-layer><forge-focus-indicator exportparts="indicator:focus-indicator" inward></forge-focus-indicator></div></template>',W=':host{--_list-item-indent:var(--forge-list-item-indent, 56px);--_list-item-dense-indent:var(--forge-list-item-dense-indent, 48px)}:host{display:block;outline:0}:host([hidden]){display:none}:host([non-interactive]) .forge-list-item{cursor:initial}:host([disabled]) .forge-list-item{cursor:var(--_list-item-disabled-cursor);opacity:var(--_list-item-disabled-opacity)}:host([two-line]) .forge-list-item{height:var(--_list-item-two-line-height);min-height:var(--_list-item-two-line-height)}:host([three-line]) .forge-list-item{height:var(--_list-item-three-line-height);min-height:var(--_list-item-three-line-height)}:host([dense]) .forge-list-item{height:var(--_list-item-dense-one-line-height);min-height:var(--_list-item-dense-one-line-height)}:host([dense]) .text-container{font-size:var(--_list-item-dense-font-size)}:host([dense][indented]){-webkit-margin-start:var(--_list-item-dense-indent);margin-inline-start:var(--_list-item-dense-indent)}:host([dense][two-line]) .forge-list-item{height:var(--_list-item-dense-two-line-height);min-height:var(--_list-item-dense-two-line-height)}:host([dense][three-line]) .forge-list-item{height:var(--_list-item-dense-three-line-height);min-height:var(--_list-item-dense-three-line-height)}:host([selected]) .forge-list-item{color:var(--_list-item-selected-color)}:host([selected]) .forge-list-item::before{content:"";position:absolute;inset:0;border-radius:inherit;opacity:var(--_list-item-selected-opacity);background-color:var(--_list-item-selected-color)}:host([selected]) .forge-list-item ::slotted([slot=leading]),:host([selected]) .forge-list-item ::slotted([slot=trailing]){color:var(--_list-item-selected-color)}:host([selected]) .forge-list-item ::slotted([slot=leading]){color:var(--_list-item-leading-selected-color)}:host([selected]) .forge-list-item ::slotted([slot=trailing]){color:var(--_list-item-trailing-selected-color)}:host([selected]) .text-container{color:var(--_list-item-selected-color)}:host([selected]) forge-state-layer{--forge-state-layer-color:var(--_list-item-selected-color)}:host([indented]){-webkit-margin-start:var(--_list-item-indent);margin-inline-start:var(--_list-item-indent)}.forge-list-item{--_list-item-background-color:var(--forge-list-item-background-color, transparent);--_list-item-shape:var(--forge-list-item-shape, 0);--_list-item-padding:var(--forge-list-item-padding, 8px 16px);--_list-item-margin:var(--forge-list-item-margin, 0);--_list-item-height:var(--forge-list-item-height, 48px);--_list-item-dense-height:var(--forge-list-item-dense-height, 32px);--_list-item-cursor:var(--forge-list-item-cursor, pointer);--_list-item-supporting-text-color:var(--forge-list-item-supporting-text-color, var(--forge-theme-text-medium, rgba(0, 0, 0, 0.54)));--_list-item-supporting-text-font-size:var(--forge-list-item-supporting-text-font-size, var(--forge-typography-body2-font-size, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-body-font-size-scale, 1))));--_list-item-supporting-text-font-weight:var(--forge-list-item-supporting-text-font-weight, var(--forge-typography-body2-font-weight, 400));--_list-item-supporting-text-line-height:var(--forge-list-item-supporting-text-line-height, 1.5rem);--_list-item-selected-color:var(--forge-list-item-selected-color, var(--forge-theme-primary, #3f51b5));--_list-item-selected-opacity:var(--forge-list-item-selected-opacity, 0.08);--_list-item-selected-leading-color:var(--forge-list-item-selected-leading-color, var(--_list-item-selected-color));--_list-item-selected-trailing-color:var(--forge-list-item-selected-trailing-color, var(--_list-item-selected-color));--_list-item-selected-supporting-text-color:var(--forge-list-item-selected-supporting-text-color, var(--forge-theme-text-medium, rgba(0, 0, 0, 0.54)));--_list-item-disabled-opacity:var(--forge-list-item-disabled-opacity, 0.38);--_list-item-disabled-cursor:var(--forge-list-item-disabled-cursor, not-allowed);--_list-item-one-line-height:var(--forge-list-item-one-line-height, var(--_list-item-height));--_list-item-two-line-height:var(--forge-list-item-two-line-height, var(--forge-list-item-height, 72px));--_list-item-three-line-height:var(--forge-list-item-three-line-height, var(--forge-list-item-height, 88px));--_list-item-dense-one-line-height:var(--forge-list-item-dense-one-line-height, var(--_list-item-dense-height));--_list-item-dense-two-line-height:var(--forge-list-item-dense-two-line-height, var(--forge-list-item-dense-height, 56px));--_list-item-dense-three-line-height:var(--forge-list-item-dense-three-line-height, var(--forge-list-item-dense-height, 72px));--_list-item-dense-font-size:var(--forge-list-item-dense-font-size, 0.875rem);--_list-item-dense-leading-margin-end:var(--forge-list-item-dense-leading-margin-end, var(--forge-list-item-leading-margin-end, 24px));--_list-item-dense-trailing-margin-start:var(--forge-list-item-dense-trailing-margin-start, var(--forge-list-item-trailing-margin-start, 24px));--_list-item-leading-margin-start:var(--forge-list-item-leading-margin-start, 0);--_list-item-leading-margin-end:var(--forge-list-item-leading-margin-end, 32px);--_list-item-leading-selected-color:var(--forge-list-item-leading-selected-color, var(--_list-item-selected-color));--_list-item-trailing-margin-start:var(--forge-list-item-trailing-margin-start, 32px);--_list-item-trailing-margin-end:var(--forge-list-item-trailing-margin-end, 0);--_list-item-trailing-selected-color:var(--forge-list-item-trailing-selected-color, var(--_list-item-selected-color));--_list-item-avatar-background-color:var(--forge-list-item-avatar-background-color, var(--forge-theme-text-medium, rgba(0, 0, 0, 0.54)));--_list-item-avatar-color:var(--forge-list-item-avatar-color, var(--forge-theme-on-primary, #ffffff));--_list-item-avatar-shape:var(--forge-list-item-avatar-shape, var(--forge-shape-round, 50%));--_list-item-avatar-margin-start:var(--forge-list-item-avatar-margin-start, 0);--_list-item-avatar-margin-end:var(--forge-list-item-avatar-margin-end, 16px);--_list-item-avatar-size:var(--forge-list-item-avatar-size, 40px)}.forge-list-item{position:relative;display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;-webkit-box-sizing:border-box;box-sizing:border-box;outline:0;text-decoration:none;background-color:var(--_list-item-background-color);border-radius:var(--_list-item-shape);-webkit-tap-highlight-color:transparent;height:var(--_list-item-height);min-height:var(--_list-item-height);padding:var(--_list-item-padding);margin:var(--_list-item-margin);cursor:var(--_list-item-cursor)}a.forge-list-item{color:inherit}.text-container{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:var(--forge-typography-body2-font-family, var(--forge-typography-font-family, "Roboto", sans-serif));letter-spacing:var(--forge-typography-body2-letter-spacing, .015625em);text-transform:var(--forge-typography-body2-text-transform,inherit);-webkit-text-decoration:var(--forge-typography-body2-text-decoration,inherit);text-decoration:var(--forge-typography-body2-text-decoration,inherit);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;-webkit-box-sizing:border-box;box-sizing:border-box;font-size:var(--_list-item-supporting-text-font-size);font-weight:var(--_list-item-supporting-text-font-weight);line-height:var(--_list-item-supporting-text-line-height);-webkit-box-flex:1;flex:1}slot[name=secondary-text]::slotted(*),slot[name=subtitle]::slotted(*),slot[name=tertiary-text]::slotted(*),slot[name=tertiary-title]::slotted(*){-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);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--_list-item-supporting-text-color);display:block}:host([selected]) slot[name=secondary-text]::slotted(*),:host([selected]) slot[name=subtitle]::slotted(*),:host([selected]) slot[name=tertiary-text]::slotted(*),:host([selected]) slot[name=tertiary-title]::slotted(*){color:var(--_list-item-selected-supporting-text-color)}::slotted([slot=avatar]){background-color:var(--_list-item-avatar-background-color);color:var(--_list-item-avatar-color);display:-webkit-inline-box;display:inline-flex;flex-shrink:0;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;fill:currentColor;-webkit-margin-start:var(--_list-item-avatar-margin-start);margin-inline-start:var(--_list-item-avatar-margin-start);-webkit-margin-end:var(--_list-item-avatar-margin-end);margin-inline-end:var(--_list-item-avatar-margin-end);min-width:var(--_list-item-avatar-size);min-height:var(--_list-item-avatar-size);border-radius:var(--_list-item-avatar-shape)}::slotted([slot=leading]),::slotted([slot=trailing]){color:var(--_list-item-supporting-text-color);display:-webkit-inline-box;display:inline-flex;flex-shrink:0;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;fill:currentColor}::slotted([slot=leading]){-webkit-margin-start:var(--_list-item-leading-margin-start);margin-inline-start:var(--_list-item-leading-margin-start);-webkit-margin-end:var(--_list-item-leading-margin-end);margin-inline-end:var(--_list-item-leading-margin-end)}:host([selected]) ::slotted([slot=leading]){color:var(--_list-item-leading-selected-color)}:host([dense]) ::slotted([slot=leading]){-webkit-margin-end:var(--_list-item-dense-leading-margin-end);margin-inline-end:var(--_list-item-dense-leading-margin-end)}::slotted([slot=trailing]){-webkit-margin-start:var(--_list-item-trailing-margin-start);margin-inline-start:var(--_list-item-trailing-margin-start);-webkit-margin-end:var(--_list-item-trailing-margin-end);margin-inline-end:var(--_list-item-trailing-margin-end)}:host([selected]) ::slotted([slot=trailing]){color:var(--_list-item-trailing-selected-color)}:host([dense]) ::slotted([slot=trailing]){-webkit-margin-start:var(--_list-item-dense-trailing-margin-start);margin-inline-start:var(--_list-item-dense-trailing-margin-start)}:host([wrap]) .forge-list-item{height:auto}:host([wrap]) .text-container{white-space:normal;overflow:visible;text-overflow:clip}:host([wrap]) slot[name=secondary-text]::slotted(*),:host([wrap]) slot[name=subtitle]::slotted(*),:host([wrap]) slot[name=tertiary-text]::slotted(*),:host([wrap]) slot[name=tertiary-title]::slotted(*){white-space:normal;overflow:visible;text-overflow:clip}forge-focus-indicator{--forge-focus-indicator-shape:var(--forge-shape-medium, 4px)}forge-state-layer{border-radius:inherit}',o=class extends HTMLElement{constructor(){super();L(this,F,W),this._foundation=new b(new p(this))}static get observedAttributes(){return[i.observedAttributes.HREF,i.observedAttributes.TARGET,i.observedAttributes.DOWNLOAD,i.observedAttributes.REL,i.observedAttributes.STATIC,i.observedAttributes.NON_INTERACTIVE,i.observedAttributes.DISABLED,i.observedAttributes.SELECTED,i.observedAttributes.ACTIVE,i.observedAttributes.VALUE,i.observedAttributes.DENSE,i.observedAttributes.PROPAGATE_CLICK,i.observedAttributes.INDENTED,i.observedAttributes.TWO_LINE,i.observedAttributes.THREE_LINE,i.observedAttributes.WRAP]}connectedCallback(){this._foundation.initialize()}disconnectedCallback(){this._foundation.disconnect()}attributeChangedCallback(t,s,r){switch(t){case i.observedAttributes.HREF:this.href=r;break;case i.observedAttributes.TARGET:this.target=r;break;case i.observedAttributes.DOWNLOAD:this.download=r;break;case i.observedAttributes.REL:this.rel=r;break;case i.observedAttributes.NON_INTERACTIVE:case i.observedAttributes.STATIC:this.nonInteractive=l(r);break;case i.observedAttributes.DISABLED:this.disabled=l(r);break;case i.observedAttributes.SELECTED:this.selected=l(r);break;case i.observedAttributes.ACTIVE:this.active=l(r);break;case i.observedAttributes.VALUE:this.value=r;break;case i.observedAttributes.DENSE:this.dense=l(r);break;case i.observedAttributes.PROPAGATE_CLICK:this.propagateClick=l(r);break;case i.observedAttributes.INDENTED:this.indented=l(r);break;case i.observedAttributes.TWO_LINE:this.twoLine=l(r);break;case i.observedAttributes.THREE_LINE:this.threeLine=l(r);break;case i.observedAttributes.WRAP:this.wrap=l(r);break}}focus(){this._foundation.setFocus()}click(){this._foundation.click()}};a([n()],o.prototype,"href",2),a([n()],o.prototype,"target",2),a([n()],o.prototype,"download",2),a([n()],o.prototype,"rel",2),a([n()],o.prototype,"static",2),a([n()],o.prototype,"nonInteractive",2),a([n()],o.prototype,"disabled",2),a([n()],o.prototype,"selected",2),a([n()],o.prototype,"active",2),a([n()],o.prototype,"value",2),a([n()],o.prototype,"dense",2),a([n()],o.prototype,"propagateClick",2),a([n()],o.prototype,"indented",2),a([n()],o.prototype,"twoLine",2),a([n()],o.prototype,"threeLine",2),a([n()],o.prototype,"wrap",2),o=a([I({name:i.elementName,dependencies:[x,T]})],o);function ut(){A(o)}export{i as a,c as b,C as c,p as d,b as e,o as f,ut as g};
7
+ //# sourceMappingURL=chunk.QN5T26HH.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/list/list/list-constants.ts", "../../src/list/list-item/list-item-constants.ts", "../../src/list/list-item/list-item-adapter.ts", "../../src/list/list-item/list-item-foundation.ts", "../../src/list/list-item/list-item.ts", "../../src/list/list-item/index.ts"],
4
+ "sourcesContent": ["import { COMPONENT_NAME_PREFIX } from '../../constants';\n\nconst elementName = `${COMPONENT_NAME_PREFIX}list`;\n\nconst observedAttributes = {\n ROLE: 'role',\n STATIC: 'static',\n NON_INTERACTIVE: 'non-interactive',\n DISABLED: 'disabled',\n DENSE: 'dense',\n PROPAGATE_CLICK: 'propagate-click',\n SELECTED_VALUE: 'selected-value',\n INDENTED: 'indented',\n TWO_LINE: 'two-line',\n THREE_LINE: 'three-line',\n WRAP: 'wrap'\n};\n\nconst attributes = {\n ...observedAttributes\n};\n\nexport const LIST_CONSTANTS = {\n elementName,\n attributes\n};\n\nexport const ListComponentItemRole = {\n list: 'listitem',\n listbox: 'option',\n menu: 'menuitem'\n};\n", "import { COMPONENT_NAME_PREFIX } from '../../constants';\nimport { IListItemComponent } from './list-item';\n\nconst elementName = `${COMPONENT_NAME_PREFIX}list-item`;\n\nconst observedAttributes = {\n HREF: 'href',\n TARGET: 'target',\n DOWNLOAD: 'download',\n REL: 'rel',\n STATIC: 'static',\n NON_INTERACTIVE: 'non-interactive',\n DISABLED: 'disabled',\n SELECTED: 'selected',\n ACTIVE: 'active',\n VALUE: 'value',\n DENSE: 'dense',\n PROPAGATE_CLICK: 'propagate-click',\n INDENTED: 'indented',\n TWO_LINE: 'two-line',\n THREE_LINE: 'three-line',\n WRAP: 'wrap'\n};\n\nconst attributes = {\n ...observedAttributes\n};\n\nconst classes = {\n ROOT: 'forge-list-item'\n};\n\nconst selectors = {\n ROOT: `.${classes.ROOT}`,\n CHECKBOX_RADIO_SELECTOR: ':is(input[type=checkbox], input[type=radio], forge-checkbox):not(:disabled):not([forge-ignore])',\n SWITCH_SELECTOR: 'forge-switch:not([disabled]):not([forge-ignore])',\n IGNORE: '[forge-ignore],[data-forge-ignore]'\n};\n\nconst events = {\n SELECT: `${elementName}-select`\n};\n\nexport const LIST_ITEM_CONSTANTS = {\n elementName,\n observedAttributes,\n attributes,\n classes,\n selectors,\n events\n};\n\nexport interface IListItemSelectEventData<T = unknown> {\n value: T;\n listItem: IListItemComponent;\n}\n", "import { getShadowElement, isDeepEqual, toggleAttribute } from '@tylertech/forge-core';\nimport { replaceElement } from '../../core/utils/utils';\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 { IListComponent } from '../list/list';\nimport { ListComponentItemRole, LIST_CONSTANTS } from '../list/list-constants';\nimport { IListItemComponent } from './list-item';\nimport { LIST_ITEM_CONSTANTS } from './list-item-constants';\nimport { ISwitchComponent } from '../../switch';\n\nexport interface IListItemAdapter extends IBaseAdapter<IListItemComponent> {\n initialize(): void;\n setHref(href: string): void;\n setAnchorTarget(target: string): void;\n setAnchorDownload(download: string): void;\n setAnchorRel(rel: string): void;\n setNonInteractive(value: boolean): void;\n setDisabled(value: boolean): void;\n setActive(value: boolean): void;\n trySelect(value: unknown): boolean | null;\n tryToggleSelectionControl(value?: boolean): void;\n isFocused(): boolean;\n setFocus(): void;\n animateStateLayer(): void;\n clickAnchor(): void;\n clickHost(): void;\n}\n\nexport class ListItemAdapter extends BaseAdapter<IListItemComponent> implements IListItemAdapter {\n private _rootElement: HTMLElement | HTMLAnchorElement;\n private _focusIndicatorElement: IFocusIndicatorComponent;\n private _stateLayerElement: IStateLayerComponent;\n\n constructor(component: IListItemComponent) {\n super(component);\n this._rootElement = getShadowElement(component, LIST_ITEM_CONSTANTS.selectors.ROOT);\n this._focusIndicatorElement = getShadowElement(component, FOCUS_INDICATOR_CONSTANTS.elementName) as IFocusIndicatorComponent;\n this._stateLayerElement = getShadowElement(component, STATE_LAYER_CONSTANTS.elementName) as IStateLayerComponent;\n }\n\n public initialize(): void {\n // Attempt to inherit state for corresponding properties from our parent list\n const list = this._getParentList();\n if (list) {\n this._inheritParentListProps(list);\n }\n\n this._rootElement.tabIndex = this._component.nonInteractive || this._component.disabled ? -1 : 0;\n\n if (!this._component.hasAttribute('role')) {\n this._setRole(list);\n }\n }\n\n public setHref(href: string): void {\n if (href) {\n if (this._rootElement.tagName !== 'A') {\n const anchor = this._createAnchorRootElement();\n this._rootElement = replaceElement(this._rootElement, anchor);\n }\n (this._rootElement as HTMLAnchorElement).href = href;\n } else if (this._rootElement.tagName === 'A') {\n const defaultEl = this._createDefaultRootElement();\n this._rootElement = replaceElement(this._rootElement, defaultEl);\n }\n }\n\n public setAnchorTarget(target: string): void {\n if (this._rootElement.tagName === 'A') {\n (this._rootElement as HTMLAnchorElement).target = target;\n }\n }\n\n public setAnchorDownload(download: string): void {\n if (this._rootElement.tagName === 'A') {\n (this._rootElement as HTMLAnchorElement).download = download;\n }\n }\n\n public setAnchorRel(rel: string): void {\n if (this._rootElement.tagName === 'A') {\n (this._rootElement as HTMLAnchorElement).rel = rel;\n }\n }\n\n public setNonInteractive(value: boolean): void {\n this._rootElement.tabIndex = value ? -1 : 0;\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\n public setDisabled(value: boolean): void {\n this._rootElement.tabIndex = value ? -1 : 0;\n toggleAttribute(this._component, value, 'aria-disabled', 'true');\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\n public setActive(value: boolean): void {\n this._focusIndicatorElement.active = value;\n }\n\n /**\n * Attempts to set the selected state of the list item element and it's visual indicators\n * @param value The value to compare to the parent list element's selected value\n * @returns Returns whether the list item is selected, or null otherwise.\n */\n public trySelect(value: unknown): boolean | null {\n const list = this._getParentList();\n if (list?.selectedValue === undefined) {\n return null;\n }\n\n const listValues = Array.isArray(list.selectedValue) ? list.selectedValue : [list.selectedValue];\n const isSelected = listValues.some(v => isDeepEqual(v, value));\n\n this.tryToggleSelectionControl(isSelected);\n return isSelected;\n }\n\n /**\n * Attempts to toggle a checkbox radio button, or switch within the list item if it can find one.\n */\n public tryToggleSelectionControl(value?: boolean): void {\n const checkable = this._component.querySelector(LIST_ITEM_CONSTANTS.selectors.CHECKBOX_RADIO_SELECTOR) as HTMLInputElement;\n if (checkable) {\n const force = typeof value === 'boolean';\n const currentState = checkable.checked;\n \n // Check if we are just toggling or forcing to a specific checked state\n checkable.checked = force ? value as boolean : !checkable.checked;\n\n // TODO: This seems weird... Should we be dispatching events on slotted elements when changes are made programmatically?\n if (!force || currentState !== value) {\n checkable.dispatchEvent(new Event('change', { bubbles: true }));\n }\n } else {\n // Special case handling for the Forge switch element since it doesn't have a checked property\n const switchEl = this._component.querySelector(LIST_ITEM_CONSTANTS.selectors.SWITCH_SELECTOR) as ISwitchComponent;\n if (!switchEl) {\n return;\n }\n \n const force = typeof value === 'boolean';\n const currentState = switchEl.on;\n\n // Check if we are just toggling or forcing to a specific checked state\n switchEl.on = force ? value as boolean : !switchEl.on;\n\n // TODO: This seems weird... Should we be dispatching events on slotted elements when changes are made programmatically?\n if (!force || currentState !== value) {\n switchEl.dispatchEvent(new CustomEvent('forge-switch-change', { bubbles: true, detail: switchEl.on }));\n }\n }\n }\n\n public isFocused(): boolean {\n return this._component.matches(':focus');\n }\n\n public setFocus(): void {\n this._rootElement.focus({ preventScroll: true });\n }\n\n public animateStateLayer(): void {\n this._stateLayerElement.playAnimation();\n }\n\n public clickAnchor(): void {\n if (this._rootElement.tagName === 'A') {\n (this._rootElement as HTMLAnchorElement).click();\n }\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 private _createAnchorRootElement(): HTMLAnchorElement {\n const a = document.createElement('a');\n a.classList.add(LIST_ITEM_CONSTANTS.classes.ROOT);\n a.setAttribute('part', 'root');\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 private _createDefaultRootElement(): HTMLElement {\n const div = document.createElement('div');\n div.classList.add(LIST_ITEM_CONSTANTS.classes.ROOT);\n div.setAttribute('part', 'root');\n div.tabIndex = this._component.nonInteractive || this._component.disabled ? -1 : 0;\n return div;\n }\n\n private _getParentList(): IListComponent | null {\n return this._component.closest(LIST_CONSTANTS.elementName);\n }\n\n private _inheritParentListProps(list: IListComponent): void {\n if (list.hasAttribute(LIST_CONSTANTS.attributes.NON_INTERACTIVE) || list.hasAttribute(LIST_CONSTANTS.attributes.STATIC)) {\n this._component.nonInteractive = true;\n }\n if (list.hasAttribute(LIST_CONSTANTS.attributes.DISABLED)) {\n this._component.disabled = true;\n }\n if (list.hasAttribute(LIST_CONSTANTS.attributes.DENSE)) {\n this._component.dense = true;\n }\n if (list.getAttribute(LIST_CONSTANTS.attributes.PROPAGATE_CLICK) === 'false') {\n this._component.propagateClick = false;\n }\n if (list.hasAttribute(LIST_CONSTANTS.attributes.INDENTED)) {\n this._component.indented = true;\n }\n if (list.hasAttribute(LIST_CONSTANTS.attributes.TWO_LINE)) {\n this._component.twoLine = true;\n }\n if (list.hasAttribute(LIST_CONSTANTS.attributes.THREE_LINE)) {\n this._component.threeLine = true;\n }\n }\n\n private _setRole(list: IListComponent | null): void {\n const listRole = list?.getAttribute('role');\n const role = ListComponentItemRole[listRole as string] ?? 'listitem';\n this._component.setAttribute('role', role);\n }\n}\n", "import { ICustomElementFoundation } from '@tylertech/forge-core';\n\nimport { IListItemAdapter } from './list-item-adapter';\nimport { IListItemSelectEventData, LIST_ITEM_CONSTANTS } from './list-item-constants';\n\nexport interface IListItemFoundation extends ICustomElementFoundation {\n href: string;\n target: string;\n download: string;\n rel: string;\n static: boolean;\n nonInteractive: boolean;\n disabled: boolean;\n selected: boolean;\n active: boolean;\n value: unknown;\n dense: boolean;\n propagateClick: boolean;\n indented: boolean;\n twoLine: boolean;\n threeLine: boolean;\n wrap: boolean;\n setFocus(): void;\n}\n\nexport class ListItemFoundation implements IListItemFoundation {\n private _href: string;\n private _target = '';\n private _download = '';\n private _rel = '';\n private _nonInteractive = false;\n private _disabled = false;\n private _selected = false;\n private _active = false;\n private _value: unknown;\n private _dense = false;\n private _propagateClick = true;\n private _indented = false;\n private _twoLine = false;\n private _threeLine = false;\n private _wrap = false;\n\n private _clickListener: EventListener;\n private _pointerDownListener: EventListener;\n private _keydownListener: EventListener;\n\n constructor(private _adapter: IListItemAdapter) {\n this._clickListener = this._onClick.bind(this);\n this._pointerDownListener = this._onPointerDown.bind(this);\n this._keydownListener = this._onKeydown.bind(this);\n }\n\n public initialize(): void {\n this._adapter.initialize();\n\n if (!this._nonInteractive && !this._disabled) {\n this._adapter.addHostListener('click', this._clickListener);\n this._adapter.addHostListener('keydown', this._keydownListener);\n\n if (!this._propagateClick) {\n this._adapter.addHostListener('pointerdown', this._pointerDownListener);\n }\n }\n }\n\n public disconnect(): void {\n this._adapter.removeHostListener('click', this._clickListener);\n this._adapter.removeHostListener('pointerdown', this._pointerDownListener);\n this._adapter.removeHostListener('keydown', this._keydownListener);\n }\n\n public setFocus(): void {\n this._adapter.setFocus();\n }\n\n public click(): void {\n if (this._href) {\n this._adapter.clickAnchor();\n } else {\n this._adapter.clickHost();\n }\n }\n\n private _onPointerDown(evt: MouseEvent): void {\n if (this._adapter.isFocused()) {\n evt.preventDefault();\n }\n }\n\n private _onKeydown(evt: KeyboardEvent): void {\n if (evt.key === 'Enter' || evt.key === ' ') {\n if (!this._href && evt.key === ' ') {\n evt.preventDefault();\n }\n this._adapter.animateStateLayer();\n this._select(evt.target as HTMLElement);\n }\n }\n\n private _onClick(event: MouseEvent): void {\n this._select(event.target as HTMLElement);\n }\n\n private _select(targetElement: HTMLElement): void {\n const ignoreElement = targetElement?.matches(LIST_ITEM_CONSTANTS.selectors.IGNORE);\n if (this._nonInteractive || this._disabled || ignoreElement) {\n return;\n }\n\n if (!this._adapter.isFocused() && this._propagateClick) {\n this.setFocus();\n }\n\n // If the target was not a checkbox or radio button, attempt to find one and toggle its checked state\n if (!targetElement.matches(LIST_ITEM_CONSTANTS.selectors.CHECKBOX_RADIO_SELECTOR)) {\n this._adapter.tryToggleSelectionControl();\n }\n\n const data: IListItemSelectEventData = {\n value: this._value,\n listItem: this._adapter.hostElement\n };\n this._adapter.emitHostEvent(LIST_ITEM_CONSTANTS.events.SELECT, data);\n }\n\n public get href(): string {\n return this._href;\n }\n public set href(value: string) {\n if (this._href !== value) {\n this._href = value;\n this._adapter.setHref(this._href);\n this._adapter.toggleHostAttribute(LIST_ITEM_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;\n if (this._href) {\n this._adapter.setAnchorTarget(this._target);\n }\n this._adapter.toggleHostAttribute(LIST_ITEM_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.setAnchorDownload(this._download);\n this._adapter.toggleHostAttribute(LIST_ITEM_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.setAnchorRel(this._rel);\n this._adapter.toggleHostAttribute(LIST_ITEM_CONSTANTS.attributes.REL, !!this._rel, this._rel);\n }\n }\n\n public get static(): boolean {\n return this.nonInteractive;\n }\n public set static(value: boolean) {\n this.nonInteractive = value;\n }\n\n public get nonInteractive(): boolean {\n return this._nonInteractive;\n }\n public set nonInteractive(value: boolean) {\n if (this._nonInteractive !== value) {\n this._nonInteractive = value;\n if (this._nonInteractive) {\n this._adapter.removeHostListener('click', this._clickListener);\n } else {\n this._adapter.addHostListener('click', this._clickListener);\n }\n this._adapter.setNonInteractive(this._nonInteractive);\n this._adapter.toggleHostAttribute(LIST_ITEM_CONSTANTS.attributes.STATIC, this._nonInteractive);\n this._adapter.toggleHostAttribute(LIST_ITEM_CONSTANTS.attributes.NON_INTERACTIVE, this._nonInteractive);\n }\n }\n\n public get disabled(): boolean {\n return this._disabled;\n }\n public set disabled(value: boolean) {\n if (this._disabled !== value) {\n this._disabled = value;\n if (this._disabled) {\n this._adapter.removeHostListener('click', this._clickListener);\n } else {\n this._adapter.addHostListener('click', this._clickListener);\n }\n this._adapter.setDisabled(this._disabled);\n this._adapter.toggleHostAttribute(LIST_ITEM_CONSTANTS.attributes.DISABLED, this._disabled);\n }\n }\n\n public get selected(): boolean {\n return this._selected;\n }\n public set selected(value: boolean) {\n if (this._selected !== value) {\n this._selected = value;\n this._adapter.tryToggleSelectionControl(this._selected);\n this._adapter.toggleHostAttribute(LIST_ITEM_CONSTANTS.attributes.SELECTED, this._selected);\n }\n }\n\n public get active(): boolean {\n return this._active;\n }\n public set active(value: boolean) {\n if (this._active !== value) {\n this._active = value;\n this._adapter.setActive(this._active);\n this._adapter.toggleHostAttribute(LIST_ITEM_CONSTANTS.attributes.ACTIVE, this._active);\n }\n }\n\n public get value(): unknown {\n return this._value;\n }\n public set value(value: unknown) {\n this._value = value;\n const isSelected = this._adapter.trySelect(this._value);\n if (isSelected !== null && isSelected !== this._selected) {\n this.selected = isSelected;\n }\n }\n\n public get dense(): boolean {\n return this._dense;\n }\n public set dense(value: boolean) {\n if (this._dense !== value) {\n this._dense = value;\n this._adapter.toggleHostAttribute(LIST_ITEM_CONSTANTS.attributes.DENSE, this._dense);\n }\n }\n\n public get propagateClick(): boolean {\n return this._propagateClick;\n }\n public set propagateClick(value: boolean) {\n if (this._propagateClick !== value) {\n this._propagateClick = value;\n\n if (this._propagateClick) {\n this._adapter.removeHostListener('pointerdown', this._pointerDownListener);\n } else {\n this._adapter.addHostListener('pointerdown', this._pointerDownListener);\n }\n\n this._adapter.setHostAttribute(LIST_ITEM_CONSTANTS.attributes.PROPAGATE_CLICK, this._propagateClick ? 'true' : 'false');\n }\n }\n\n public get indented(): boolean {\n return this._indented;\n }\n public set indented(value: boolean) {\n if (this._indented !== value) {\n this._indented = value;\n this._adapter.toggleHostAttribute(LIST_ITEM_CONSTANTS.attributes.INDENTED, this._indented);\n }\n }\n\n public get twoLine(): boolean {\n return this._twoLine;\n }\n public set twoLine(value: boolean) {\n if (this._twoLine !== value) {\n this._twoLine = value;\n this._adapter.toggleHostAttribute(LIST_ITEM_CONSTANTS.attributes.TWO_LINE, this._twoLine);\n }\n }\n\n public get threeLine(): boolean {\n return this._threeLine;\n }\n public set threeLine(value: boolean) {\n if (this._threeLine !== value) {\n this._threeLine = value;\n this._adapter.toggleHostAttribute(LIST_ITEM_CONSTANTS.attributes.THREE_LINE, this._threeLine);\n }\n }\n\n public get wrap(): boolean {\n return this._wrap;\n }\n public set wrap(value: boolean) {\n if (this._wrap !== value) {\n this._wrap = value;\n this._adapter.toggleHostAttribute(LIST_ITEM_CONSTANTS.attributes.WRAP, this._wrap);\n }\n }\n}\n", "import { CustomElement, attachShadowTemplate, ICustomElement, FoundationProperty, coerceBoolean } from '@tylertech/forge-core';\nimport { ListItemAdapter } from './list-item-adapter';\nimport { ListItemFoundation } from './list-item-foundation';\nimport { IListItemSelectEventData, LIST_ITEM_CONSTANTS } from './list-item-constants';\nimport { StateLayerComponent } from '../../state-layer';\nimport { FocusIndicatorComponent } from '../../focus-indicator';\n\nconst template = '<template><div class=\\\"forge-list-item\\\" tabindex=\\\"0\\\" part=\\\"root\\\"><slot name=\\\"leading\\\"></slot><slot name=\\\"avatar\\\"></slot><div class=\\\"text-container\\\" part=\\\"text-container\\\"><slot></slot><slot name=\\\"title\\\"></slot><slot name=\\\"primary-text\\\"></slot><slot name=\\\"subtitle\\\"></slot><slot name=\\\"secondary-text\\\"></slot><slot name=\\\"tertiary-text\\\"></slot><slot name=\\\"tertiary-title\\\"></slot></div><slot name=\\\"trailing\\\"></slot><forge-state-layer exportparts=\\\"surface:state-layer\\\"></forge-state-layer><forge-focus-indicator exportparts=\\\"indicator:focus-indicator\\\" inward></forge-focus-indicator></div></template>';\nconst styles = ':host{--_list-item-indent:var(--forge-list-item-indent, 56px);--_list-item-dense-indent:var(--forge-list-item-dense-indent, 48px)}:host{display:block;outline:0}:host([hidden]){display:none}:host([non-interactive]) .forge-list-item{cursor:initial}:host([disabled]) .forge-list-item{cursor:var(--_list-item-disabled-cursor);opacity:var(--_list-item-disabled-opacity)}:host([two-line]) .forge-list-item{height:var(--_list-item-two-line-height);min-height:var(--_list-item-two-line-height)}:host([three-line]) .forge-list-item{height:var(--_list-item-three-line-height);min-height:var(--_list-item-three-line-height)}:host([dense]) .forge-list-item{height:var(--_list-item-dense-one-line-height);min-height:var(--_list-item-dense-one-line-height)}:host([dense]) .text-container{font-size:var(--_list-item-dense-font-size)}:host([dense][indented]){-webkit-margin-start:var(--_list-item-dense-indent);margin-inline-start:var(--_list-item-dense-indent)}:host([dense][two-line]) .forge-list-item{height:var(--_list-item-dense-two-line-height);min-height:var(--_list-item-dense-two-line-height)}:host([dense][three-line]) .forge-list-item{height:var(--_list-item-dense-three-line-height);min-height:var(--_list-item-dense-three-line-height)}:host([selected]) .forge-list-item{color:var(--_list-item-selected-color)}:host([selected]) .forge-list-item::before{content:\\\"\\\";position:absolute;inset:0;border-radius:inherit;opacity:var(--_list-item-selected-opacity);background-color:var(--_list-item-selected-color)}:host([selected]) .forge-list-item ::slotted([slot=leading]),:host([selected]) .forge-list-item ::slotted([slot=trailing]){color:var(--_list-item-selected-color)}:host([selected]) .forge-list-item ::slotted([slot=leading]){color:var(--_list-item-leading-selected-color)}:host([selected]) .forge-list-item ::slotted([slot=trailing]){color:var(--_list-item-trailing-selected-color)}:host([selected]) .text-container{color:var(--_list-item-selected-color)}:host([selected]) forge-state-layer{--forge-state-layer-color:var(--_list-item-selected-color)}:host([indented]){-webkit-margin-start:var(--_list-item-indent);margin-inline-start:var(--_list-item-indent)}.forge-list-item{--_list-item-background-color:var(--forge-list-item-background-color, transparent);--_list-item-shape:var(--forge-list-item-shape, 0);--_list-item-padding:var(--forge-list-item-padding, 8px 16px);--_list-item-margin:var(--forge-list-item-margin, 0);--_list-item-height:var(--forge-list-item-height, 48px);--_list-item-dense-height:var(--forge-list-item-dense-height, 32px);--_list-item-cursor:var(--forge-list-item-cursor, pointer);--_list-item-supporting-text-color:var(--forge-list-item-supporting-text-color, var(--forge-theme-text-medium, rgba(0, 0, 0, 0.54)));--_list-item-supporting-text-font-size:var(--forge-list-item-supporting-text-font-size, var(--forge-typography-body2-font-size, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-body-font-size-scale, 1))));--_list-item-supporting-text-font-weight:var(--forge-list-item-supporting-text-font-weight, var(--forge-typography-body2-font-weight, 400));--_list-item-supporting-text-line-height:var(--forge-list-item-supporting-text-line-height, 1.5rem);--_list-item-selected-color:var(--forge-list-item-selected-color, var(--forge-theme-primary, #3f51b5));--_list-item-selected-opacity:var(--forge-list-item-selected-opacity, 0.08);--_list-item-selected-leading-color:var(--forge-list-item-selected-leading-color, var(--_list-item-selected-color));--_list-item-selected-trailing-color:var(--forge-list-item-selected-trailing-color, var(--_list-item-selected-color));--_list-item-selected-supporting-text-color:var(--forge-list-item-selected-supporting-text-color, var(--forge-theme-text-medium, rgba(0, 0, 0, 0.54)));--_list-item-disabled-opacity:var(--forge-list-item-disabled-opacity, 0.38);--_list-item-disabled-cursor:var(--forge-list-item-disabled-cursor, not-allowed);--_list-item-one-line-height:var(--forge-list-item-one-line-height, var(--_list-item-height));--_list-item-two-line-height:var(--forge-list-item-two-line-height, var(--forge-list-item-height, 72px));--_list-item-three-line-height:var(--forge-list-item-three-line-height, var(--forge-list-item-height, 88px));--_list-item-dense-one-line-height:var(--forge-list-item-dense-one-line-height, var(--_list-item-dense-height));--_list-item-dense-two-line-height:var(--forge-list-item-dense-two-line-height, var(--forge-list-item-dense-height, 56px));--_list-item-dense-three-line-height:var(--forge-list-item-dense-three-line-height, var(--forge-list-item-dense-height, 72px));--_list-item-dense-font-size:var(--forge-list-item-dense-font-size, 0.875rem);--_list-item-dense-leading-margin-end:var(--forge-list-item-dense-leading-margin-end, var(--forge-list-item-leading-margin-end, 24px));--_list-item-dense-trailing-margin-start:var(--forge-list-item-dense-trailing-margin-start, var(--forge-list-item-trailing-margin-start, 24px));--_list-item-leading-margin-start:var(--forge-list-item-leading-margin-start, 0);--_list-item-leading-margin-end:var(--forge-list-item-leading-margin-end, 32px);--_list-item-leading-selected-color:var(--forge-list-item-leading-selected-color, var(--_list-item-selected-color));--_list-item-trailing-margin-start:var(--forge-list-item-trailing-margin-start, 32px);--_list-item-trailing-margin-end:var(--forge-list-item-trailing-margin-end, 0);--_list-item-trailing-selected-color:var(--forge-list-item-trailing-selected-color, var(--_list-item-selected-color));--_list-item-avatar-background-color:var(--forge-list-item-avatar-background-color, var(--forge-theme-text-medium, rgba(0, 0, 0, 0.54)));--_list-item-avatar-color:var(--forge-list-item-avatar-color, var(--forge-theme-on-primary, #ffffff));--_list-item-avatar-shape:var(--forge-list-item-avatar-shape, var(--forge-shape-round, 50%));--_list-item-avatar-margin-start:var(--forge-list-item-avatar-margin-start, 0);--_list-item-avatar-margin-end:var(--forge-list-item-avatar-margin-end, 16px);--_list-item-avatar-size:var(--forge-list-item-avatar-size, 40px)}.forge-list-item{position:relative;display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;-webkit-box-sizing:border-box;box-sizing:border-box;outline:0;text-decoration:none;background-color:var(--_list-item-background-color);border-radius:var(--_list-item-shape);-webkit-tap-highlight-color:transparent;height:var(--_list-item-height);min-height:var(--_list-item-height);padding:var(--_list-item-padding);margin:var(--_list-item-margin);cursor:var(--_list-item-cursor)}a.forge-list-item{color:inherit}.text-container{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:var(--forge-typography-body2-font-family, var(--forge-typography-font-family, \\\"Roboto\\\", sans-serif));letter-spacing:var(--forge-typography-body2-letter-spacing, .015625em);text-transform:var(--forge-typography-body2-text-transform,inherit);-webkit-text-decoration:var(--forge-typography-body2-text-decoration,inherit);text-decoration:var(--forge-typography-body2-text-decoration,inherit);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;-webkit-box-sizing:border-box;box-sizing:border-box;font-size:var(--_list-item-supporting-text-font-size);font-weight:var(--_list-item-supporting-text-font-weight);line-height:var(--_list-item-supporting-text-line-height);-webkit-box-flex:1;flex:1}slot[name=secondary-text]::slotted(*),slot[name=subtitle]::slotted(*),slot[name=tertiary-text]::slotted(*),slot[name=tertiary-title]::slotted(*){-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);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--_list-item-supporting-text-color);display:block}:host([selected]) slot[name=secondary-text]::slotted(*),:host([selected]) slot[name=subtitle]::slotted(*),:host([selected]) slot[name=tertiary-text]::slotted(*),:host([selected]) slot[name=tertiary-title]::slotted(*){color:var(--_list-item-selected-supporting-text-color)}::slotted([slot=avatar]){background-color:var(--_list-item-avatar-background-color);color:var(--_list-item-avatar-color);display:-webkit-inline-box;display:inline-flex;flex-shrink:0;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;fill:currentColor;-webkit-margin-start:var(--_list-item-avatar-margin-start);margin-inline-start:var(--_list-item-avatar-margin-start);-webkit-margin-end:var(--_list-item-avatar-margin-end);margin-inline-end:var(--_list-item-avatar-margin-end);min-width:var(--_list-item-avatar-size);min-height:var(--_list-item-avatar-size);border-radius:var(--_list-item-avatar-shape)}::slotted([slot=leading]),::slotted([slot=trailing]){color:var(--_list-item-supporting-text-color);display:-webkit-inline-box;display:inline-flex;flex-shrink:0;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;fill:currentColor}::slotted([slot=leading]){-webkit-margin-start:var(--_list-item-leading-margin-start);margin-inline-start:var(--_list-item-leading-margin-start);-webkit-margin-end:var(--_list-item-leading-margin-end);margin-inline-end:var(--_list-item-leading-margin-end)}:host([selected]) ::slotted([slot=leading]){color:var(--_list-item-leading-selected-color)}:host([dense]) ::slotted([slot=leading]){-webkit-margin-end:var(--_list-item-dense-leading-margin-end);margin-inline-end:var(--_list-item-dense-leading-margin-end)}::slotted([slot=trailing]){-webkit-margin-start:var(--_list-item-trailing-margin-start);margin-inline-start:var(--_list-item-trailing-margin-start);-webkit-margin-end:var(--_list-item-trailing-margin-end);margin-inline-end:var(--_list-item-trailing-margin-end)}:host([selected]) ::slotted([slot=trailing]){color:var(--_list-item-trailing-selected-color)}:host([dense]) ::slotted([slot=trailing]){-webkit-margin-start:var(--_list-item-dense-trailing-margin-start);margin-inline-start:var(--_list-item-dense-trailing-margin-start)}:host([wrap]) .forge-list-item{height:auto}:host([wrap]) .text-container{white-space:normal;overflow:visible;text-overflow:clip}:host([wrap]) slot[name=secondary-text]::slotted(*),:host([wrap]) slot[name=subtitle]::slotted(*),:host([wrap]) slot[name=tertiary-text]::slotted(*),:host([wrap]) slot[name=tertiary-title]::slotted(*){white-space:normal;overflow:visible;text-overflow:clip}forge-focus-indicator{--forge-focus-indicator-shape:var(--forge-shape-medium, 4px)}forge-state-layer{border-radius:inherit}';\n\nexport interface IListItemComponent<T = unknown> extends ICustomElement {\n href: string;\n target: string;\n download: string;\n rel: string;\n /** @deprecated Use nonInteractive instead. */\n static: boolean;\n nonInteractive: boolean;\n disabled: boolean;\n selected: boolean;\n active: boolean;\n value: T;\n dense: boolean;\n propagateClick: boolean;\n indented: boolean;\n twoLine: boolean;\n threeLine: boolean;\n wrap: boolean;\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'forge-list-item': IListItemComponent;\n }\n\n interface HTMLElementEventMap {\n 'forge-list-item-select': CustomEvent<IListItemSelectEventData>;\n }\n}\n\n/**\n * @tag forge-list-item\n * \n * @summary List items are individual rows of content inside of a list.\n * \n * @property {string} href - The href of the anchor. This forces the list item to render as an anchor element.\n * @property {string} target - The target of the anchor when an `href` is set. Defaults to `'_blank'`.\n * @property {boolean} download - The anchor download attribute.\n * @property {boolean} rel - The anchor rel attribute.\n * @property {string} target - The target of the list item when an `href` is set. Defaults to `'_blank'`.\n * @property {boolean} nonInteractive - If true, the list item will not be interactive.\n * @property {boolean} static - If true, the list item will not be interactive. Deprecated use `nonInteractive` instead.\n * @property {boolean} disabled - Disables the list item.\n * @property {boolean} selected - Applies the selected state to the list item.\n * @property {boolean} active - Applies the active state to the list item by emulating its focused state.\n * @property {unknown} value - The unique value of the list item.\n * @property {boolean} dense - Applies the dense state to the list item.\n * @property {boolean} propagateClick - If true, the list item will not propagate click events to itself and therefore cannot receive focus.\n * @property {boolean} indented - Applies the indented state by adding margin to the start of the list item.\n * @property {boolean} twoLine - Sets the list item height to support at least two lines of text.\n * @property {boolean} threeLine - Sets the list item height to support at least three lines of text.\n * @property {boolean} wrap - Sets the list item to wrap its text content.\n * \n * @attribute {string} href - The href of the anchor This forces the list item to render as an anchor element.\n * @attribute {string} target - The target of the anchor when an `href` is set. Defaults to `'_blank'`.\n * @attribute {boolean} download - The anchor download attribute.\n * @attribute {boolean} rel - The anchor rel attribute.\n * @attribute {string} target - The target of the list item when an `href` is set. Defaults to `'_blank'`.\n * @attribute {boolean} non-interactive - If true, the list item will not be interactive.\n * @attribute {boolean} static - If true, the list item will not be interactive. Deprecated use `non-interactive` instead.\n * @attribute {boolean} disabled - Disables the list item.\n * @attribute {boolean} selected - Applies the selected state to the list item.\n * @attribute {boolean} active - Applies the active state to the list item by emulating its focused state.\n * @attribute {unknown} value - The unique value of the list item.\n * @attribute {boolean} dense - Applies the dense state to the list item.\n * @attribute {boolean} propagate-click - If applied, the list item will not propagate click events to itself and therefore cannot receive focus.\n * @attribute {boolean} indented - Applies the indented state by adding margin to the start of the list item.\n * @attribute {boolean} two-line - Sets the list item height to support at least two lines of text.\n * @attribute {boolean} three-line - Sets the list item height to support at least three lines of text.\n * @attribute {boolean} wrap - Sets the list item to wrap its text content.\n * \n * @event {CustomEvent<IListItemSelectEventData>} forge-list-item-select - Fires when the list item is selected.\n * \n * @slot - The primary text.\n * @slot primary-text - The primary text. A named alias for the default slot.\n * @slot secondary-text - The secondary text.\n * @slot tertiary-text - The tertiary text.\n * @slot title - The title element. An alias for the primary-text slot for backwards compatibility.\n * @slot subtitle - The subtitle element. An alias for the secondary-text slot for backwards compatibility.\n * @slot tertiary-title - The tertiary title element. An alias for the tertiary-text slot for backwards compatibility.\n * @slot leading - The leading content.\n * @slot trailing - The trailing element.\n * @slot avatar - The avatar content.\n * \n * @csspart root - The root container element.\n * @csspart text-container - The container for the text content.\n * @csspart focus-indicator - The forwarded focus indicator's internal indicator element.\n * @csspart state-layer - The forwarded state layer's internal surface element.\n * \n * @cssprop --forge-list-item-background-color - The background color.\n * @cssprop --forge-list-item-shape - The shape of the list item.\n * @cssprop --forge-list-item-padding - The padding inside of the container element.\n * @cssprop --forge-list-item-margin - The margin around the host element.\n * @cssprop --forge-list-item-height - The height of the container.\n * @cssprop --forge-list-item-dense-height - The height when in the dense state.\n * @cssprop --forge-list-item-indent - The margin inline state when in the indented state.\n * @cssprop --forge-list-item-supporting-text-color - The text color of the supporting text.\n * @cssprop --forge-list-item-supporting-line-height - The line height of the supporting text.\n * @cssprop --forge-list-item-selected-color - The color when in the selected state.\n * @cssprop --forge-list-item-opacity - The opacity of the background color when in the disabled state.\n * @cssprop --forge-list-item-selected-leading-color - The color of the leading content when in the selected state.\n * @cssprop --forge-list-item-selected-trailing-color - The color of the trailing content when in the selected state.\n * @cssprop --forge-list-item-selected-supporting-text-color - The color of the supporting text when in the selected state.\n * @cssprop --forge-list-item-disabled-opacity - The opacity of the element when in the disabled state.\n * @cssprop --forge-list-item-disabled-cursor - The cursor when in the disabled state.\n * @cssprop --forge-list-item-one-line-height - The line height when in the one/single line state.\n * @cssprop --forge-list-item-two-line-height - The line height when in the two line state.\n * @cssprop --forge-list-item-three-line-height - The line height when in the three line state.\n * @cssprop --forge-list-item-dense-one-line-height - The line height when in the dense one/single line state.\n * @cssprop --forge-list-item-dense-two-line-height - The line height when in the dense two line state.\n * @cssprop --forge-list-item-dense-three-line-height - The line height when in the dense three line state.\n * @cssprop --forge-list-item-dense-font-size - The font size when in the dense state.\n * @cssprop --forge-list-item-dense-indent - The margin inline state when in the dense indented state.\n * @cssprop --forge-list-item-dense-leading-margin-end - The margin end of the leading content when in the dense state.\n * @cssprop --forge-list-item-dense-trailing-margin-start - The margin start of the trailing content when in the dense state.\n * @cssprop --forge-list-item-leading-margin-start - The margin start of the leading content.\n * @cssprop --forge-list-item-leading-margin-end - The margin end of the leading content.\n * @cssprop --forge-list-item-leading-selected-color - The color of the leading content when in the selected state.\n * @cssprop --forge-list-item-trailing-margin-start - The margin start of the trailing content.\n * @cssprop --forge-list-item-trailing-margin-end - The margin end of the trailing content.\n * @cssprop --forge-list-item-trailing-selected-color - The color of the trailing content when in the selected state.\n * @cssprop --forge-list-item-avatar-background-color - The background color of the avatar container.\n * @cssprop --forge-list-item-avatar-color - The foreground color of the avatar container.\n * @cssprop --forge-list-item-avatar-shape - The shape of the avatar container.\n * @cssprop --forge-list-item-avatar-margin-start - The margin start of the avatar container.\n * @cssprop --forge-list-item-avatar-margin-end - The margin end of the avatar container.\n * @cssprop --forge-list-item-avatar-size - The height & width of the avatar container.\n */\n@CustomElement({\n name: LIST_ITEM_CONSTANTS.elementName,\n dependencies: [\n StateLayerComponent,\n FocusIndicatorComponent\n ]\n})\nexport class ListItemComponent extends HTMLElement implements IListItemComponent {\n public static get observedAttributes(): string[] {\n return [\n LIST_ITEM_CONSTANTS.observedAttributes.HREF,\n LIST_ITEM_CONSTANTS.observedAttributes.TARGET,\n LIST_ITEM_CONSTANTS.observedAttributes.DOWNLOAD,\n LIST_ITEM_CONSTANTS.observedAttributes.REL,\n LIST_ITEM_CONSTANTS.observedAttributes.STATIC,\n LIST_ITEM_CONSTANTS.observedAttributes.NON_INTERACTIVE,\n LIST_ITEM_CONSTANTS.observedAttributes.DISABLED,\n LIST_ITEM_CONSTANTS.observedAttributes.SELECTED,\n LIST_ITEM_CONSTANTS.observedAttributes.ACTIVE,\n LIST_ITEM_CONSTANTS.observedAttributes.VALUE,\n LIST_ITEM_CONSTANTS.observedAttributes.DENSE,\n LIST_ITEM_CONSTANTS.observedAttributes.PROPAGATE_CLICK,\n LIST_ITEM_CONSTANTS.observedAttributes.INDENTED,\n LIST_ITEM_CONSTANTS.observedAttributes.TWO_LINE,\n LIST_ITEM_CONSTANTS.observedAttributes.THREE_LINE,\n LIST_ITEM_CONSTANTS.observedAttributes.WRAP\n ];\n }\n\n private _foundation: ListItemFoundation;\n\n constructor() {\n super();\n attachShadowTemplate(this, template, styles);\n this._foundation = new ListItemFoundation(new ListItemAdapter(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 LIST_ITEM_CONSTANTS.observedAttributes.HREF:\n this.href = newValue;\n break;\n case LIST_ITEM_CONSTANTS.observedAttributes.TARGET:\n this.target = newValue;\n break;\n case LIST_ITEM_CONSTANTS.observedAttributes.DOWNLOAD:\n this.download = newValue;\n break;\n case LIST_ITEM_CONSTANTS.observedAttributes.REL:\n this.rel = newValue;\n break;\n case LIST_ITEM_CONSTANTS.observedAttributes.NON_INTERACTIVE:\n case LIST_ITEM_CONSTANTS.observedAttributes.STATIC:\n this.nonInteractive = coerceBoolean(newValue);\n break;\n case LIST_ITEM_CONSTANTS.observedAttributes.DISABLED:\n this.disabled = coerceBoolean(newValue);\n break;\n case LIST_ITEM_CONSTANTS.observedAttributes.SELECTED:\n this.selected = coerceBoolean(newValue);\n break;\n case LIST_ITEM_CONSTANTS.observedAttributes.ACTIVE:\n this.active = coerceBoolean(newValue);\n break;\n case LIST_ITEM_CONSTANTS.observedAttributes.VALUE:\n this.value = newValue;\n break;\n case LIST_ITEM_CONSTANTS.observedAttributes.DENSE:\n this.dense = coerceBoolean(newValue);\n break;\n case LIST_ITEM_CONSTANTS.observedAttributes.PROPAGATE_CLICK:\n this.propagateClick = coerceBoolean(newValue);\n break;\n case LIST_ITEM_CONSTANTS.observedAttributes.INDENTED:\n this.indented = coerceBoolean(newValue);\n break;\n case LIST_ITEM_CONSTANTS.observedAttributes.TWO_LINE:\n this.twoLine = coerceBoolean(newValue);\n break;\n case LIST_ITEM_CONSTANTS.observedAttributes.THREE_LINE:\n this.threeLine = coerceBoolean(newValue);\n break;\n case LIST_ITEM_CONSTANTS.observedAttributes.WRAP:\n this.wrap = coerceBoolean(newValue);\n break;\n }\n }\n\n public override focus(): void {\n this._foundation.setFocus();\n }\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 /** @deprecated Use nonInteractive instead. */\n @FoundationProperty()\n public declare static: boolean;\n\n @FoundationProperty()\n public declare nonInteractive: boolean;\n\n @FoundationProperty()\n public declare disabled: boolean;\n\n @FoundationProperty()\n public declare selected: boolean;\n\n @FoundationProperty()\n public declare active: boolean;\n\n @FoundationProperty()\n public declare value: unknown;\n\n @FoundationProperty()\n public declare dense: boolean;\n\n @FoundationProperty()\n public declare propagateClick: boolean;\n\n @FoundationProperty()\n public declare indented: boolean;\n\n @FoundationProperty()\n public declare twoLine: boolean;\n\n @FoundationProperty()\n public declare threeLine: boolean;\n\n @FoundationProperty()\n public declare wrap: boolean;\n\n public override click(): void {\n this._foundation.click();\n }\n}\n", "import { defineCustomElement } from '@tylertech/forge-core';\nimport { ListItemComponent } from './list-item';\n\nexport * from './list-item-adapter';\nexport * from './list-item-constants';\nexport * from './list-item-foundation';\nexport * from './list-item';\n\nexport function defineListItemComponent(): void {\n defineCustomElement(ListItemComponent);\n}\n"],
5
+ "mappings": "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",
6
+ "names": ["elementName", "COMPONENT_NAME_PREFIX", "observedAttributes", "attributes", "__spreadValues", "LIST_CONSTANTS", "ListComponentItemRole", "elementName", "COMPONENT_NAME_PREFIX", "observedAttributes", "attributes", "__spreadValues", "classes", "selectors", "events", "LIST_ITEM_CONSTANTS", "ListItemAdapter", "BaseAdapter", "component", "getShadowElement", "LIST_ITEM_CONSTANTS", "FOCUS_INDICATOR_CONSTANTS", "STATE_LAYER_CONSTANTS", "list", "href", "anchor", "replaceElement", "defaultEl", "target", "download", "rel", "value", "toggleAttribute", "isSelected", "v", "isDeepEqual", "checkable", "force", "currentState", "switchEl", "a", "div", "LIST_CONSTANTS", "_a", "listRole", "role", "ListComponentItemRole", "ListItemFoundation", "_adapter", "evt", "event", "targetElement", "ignoreElement", "LIST_ITEM_CONSTANTS", "data", "value", "isSelected", "template", "styles", "ListItemComponent", "attachShadowTemplate", "ListItemFoundation", "ListItemAdapter", "LIST_ITEM_CONSTANTS", "name", "oldValue", "newValue", "coerceBoolean", "__decorateClass", "FoundationProperty", "CustomElement", "StateLayerComponent", "FocusIndicatorComponent", "defineListItemComponent", "defineCustomElement", "ListItemComponent"]
7
+ }
@@ -0,0 +1,7 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2023 Tyler Technologies, Inc.
4
+ * License: Apache-2.0
5
+ */
6
+ import{d as w}from"./chunk.STB2FEUA.js";import{a as C,p as L}from"./chunk.VFKHRAWD.js";import{a as k}from"./chunk.HSI7B43D.js";import{a as c}from"./chunk.NVUMRW44.js";import{a as S,b as v}from"./chunk.36F2GVWS.js";import{c as A,e as T,f as h,k as I}from"./chunk.JAWV5Y5T.js";import{u as E}from"./chunk.K7FPXAFS.js";import{k as s}from"./chunk.J2M2MXP2.js";import{d as n}from"./chunk.M3QDAYD2.js";var N=`${v}tab-bar`,B={DISABLED:"disabled",ACTIVE_TAB:"active-tab",VERTICAL:"vertical",STACKED:"stacked",CLUSTERED:"clustered",SECONDARY:"secondary",INVERTED:"inverted",AUTO_ACTIVATE:"auto-activate",SCROLL_BUTTONS:"scroll-buttons"},M={CONTAINER:".container",SCROLL_CONTAINER:".scroll-container",DEFAULT_SLOT:"slot:not([name])"},K={SCROLL_BUTTON:"scroll-button"},H={CHANGE:`${N}-change`},F={SCROLL_MARGIN:48},D={attributes:B,elementName:N,events:H,selectors:M,classes:K,numbers:F},J=new Map([["default",new Set(["Home","End"])],["horizontal",new Set(["ArrowLeft","ArrowRight"])],["vertical",new Set(["ArrowUp","ArrowDown"])]]);var R=`${v}tab`,V={DISABLED:"disabled",SELECTED:"selected",VERTICAL:"vertical",STACKED:"stacked",SECONDARY:"secondary",INVERTED:"inverted"},P={INDICATOR:".indicator"},U={SELECTED:"selected"},Y={SELECT:`${R}-select`},$={EASING:"cubic-bezier(0.4, 0, 0.2, 1)"},G={ANIMATION_DURATION:250},t={elementName:R,attributes:V,selectors:P,classes:U,events:Y,strings:$,numbers:G};var p=class extends k{constructor(e){super(e);this._tabIndicatorElement=h(this._component,t.selectors.INDICATOR),this._stateLayerElement=h(this._component,C.elementName)}initialize(){this._component.tabIndex=this._component.selected?0:-1,this._component.setAttribute("role","tab"),this._component.setAttribute("aria-selected",this._component.selected?"true":"false")}addInteractionListener(e,i){this._component.addEventListener(e,i)}setDisabled(e){this._stateLayerElement.disabled=e,this._component.tabIndex=e?-1:this._component.selected?0:-1,this._component.setAttribute("aria-disabled",String(e)),E(this._component,e,t.attributes.DISABLED,String(e))}setSelected(e){this._component.tabIndex=e?0:-1,this._component.setAttribute("aria-selected",String(e))}animateSelected(){this._tabIndicatorElement.getAnimations().forEach(i=>i.cancel());let e=this._getKeyframes();e&&this._tabIndicatorElement.animate(e,{duration:t.numbers.ANIMATION_DURATION,easing:t.strings.EASING})}animateStateLayer(){this._stateLayerElement.playAnimation()}_getKeyframes(){var x;let e=window.matchMedia("(prefers-reduced-motion: reduce)").matches;if(!this._component.selected)return e?[{opacity:1},{transform:"none"}]:null;let i={},a=this._component.vertical,l=this._getSelectedTabIndicator(),b=(x=l==null?void 0:l.getBoundingClientRect())!=null?x:{},_=a?b.top:b.left,O=a?b.height:b.width,d=this._tabIndicatorElement.getBoundingClientRect(),m=a?d.top:d.left,z=a?d.height:d.width,u=a?"Y":"X",y=O/z;return!e&&_!==void 0&&m!==void 0&&!isNaN(y)?i.transform=`translate${u}(${(_-m).toFixed(4)}px) scale${u}(${y.toFixed(4)})`:i.opacity=0,[i,{transform:"none"}]}_getSelectedTabIndicator(){let e=A(this._component,D.elementName);if(e){let a=Array.from(e.querySelectorAll(t.elementName)).find(l=>l.hasAttribute(t.attributes.SELECTED));if(a)return h(a,t.selectors.INDICATOR)}return null}};var g=class{constructor(o){this._adapter=o;this._selected=!1;this._disabled=!1;this._vertical=!1;this._stacked=!1;this._secondary=!1;this._inverted=!1;this._clickListener=()=>this._onClick(),this._keydownListener=e=>this._onKeydown(e)}initialize(){this._adapter.initialize(),this._adapter.addInteractionListener("click",this._clickListener),this._adapter.addInteractionListener("keydown",this._keydownListener)}_onClick(){this._disabled||this._selected||this._dispatchSelectEvent()}_onKeydown(o){if(this._disabled||this._selected)return;(o.key===" "||o.key==="Enter")&&(o.preventDefault(),this._adapter.animateStateLayer(),this._dispatchSelectEvent())}_dispatchSelectEvent(){this._adapter.emitHostEvent(t.events.SELECT,{bubbles:!0,composed:!0})}get disabled(){return this._disabled}set disabled(o){this._disabled!==o&&(this._disabled=o,this._adapter.setDisabled(this._disabled),this._adapter.toggleHostAttribute(t.attributes.DISABLED,this._disabled))}get selected(){return this._selected}set selected(o){this._selected!==o&&(this._selected=o,this._adapter.setSelected(this._selected),this._adapter.animateSelected(),this._adapter.toggleHostAttribute(t.attributes.SELECTED,this._selected))}get vertical(){return this._vertical}set vertical(o){this._vertical!==o&&(this._vertical=o,this._adapter.toggleHostAttribute(t.attributes.VERTICAL,this._vertical))}get stacked(){return this._stacked}set stacked(o){this._stacked!==o&&(this._stacked=o,this._adapter.toggleHostAttribute(t.attributes.STACKED,this._stacked))}get secondary(){return this._secondary}set secondary(o){this._secondary!==o&&(this._secondary=o,this._adapter.toggleHostAttribute(t.attributes.SECONDARY,this._secondary))}get inverted(){return this._inverted}set inverted(o){this._inverted!==o&&(this._inverted=o,this._adapter.toggleHostAttribute(t.attributes.INVERTED,this._inverted))}};var X='<template><div class="forge-tab" part="container"><span class="content" part="content"><slot name="leading"></slot><span class="label" part="label"><slot></slot></span><slot name="trailing"></slot><span class="indicator" part="indicator"></span></span><forge-state-layer exportparts="surface:state-layer" target=":host"></forge-state-layer><forge-focus-indicator exportparts="indicator:focus-indicator" target=":host" inward></forge-focus-indicator></div></template>',j=':host{display:-webkit-inline-box;display:inline-flex;outline:0;-webkit-tap-highlight-color:transparent;vertical-align:middle}:host([hidden]){display:none}.forge-tab{--_tab-active-color:var(--forge-tab-active-color, var(--forge-theme-primary, #3f51b5));--_tab-inactive-color:var(--forge-tab-inactive-color, var(--forge-theme-text-medium, rgba(0, 0, 0, 0.54)));--_tab-height:var(--forge-tab-height, 48px);--_tab-stacked-height:var(--forge-tab-stacked-height, 64px);--_tab-disabled-opacity:var(--forge-tab-disabled-opacity, 0.38);--_tab-indicator-color:var(--forge-tab-indicator-color, var(--_tab-active-color));--_tab-indicator-height:var(--forge-tab-indicator-height, 3px);--_tab-indicator-shape:var(--forge-tab-indicator-shape, 3px 3px 0 0);--_tab-vertical-indicator-shape:var(--forge-tab-indicator-shape, 3px 0 0 3px);--_tab-secondary-indicator-height:var(--forge-tab-indicator-height, 2px);--_tab-secondary-indicator-shape:var(--forge-tab-indicator-shape, 0);--_tab-inverted-indicator-shape:var(--forge-tab-indicator-shape, 0 0 3px 3px);--_tab-vertical-inverted-indicator-shape:var(--forge-tab-indicator-shape, 0 3px 3px 0);--_tab-container-color:var(--forge-tab-container-color, transparent);--_tab-container-height:var(--forge-tab-container-height, var(--_tab-height));--_tab-container-shape:var(--forge-tab-container-shape, 0);--_tab-content-height:var(--forge-tab-content-height, var(--_tab-height));--_tab-content-padding:var(--forge-tab-content-padding, var(--forge-spacing-xxsmall, 4px));--_tab-active-focus-icon-color:var(--forge-tab-active-focus-icon-color, var(--_tab-active-color));--_tab-active-hover-icon-color:var(--forge-tab-active-hover-icon-color, var(--_tab-active-color));--_tab-active-icon-color:var(--forge-tab-active-icon-color, var(--_tab-active-color));--_tab-active-pressed-icon-color:var(--forge-tab-active-pressed-icon-color, var(--_tab-active-color));--_tab-icon-size:var(--forge-tab-icon-size, 24px);--_tab-focus-icon-color:var(--forge-tab-focus-icon-color, var(--_tab-inactive-color));--_tab-hover-icon-color:var(--forge-tab-hover-icon-color, var(--_tab-inactive-color));--_tab-icon-color:var(--forge-tab-icon-color, var(--_tab-inactive-color));--_tab-pressed-icon-color:var(--forge-tab-pressed-icon-color, var(--_tab-inactive-color));--_tab-active-focus-label-text-color:var(--forge-tab-active-focus-label-text-color, var(--_tab-active-color));--_tab-active-hover-label-text-color:var(--forge-tab-active-hover-label-text-color, var(--_tab-active-color));--_tab-active-label-text-color:var(--forge-tab-active-label-text-color, var(--_tab-active-color));--_tab-active-pressed-label-text-color:var(--forge-tab-active-pressed-label-text-color, var(--_tab-active-color));--_tab-focus-label-text-color:var(--forge-tab-focus-label-text-color, var(--_tab-inactive-color));--_tab-hover-label-text-color:var(--forge-tab-hover-label-text-color, var(--_tab-inactive-color));--_tab-label-text-color:var(--forge-tab-label-text-color, var(--_tab-inactive-color));--_tab-pressed-label-text-color:var(--forge-tab-pressed-label-text-color, var(--_tab-inactive-color))}.forge-tab{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:var(--forge-typography-button-font-family, var(--forge-typography-font-family, "Roboto", sans-serif));font-size:var(--forge-typography-button-font-size, calc(var(--forge-typography-font-size, 1rem) * var(--forge-typography-button-font-size-scale, .875)));font-weight:var(--forge-typography-button-font-weight,500);line-height:var(--forge-typography-button-line-height, normal);letter-spacing:var(--forge-typography-button-letter-spacing, .0714285714em);text-transform:var(--forge-typography-button-text-transform,inherit);-webkit-text-decoration:var(--forge-typography-button-text-decoration,inherit);text-decoration:var(--forge-typography-button-text-decoration,inherit);display:-webkit-inline-box;display:inline-flex;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;-webkit-box-sizing:border-box;box-sizing:border-box;border:none;outline:0;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-appearance:none;vertical-align:middle;background:0 0;text-decoration:none;width:100%;position:relative;padding:0;margin:0;z-index:0;background-color:var(--_tab-container-color);color:var(--_tab-label-text-color);min-height:var(--_tab-container-height)}.forge-tab::-moz-focus-inner{padding:0;border:0}.forge-tab ::slotted([slot=leading]),.forge-tab ::slotted([slot=trailing]){display:-webkit-inline-box;display:inline-flex;position:relative;-webkit-writing-mode:horizontal-tb;-ms-writing-mode:lr-tb;writing-mode:horizontal-tb;fill:currentColor;color:var(--_tab-icon-color);font-size:var(--_tab-icon-size);width:var(--_tab-icon-size);height:var(--_tab-icon-size)}.forge-tab:hover{color:var(--_tab-hover-label-text-color);cursor:pointer}.forge-tab:hover ::slotted([slot=leading]),.forge-tab:hover ::slotted([slot=trailing]){color:var(--_tab-hover-icon-color)}.forge-tab .content{position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;display:-webkit-inline-box;display:inline-flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;white-space:nowrap;-webkit-transition:150ms color linear;transition:150ms color linear;max-height:calc(var(--_tab-content-height) + 2 * var(--_tab-content-padding));min-height:var(--_tab-content-height);padding:var(--_tab-content-padding) calc(2 * var(--_tab-content-padding));gap:var(--_tab-content-padding)}.forge-tab .content .label{display:inline-block;line-height:1}.forge-tab .indicator{position:absolute;-webkit-box-sizing:border-box;box-sizing:border-box;z-index:-1;-webkit-transform-origin:bottom left;transform-origin:bottom left;background:var(--_tab-indicator-color);border-radius:var(--_tab-indicator-shape);height:var(--_tab-indicator-height);inset:auto 0 0;opacity:0}::slotted(*),:host{white-space:nowrap}forge-focus-indicator{--forge-focus-indicator-color:var(--_tab-active-color);--forge-focus-indicator-shape:8px}forge-state-layer{--forge-state-layer-color:var(--_tab-inactive-color)}:host(:focus) .forge-tab{color:var(--_tab-focus-label-text-color)}:host(:focus) .forge-tab ::slotted([slot=leading]),:host(:focus) .forge-tab ::slotted([slot=trailing]){color:var(--_tab-focus-icon-color)}:host(:active) .forge-tab{color:var(--_tab-pressed-label-text-color);outline:0}:host(:active) .forge-tab ::slotted([slot=leading]),:host(:active) .forge-tab ::slotted([slot=trailing]){color:var(--_tab-pressed-icon-color)}:host([disabled]){cursor:not-allowed}:host([disabled]) .forge-tab{opacity:var(--_tab-disabled-opacity);pointer-events:none}:host([selected]) .forge-tab{color:var(--_tab-active-label-text-color)}:host([selected]) .forge-tab ::slotted([slot=leading]),:host([selected]) .forge-tab ::slotted([slot=trailing]){color:var(--_tab-active-icon-color)}:host([selected]) .forge-tab:hover{color:var(--_tab-active-hover-label-text-color)}:host([selected]) .forge-tab:hover ::slotted([slot=leading]),:host([selected]) .forge-tab:hover ::slotted([slot=trailing]){color:var(--_tab-active-hover-icon-color)}:host([selected]) .forge-tab .indicator{opacity:1}:host([selected]) forge-state-layer{--forge-state-layer-color:var(--_tab-active-color)}:host([selected]:not([vertical])) forge-focus-indicator{--forge-focus-indicator-offset-block:0 calc(var(--_tab-indicator-height) + 1px)}:host([selected]:focus) .forge-tab{color:var(--_tab-active-focus-label-text-color)}:host([selected]:focus) .forge-tab ::slotted([slot=leading]),:host([selected]:focus) .forge-tab ::slotted([slot=trailing]){color:var(--_tab-active-focus-icon-color)}:host([selected]:active) .forge-tab{color:var(--_tab-active-pressed-label-text-color)}:host([selected]:active) .forge-tab ::slotted([slot=leading]),:host([selected]:active) .forge-tab ::slotted([slot=trailing]){color:var(--_tab-active-pressed-icon-color)}:host([stacked]) .forge-tab{--_tab-height:var(--_tab-stacked-height)}:host([stacked]) .forge-tab .content{-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column}:host([secondary]) .forge-tab{--_tab-indicator-height:var(--_tab-secondary-indicator-height);--_tab-indicator-shape:var(--_tab-secondary-indicator-shape)}:host([secondary]) .content{width:100%}:host([secondary]) .indicator{min-width:100%}:host([vertical]) .forge-tab{width:100%;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;border-bottom:none}:host([vertical]) .forge-tab .content{width:100%}:host([vertical]) .forge-tab .indicator{height:100%;min-width:var(--_tab-indicator-height);inset:0 0 0 auto}:host([vertical]) forge-focus-indicator{--forge-focus-indicator-offset-inline:0 calc(var(--_tab-indicator-height) + 1px)}:host([vertical][secondary]) .content{min-height:100%}:host([vertical]:not([secondary])) .forge-tab{--_tab-indicator-shape:var(--_tab-vertical-indicator-shape)}:host([inverted]) .forge-tab{--_tab-indicator-shape:var(--_tab-inverted-indicator-shape)}:host([inverted]) .indicator{inset:0 0 auto;-webkit-transform-origin:top left;transform-origin:top left}:host([inverted][vertical]) .forge-tab{--_tab-indicator-shape:var(--_tab-vertical-inverted-indicator-shape)}:host([inverted][vertical]) .indicator{inset:0 auto 0 0}',r=class extends I{constructor(){super();T(this,X,j),this._foundation=new g(new p(this))}static get observedAttributes(){return[t.attributes.DISABLED,t.attributes.SELECTED,t.attributes.VERTICAL,t.attributes.STACKED,t.attributes.SECONDARY,t.attributes.INVERTED]}connectedCallback(){this._foundation.initialize()}attributeChangedCallback(e,i,a){switch(e){case t.attributes.DISABLED:this.disabled=s(a);break;case t.attributes.SELECTED:this.selected=s(a);break;case t.attributes.VERTICAL:this.vertical=s(a);break;case t.attributes.STACKED:this.stacked=s(a);break;case t.attributes.SECONDARY:this.secondary=s(a);break;case t.attributes.INVERTED:this.inverted=s(a);break}}};n([c()],r.prototype,"disabled",2),n([c()],r.prototype,"selected",2),n([c()],r.prototype,"vertical",2),n([c()],r.prototype,"stacked",2),n([c()],r.prototype,"secondary",2),n([c()],r.prototype,"inverted",2),r=n([S({name:t.elementName,dependencies:[w,L]})],r);export{D as a,J as b,t as c,p as d,g as e,r as f};
7
+ //# sourceMappingURL=chunk.QQRPV4RN.js.map