@tylertech/forge 2.13.2 → 2.14.0-dev.0

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 (378) hide show
  1. package/custom-elements.json +1079 -233
  2. package/dist/esm/accordion/index.js +1 -1
  3. package/dist/esm/app-bar/help-button/index.js +1 -1
  4. package/dist/esm/app-bar/index.js +1 -1
  5. package/dist/esm/app-bar/menu-button/index.js +1 -1
  6. package/dist/esm/app-bar/notification-button/index.js +1 -1
  7. package/dist/esm/app-bar/profile-button/index.js +1 -1
  8. package/dist/esm/app-bar/search/index.js +1 -1
  9. package/dist/esm/autocomplete/index.js +1 -1
  10. package/dist/esm/banner/index.js +1 -1
  11. package/dist/esm/bottom-sheet/index.js +1 -1
  12. package/dist/esm/busy-indicator/index.js +1 -1
  13. package/dist/esm/button/index.js +1 -1
  14. package/dist/esm/button-toggle/button-toggle/index.js +1 -1
  15. package/dist/esm/button-toggle/button-toggle-group/index.js +1 -1
  16. package/dist/esm/button-toggle/index.js +1 -1
  17. package/dist/esm/calendar/calendar-dropdown/index.js +1 -1
  18. package/dist/esm/calendar/calendar-menu/index.js +1 -1
  19. package/dist/esm/calendar/index.js +1 -1
  20. package/dist/esm/checkbox/index.js +1 -1
  21. package/dist/esm/chip-field/index.js +1 -1
  22. package/dist/esm/chips/chip/index.js +1 -1
  23. package/dist/esm/chips/chip-set/index.js +1 -1
  24. package/dist/esm/chips/index.js +1 -1
  25. package/dist/esm/chunks/chunk.24X566SZ.js +7 -0
  26. package/dist/esm/chunks/chunk.24X566SZ.js.map +7 -0
  27. package/dist/esm/chunks/{chunk.N24NHF7Y.js → chunk.2D4IBAWP.js} +2 -2
  28. package/dist/esm/chunks/chunk.323FEQVK.js +7 -0
  29. package/dist/esm/chunks/chunk.323FEQVK.js.map +7 -0
  30. package/dist/esm/chunks/{chunk.Y4L7AVUS.js → chunk.3G237L6C.js} +2 -2
  31. package/dist/esm/chunks/chunk.3UB364WW.js +7 -0
  32. package/dist/esm/chunks/chunk.3UB364WW.js.map +7 -0
  33. package/dist/esm/chunks/chunk.4YH3GB4D.js +12 -0
  34. package/dist/esm/chunks/{chunk.BTI5I25G.js.map → chunk.4YH3GB4D.js.map} +1 -1
  35. package/dist/esm/chunks/{chunk.HPJ4AQIE.js → chunk.54RF4ZT6.js} +2 -2
  36. package/dist/esm/chunks/{chunk.ALJ3FDXL.js → chunk.5DKXUTFN.js} +2 -2
  37. package/dist/esm/chunks/{chunk.ALJ3FDXL.js.map → chunk.5DKXUTFN.js.map} +1 -1
  38. package/dist/esm/chunks/{chunk.5TVWDATE.js → chunk.5W5IPKAU.js} +2 -2
  39. package/dist/esm/chunks/{chunk.PBJEZJTY.js → chunk.65G33MJV.js} +2 -2
  40. package/dist/esm/chunks/{chunk.TLS4ALGU.js → chunk.6NBVXSNZ.js} +2 -2
  41. package/dist/esm/chunks/{chunk.Z4MN5NB5.js → chunk.73O3BMP2.js} +2 -2
  42. package/dist/esm/chunks/{chunk.WEUNLYMQ.js → chunk.7LBAA7TC.js} +2 -2
  43. package/dist/esm/chunks/chunk.AGEBZY4S.js +7 -0
  44. package/dist/esm/chunks/chunk.AGEBZY4S.js.map +7 -0
  45. package/dist/esm/chunks/chunk.B5HGV5EZ.js +7 -0
  46. package/dist/esm/chunks/chunk.B5HGV5EZ.js.map +7 -0
  47. package/dist/esm/chunks/chunk.C557PTJ5.js +7 -0
  48. package/dist/esm/chunks/chunk.C557PTJ5.js.map +7 -0
  49. package/dist/esm/chunks/{chunk.VW4JVRH7.js → chunk.CN7DHS4J.js} +2 -2
  50. package/dist/esm/chunks/chunk.CUT7V2KN.js +7 -0
  51. package/dist/esm/chunks/chunk.CUT7V2KN.js.map +7 -0
  52. package/dist/esm/chunks/chunk.CZIQTYFJ.js +7 -0
  53. package/dist/esm/chunks/chunk.CZIQTYFJ.js.map +7 -0
  54. package/dist/esm/chunks/{chunk.BYRJ7577.js → chunk.DRI2NLIB.js} +2 -2
  55. package/dist/esm/chunks/chunk.EE2LK23T.js +7 -0
  56. package/dist/esm/chunks/chunk.EE2LK23T.js.map +7 -0
  57. package/dist/esm/chunks/chunk.EXKBJEFL.js +7 -0
  58. package/dist/esm/chunks/{chunk.ZPBGKHHM.js.map → chunk.EXKBJEFL.js.map} +2 -2
  59. package/dist/esm/chunks/{chunk.7MVBJ37L.js → chunk.FBERE7AL.js} +2 -2
  60. package/dist/esm/chunks/{chunk.OJFI5I6O.js → chunk.FQEETXUQ.js} +2 -2
  61. package/dist/esm/chunks/{chunk.3STDLL5U.js → chunk.G5JTL66M.js} +2 -2
  62. package/dist/esm/chunks/chunk.GVZEMIA3.js +7 -0
  63. package/dist/esm/chunks/chunk.GVZEMIA3.js.map +7 -0
  64. package/dist/esm/chunks/{chunk.BCP2YATB.js → chunk.GZEWDHFJ.js} +2 -2
  65. package/dist/esm/chunks/chunk.HQJZRTOH.js +7 -0
  66. package/dist/esm/chunks/chunk.HQJZRTOH.js.map +7 -0
  67. package/dist/esm/chunks/{chunk.ZAGCOV55.js → chunk.HUX56BCR.js} +2 -2
  68. package/dist/esm/chunks/chunk.K5WLIDQK.js +7 -0
  69. package/dist/esm/chunks/chunk.K5WLIDQK.js.map +7 -0
  70. package/dist/esm/chunks/chunk.LGECRZFO.js +7 -0
  71. package/dist/esm/chunks/chunk.LGECRZFO.js.map +7 -0
  72. package/dist/esm/chunks/{chunk.MBS5VMYY.js → chunk.LYAS4FAN.js} +2 -2
  73. package/dist/esm/chunks/{chunk.MBS5VMYY.js.map → chunk.LYAS4FAN.js.map} +2 -2
  74. package/dist/esm/chunks/{chunk.YG2KLPHA.js.map → chunk.MU4FV57Q.js} +7 -7
  75. package/dist/esm/chunks/chunk.MU4FV57Q.js.map +7 -0
  76. package/dist/esm/chunks/chunk.N6QJ2RRG.js +7 -0
  77. package/dist/esm/chunks/chunk.N6QJ2RRG.js.map +7 -0
  78. package/dist/esm/chunks/{chunk.O5I3ZMDA.js → chunk.NG5EGZ5Y.js} +2 -2
  79. package/dist/esm/chunks/chunk.NXS7A7PO.js +7 -0
  80. package/dist/esm/chunks/{chunk.5BDTX7CR.js.map → chunk.NXS7A7PO.js.map} +2 -2
  81. package/dist/esm/chunks/{chunk.SLSVRMAS.js → chunk.NZTGBDRK.js} +2 -2
  82. package/dist/esm/chunks/{chunk.OLNFXF3V.js → chunk.O4LGKJY6.js} +2 -2
  83. package/dist/esm/chunks/{chunk.NV2HNCQH.js → chunk.OGZOXNGT.js} +2 -2
  84. package/dist/esm/chunks/chunk.OKIRZEUG.js +7 -0
  85. package/dist/esm/chunks/chunk.OKIRZEUG.js.map +7 -0
  86. package/dist/esm/chunks/{chunk.36VS7FMU.js → chunk.OTI6WL66.js} +2 -2
  87. package/dist/esm/chunks/chunk.P45HS252.js +7 -0
  88. package/dist/esm/chunks/chunk.P45HS252.js.map +7 -0
  89. package/dist/esm/chunks/{chunk.Y5GQ2BA7.js → chunk.P5GT5YBP.js} +2 -2
  90. package/dist/esm/chunks/chunk.P6IF3USM.js +7 -0
  91. package/dist/esm/chunks/chunk.P6IF3USM.js.map +7 -0
  92. package/dist/esm/chunks/chunk.PBL2N45I.js +7 -0
  93. package/dist/esm/chunks/chunk.PBL2N45I.js.map +7 -0
  94. package/dist/esm/chunks/{chunk.HWQEGQDD.js → chunk.PHJPLWFH.js} +2 -2
  95. package/dist/esm/chunks/chunk.PRO76W5D.js +7 -0
  96. package/dist/esm/chunks/{chunk.7TDB3VFH.js.map → chunk.PRO76W5D.js.map} +2 -2
  97. package/dist/esm/chunks/chunk.PV5MABYN.js +7 -0
  98. package/dist/esm/chunks/chunk.PV5MABYN.js.map +7 -0
  99. package/dist/esm/chunks/chunk.R2L3S3YD.js +7 -0
  100. package/dist/esm/chunks/chunk.R2L3S3YD.js.map +7 -0
  101. package/dist/esm/chunks/{chunk.QH4DLM3R.js → chunk.R4NZYUID.js} +2 -2
  102. package/dist/esm/chunks/chunk.RH2NL523.js +7 -0
  103. package/dist/esm/chunks/chunk.RH2NL523.js.map +7 -0
  104. package/dist/esm/chunks/{chunk.IMZ5PF4C.js → chunk.ROF42KJ3.js} +2 -2
  105. package/dist/esm/chunks/{chunk.B52LJRGH.js → chunk.RT4C67NK.js} +2 -2
  106. package/dist/esm/chunks/chunk.T2M2KVP7.js +29 -0
  107. package/dist/esm/chunks/chunk.T2M2KVP7.js.map +7 -0
  108. package/dist/esm/chunks/chunk.TMJBIAWC.js +7 -0
  109. package/dist/esm/chunks/chunk.TMJBIAWC.js.map +7 -0
  110. package/dist/esm/chunks/{chunk.HHJJJ73Y.js → chunk.UPFJ3PVE.js} +2 -2
  111. package/dist/esm/chunks/{chunk.HHJJJ73Y.js.map → chunk.UPFJ3PVE.js.map} +1 -1
  112. package/dist/esm/chunks/{chunk.DB2WESQC.js → chunk.XC76IHG4.js} +2 -2
  113. package/dist/esm/chunks/chunk.XCUYZZV4.js +7 -0
  114. package/dist/esm/chunks/chunk.XCUYZZV4.js.map +7 -0
  115. package/dist/esm/chunks/{chunk.YONRMJU5.js → chunk.XMI5RBZQ.js} +2 -2
  116. package/dist/esm/chunks/chunk.XMI5RBZQ.js.map +7 -0
  117. package/dist/esm/chunks/chunk.XY4N4TSH.js +7 -0
  118. package/dist/esm/chunks/chunk.XY4N4TSH.js.map +7 -0
  119. package/dist/esm/chunks/{chunk.N46G56GG.js → chunk.YKXCORJE.js} +2 -2
  120. package/dist/esm/chunks/{chunk.2ZQ3ZDPN.js → chunk.YPMN5U7C.js} +2 -2
  121. package/dist/esm/chunks/{chunk.X5JLUP7O.js → chunk.YW47QJVY.js} +2 -2
  122. package/dist/esm/chunks/{chunk.JXY6MTP3.js → chunk.ZAKLVVFO.js} +2 -2
  123. package/dist/esm/chunks/{chunk.YWRCWMNO.js → chunk.ZQCHS2PS.js} +2 -2
  124. package/dist/esm/color-picker/index.js +1 -1
  125. package/dist/esm/core/index.js +1 -1
  126. package/dist/esm/core/utils/index.js +1 -1
  127. package/dist/esm/date-picker/index.js +1 -1
  128. package/dist/esm/date-range-picker/index.js +1 -1
  129. package/dist/esm/dialog/index.js +1 -1
  130. package/dist/esm/expansion-panel/index.js +1 -1
  131. package/dist/esm/file-picker/index.js +1 -1
  132. package/dist/esm/floating-action-button/index.js +1 -1
  133. package/dist/esm/icon/index.js +1 -1
  134. package/dist/esm/icon-button/index.js +1 -1
  135. package/dist/esm/index.js +1 -1
  136. package/dist/esm/linear-progress/index.js +1 -1
  137. package/dist/esm/list/index.js +1 -1
  138. package/dist/esm/list/list/index.js +1 -1
  139. package/dist/esm/list/list-item/index.js +1 -1
  140. package/dist/esm/list-dropdown/index.js +1 -1
  141. package/dist/esm/menu/index.js +1 -1
  142. package/dist/esm/open-icon/index.js +1 -1
  143. package/dist/esm/paginator/index.js +1 -1
  144. package/dist/esm/popup/index.js +1 -1
  145. package/dist/esm/profile-card/index.js +1 -1
  146. package/dist/esm/quantity-field/index.js +1 -1
  147. package/dist/esm/radio/index.js +1 -1
  148. package/dist/esm/ripple/index.js +1 -1
  149. package/dist/esm/select/core/index.js +1 -1
  150. package/dist/esm/select/index.js +1 -1
  151. package/dist/esm/select/option-group/index.js +1 -1
  152. package/dist/esm/select/select/index.js +1 -1
  153. package/dist/esm/select/select-dropdown/index.js +1 -1
  154. package/dist/esm/slider/index.js +1 -1
  155. package/dist/esm/split-view/index.js +1 -1
  156. package/dist/esm/split-view/split-view/index.js +1 -1
  157. package/dist/esm/split-view/split-view-panel/index.js +1 -1
  158. package/dist/esm/stepper/index.js +1 -1
  159. package/dist/esm/stepper/step/index.js +1 -1
  160. package/dist/esm/stepper/stepper/index.js +1 -1
  161. package/dist/esm/switch/index.js +1 -1
  162. package/dist/esm/table/index.js +1 -1
  163. package/dist/esm/tabs/index.js +1 -1
  164. package/dist/esm/tabs/tab/index.js +1 -1
  165. package/dist/esm/tabs/tab-bar/index.js +1 -1
  166. package/dist/esm/text-field/index.js +1 -1
  167. package/dist/esm/time-picker/index.js +1 -1
  168. package/dist/esm/toast/index.js +1 -1
  169. package/dist/esm/toolbar/index.js +1 -1
  170. package/esm/app-bar/notification-button/app-bar-notification-button-adapter.d.ts +3 -0
  171. package/esm/app-bar/notification-button/app-bar-notification-button-adapter.js +5 -0
  172. package/esm/app-bar/notification-button/app-bar-notification-button-constants.d.ts +1 -0
  173. package/esm/app-bar/notification-button/app-bar-notification-button-constants.js +2 -1
  174. package/esm/app-bar/notification-button/app-bar-notification-button-foundation.d.ts +4 -0
  175. package/esm/app-bar/notification-button/app-bar-notification-button-foundation.js +14 -0
  176. package/esm/app-bar/notification-button/app-bar-notification-button.d.ts +2 -0
  177. package/esm/app-bar/notification-button/app-bar-notification-button.js +9 -2
  178. package/esm/autocomplete/autocomplete-adapter.d.ts +9 -10
  179. package/esm/autocomplete/autocomplete-adapter.js +1 -1
  180. package/esm/autocomplete/autocomplete-constants.d.ts +10 -12
  181. package/esm/autocomplete/autocomplete-foundation.d.ts +6 -7
  182. package/esm/autocomplete/autocomplete-foundation.js +5 -2
  183. package/esm/autocomplete/autocomplete-utils.d.ts +4 -5
  184. package/esm/autocomplete/autocomplete.d.ts +3 -4
  185. package/esm/autocomplete/autocomplete.js +2 -2
  186. package/esm/button/button-constants.d.ts +1 -0
  187. package/esm/button/button-constants.js +2 -1
  188. package/esm/button/button.d.ts +1 -1
  189. package/esm/button/button.js +6 -7
  190. package/esm/calendar/calendar-foundation.js +1 -0
  191. package/esm/checkbox/checkbox-adapter.d.ts +1 -2
  192. package/esm/checkbox/checkbox-adapter.js +12 -8
  193. package/esm/checkbox/checkbox-foundation.js +0 -3
  194. package/esm/chip-field/chip-field-adapter.d.ts +2 -0
  195. package/esm/chip-field/chip-field-adapter.js +8 -3
  196. package/esm/chip-field/chip-field-foundation.js +1 -0
  197. package/esm/chip-field/chip-field.js +1 -1
  198. package/esm/color-picker/color-picker-foundation.d.ts +1 -0
  199. package/esm/color-picker/color-picker-foundation.js +19 -8
  200. package/esm/core/utils/date-utils.js +2 -2
  201. package/esm/core/utils/utils.d.ts +0 -6
  202. package/esm/core/utils/utils.js +0 -10
  203. package/esm/date-picker/base/base-date-picker-foundation.js +2 -1
  204. package/esm/date-picker/base/base-date-picker.d.ts +2 -2
  205. package/esm/date-range-picker/date-range-picker-foundation.d.ts +2 -2
  206. package/esm/date-range-picker/date-range-picker-foundation.js +1 -1
  207. package/esm/dialog/dialog-adapter.d.ts +0 -2
  208. package/esm/dialog/dialog-adapter.js +1 -10
  209. package/esm/dialog/dialog-foundation.js +0 -1
  210. package/esm/file-picker/file-picker-adapter.js +3 -2
  211. package/esm/file-picker/file-picker-foundation.d.ts +2 -0
  212. package/esm/file-picker/file-picker-foundation.js +15 -38
  213. package/esm/file-picker/file-picker.d.ts +1 -0
  214. package/esm/file-picker/file-picker.js +3 -0
  215. package/esm/floating-action-button/floating-action-button-constants.js +1 -1
  216. package/esm/icon-button/icon-button-constants.js +1 -1
  217. package/esm/icon-button/icon-button.d.ts +1 -1
  218. package/esm/icon-button/icon-button.js +6 -6
  219. package/esm/linear-progress/linear-progress.js +1 -1
  220. package/esm/list/list-item/list-item-foundation.js +1 -2
  221. package/esm/list/list-item/list-item.js +1 -1
  222. package/esm/list-dropdown/cascading-list-dropdown-aware-foundation.d.ts +5 -2
  223. package/esm/list-dropdown/cascading-list-dropdown-aware-foundation.js +3 -1
  224. package/esm/list-dropdown/list-dropdown-aware-foundation.d.ts +8 -0
  225. package/esm/list-dropdown/list-dropdown-aware-foundation.js +14 -0
  226. package/esm/list-dropdown/list-dropdown-aware.d.ts +11 -2
  227. package/esm/list-dropdown/list-dropdown-aware.js +12 -0
  228. package/esm/list-dropdown/list-dropdown-constants.d.ts +9 -3
  229. package/esm/list-dropdown/list-dropdown-constants.js +2 -0
  230. package/esm/list-dropdown/list-dropdown-foundation.js +2 -6
  231. package/esm/list-dropdown/list-dropdown-utils.d.ts +1 -0
  232. package/esm/list-dropdown/list-dropdown-utils.js +39 -17
  233. package/esm/menu/menu-adapter.d.ts +2 -0
  234. package/esm/menu/menu-adapter.js +7 -0
  235. package/esm/menu/menu-constants.js +1 -1
  236. package/esm/menu/menu-foundation.d.ts +12 -3
  237. package/esm/menu/menu-foundation.js +28 -17
  238. package/esm/menu/menu.d.ts +6 -1
  239. package/esm/menu/menu.js +9 -3
  240. package/esm/popup/popup-adapter.js +9 -1
  241. package/esm/popup/popup-constants.d.ts +1 -0
  242. package/esm/popup/popup-constants.js +2 -1
  243. package/esm/popup/popup-foundation.d.ts +4 -0
  244. package/esm/popup/popup-foundation.js +7 -0
  245. package/esm/popup/popup.d.ts +2 -0
  246. package/esm/popup/popup.js +4 -1
  247. package/esm/quantity-field/quantity-field-adapter.d.ts +2 -0
  248. package/esm/quantity-field/quantity-field-adapter.js +8 -0
  249. package/esm/quantity-field/quantity-field-foundation.js +1 -0
  250. package/esm/quantity-field/quantity-field.js +6 -0
  251. package/esm/radio/radio-adapter.d.ts +3 -3
  252. package/esm/radio/radio-adapter.js +17 -15
  253. package/esm/radio/radio-foundation.js +1 -1
  254. package/esm/ripple/forge-ripple.d.ts +1 -0
  255. package/esm/ripple/forge-ripple.js +3 -0
  256. package/esm/ripple/ripple-constants.d.ts +1 -0
  257. package/esm/ripple/ripple-constants.js +2 -1
  258. package/esm/ripple/ripple-foundation.d.ts +4 -0
  259. package/esm/ripple/ripple-foundation.js +10 -0
  260. package/esm/ripple/ripple.d.ts +2 -0
  261. package/esm/ripple/ripple.js +8 -1
  262. package/esm/select/core/base-select-adapter.js +8 -6
  263. package/esm/select/core/base-select-constants.d.ts +2 -0
  264. package/esm/select/core/base-select-constants.js +3 -1
  265. package/esm/select/core/base-select-foundation.d.ts +0 -9
  266. package/esm/select/core/base-select-foundation.js +5 -26
  267. package/esm/select/core/select-utils.js +1 -1
  268. package/esm/select/option-group/option-group.d.ts +12 -1
  269. package/esm/select/option-group/option-group.js +7 -0
  270. package/esm/select/select/select.js +5 -3
  271. package/esm/split-view/split-view-panel/split-view-panel.js +1 -1
  272. package/esm/switch/switch.js +37 -12
  273. package/esm/table/table-foundation.d.ts +7 -0
  274. package/esm/table/table-foundation.js +9 -0
  275. package/esm/table/table-utils.js +6 -3
  276. package/esm/table/table.d.ts +7 -0
  277. package/esm/table/table.js +8 -0
  278. package/esm/table/types.d.ts +8 -4
  279. package/esm/text-field/text-field.js +1 -1
  280. package/esm/time-picker/time-picker-foundation.js +1 -0
  281. package/esm/toolbar/toolbar.js +2 -2
  282. package/package.json +30 -3
  283. package/styles/chip-field/_selector.scss +12 -13
  284. package/styles/chip-field/chip-field.scss +1 -1
  285. package/styles/field/_base.scss +2 -2
  286. package/styles/field/_selector.scss +1 -1
  287. package/styles/list/list-item/_mixins.scss +28 -17
  288. package/styles/list/list-item/_variables.scss +13 -4
  289. package/styles/popup/popup.scss +4 -0
  290. package/styles/toolbar/_mixins.scss +1 -2
  291. package/styles/toolbar/toolbar.scss +13 -0
  292. package/dist/esm/chunks/chunk.3MP6OFVU.js +0 -7
  293. package/dist/esm/chunks/chunk.3MP6OFVU.js.map +0 -7
  294. package/dist/esm/chunks/chunk.4K3IV4GI.js +0 -7
  295. package/dist/esm/chunks/chunk.4K3IV4GI.js.map +0 -7
  296. package/dist/esm/chunks/chunk.5BDTX7CR.js +0 -7
  297. package/dist/esm/chunks/chunk.6LXDG4W5.js +0 -7
  298. package/dist/esm/chunks/chunk.6LXDG4W5.js.map +0 -7
  299. package/dist/esm/chunks/chunk.7R6TYPPS.js +0 -7
  300. package/dist/esm/chunks/chunk.7R6TYPPS.js.map +0 -7
  301. package/dist/esm/chunks/chunk.7TDB3VFH.js +0 -7
  302. package/dist/esm/chunks/chunk.BCD4AAI2.js +0 -7
  303. package/dist/esm/chunks/chunk.BCD4AAI2.js.map +0 -7
  304. package/dist/esm/chunks/chunk.BTI5I25G.js +0 -12
  305. package/dist/esm/chunks/chunk.DLAIQJHL.js +0 -7
  306. package/dist/esm/chunks/chunk.DLAIQJHL.js.map +0 -7
  307. package/dist/esm/chunks/chunk.DURRORXO.js +0 -29
  308. package/dist/esm/chunks/chunk.DURRORXO.js.map +0 -7
  309. package/dist/esm/chunks/chunk.EDU7RQD7.js +0 -7
  310. package/dist/esm/chunks/chunk.EDU7RQD7.js.map +0 -7
  311. package/dist/esm/chunks/chunk.ETIN6DEM.js +0 -7
  312. package/dist/esm/chunks/chunk.ETIN6DEM.js.map +0 -7
  313. package/dist/esm/chunks/chunk.F2GXZPID.js +0 -7
  314. package/dist/esm/chunks/chunk.F2GXZPID.js.map +0 -7
  315. package/dist/esm/chunks/chunk.F3Q62EMG.js +0 -7
  316. package/dist/esm/chunks/chunk.F3Q62EMG.js.map +0 -7
  317. package/dist/esm/chunks/chunk.GEMZPO6Z.js +0 -7
  318. package/dist/esm/chunks/chunk.GEMZPO6Z.js.map +0 -7
  319. package/dist/esm/chunks/chunk.JMXJXZTS.js +0 -7
  320. package/dist/esm/chunks/chunk.JMXJXZTS.js.map +0 -7
  321. package/dist/esm/chunks/chunk.M4KJNCLO.js +0 -7
  322. package/dist/esm/chunks/chunk.M4KJNCLO.js.map +0 -7
  323. package/dist/esm/chunks/chunk.MBWEYW6M.js +0 -7
  324. package/dist/esm/chunks/chunk.MBWEYW6M.js.map +0 -7
  325. package/dist/esm/chunks/chunk.O2R6MBT5.js +0 -7
  326. package/dist/esm/chunks/chunk.O2R6MBT5.js.map +0 -7
  327. package/dist/esm/chunks/chunk.ON6FJ2D6.js +0 -7
  328. package/dist/esm/chunks/chunk.ON6FJ2D6.js.map +0 -7
  329. package/dist/esm/chunks/chunk.PCSCKTFS.js +0 -7
  330. package/dist/esm/chunks/chunk.PCSCKTFS.js.map +0 -7
  331. package/dist/esm/chunks/chunk.Q3RRONZQ.js +0 -7
  332. package/dist/esm/chunks/chunk.Q3RRONZQ.js.map +0 -7
  333. package/dist/esm/chunks/chunk.QIJHHDYF.js +0 -7
  334. package/dist/esm/chunks/chunk.QIJHHDYF.js.map +0 -7
  335. package/dist/esm/chunks/chunk.QMRLSOAB.js +0 -7
  336. package/dist/esm/chunks/chunk.QMRLSOAB.js.map +0 -7
  337. package/dist/esm/chunks/chunk.UOWU5VVK.js +0 -7
  338. package/dist/esm/chunks/chunk.UOWU5VVK.js.map +0 -7
  339. package/dist/esm/chunks/chunk.WOHCW6KW.js +0 -7
  340. package/dist/esm/chunks/chunk.WOHCW6KW.js.map +0 -7
  341. package/dist/esm/chunks/chunk.WU24GAQY.js +0 -7
  342. package/dist/esm/chunks/chunk.WU24GAQY.js.map +0 -7
  343. package/dist/esm/chunks/chunk.XSZ4S77A.js +0 -7
  344. package/dist/esm/chunks/chunk.XSZ4S77A.js.map +0 -7
  345. package/dist/esm/chunks/chunk.YG2KLPHA.js +0 -7
  346. package/dist/esm/chunks/chunk.YONRMJU5.js.map +0 -7
  347. package/dist/esm/chunks/chunk.ZPBGKHHM.js +0 -7
  348. /package/dist/esm/chunks/{chunk.N24NHF7Y.js.map → chunk.2D4IBAWP.js.map} +0 -0
  349. /package/dist/esm/chunks/{chunk.Y4L7AVUS.js.map → chunk.3G237L6C.js.map} +0 -0
  350. /package/dist/esm/chunks/{chunk.HPJ4AQIE.js.map → chunk.54RF4ZT6.js.map} +0 -0
  351. /package/dist/esm/chunks/{chunk.5TVWDATE.js.map → chunk.5W5IPKAU.js.map} +0 -0
  352. /package/dist/esm/chunks/{chunk.PBJEZJTY.js.map → chunk.65G33MJV.js.map} +0 -0
  353. /package/dist/esm/chunks/{chunk.TLS4ALGU.js.map → chunk.6NBVXSNZ.js.map} +0 -0
  354. /package/dist/esm/chunks/{chunk.Z4MN5NB5.js.map → chunk.73O3BMP2.js.map} +0 -0
  355. /package/dist/esm/chunks/{chunk.WEUNLYMQ.js.map → chunk.7LBAA7TC.js.map} +0 -0
  356. /package/dist/esm/chunks/{chunk.VW4JVRH7.js.map → chunk.CN7DHS4J.js.map} +0 -0
  357. /package/dist/esm/chunks/{chunk.BYRJ7577.js.map → chunk.DRI2NLIB.js.map} +0 -0
  358. /package/dist/esm/chunks/{chunk.7MVBJ37L.js.map → chunk.FBERE7AL.js.map} +0 -0
  359. /package/dist/esm/chunks/{chunk.OJFI5I6O.js.map → chunk.FQEETXUQ.js.map} +0 -0
  360. /package/dist/esm/chunks/{chunk.3STDLL5U.js.map → chunk.G5JTL66M.js.map} +0 -0
  361. /package/dist/esm/chunks/{chunk.BCP2YATB.js.map → chunk.GZEWDHFJ.js.map} +0 -0
  362. /package/dist/esm/chunks/{chunk.ZAGCOV55.js.map → chunk.HUX56BCR.js.map} +0 -0
  363. /package/dist/esm/chunks/{chunk.O5I3ZMDA.js.map → chunk.NG5EGZ5Y.js.map} +0 -0
  364. /package/dist/esm/chunks/{chunk.SLSVRMAS.js.map → chunk.NZTGBDRK.js.map} +0 -0
  365. /package/dist/esm/chunks/{chunk.OLNFXF3V.js.map → chunk.O4LGKJY6.js.map} +0 -0
  366. /package/dist/esm/chunks/{chunk.NV2HNCQH.js.map → chunk.OGZOXNGT.js.map} +0 -0
  367. /package/dist/esm/chunks/{chunk.36VS7FMU.js.map → chunk.OTI6WL66.js.map} +0 -0
  368. /package/dist/esm/chunks/{chunk.Y5GQ2BA7.js.map → chunk.P5GT5YBP.js.map} +0 -0
  369. /package/dist/esm/chunks/{chunk.HWQEGQDD.js.map → chunk.PHJPLWFH.js.map} +0 -0
  370. /package/dist/esm/chunks/{chunk.QH4DLM3R.js.map → chunk.R4NZYUID.js.map} +0 -0
  371. /package/dist/esm/chunks/{chunk.IMZ5PF4C.js.map → chunk.ROF42KJ3.js.map} +0 -0
  372. /package/dist/esm/chunks/{chunk.B52LJRGH.js.map → chunk.RT4C67NK.js.map} +0 -0
  373. /package/dist/esm/chunks/{chunk.DB2WESQC.js.map → chunk.XC76IHG4.js.map} +0 -0
  374. /package/dist/esm/chunks/{chunk.N46G56GG.js.map → chunk.YKXCORJE.js.map} +0 -0
  375. /package/dist/esm/chunks/{chunk.2ZQ3ZDPN.js.map → chunk.YPMN5U7C.js.map} +0 -0
  376. /package/dist/esm/chunks/{chunk.X5JLUP7O.js.map → chunk.YW47QJVY.js.map} +0 -0
  377. /package/dist/esm/chunks/{chunk.JXY6MTP3.js.map → chunk.ZAKLVVFO.js.map} +0 -0
  378. /package/dist/esm/chunks/{chunk.YWRCWMNO.js.map → chunk.ZQCHS2PS.js.map} +0 -0
@@ -11,6 +11,7 @@ import { TABLE_CONSTANTS } from './table-constants';
11
11
  import { CellAlign, SortDirection } from './types';
12
12
  import { ICON_CONSTANTS } from '../icon';
13
13
  import { FormFieldComponentDelegate } from '../core/delegates/form-field-component-delegate';
14
+ import { BaseComponentDelegate } from '../core';
14
15
  function isTemplateResultObject(val) {
15
16
  return val && typeof val === 'object' && 'content' in val;
16
17
  }
@@ -93,6 +94,7 @@ export class TableUtils {
93
94
  // If we are allowing click events on the table rows then attach the row click listeners
94
95
  if (configuration.clickListener) {
95
96
  TableUtils._attachRowClickListeners(tbody, configuration.clickListener, configuration.doubleClickListener);
97
+ TableUtils._addRowClickAttributes(tbody);
96
98
  }
97
99
  // Add the select column if necessary
98
100
  if (configuration.selectListener) {
@@ -309,7 +311,7 @@ export class TableUtils {
309
311
  // Otherwise use the property to go get the value from the row data...
310
312
  if (columnConfig.template && typeof columnConfig.template === 'function') {
311
313
  const rowData = configuration.data[rowIndex] ? configuration.data[rowIndex].data : undefined;
312
- Promise.resolve(columnConfig.template(rowIndex, div, rowData)).then(result => {
314
+ Promise.resolve(columnConfig.template(rowIndex, div, rowData, i)).then(result => {
313
315
  const config = isTemplateResultObject(result) ? result : { content: result, stopClickPropagation: columnConfig.stopCellTemplateClickPropagation };
314
316
  if (!config.content) {
315
317
  return;
@@ -1177,13 +1179,14 @@ export class TableUtils {
1177
1179
  if (isFunction(columnConfig.filterDelegate)) {
1178
1180
  delegate = columnConfig.filterDelegate();
1179
1181
  }
1180
- else if (columnConfig.filterDelegate instanceof FormFieldComponentDelegate) {
1182
+ else if (columnConfig.filterDelegate instanceof FormFieldComponentDelegate || columnConfig.filterDelegate instanceof BaseComponentDelegate) {
1181
1183
  delegate = columnConfig.filterDelegate;
1182
1184
  }
1183
1185
  else {
1184
1186
  throw new Error('Invalid filter delegate.');
1185
1187
  }
1186
- if (filterListener) {
1188
+ // If this is a FormFieldComponentDelegate then we can listen for when the value changes, otherwise we just render the custom delegate element
1189
+ if (!!filterListener && delegate instanceof FormFieldComponentDelegate && isFunction(delegate.onChange)) {
1187
1190
  if (!isDefined(columnConfig.filterDebounceTime) || isNumber(columnConfig.filterDebounceTime)) {
1188
1191
  const debounceTime = isDefined(columnConfig.filterDebounceTime) ? columnConfig.filterDebounceTime : TABLE_CONSTANTS.numbers.DEFAULT_FILTER_DEBOUNCE_TIME;
1189
1192
  delegate.onChange(debounce((value) => filterListener(value, columnIndex), debounceTime));
@@ -28,6 +28,7 @@ export interface ITableComponent extends IBaseComponent {
28
28
  cellCreated: TableCellCreatedCallback;
29
29
  hideColumn(columnIndex: number): void;
30
30
  showColumn(columnIndex: number): void;
31
+ isColumnHidden(columnIndex: number): boolean;
31
32
  getSelectedRows(): any[];
32
33
  selectRowsByIndex(indexes: number | number[], preserveExisting?: boolean): void;
33
34
  deselectRowsByIndex(indexes: number | number[]): void;
@@ -83,6 +84,12 @@ export declare class TableComponent extends BaseComponent implements ITableCompo
83
84
  * @param columnIndex The index of the column to show.
84
85
  */
85
86
  showColumn(columnIndex: number): void;
87
+ /**
88
+ * Determines if a column at the given index is hidden or not.
89
+ * @param {number} columnIndex The index of the column.
90
+ * @returns {boolean} `true` if the column is hidden, `false` otherwise.
91
+ */
92
+ isColumnHidden(columnIndex: number): boolean;
86
93
  /** Returns the selected row instances. */
87
94
  getSelectedRows(): any[];
88
95
  /**
@@ -120,6 +120,14 @@ let TableComponent = class TableComponent extends BaseComponent {
120
120
  showColumn(columnIndex) {
121
121
  this._foundation.showColumn(columnIndex);
122
122
  }
123
+ /**
124
+ * Determines if a column at the given index is hidden or not.
125
+ * @param {number} columnIndex The index of the column.
126
+ * @returns {boolean} `true` if the column is hidden, `false` otherwise.
127
+ */
128
+ isColumnHidden(columnIndex) {
129
+ return this._foundation.isColumnHidden(columnIndex);
130
+ }
123
131
  /** Returns the selected row instances. */
124
132
  getSelectedRows() {
125
133
  return this._foundation.getSelectedRows();
@@ -3,10 +3,12 @@
3
3
  * Copyright 2023 Tyler Technologies, Inc.
4
4
  * License: Apache-2.0
5
5
  */
6
+ import { BaseComponentDelegate, IBaseComponentDelegate, IBaseComponentDelegateOptions } from '../core';
6
7
  import { IFormFieldComponentDelegate } from '../core/delegates/form-field-component-delegate';
7
8
  import { TableRow } from './table-row';
8
- export declare type TableViewTemplate = string | HTMLElement | TableTemplateBuilder;
9
- export declare type TableTemplateBuilder<T = any> = (rowIndex: number, div: HTMLElement, rowData: T) => HTMLElement | string | ITableTemplateBuilderResult | undefined | Promise<HTMLElement | string | undefined | ITableTemplateBuilderResult>;
9
+ export declare type TableViewTemplate = string | HTMLElement | TableViewTemplateBuilder;
10
+ export declare type TableViewTemplateBuilder<T = any> = (rowIndex: number, div: HTMLElement, rowData: T) => HTMLElement | string | ITableViewTemplateBuilderResult | undefined | Promise<HTMLElement | string | undefined | ITableViewTemplateBuilderResult>;
11
+ export declare type TableTemplateBuilder<T = any> = (rowIndex: number, div: HTMLElement, rowData: T, columnIndex: number) => HTMLElement | string | ITableTemplateBuilderResult | undefined | Promise<HTMLElement | string | undefined | ITableTemplateBuilderResult>;
10
12
  export declare type TableHeaderTemplateBuilder = (rowIndex: number, div: HTMLElement, columConfig: IColumnConfiguration) => HTMLElement | string | Promise<HTMLElement | string>;
11
13
  export declare type TableHeaderSelectAllTemplate = () => HTMLElement | string | Promise<HTMLElement | string>;
12
14
  export declare type TableRowCreatedCallback = (rowElement: HTMLTableRowElement, rowIndex: number, rowData: any) => void;
@@ -57,7 +59,7 @@ export interface IColumnConfiguration {
57
59
  width?: string | number;
58
60
  transform?: (value: any) => any | Promise<any>;
59
61
  filter?: boolean;
60
- filterDelegate?: IFormFieldComponentDelegate<any> | TableFilterDelegateFactory;
62
+ filterDelegate?: IFormFieldComponentDelegate<any> | BaseComponentDelegate<HTMLElement, IBaseComponentDelegateOptions> | TableFilterDelegateFactory;
61
63
  filterDebounceTime?: number;
62
64
  cellStyle?: Partial<CSSStyleDeclaration>;
63
65
  headerCellStyle?: Partial<CSSStyleDeclaration>;
@@ -138,7 +140,7 @@ export declare enum TableFilterType {
138
140
  DateRange = "date-range"
139
141
  }
140
142
  export declare type TableFilterListener<T = any> = (value: T, columnIndex: number) => void;
141
- export declare type TableFilterDelegateFactory<T extends HTMLElement = any> = () => IFormFieldComponentDelegate<T>;
143
+ export declare type TableFilterDelegateFactory<T extends HTMLElement = any> = () => IFormFieldComponentDelegate<T> | IBaseComponentDelegate<HTMLElement>;
142
144
  export declare type TableLayoutType = 'auto' | 'fixed';
143
145
  export interface ITableFilterEventData<T = any> {
144
146
  value: T;
@@ -155,3 +157,5 @@ export interface ITableTemplateBuilderResult {
155
157
  content: HTMLElement | string;
156
158
  stopClickPropagation?: boolean;
157
159
  }
160
+ export interface ITableViewTemplateBuilderResult extends ITableTemplateBuilderResult {
161
+ }
@@ -10,7 +10,7 @@ import { TextFieldFoundation } from './text-field-foundation';
10
10
  import { TEXT_FIELD_CONSTANTS } from './text-field-constants';
11
11
  import { FieldComponent } from '../field/field';
12
12
  const template = '<template><div class=\"forge-text-field__wrapper\" part=\"root\"><div class=\"forge-text-field forge-field\" part=\"container\"><div class=\"forge-text-field__leading-container\" part=\"leading-container\"><slot name=\"leading\"></slot></div><div class=\"forge-field__label-input-container\" part=\"label-input-container\"><slot></slot><slot name=\"label\"></slot></div><slot name=\"trailing\"></slot><div class=\"forge-field__addon-end-container\" part=\"addon-end-container\"><slot name=\"addon-end\"></slot></div></div><slot name=\"helper-text\"></slot></div></template>';
13
- const styles = '.forge-field::before{content:\"\";display:-webkit-box;display:flex;position:absolute;top:0;right:0;left:0;z-index:-1;-webkit-box-sizing:border-box;box-sizing:border-box;width:100%;max-width:100%;height:100%;pointer-events:none;border-style:solid;border-width:1px;-webkit-transition:border-color .2s 0s cubic-bezier(0, 0, .2, 1);transition:border-color .2s 0s cubic-bezier(0, 0, .2, 1);background-color:transparent;background-color:var(--forge-text-field-theme-background,transparent);text-align:left}.forge-field[dir=rtl]::before,[dir=rtl] .forge-field::before{text-align:right}.forge-field:not(.forge-field--disabled):not(.forge-field--invalid):not(.forge-field--focused)::before{border-color:rgba(0,0,0,.38);border-color:var(--mdc-theme-text-icon-on-background,rgba(0,0,0,.38))}.forge-field:not(.forge-field--disabled):not(.forge-field--invalid):not(.forge-field--focused):hover::before{border-color:rgba(0,0,0,.87);border-color:var(--mdc-theme-text-primary-on-background,rgba(0,0,0,.87))}.forge-field--focused:not(.forge-field--invalid):not(.forge-field--disabled)::before{border-color:#3f51b5;border-color:var(--mdc-theme-primary,#3f51b5)}.forge-field--invalid:not(.forge-field--disabled)::before{border-color:#b00020;border-color:var(--mdc-theme-error,#b00020)}.forge-field--invalid:not(.forge-field--disabled):not(.forge-field--focused):hover::before{border-color:#db8a98;border-color:var(--forge-theme-error-hover,#db8a98)}.forge-field--disabled::before{border-color:rgba(0,0,0,.12);border-color:var(--mdc-theme-text-disabled-on-background,rgba(0,0,0,.12))}.forge-field:not(.forge-field--shape-rounded){border-radius:4px}.forge-field:not(.forge-field--shape-rounded)::before{border-radius:4px}.forge-field--shape-rounded{border-radius:28px}.forge-field--shape-rounded::before{border-radius:28px}.forge-field--disabled::before{background-color:#f5f5f5;background-color:var(--forge-theme-form-field-disabled-on-background,#f5f5f5)}.forge-field--focused::before{border-color:#3f51b5;border-color:var(--mdc-theme-primary,#3f51b5);border-width:2px}.forge-field__label-input-container{position:relative;-webkit-box-flex:1;flex:1 1 0.0001px;height:100%;display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;-webkit-box-align:center;align-items:center;min-width:0}.forge-field ::slotted(label){color:rgba(0,0,0,.65);color:var(--forge-theme-form-field-label-on-background,rgba(0,0,0,.65));pointer-events:none;right:0;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-subtitle1-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-weight:400;font-weight:var(--mdc-typography-subtitle1-font-weight,400);letter-spacing:.009375em;letter-spacing:var(--mdc-typography-subtitle1-letter-spacing, .009375em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-subtitle1-text-decoration,inherit);text-decoration:var(--mdc-typography-subtitle1-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-subtitle1-text-transform,inherit);font-size:var(--mdc-typography-subtitle1-font-size, 1rem);position:absolute;left:0;-webkit-transform-origin:left top;transform-origin:left top;line-height:1.1rem;text-align:left;text-overflow:ellipsis;white-space:nowrap;cursor:text;overflow:hidden;will-change:transform;-webkit-transition:color 150ms cubic-bezier(.4, 0, .2, 1),-webkit-transform 150ms cubic-bezier(.4, 0, .2, 1);transition:color 150ms cubic-bezier(.4, 0, .2, 1),-webkit-transform 150ms cubic-bezier(.4, 0, .2, 1);transition:transform 150ms cubic-bezier(.4, 0, .2, 1),color 150ms cubic-bezier(.4, 0, .2, 1);transition:transform 150ms cubic-bezier(.4, 0, .2, 1),color 150ms cubic-bezier(.4, 0, .2, 1),-webkit-transform 150ms cubic-bezier(.4, 0, .2, 1)}.forge-field ::slotted(label[dir=rtl]),[dir=rtl] .forge-field ::slotted(label){right:0;left:auto;-webkit-transform-origin:right top;transform-origin:right top;text-align:right}.forge-field--dense:not(.forge-field--roomy) ::slotted(label){display:none}.forge-field--required ::slotted(label)::after{content:none}.forge-field--required ::slotted(label)::before{color:#b00020;color:var(--mdc-theme-error,#b00020);content:\"*\";margin-right:4px}.forge-field:not(.forge-field--dense):not(.forge-field--roomy) ::slotted(label){font-size:1rem}.forge-field--roomy:not(.forge-field--dense) ::slotted(label){font-size:1rem}.forge-field--disabled ::slotted(label){color:rgba(0,0,0,.38);color:var(--forge-theme-label-disabled-on-background,rgba(0,0,0,.38))}.forge-field--invalid:not(.forge-field--disabled) ::slotted(label){color:#b00020;color:var(--mdc-theme-error,#b00020)}.forge-field--focused:not(.forge-field--invalid):not(.forge-field--disabled) ::slotted(label){color:#3f51b5;color:var(--mdc-theme-primary,#3f51b5)}.forge-field:not(.forge-field--dense):not(.forge-field--roomy) ::slotted(label){top:1rem}.forge-field--roomy:not(.forge-field--dense) ::slotted(label){top:1.285rem}.forge-field:not(.forge-field--shape-rounded):not(.forge-field--leading) ::slotted(label){left:12px!important}.forge-field--shape-rounded:not(.forge-field--leading) ::slotted(label){left:32px!important}.forge-field:not(.forge-field--trailing):not(.forge-field--addon-end):not(.forge-field--shape-rounded) ::slotted(label){padding-right:12px}.forge-field:not(.forge-field--trailing):not(.forge-field--addon-end).forge-field--shape-rounded ::slotted(label){padding-right:32px}.forge-field ::slotted(label.forge-floating-label--float-above){color:rgba(0,0,0,.65);color:var(--forge-theme-form-field-label-on-background,rgba(0,0,0,.65))}.forge-field--disabled ::slotted(label.forge-floating-label--float-above){color:rgba(0,0,0,.6);color:var(--forge-theme-form-field-text-disabled-on-background,rgba(0,0,0,.6))}.forge-field--invalid:not(.forge-field--disabled) ::slotted(label.forge-floating-label--float-above){color:#b00020;color:var(--mdc-theme-error,#b00020)}.forge-field--focused:not(.forge-field--invalid):not(.forge-field--disabled) ::slotted(label.forge-floating-label--float-above){color:#3f51b5;color:var(--mdc-theme-primary,#3f51b5)}.forge-field:not(.forge-field--dense):not(.forge-field--roomy) ::slotted(label.forge-floating-label--float-above){-webkit-transform:translateY(-.54rem) scale(.8125);transform:translateY(-.54rem) scale(.8125);cursor:auto}.forge-field--roomy:not(.forge-field--dense) ::slotted(label.forge-floating-label--float-above){-webkit-transform:translateY(-.72rem) scale(.8125);transform:translateY(-.72rem) scale(.8125);cursor:auto}.forge-field:not(.forge-field--dense):not(.forge-field--roomy) ::slotted(label.forge-floating-label--float-above.forge-floating-label--float-above-end-keyframe){-webkit-transition:none;transition:none;font-size:.8125rem;-webkit-transform:translateY(-.62rem) scale(1);transform:translateY(-.62rem) scale(1);cursor:auto}.forge-field--roomy:not(.forge-field--dense) ::slotted(label.forge-floating-label--float-above.forge-floating-label--float-above-end-keyframe){-webkit-transition:none;transition:none;font-size:.8125rem;-webkit-transform:translateY(-.8rem) scale(1);transform:translateY(-.8rem) scale(1);cursor:auto}.forge-field:not(.forge-field--dense):not(.forge-field--roomy) ::slotted(label.forge-floating-label--unfloat-above-start-keyframe){-webkit-transition:none;transition:none;font-size:1rem;-webkit-transform:translateY(-.62rem) scale(.8125);transform:translateY(-.62rem) scale(.8125);cursor:auto}.forge-field--roomy:not(.forge-field--dense) ::slotted(label.forge-floating-label--unfloat-above-start-keyframe){-webkit-transition:none;transition:none;font-size:1rem;-webkit-transform:translateY(-.8rem) scale(.8125);transform:translateY(-.8rem) scale(.8125);cursor:auto}.forge-field ::slotted(input){-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-body1-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-weight:400;font-weight:var(--mdc-typography-body1-font-weight,400);letter-spacing:.03125em;letter-spacing:var(--mdc-typography-body1-letter-spacing, .03125em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-body1-text-decoration,inherit);text-decoration:var(--mdc-typography-body1-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-body1-text-transform,inherit);align-self:flex-end;-webkit-box-sizing:border-box;box-sizing:border-box;width:100%;height:100%;-webkit-transition:opacity 150ms 0s cubic-bezier(.4, 0, .2, 1);transition:opacity 150ms 0s cubic-bezier(.4, 0, .2, 1);border:none;background:0 0;-webkit-appearance:none;-moz-appearance:none;appearance:none;outline:0;line-height:normal;min-width:0}.forge-field ::slotted(input)::-webkit-input-placeholder{color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54));font-size:.875rem}.forge-field ::slotted(input)::-moz-placeholder{color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54));font-size:.875rem}.forge-field ::slotted(input):-ms-input-placeholder{color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54));font-size:.875rem}.forge-field ::slotted(input)::-ms-input-placeholder{color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54));font-size:.875rem}.forge-field ::slotted(input)::placeholder{color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54));font-size:.875rem}.forge-field ::slotted(input):invalid{-webkit-box-shadow:none;box-shadow:none}.forge-field ::slotted(input):-webkit-autofill{z-index:auto!important}.forge-field:not(.forge-field--disabled) ::slotted(input){color:rgba(0,0,0,.87);color:var(--mdc-theme-text-primary-on-background,rgba(0,0,0,.87))}.forge-field--disabled ::slotted(input){color:rgba(0,0,0,.6);color:var(--forge-theme-form-field-text-disabled-on-background,rgba(0,0,0,.6));cursor:not-allowed}.forge-field:not(.forge-field--dense):not(.forge-field--roomy) ::slotted(input){font-size:1rem;font-size:var(--forge-field-font-size, 1rem)}.forge-field--roomy:not(.forge-field--dense) ::slotted(input){font-size:1rem;font-size:var(--forge-field-font-size, 1rem)}.forge-field--dense:not(.forge-field--roomy) ::slotted(input){font-size:.875rem;font-size:var(--forge-field-font-size, .875rem)}.forge-field ::slotted(input){padding:0 12px}.forge-field--label ::slotted(input){padding-top:24px}.forge-field--roomy.forge-field--label ::slotted(input){padding-top:29px}.forge-field--shape-rounded:not(.forge-field--leading) ::slotted(input){padding-left:32px}.forge-field--leading ::slotted(input){padding-left:0}.forge-field--label ::slotted(input){padding-bottom:3px}.forge-field--roomy.forge-field--label ::slotted(input){padding-bottom:8px}.forge-field--shape-rounded:not(.forge-field--trailing):not(.forge-field--addon-end) ::slotted(input){padding-right:32px}.forge-field--addon-end ::slotted(input),.forge-field--trailing ::slotted(input){padding-right:0}.forge-field~::slotted([slot=helper-text]){-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-caption-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));line-height:1.25rem;line-height:var(--mdc-typography-caption-line-height, 1.25rem);font-weight:400;font-weight:var(--mdc-typography-caption-font-weight,400);letter-spacing:.0333333333em;letter-spacing:var(--mdc-typography-caption-letter-spacing, .0333333333em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-caption-text-decoration,inherit);text-decoration:var(--mdc-typography-caption-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-caption-text-transform,inherit);display:block;min-height:1.5rem;line-height:normal;padding-top:4px;-webkit-box-sizing:border-box;box-sizing:border-box}.forge-field:not(.forge-field--dense):not(.forge-field--roomy)~::slotted([slot=helper-text]){font-size:.75rem}.forge-field--roomy:not(.forge-field--dense)~::slotted([slot=helper-text]){font-size:.875rem}.forge-field--dense:not(.forge-field--roomy)~::slotted([slot=helper-text]){font-size:.75rem}.forge-field~::slotted([slot=helper-text]){color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54))}.forge-field--invalid:not(.forge-field--disabled)~::slotted([slot=helper-text]){color:#b00020;color:var(--mdc-theme-error,#b00020)}.forge-field:not(.forge-field--shape-rounded)~::slotted([slot=helper-text]){margin-left:12px}.forge-field--shape-rounded~::slotted([slot=helper-text]){margin-left:32px}.forge-field ::slotted([slot=leading]){display:-webkit-box;display:flex;align-self:center}.forge-field:not(.forge-field--disabled):not(.forge-field--invalid) ::slotted([slot=leading]){color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54))}.forge-field--invalid:not(.forge-field--disabled) ::slotted([slot=leading]){color:#b00020;color:var(--mdc-theme-error,#b00020)}.forge-field--disabled ::slotted([slot=leading]){color:rgba(0,0,0,.38);color:var(--mdc-theme-text-disabled-on-light,rgba(0,0,0,.38));cursor:not-allowed;pointer-events:none}.forge-field ::slotted([slot=leading]){margin:0 4px}.forge-field ::slotted([slot=leading]:not(forge-icon-button)){padding:6px}.forge-field ::slotted([slot=trailing]){align-self:center}.forge-field:not(.forge-field--disabled):not(.forge-field--invalid) ::slotted([slot=trailing]){color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54))}.forge-field--invalid:not(.forge-field--disabled) ::slotted([slot=trailing]){color:#b00020;color:var(--mdc-theme-error,#b00020)}.forge-field--disabled ::slotted([slot=trailing]){color:rgba(0,0,0,.38);color:var(--mdc-theme-text-disabled-on-light,rgba(0,0,0,.38));cursor:not-allowed;pointer-events:none}.forge-field ::slotted([slot=trailing]){margin:0 4px}.forge-field ::slotted([slot=trailing]:not(forge-icon-button)){padding:6px}.forge-field__addon-end-container{display:none}.forge-field--addon-end .forge-field__addon-end-container{height:100%;width:auto;display:-webkit-box;display:flex;-webkit-box-pack:center;justify-content:center;-webkit-box-align:center;align-items:center;padding:0 4px;border-left-width:1px;border-left-style:solid;-webkit-transition:border-left-color .2s 0s cubic-bezier(0, 0, .2, 1);transition:border-left-color .2s 0s cubic-bezier(0, 0, .2, 1)}.forge-field:not(.forge-field--disabled):not(.forge-field--focused):not(.forge-field--invalid) .forge-field__addon-end-container{border-left-color:rgba(0,0,0,.54);border-left-color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54))}.forge-field:not(.forge-field--disabled):not(.forge-field--focused):not(.forge-field--invalid) .forge-field__addon-end-container:hover{border-left-color:rgba(0,0,0,.87);border-left-color:var(--mdc-theme-text-primary-on-background,rgba(0,0,0,.87))}.forge-field.forge-field--focused:not(.forge-field--invalid):not(.forge-field--disabled) .forge-field__addon-end-container{border-left-color:#3f51b5;border-left-color:var(--mdc-theme-primary,#3f51b5)}.forge-field.forge-field--invalid:not(.forge-field--disabled) .forge-field__addon-end-container{border-left-color:#b00020;border-left-color:var(--mdc-theme-error,#b00020)}.forge-field.forge-field--invalid:not(.forge-field--focused):not(.forge-field--disabled) .forge-field__addon-end-container:hover{border-left-color:#db8a98;border-left-color:var(--forge-theme-error-hover,#db8a98)}.forge-field.forge-field--disabled .forge-field__addon-end-container{border-left-color:rgba(0,0,0,.12);border-left-color:var(--mdc-theme-text-disabled-on-background,rgba(0,0,0,.12))}.forge-field:not(.forge-field--disabled):not(.forge-field--invalid) ::slotted([slot=addon-end]){color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54))}.forge-field--invalid:not(.forge-field--disabled) ::slotted([slot=addon-end]){color:#b00020;color:var(--mdc-theme-error,#b00020)}.forge-field--disabled ::slotted([slot=addon-end]){color:rgba(0,0,0,.38);color:var(--mdc-theme-text-disabled-on-light,rgba(0,0,0,.38));cursor:not-allowed;pointer-events:none}.forge-text-field{-webkit-box-sizing:border-box;box-sizing:border-box;display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;position:relative;z-index:1;z-index:var(--forge-z-index-surface,1);margin-top:0;margin-top:var(--forge-text-field-margin-top,0)}.forge-text-field.forge-field--disabled{background-color:#f5f5f5;background-color:var(--forge-theme-form-field-disabled-on-background,#f5f5f5);cursor:not-allowed}.forge-text-field:not(.forge-text-field--textarea):not(.forge-field--dense):not(.forge-field--roomy){height:3rem;height:var(--forge-text-field-height,3rem)}.forge-text-field:not(.forge-text-field--textarea).forge-field--roomy:not(.forge-field--dense){height:3.5rem;height:var(--forge-text-field-height,3.5rem)}.forge-text-field:not(.forge-text-field--textarea).forge-field--dense:not(.forge-field--roomy){height:1.5rem;height:var(--forge-text-field-height,1.5rem)}.forge-text-field__leading-container{display:-webkit-box;display:flex;align-self:center}.forge-text-field--multi-input ::slotted(input:first-of-type){padding-right:0;max-width:110px;min-width:110px;width:110px}.forge-text-field--multi-input ::slotted(input:last-of-type)::-webkit-input-placeholder{padding-left:6px}.forge-text-field--multi-input ::slotted(input:last-of-type)::-moz-placeholder{padding-left:6px}.forge-text-field--multi-input ::slotted(input:last-of-type):-ms-input-placeholder{padding-left:6px}.forge-text-field--multi-input ::slotted(input:last-of-type)::-ms-input-placeholder{padding-left:6px}.forge-text-field--multi-input ::slotted(input:last-of-type)::placeholder{padding-left:6px}.forge-text-field--multi-input ::slotted([data-forge-multi-input-separator]){color:rgba(0,0,0,.87);color:var(--mdc-theme-text-primary-on-background,rgba(0,0,0,.87));border:transparent}.forge-text-field--multi-input.forge-field--label ::slotted([data-forge-multi-input-separator]){margin:20px 0 0 4px}.forge-text-field--multi-input:not(.forge-field--label) ::slotted([data-forge-multi-input-separator]){margin:0 0 0 4px}.forge-text-field.forge-text-field--textarea{height:auto;padding-right:2px;min-height:3rem;min-height:var(--forge-text-field-height,3rem)}.forge-text-field.forge-text-field--textarea ::slotted(textarea){-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-body1-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:1rem;font-size:var(--mdc-typography-body1-font-size, 1rem);line-height:1.5rem;line-height:var(--mdc-typography-body1-line-height, 1.5rem);font-weight:400;font-weight:var(--mdc-typography-body1-font-weight,400);letter-spacing:.03125em;letter-spacing:var(--mdc-typography-body1-letter-spacing, .03125em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-body1-text-decoration,inherit);text-decoration:var(--mdc-typography-body1-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-body1-text-transform,inherit);align-self:flex-end;-webkit-box-sizing:border-box;box-sizing:border-box;width:100%;height:100%;-webkit-transition:opacity 150ms 0s cubic-bezier(.4, 0, .2, 1);transition:opacity 150ms 0s cubic-bezier(.4, 0, .2, 1);border:none;background:0 0;-webkit-appearance:none;-moz-appearance:none;appearance:none;outline:0;line-height:normal;min-width:0;font-size:1rem;margin:28px 0 0;padding:0 12px 8px;overflow:auto;resize:vertical}.forge-text-field.forge-text-field--textarea ::slotted(textarea)::-webkit-input-placeholder{color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54));font-size:.875rem}.forge-text-field.forge-text-field--textarea ::slotted(textarea)::-moz-placeholder{color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54));font-size:.875rem}.forge-text-field.forge-text-field--textarea ::slotted(textarea):-ms-input-placeholder{color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54));font-size:.875rem}.forge-text-field.forge-text-field--textarea ::slotted(textarea)::-ms-input-placeholder{color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54));font-size:.875rem}.forge-text-field.forge-text-field--textarea ::slotted(textarea)::placeholder{color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54));font-size:.875rem}.forge-text-field.forge-text-field--textarea ::slotted(textarea):invalid{-webkit-box-shadow:none;box-shadow:none}.forge-text-field.forge-text-field--textarea ::slotted(textarea):-webkit-autofill{z-index:auto!important}.forge-text-field.forge-text-field--textarea:not(.forge-field--disabled) ::slotted(textarea){color:rgba(0,0,0,.87);color:var(--mdc-theme-text-primary-on-background,rgba(0,0,0,.87))}.forge-text-field.forge-text-field--textarea.forge-field--disabled ::slotted(textarea){color:rgba(0,0,0,.6);color:var(--forge-theme-form-field-text-disabled-on-background,rgba(0,0,0,.6));cursor:not-allowed}:host{display:block;contain:layout}:host([hidden]){display:none}';
13
+ const styles = '.forge-field::before{content:\"\";display:-webkit-box;display:flex;position:absolute;top:0;right:0;left:0;z-index:-1;-webkit-box-sizing:border-box;box-sizing:border-box;width:100%;max-width:100%;height:100%;pointer-events:none;border-style:solid;border-style:var(--forge-text-field-border-style,solid);border-width:1px;-webkit-transition:border-color .2s 0s cubic-bezier(0, 0, .2, 1);transition:border-color .2s 0s cubic-bezier(0, 0, .2, 1);background-color:transparent;background-color:var(--forge-text-field-theme-background,transparent);text-align:left}.forge-field[dir=rtl]::before,[dir=rtl] .forge-field::before{text-align:right}.forge-field:not(.forge-field--disabled):not(.forge-field--invalid):not(.forge-field--focused)::before{border-color:rgba(0,0,0,.38);border-color:var(--mdc-theme-text-icon-on-background,rgba(0,0,0,.38))}.forge-field:not(.forge-field--disabled):not(.forge-field--invalid):not(.forge-field--focused):hover::before{border-color:rgba(0,0,0,.87);border-color:var(--mdc-theme-text-primary-on-background,rgba(0,0,0,.87))}.forge-field--focused:not(.forge-field--invalid):not(.forge-field--disabled)::before{border-color:#3f51b5;border-color:var(--mdc-theme-primary,#3f51b5)}.forge-field--invalid:not(.forge-field--disabled)::before{border-color:#b00020;border-color:var(--mdc-theme-error,#b00020)}.forge-field--invalid:not(.forge-field--disabled):not(.forge-field--focused):hover::before{border-color:#db8a98;border-color:var(--forge-theme-error-hover,#db8a98)}.forge-field--disabled::before{border-color:rgba(0,0,0,.12);border-color:var(--mdc-theme-text-disabled-on-background,rgba(0,0,0,.12))}.forge-field:not(.forge-field--shape-rounded){border-radius:4px}.forge-field:not(.forge-field--shape-rounded)::before{border-radius:4px}.forge-field--shape-rounded{border-radius:28px}.forge-field--shape-rounded::before{border-radius:28px}.forge-field--disabled::before{background-color:#f5f5f5;background-color:var(--forge-theme-form-field-disabled-on-background,#f5f5f5)}.forge-field--focused::before{border-color:#3f51b5;border-color:var(--mdc-theme-primary,#3f51b5);border-width:2px}.forge-field__label-input-container{position:relative;-webkit-box-flex:1;flex:1 1 0.0001px;height:100%;display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;-webkit-box-align:center;align-items:center;min-width:0}.forge-field ::slotted(label){color:rgba(0,0,0,.65);color:var(--forge-theme-form-field-label-on-background,rgba(0,0,0,.65));pointer-events:none;right:0;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-subtitle1-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-weight:400;font-weight:var(--mdc-typography-subtitle1-font-weight,400);letter-spacing:.009375em;letter-spacing:var(--mdc-typography-subtitle1-letter-spacing, .009375em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-subtitle1-text-decoration,inherit);text-decoration:var(--mdc-typography-subtitle1-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-subtitle1-text-transform,inherit);font-size:var(--mdc-typography-subtitle1-font-size, 1rem);position:absolute;left:0;-webkit-transform-origin:left top;transform-origin:left top;line-height:1.1rem;text-align:left;text-overflow:ellipsis;white-space:nowrap;cursor:text;overflow:hidden;will-change:transform;-webkit-transition:color 150ms cubic-bezier(.4, 0, .2, 1),-webkit-transform 150ms cubic-bezier(.4, 0, .2, 1);transition:color 150ms cubic-bezier(.4, 0, .2, 1),-webkit-transform 150ms cubic-bezier(.4, 0, .2, 1);transition:transform 150ms cubic-bezier(.4, 0, .2, 1),color 150ms cubic-bezier(.4, 0, .2, 1);transition:transform 150ms cubic-bezier(.4, 0, .2, 1),color 150ms cubic-bezier(.4, 0, .2, 1),-webkit-transform 150ms cubic-bezier(.4, 0, .2, 1)}.forge-field ::slotted(label[dir=rtl]),[dir=rtl] .forge-field ::slotted(label){right:0;left:auto;-webkit-transform-origin:right top;transform-origin:right top;text-align:right}.forge-field--dense:not(.forge-field--roomy) ::slotted(label){display:none}.forge-field--required ::slotted(label)::after{content:none}.forge-field--required ::slotted(label)::before{color:#b00020;color:var(--mdc-theme-error,#b00020);content:\"*\";margin-right:4px}.forge-field:not(.forge-field--dense):not(.forge-field--roomy) ::slotted(label){font-size:1rem}.forge-field--roomy:not(.forge-field--dense) ::slotted(label){font-size:1rem}.forge-field--disabled ::slotted(label){color:rgba(0,0,0,.38);color:var(--forge-theme-label-disabled-on-background,rgba(0,0,0,.38))}.forge-field--invalid:not(.forge-field--disabled) ::slotted(label){color:#b00020;color:var(--mdc-theme-error,#b00020)}.forge-field--focused:not(.forge-field--invalid):not(.forge-field--disabled) ::slotted(label){color:#3f51b5;color:var(--mdc-theme-primary,#3f51b5)}.forge-field:not(.forge-field--dense):not(.forge-field--roomy) ::slotted(label){top:1rem}.forge-field--roomy:not(.forge-field--dense) ::slotted(label){top:1.285rem}.forge-field:not(.forge-field--shape-rounded):not(.forge-field--leading) ::slotted(label){left:12px!important}.forge-field--shape-rounded:not(.forge-field--leading) ::slotted(label){left:32px!important}.forge-field:not(.forge-field--trailing):not(.forge-field--addon-end):not(.forge-field--shape-rounded) ::slotted(label){padding-right:12px}.forge-field:not(.forge-field--trailing):not(.forge-field--addon-end).forge-field--shape-rounded ::slotted(label){padding-right:32px}.forge-field ::slotted(label.forge-floating-label--float-above){color:rgba(0,0,0,.65);color:var(--forge-theme-form-field-label-on-background,rgba(0,0,0,.65))}.forge-field--disabled ::slotted(label.forge-floating-label--float-above){color:rgba(0,0,0,.6);color:var(--forge-theme-form-field-text-disabled-on-background,rgba(0,0,0,.6))}.forge-field--invalid:not(.forge-field--disabled) ::slotted(label.forge-floating-label--float-above){color:#b00020;color:var(--mdc-theme-error,#b00020)}.forge-field--focused:not(.forge-field--invalid):not(.forge-field--disabled) ::slotted(label.forge-floating-label--float-above){color:#3f51b5;color:var(--mdc-theme-primary,#3f51b5)}.forge-field:not(.forge-field--dense):not(.forge-field--roomy) ::slotted(label.forge-floating-label--float-above){-webkit-transform:translateY(-.54rem) scale(.8125);transform:translateY(-.54rem) scale(.8125);cursor:auto}.forge-field--roomy:not(.forge-field--dense) ::slotted(label.forge-floating-label--float-above){-webkit-transform:translateY(-.72rem) scale(.8125);transform:translateY(-.72rem) scale(.8125);cursor:auto}.forge-field:not(.forge-field--dense):not(.forge-field--roomy) ::slotted(label.forge-floating-label--float-above.forge-floating-label--float-above-end-keyframe){-webkit-transition:none;transition:none;font-size:.8125rem;-webkit-transform:translateY(-.62rem) scale(1);transform:translateY(-.62rem) scale(1);cursor:auto}.forge-field--roomy:not(.forge-field--dense) ::slotted(label.forge-floating-label--float-above.forge-floating-label--float-above-end-keyframe){-webkit-transition:none;transition:none;font-size:.8125rem;-webkit-transform:translateY(-.8rem) scale(1);transform:translateY(-.8rem) scale(1);cursor:auto}.forge-field:not(.forge-field--dense):not(.forge-field--roomy) ::slotted(label.forge-floating-label--unfloat-above-start-keyframe){-webkit-transition:none;transition:none;font-size:1rem;-webkit-transform:translateY(-.62rem) scale(.8125);transform:translateY(-.62rem) scale(.8125);cursor:auto}.forge-field--roomy:not(.forge-field--dense) ::slotted(label.forge-floating-label--unfloat-above-start-keyframe){-webkit-transition:none;transition:none;font-size:1rem;-webkit-transform:translateY(-.8rem) scale(.8125);transform:translateY(-.8rem) scale(.8125);cursor:auto}.forge-field ::slotted(input){-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-body1-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-weight:400;font-weight:var(--mdc-typography-body1-font-weight,400);letter-spacing:.03125em;letter-spacing:var(--mdc-typography-body1-letter-spacing, .03125em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-body1-text-decoration,inherit);text-decoration:var(--mdc-typography-body1-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-body1-text-transform,inherit);align-self:flex-end;-webkit-box-sizing:border-box;box-sizing:border-box;width:100%;height:100%;-webkit-transition:opacity 150ms 0s cubic-bezier(.4, 0, .2, 1);transition:opacity 150ms 0s cubic-bezier(.4, 0, .2, 1);border:none;background:0 0;-webkit-appearance:none;-moz-appearance:none;appearance:none;outline:0;line-height:normal;min-width:0}.forge-field ::slotted(input)::-webkit-input-placeholder{color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54));font-size:.875rem}.forge-field ::slotted(input)::-moz-placeholder{color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54));font-size:.875rem}.forge-field ::slotted(input):-ms-input-placeholder{color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54));font-size:.875rem}.forge-field ::slotted(input)::-ms-input-placeholder{color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54));font-size:.875rem}.forge-field ::slotted(input)::placeholder{color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54));font-size:.875rem}.forge-field ::slotted(input):invalid{-webkit-box-shadow:none;box-shadow:none}.forge-field ::slotted(input):-webkit-autofill{z-index:auto!important}.forge-field:not(.forge-field--disabled) ::slotted(input){color:rgba(0,0,0,.87);color:var(--mdc-theme-text-primary-on-background,rgba(0,0,0,.87))}.forge-field--disabled ::slotted(input){color:rgba(0,0,0,.6);color:var(--forge-theme-form-field-text-disabled-on-background,rgba(0,0,0,.6));cursor:not-allowed}.forge-field:not(.forge-field--dense):not(.forge-field--roomy) ::slotted(input){font-size:1rem;font-size:var(--forge-field-font-size, 1rem)}.forge-field--roomy:not(.forge-field--dense) ::slotted(input){font-size:1rem;font-size:var(--forge-field-font-size, 1rem)}.forge-field--dense:not(.forge-field--roomy) ::slotted(input){font-size:.875rem;font-size:var(--forge-field-font-size, .875rem)}.forge-field ::slotted(input){padding:0 12px}.forge-field--label ::slotted(input){padding-top:24px}.forge-field--roomy.forge-field--label ::slotted(input){padding-top:29px}.forge-field--shape-rounded:not(.forge-field--leading) ::slotted(input){padding-left:32px}.forge-field--leading ::slotted(input){padding-left:0}.forge-field--label ::slotted(input){padding-bottom:3px}.forge-field--roomy.forge-field--label ::slotted(input){padding-bottom:8px}.forge-field--shape-rounded:not(.forge-field--trailing):not(.forge-field--addon-end) ::slotted(input){padding-right:32px}.forge-field--addon-end ::slotted(input),.forge-field--trailing ::slotted(input){padding-right:0}.forge-field~::slotted([slot=helper-text]){-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-caption-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));line-height:1.25rem;line-height:var(--mdc-typography-caption-line-height, 1.25rem);font-weight:400;font-weight:var(--mdc-typography-caption-font-weight,400);letter-spacing:.0333333333em;letter-spacing:var(--mdc-typography-caption-letter-spacing, .0333333333em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-caption-text-decoration,inherit);text-decoration:var(--mdc-typography-caption-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-caption-text-transform,inherit);display:block;min-height:1.5rem;line-height:normal;padding-top:4px;-webkit-box-sizing:border-box;box-sizing:border-box}.forge-field:not(.forge-field--dense):not(.forge-field--roomy)~::slotted([slot=helper-text]){font-size:.75rem}.forge-field--roomy:not(.forge-field--dense)~::slotted([slot=helper-text]){font-size:.875rem}.forge-field--dense:not(.forge-field--roomy)~::slotted([slot=helper-text]){font-size:.75rem}.forge-field~::slotted([slot=helper-text]){color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54))}.forge-field--invalid:not(.forge-field--disabled)~::slotted([slot=helper-text]){color:#b00020;color:var(--mdc-theme-error,#b00020)}.forge-field:not(.forge-field--shape-rounded)~::slotted([slot=helper-text]){margin-left:12px}.forge-field--shape-rounded~::slotted([slot=helper-text]){margin-left:32px}.forge-field ::slotted([slot=leading]){display:-webkit-box;display:flex;align-self:center}.forge-field:not(.forge-field--disabled):not(.forge-field--invalid) ::slotted([slot=leading]){color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54))}.forge-field--invalid:not(.forge-field--disabled) ::slotted([slot=leading]){color:#b00020;color:var(--mdc-theme-error,#b00020)}.forge-field--disabled ::slotted([slot=leading]){color:rgba(0,0,0,.38);color:var(--mdc-theme-text-disabled-on-light,rgba(0,0,0,.38));cursor:not-allowed;pointer-events:none}.forge-field ::slotted([slot=leading]){margin:0 4px}.forge-field ::slotted([slot=leading]:not(forge-icon-button)){padding:6px}.forge-field ::slotted([slot=trailing]){align-self:center}.forge-field:not(.forge-field--disabled):not(.forge-field--invalid) ::slotted([slot=trailing]){color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54))}.forge-field--invalid:not(.forge-field--disabled) ::slotted([slot=trailing]){color:#b00020;color:var(--mdc-theme-error,#b00020)}.forge-field--disabled ::slotted([slot=trailing]){color:rgba(0,0,0,.38);color:var(--mdc-theme-text-disabled-on-light,rgba(0,0,0,.38));cursor:not-allowed;pointer-events:none}.forge-field ::slotted([slot=trailing]){margin:0 4px}.forge-field ::slotted([slot=trailing]:not(forge-icon-button)){padding:6px}.forge-field__addon-end-container{display:none}.forge-field--addon-end .forge-field__addon-end-container{height:100%;width:auto;display:-webkit-box;display:flex;-webkit-box-pack:center;justify-content:center;-webkit-box-align:center;align-items:center;padding:0 4px;border-left-width:1px;border-left-style:solid;-webkit-transition:border-left-color .2s 0s cubic-bezier(0, 0, .2, 1);transition:border-left-color .2s 0s cubic-bezier(0, 0, .2, 1)}.forge-field:not(.forge-field--disabled):not(.forge-field--focused):not(.forge-field--invalid) .forge-field__addon-end-container{border-left-color:rgba(0,0,0,.54);border-left-color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54))}.forge-field:not(.forge-field--disabled):not(.forge-field--focused):not(.forge-field--invalid) .forge-field__addon-end-container:hover{border-left-color:rgba(0,0,0,.87);border-left-color:var(--mdc-theme-text-primary-on-background,rgba(0,0,0,.87))}.forge-field.forge-field--focused:not(.forge-field--invalid):not(.forge-field--disabled) .forge-field__addon-end-container{border-left-color:#3f51b5;border-left-color:var(--mdc-theme-primary,#3f51b5)}.forge-field.forge-field--invalid:not(.forge-field--disabled) .forge-field__addon-end-container{border-left-color:#b00020;border-left-color:var(--mdc-theme-error,#b00020)}.forge-field.forge-field--invalid:not(.forge-field--focused):not(.forge-field--disabled) .forge-field__addon-end-container:hover{border-left-color:#db8a98;border-left-color:var(--forge-theme-error-hover,#db8a98)}.forge-field.forge-field--disabled .forge-field__addon-end-container{border-left-color:rgba(0,0,0,.12);border-left-color:var(--mdc-theme-text-disabled-on-background,rgba(0,0,0,.12))}.forge-field:not(.forge-field--disabled):not(.forge-field--invalid) ::slotted([slot=addon-end]){color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54))}.forge-field--invalid:not(.forge-field--disabled) ::slotted([slot=addon-end]){color:#b00020;color:var(--mdc-theme-error,#b00020)}.forge-field--disabled ::slotted([slot=addon-end]){color:rgba(0,0,0,.38);color:var(--mdc-theme-text-disabled-on-light,rgba(0,0,0,.38));cursor:not-allowed;pointer-events:none}.forge-text-field{-webkit-box-sizing:border-box;box-sizing:border-box;display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;position:relative;z-index:1;z-index:var(--forge-z-index-surface,1);margin-top:0;margin-top:var(--forge-text-field-margin-top,0)}.forge-text-field.forge-field--disabled{background-color:#f5f5f5;background-color:var(--forge-theme-form-field-disabled-on-background,#f5f5f5);cursor:not-allowed}.forge-text-field:not(.forge-text-field--textarea):not(.forge-field--dense):not(.forge-field--roomy){height:3rem;height:var(--forge-text-field-height,3rem)}.forge-text-field:not(.forge-text-field--textarea).forge-field--roomy:not(.forge-field--dense){height:3.5rem;height:var(--forge-text-field-height,3.5rem)}.forge-text-field:not(.forge-text-field--textarea).forge-field--dense:not(.forge-field--roomy){height:1.5rem;height:var(--forge-text-field-height,1.5rem)}.forge-text-field__leading-container{display:-webkit-box;display:flex;align-self:center}.forge-text-field--multi-input ::slotted(input:first-of-type){padding-right:0;max-width:110px;min-width:110px;width:110px}.forge-text-field--multi-input ::slotted(input:last-of-type)::-webkit-input-placeholder{padding-left:6px}.forge-text-field--multi-input ::slotted(input:last-of-type)::-moz-placeholder{padding-left:6px}.forge-text-field--multi-input ::slotted(input:last-of-type):-ms-input-placeholder{padding-left:6px}.forge-text-field--multi-input ::slotted(input:last-of-type)::-ms-input-placeholder{padding-left:6px}.forge-text-field--multi-input ::slotted(input:last-of-type)::placeholder{padding-left:6px}.forge-text-field--multi-input ::slotted([data-forge-multi-input-separator]){color:rgba(0,0,0,.87);color:var(--mdc-theme-text-primary-on-background,rgba(0,0,0,.87));border:transparent}.forge-text-field--multi-input.forge-field--label ::slotted([data-forge-multi-input-separator]){margin:20px 0 0 4px}.forge-text-field--multi-input:not(.forge-field--label) ::slotted([data-forge-multi-input-separator]){margin:0 0 0 4px}.forge-text-field.forge-text-field--textarea{height:auto;padding-right:2px;min-height:3rem;min-height:var(--forge-text-field-height,3rem)}.forge-text-field.forge-text-field--textarea ::slotted(textarea){-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-body1-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:1rem;font-size:var(--mdc-typography-body1-font-size, 1rem);line-height:1.5rem;line-height:var(--mdc-typography-body1-line-height, 1.5rem);font-weight:400;font-weight:var(--mdc-typography-body1-font-weight,400);letter-spacing:.03125em;letter-spacing:var(--mdc-typography-body1-letter-spacing, .03125em);text-decoration:inherit;-webkit-text-decoration:var(--mdc-typography-body1-text-decoration,inherit);text-decoration:var(--mdc-typography-body1-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-body1-text-transform,inherit);align-self:flex-end;-webkit-box-sizing:border-box;box-sizing:border-box;width:100%;height:100%;-webkit-transition:opacity 150ms 0s cubic-bezier(.4, 0, .2, 1);transition:opacity 150ms 0s cubic-bezier(.4, 0, .2, 1);border:none;background:0 0;-webkit-appearance:none;-moz-appearance:none;appearance:none;outline:0;line-height:normal;min-width:0;font-size:1rem;margin:28px 0 0;padding:0 12px 8px;overflow:auto;resize:vertical}.forge-text-field.forge-text-field--textarea ::slotted(textarea)::-webkit-input-placeholder{color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54));font-size:.875rem}.forge-text-field.forge-text-field--textarea ::slotted(textarea)::-moz-placeholder{color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54));font-size:.875rem}.forge-text-field.forge-text-field--textarea ::slotted(textarea):-ms-input-placeholder{color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54));font-size:.875rem}.forge-text-field.forge-text-field--textarea ::slotted(textarea)::-ms-input-placeholder{color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54));font-size:.875rem}.forge-text-field.forge-text-field--textarea ::slotted(textarea)::placeholder{color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54));font-size:.875rem}.forge-text-field.forge-text-field--textarea ::slotted(textarea):invalid{-webkit-box-shadow:none;box-shadow:none}.forge-text-field.forge-text-field--textarea ::slotted(textarea):-webkit-autofill{z-index:auto!important}.forge-text-field.forge-text-field--textarea:not(.forge-field--disabled) ::slotted(textarea){color:rgba(0,0,0,.87);color:var(--mdc-theme-text-primary-on-background,rgba(0,0,0,.87))}.forge-text-field.forge-text-field--textarea.forge-field--disabled ::slotted(textarea){color:rgba(0,0,0,.6);color:var(--forge-theme-form-field-text-disabled-on-background,rgba(0,0,0,.6));cursor:not-allowed}:host{display:block;contain:layout}:host([hidden]){display:none}';
14
14
  /**
15
15
  * The web component class behind the `<forge-text-field>` custom element.
16
16
  *
@@ -114,6 +114,7 @@ export class TimePickerFoundation {
114
114
  case 'Escape':
115
115
  if (this._open) {
116
116
  evt.preventDefault();
117
+ evt.stopPropagation();
117
118
  this._closeDropdown(true);
118
119
  }
119
120
  break;
@@ -7,8 +7,8 @@ import { __decorate } from "tslib";
7
7
  import { CustomElement, attachShadowTemplate, getShadowElement, coerceBoolean } from '@tylertech/forge-core';
8
8
  import { BaseComponent } from '../core/base/base-component';
9
9
  import { TOOLBAR_CONSTANTS } from './toolbar-constants';
10
- const template = '<template><div class=\"forge-toolbar\" part=\"root\"><div class=\"forge-toolbar__section forge-toolbar__section--align-start\" part=\"section-start\"><slot name=\"start\"></slot></div><div class=\"forge-toolbar__section forge-toolbar__section--align-center\" part=\"section-center\"><slot name=\"center\"></slot></div><div class=\"forge-toolbar__section forge-toolbar__section--align-end\" part=\"section-end\"><slot name=\"end\"></slot></div></div></template>';
11
- const styles = '.forge-toolbar{background-color:#fff;background-color:var(--mdc-theme-surface,#fff);min-height:56px;min-height:var(--forge-toolbar-min-height,56px);height:56px;height:var(--forge-toolbar-height,56px);padding-left:16px;padding-left:var(--forge-toolbar-padding,16px);padding-right:16px;padding-right:var(--forge-toolbar-padding,16px);border-bottom:1px solid var(--forge-theme-border-color,rgba(0,0,0,.12));border-bottom:var(--forge-toolbar-border-bottom,1px solid var(--forge-theme-border-color,rgba(0,0,0,.12)));border-top-left-radius:0;border-top-left-radius:var(--forge-toolbar-border-top-left-radius,0);border-top-right-radius:0;border-top-right-radius:var(--forge-toolbar-border-top-right-radius,0);border-bottom-left-radius:0;border-bottom-left-radius:var(--forge-toolbar-border-bottom-left-radius,0);border-bottom-right-radius:0;border-bottom-right-radius:var(--forge-toolbar-border-bottom-right-radius,0);border-color:#e0e0e0;border-color:var(--forge-theme-border-color,#e0e0e0);display:grid;grid-template-columns:auto 1fr auto;-webkit-box-sizing:border-box;box-sizing:border-box}.forge-toolbar__section{display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;width:100%;-webkit-box-sizing:border-box;box-sizing:border-box}.forge-toolbar__section--align-start{grid-column:1}.forge-toolbar__section--align-center{-webkit-box-pack:center;justify-content:center;grid-column:2}.forge-toolbar__section--align-end{-webkit-box-pack:end;justify-content:flex-end;grid-column:3}.forge-toolbar--inverted{border-top:1px solid var(--forge-theme-border-color,rgba(0,0,0,.12));border-top:var(--forge-toolbar-border-top,1px solid var(--forge-theme-border-color,rgba(0,0,0,.12)));border-bottom:none}:host{display:block;contain:layout}:host([hidden]){display:none}:host([no-border]) .forge-toolbar{border:none}.forge-toolbar ::slotted(h1){margin:0}.forge-toolbar ::slotted(h2){margin:0}.forge-toolbar ::slotted(h3){margin:0}.forge-toolbar ::slotted(h4){margin:0}.forge-toolbar ::slotted(h5){margin:0}.forge-toolbar ::slotted(h6){margin:0}.forge-toolbar ::slotted(p){margin:0}';
10
+ const template = '<template><div class=\"forge-toolbar\" part=\"root\"><div class=\"forge-toolbar__section forge-toolbar__section--align-start\" part=\"section-start\"><slot name=\"start\"></slot><slot></slot></div><div class=\"forge-toolbar__section forge-toolbar__section--align-center\" part=\"section-center\"><slot name=\"center\"></slot></div><div class=\"forge-toolbar__section forge-toolbar__section--align-end\" part=\"section-end\"><slot name=\"end\"></slot></div></div></template>';
11
+ const styles = '.forge-toolbar{background-color:#fff;background-color:var(--mdc-theme-surface,#fff);min-height:56px;min-height:var(--forge-toolbar-min-height,56px);height:56px;height:var(--forge-toolbar-height,56px);padding-inline:16px;padding-inline:var(--forge-toolbar-padding,16px);border-bottom:1px solid var(--forge-theme-border-color,rgba(0,0,0,.12));border-bottom:var(--forge-toolbar-border-bottom,1px solid var(--forge-theme-border-color,rgba(0,0,0,.12)));border-top-left-radius:0;border-top-left-radius:var(--forge-toolbar-border-top-left-radius,0);border-top-right-radius:0;border-top-right-radius:var(--forge-toolbar-border-top-right-radius,0);border-bottom-left-radius:0;border-bottom-left-radius:var(--forge-toolbar-border-bottom-left-radius,0);border-bottom-right-radius:0;border-bottom-right-radius:var(--forge-toolbar-border-bottom-right-radius,0);border-color:#e0e0e0;border-color:var(--forge-theme-border-color,#e0e0e0);display:grid;grid-template-columns:auto 1fr auto;-webkit-box-sizing:border-box;box-sizing:border-box}.forge-toolbar__section{display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;width:100%;-webkit-box-sizing:border-box;box-sizing:border-box}.forge-toolbar__section--align-start{grid-column:1}.forge-toolbar__section--align-center{-webkit-box-pack:center;justify-content:center;grid-column:2}.forge-toolbar__section--align-end{-webkit-box-pack:end;justify-content:flex-end;grid-column:3}.forge-toolbar--inverted{border-top:1px solid var(--forge-theme-border-color,rgba(0,0,0,.12));border-top:var(--forge-toolbar-border-top,1px solid var(--forge-theme-border-color,rgba(0,0,0,.12)));border-bottom:none}:host{display:block;contain:layout}:host([hidden]){display:none}:host([no-border]) .forge-toolbar{border:none}:host([no-padding]) .forge-toolbar{padding-inline:0;padding-inline:var(--forge-toolbar-padding,0)}:host([auto-height]) .forge-toolbar{height:auto;height:var(--forge-toolbar-height,auto)}.forge-toolbar ::slotted(h1){margin:0}.forge-toolbar ::slotted(h2){margin:0}.forge-toolbar ::slotted(h3){margin:0}.forge-toolbar ::slotted(h4){margin:0}.forge-toolbar ::slotted(h5){margin:0}.forge-toolbar ::slotted(h6){margin:0}.forge-toolbar ::slotted(p){margin:0}';
12
12
  /**
13
13
  * The web component class behind the `<forge-toolbar>` custom element.
14
14
  *
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@tylertech/forge",
3
3
  "description": "Forge Web Components library",
4
- "version": "2.13.2",
4
+ "version": "2.14.0-dev.0",
5
5
  "author": "Tyler Technologies, Inc.",
6
6
  "license": "Apache-2.0",
7
7
  "repository": {
@@ -13,11 +13,38 @@
13
13
  "typings": "esm/index.d.ts",
14
14
  "sideEffects": false,
15
15
  "dependencies": {
16
+ "@material/animation": "^14.0.0",
17
+ "@material/button": "^14.0.0",
18
+ "@material/card": "^14.0.0",
19
+ "@material/checkbox": "^14.0.0",
20
+ "@material/circular-progress": "^14.0.0",
21
+ "@material/chips": "^14.0.0",
22
+ "@material/density": "^14.0.0",
23
+ "@material/dom": "^14.0.0",
24
+ "@material/drawer": "^14.0.0",
25
+ "@material/elevation": "^14.0.0",
26
+ "@material/feature-targeting": "^14.0.0",
27
+ "@material/form-field": "^14.0.0",
28
+ "@material/icon-button": "^14.0.0",
29
+ "@material/linear-progress": "^14.0.0",
30
+ "@material/menu-surface": "^14.0.0",
31
+ "@material/ripple": "^14.0.0",
32
+ "@material/rtl": "^14.0.0",
33
+ "@material/select": "^14.0.0",
34
+ "@material/shape": "^14.0.0",
35
+ "@material/slider": "^14.0.0",
36
+ "@material/switch": "^14.0.0",
37
+ "@material/tab-indicator": "^14.0.0",
38
+ "@material/tab-scroller": "^14.0.0",
39
+ "@material/theme": "^14.0.0",
40
+ "@material/tokens": "^14.0.0",
41
+ "@material/top-app-bar": "^14.0.0",
42
+ "@material/touch-target": "^14.0.0",
43
+ "@material/typography": "^14.0.0",
16
44
  "@tylertech/forge-core": "^2.1.0",
17
45
  "@tylertech/tyler-icons": "^1.12.0",
18
46
  "imask": "^6.4.3",
19
- "material-components-web": "^14.0.0",
20
47
  "tslib": "^2.3.1"
21
48
  },
22
49
  "customElements": "custom-elements.json"
23
- }
50
+ }
@@ -7,19 +7,18 @@
7
7
  @use './base';
8
8
 
9
9
  @mixin field {
10
- .forge-chip-field {
11
- // Core
12
- @include base.field-core;
13
- // Height
14
- &:not(.forge-field--dense):not(.forge-field--roomy) {
15
- @include base.field-height(default, --forge-chip-field-height);
16
- }
17
- &.forge-field--roomy:not(.forge-field--dense) {
18
- @include base.field-height(roomy, --forge-chip-field-height);
19
- }
20
- &.forge-field--dense:not(.forge-field--roomy) {
21
- @include base.field-height(dense, --forge-chip-field-height);
22
- }
10
+ // Core
11
+ @include base.field-core;
12
+
13
+ // Height
14
+ &:not(.forge-field--dense):not(.forge-field--roomy) {
15
+ @include base.field-height(default, --forge-chip-field-height);
16
+ }
17
+ &.forge-field--roomy:not(.forge-field--dense) {
18
+ @include base.field-height(roomy, --forge-chip-field-height);
19
+ }
20
+ &.forge-field--dense:not(.forge-field--roomy) {
21
+ @include base.field-height(dense, --forge-chip-field-height);
23
22
  }
24
23
  }
25
24
 
@@ -5,7 +5,7 @@
5
5
  */
6
6
  @use './mixins';
7
7
 
8
- @include mixins.core-styles();
8
+ @include mixins.core-styles;
9
9
 
10
10
  :host {
11
11
  @include mixins.host;
@@ -65,7 +65,7 @@
65
65
  }
66
66
 
67
67
  // Outline
68
- @mixin outline-core($custom-prop-text-field-background) {
68
+ @mixin outline-core($custom-prop-text-field-background, $custom-prop-border-style) {
69
69
  display: flex;
70
70
  position: absolute;
71
71
  top: 0;
@@ -77,7 +77,7 @@
77
77
  max-width: 100%;
78
78
  height: 100%;
79
79
  pointer-events: none;
80
- border-style: solid;
80
+ @include theme.css-custom-property(border-style, $custom-prop-border-style, solid);
81
81
  border-width: map.get(variables.$outline, border-width, default);
82
82
  transition: mdc-animation.enter(border-color, 200ms);
83
83
  @include theme.css-custom-property(
@@ -40,7 +40,7 @@
40
40
  @if list.index($exclude, core) == null {
41
41
  &::before {
42
42
  content: '';
43
- @include base.outline-core(--#{$component-selector}-theme-background);
43
+ @include base.outline-core(--#{$component-selector}-theme-background, --#{$component-selector}-border-style);
44
44
  }
45
45
  }
46
46
  // Border Color
@@ -3,7 +3,6 @@
3
3
  * Copyright 2023 Tyler Technologies, Inc.
4
4
  * License: Apache-2.0
5
5
  */
6
- @use '@material/list/evolution-variables' as mdc-evolution-variables;
7
6
  @use '@material/rtl/rtl' as mdc-rtl;
8
7
  @use '@material/theme/theme' as mdc-theme;
9
8
  @use '@material/typography' as mdc-typography;
@@ -42,12 +41,6 @@
42
41
  }
43
42
  }
44
43
 
45
- &--wrap {
46
- .forge-list-item__text {
47
- @include text-wrap;
48
- }
49
- }
50
-
51
44
  &__text {
52
45
  @include text;
53
46
  }
@@ -60,7 +53,7 @@
60
53
  ::slotted([slot=tertiary-title]) {
61
54
  @include subtitle;
62
55
  }
63
-
56
+
64
57
  &--two-line {
65
58
  @include two-line;
66
59
  }
@@ -86,6 +79,18 @@
86
79
  }
87
80
  }
88
81
 
82
+ &--wrap {
83
+ @include theme.css-custom-property(min-height, --forge-list-item-min-height, variables.$single-line-height);
84
+ @include theme.css-custom-property(height, --forge-list-item-height, auto);
85
+
86
+ ::slotted([slot=title]),
87
+ ::slotted([slot=subtitle]),
88
+ ::slotted([slot=tertiary-title]),
89
+ .forge-list-item__text {
90
+ @include text-wrap;
91
+ }
92
+ }
93
+
89
94
  &--indented {
90
95
  @include indented;
91
96
  }
@@ -142,11 +147,13 @@
142
147
  }
143
148
 
144
149
  &--two-line {
145
- height: variables.$two-line-height - 8px;
150
+ @include theme.css-custom-property(min-height, --forge-list-item-min-height, variables.$two-line-height - 8px);
151
+ @include theme.css-custom-property(height, --forge-list-item-height, variables.$two-line-height - 8px);
146
152
  }
147
153
 
148
154
  &--three-line {
149
- height: variables.$three-line-height - 8px;
155
+ @include theme.css-custom-property(min-height, --forge-list-item-min-height, variables.$three-line-height - 8px);
156
+ @include theme.css-custom-property(height, --forge-list-item-height, variables.$three-line-height - 8px);
150
157
  }
151
158
 
152
159
  &:nth-child(1) {
@@ -167,6 +174,12 @@
167
174
  }
168
175
  }
169
176
 
177
+ &--wrap {
178
+ @include theme.css-custom-property(height, --forge-list-item-height, auto);
179
+ @include theme.css-custom-property(padding, --forge-list-item-padding, 4px variables.$drawer-inline-padding);
180
+ @include theme.css-custom-property(min-height, --forge-list-item-min-height, variables.$drawer-single-line-height);
181
+ }
182
+
170
183
  &--disabled {
171
184
  @include theme.css-custom-property(cursor, --forge-list-item-cursor, not-allowed);
172
185
  }
@@ -180,10 +193,10 @@
180
193
  }
181
194
 
182
195
  @mixin base() {
183
- @include theme.css-custom-property(min-height, --forge-list-item-min-height, auto);
184
- @include theme.css-custom-property(max-height, --forge-list-item-max-height, auto);
196
+ @include theme.css-custom-property(min-height, --forge-list-item-min-height, variables.$single-line-height);
197
+ @include theme.css-custom-property(max-height, --forge-list-item-max-height, none);
185
198
  @include theme.css-custom-property(height, --forge-list-item-height, variables.$single-line-height);
186
- @include theme.css-custom-property(padding, --forge-list-item-padding, 0 mdc-evolution-variables.$side-padding);
199
+ @include theme.css-custom-property(padding, --forge-list-item-padding, #{variables.$block-padding variables.$inline-padding});
187
200
  @include theme.css-custom-property(margin-left, --forge-list-item-indent, 0);
188
201
  @include theme.css-custom-property(align-items, --forge-list-item-align-items, center);
189
202
 
@@ -256,13 +269,13 @@
256
269
 
257
270
  @mixin drawer {
258
271
  @include theme.css-custom-property(margin, --forge-list-item-margin, variables.$margin-drawer);
259
- @include theme.css-custom-property(padding, --forge-list-item-padding, 0 8px);
272
+ @include theme.css-custom-property(padding, --forge-list-item-padding, 0 variables.$drawer-inline-padding);
260
273
  @include theme.css-custom-property(border-radius, --forge-list-item-border-radius, 4px);
261
274
  @include theme.css-custom-property(cursor, --forge-list-item-cursor, pointer);
275
+ @include theme.css-custom-property(height, --forge-list-item-height, variables.$drawer-single-line-height);
262
276
 
263
277
  font-size: 0.875rem;
264
278
  font-weight: 500;
265
- height: 40px;
266
279
  }
267
280
 
268
281
  @mixin leading() {
@@ -309,8 +322,6 @@
309
322
  @mixin subtitle() {
310
323
  @include mdc-typography.typography(body2);
311
324
  @include mdc-typography.overflow-ellipsis;
312
- @include mdc-typography.baseline-top(20);
313
-
314
325
  @include mdc-theme.property(color, text-secondary-on-background);
315
326
 
316
327
  display: block;
@@ -3,17 +3,26 @@
3
3
  * Copyright 2023 Tyler Technologies, Inc.
4
4
  * License: Apache-2.0
5
5
  */
6
+ @use 'sass:math';
7
+
8
+ $block-padding: 8px;
9
+ $inline-padding: 16px;
10
+ $drawer-inline-padding: #{math.div($inline-padding, 2)};
11
+
6
12
  /// The default height for a single line list item.
7
- $single-line-height: 48px !default;
13
+ $single-line-height: #{48px - $block-padding * 2} !default;
14
+
15
+ /// The default min-height for a single line list item in a drawer context.
16
+ $drawer-single-line-height: 40px !default;
8
17
 
9
18
  /// The default height for a two-line list item.
10
- $two-line-height: 72px !default;
19
+ $two-line-height: #{72px - $block-padding * 2} !default;
11
20
 
12
21
  /// The default height for a three-line list item.
13
- $three-line-height: 88px !default;
22
+ $three-line-height: #{88px - $block-padding * 2} !default;
14
23
 
15
24
  /// The default height for the dense single-line list item
16
- $dense-height: 32px !default;
25
+ $dense-height: #{32px - $block-padding * 2} !default;
17
26
 
18
27
  /// The default margin for list items when placed in a drawer
19
28
  $margin-drawer: 8px !default;
@@ -14,3 +14,7 @@
14
14
  :host([hidden]) {
15
15
  display: none;
16
16
  }
17
+
18
+ :host([constrain-viewport-width]) {
19
+ max-width: 100vw;
20
+ }
@@ -11,8 +11,7 @@
11
11
  @include mdc-theme.property(background-color, surface);
12
12
  @include theme.css-custom-property(min-height, --forge-toolbar-min-height, variables.$min-height);
13
13
  @include theme.css-custom-property(height, --forge-toolbar-height, variables.$height);
14
- @include theme.css-custom-property(padding-left, --forge-toolbar-padding, variables.$padding);
15
- @include theme.css-custom-property(padding-right, --forge-toolbar-padding, variables.$padding);
14
+ @include theme.css-custom-property(padding-inline, --forge-toolbar-padding, variables.$padding);
16
15
  @include theme.css-custom-property(border-bottom, --forge-toolbar-border-bottom, variables.$border-bottom);
17
16
  @include theme.css-custom-property(border-top-left-radius, --forge-toolbar-border-top-left-radius, 0);
18
17
  @include theme.css-custom-property(border-top-right-radius, --forge-toolbar-border-top-right-radius, 0);
@@ -3,6 +3,7 @@
3
3
  * Copyright 2023 Tyler Technologies, Inc.
4
4
  * License: Apache-2.0
5
5
  */
6
+ @use '../theme';
6
7
  @use './mixins';
7
8
 
8
9
  @include mixins.core-styles;
@@ -22,6 +23,18 @@
22
23
  }
23
24
  }
24
25
 
26
+ :host([no-padding]) {
27
+ .forge-toolbar {
28
+ @include theme.css-custom-property(padding-inline, --forge-toolbar-padding, 0);
29
+ }
30
+ }
31
+
32
+ :host([auto-height]) {
33
+ .forge-toolbar {
34
+ @include theme.css-custom-property(height, --forge-toolbar-height, auto);
35
+ }
36
+ }
37
+
25
38
  /// Remove margin from all commonly used native elements that have default margin
26
39
  .forge-toolbar {
27
40
  ::slotted(h1) { margin: 0; }
@@ -1,7 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright 2023 Tyler Technologies, Inc.
4
- * License: Apache-2.0
5
- */
6
- import{g as d}from"./chunk.G76HB2FK.js";var M=/^([\+-]?\d{4}(?!\d{2}\b))((-?)((0[1-9]|1[0-2])(\3([12]\d|0[1-9]|3[01]))?|W([0-4]\d|5[0-2])(-?[1-7])?|(00[1-9]|0[1-9]\d|[12]\d{2}|3([0-5]\d|6[1-6])))([T\s]((([01]\d|2[0-3])((:?)[0-5]\d)?|24\:?00)([\.,]\d+(?!:))?)?(\17[0-5]\d([\.,]\d+)?)?([zZ]|([\+-])([01]\d|2[0-3]):?([0-5]\d)?)?)?)?$/,b=/a-z/i,h=10;function T(t){if(t=t.replace(/_|\s/g,""),M.test(t)){let f=new Date(t);if(b.test(t)||f.setMinutes(f.getMinutes()+f.getTimezoneOffset()),d(f))return f}let e=[];t.indexOf("/")!==-1?e=t.split("/"):t.indexOf("-")!==-1?e=t.split("-"):(t.length===6||t.length===8)&&!isNaN(+t)&&(e=[t.substring(0,2),t.substring(2,4),t.substring(4)]);let i=e.length===3,[n,s,r]=e;if(n==="0"&&(n="1"),s==="0"&&(s="1"),typeof r=="string"&&r.length===3&&(r=r.padEnd(4,"0")),i){let f=n.length===1||n.length===2,u=s.length===1||s.length===2,g=r.length===2||r.length===4;if(!f||!u||!g)return null}else return null;if(r.length===2){let f=new Date().getFullYear()-(100-h),u=new Date().getFullYear()+h,g=String(f).slice(0,2),x=String(u).slice(0,2),D=+String(u).slice(2);r=+r<=D?`${x}${r}`:`${g}${r}`}let a=+n,o=+s,l=+r;a>12&&(a=12);let c=new Date(l,a,0).getDate();o>c&&(o=c);let m=new Date(l,a-1,o,0,0,0,0);return d(m)?m:null}function y(t){let e=String(t.getMonth()+1).padStart(2,"0"),i=String(t.getDate()).padStart(2,"0"),n=t.getFullYear();return[e,i,n].join("/")}function C(t,e){return!t&&!e?!0:!t||!e||!d(t)||!d(e)?!1:t.setHours(0,0,0,0)===e.setHours(0,0,0,0)}function A(t,e){return new Date(e!=null?e:1970,t+1,0)}function L(t,e){return A(t,e).getDate()}function w(t,e){let i=document.createElement("div");i.innerHTML=t;for(let s=i.childNodes.length-1;s>=0;s--)i.childNodes[s].nodeName.toLowerCase()!=="svg"&&i.removeChild(i.childNodes[s]);let n=i.firstElementChild;return n&&n.nodeName.toLowerCase()==="svg"&&p(n)?(e&&n.setAttribute("viewBox",e),!n.hasAttribute("viewBox")&&e&&n.setAttribute("viewBox",e),n.removeAttribute("height"),n.removeAttribute("width"),n):null}function p(t){if(t.nodeType!==1)return!0;if(t.nodeName.toLowerCase()==="script")return!1;let e=Array.from(t.attributes);for(let n of e)if(typeof n.name=="string"&&n.name.toLowerCase().startsWith("on"))return!1;let i=Array.from(t.childNodes);for(let n of i)if(!p(n))return!1;return!0}var E=/^(0?[0-9]|1\d|2[0-3]):([0-5]\d)(:([0-5]\d))?$/,S=/^(0?[1-9]|1[0-2]):([0-5]\d)(:([0-5]\d))?\s*([AaPp][Mm])?$/,_=/^(\d\d?):?(\d\d?)(:?(\d?\d?))?\s*([AaPp][Mm]?)?$/;function Y(t){let e=t.match(E)||[null,0,0,null,0],i=e[1],n=e[2],s=e[4];return{hours:i,minutes:n,seconds:s}}function $(t){let e=t.match(S)||[null,0,0,null,0,"AM"],i=e[1],n=e[2],s=e[4],r=e[5];return{hours:i,minutes:n,seconds:s,meridiem:r}}function F(t){return E.test(t)||S.test(t)}function G(t,e,i){if(t=t&&typeof t=="string"?t.replace(/_|\s/g,""):"",/^\s*$/.test(t))return"";let n=t.match(_);if(!n)return"";let s=n[1],r=n[2],a=n[4],o=n[5];e?o="":/[AaPp][Mm]/.test(o)?o=o.toUpperCase():/^[AaPp]/.test(o)?o.toLowerCase().startsWith("a")?o="AM":o.toLowerCase().startsWith("p")&&(o="PM"):o="";let l=+s||0,c=+r||0,m=!o||e?23:12;if(l>=m?s=String(m):l<0&&(s="00"),r!==void 0&&(c>59?r="59":c<0?r="00":r=r.padStart(2,"0")),a!==void 0){let u=+a||0;u>59?a="59":u<0?a="00":a=a.padStart(2,"0")}let f=s;return r!==void 0&&(f+=`:${r}`,a===void 0&&i&&(a="00")),a!==void 0&&(f+=`:${a}`),o&&(f+=` ${o}`),f}export{M as a,b,T as c,y as d,C as e,A as f,L as g,w as h,p as i,E as j,S as k,_ as l,Y as m,$ as n,F as o,G as p};
7
- //# sourceMappingURL=chunk.3MP6OFVU.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../src/core/utils/date-utils.ts", "../../src/core/utils/svg-utils.ts", "../../src/core/utils/time-utils.ts"],
4
- "sourcesContent": ["import { isValidDate } from '@tylertech/forge-core';\n\nexport const ISO_8601_REGEX = /^([\\+-]?\\d{4}(?!\\d{2}\\b))((-?)((0[1-9]|1[0-2])(\\3([12]\\d|0[1-9]|3[01]))?|W([0-4]\\d|5[0-2])(-?[1-7])?|(00[1-9]|0[1-9]\\d|[12]\\d{2}|3([0-5]\\d|6[1-6])))([T\\s]((([01]\\d|2[0-3])((:?)[0-5]\\d)?|24\\:?00)([\\.,]\\d+(?!:))?)?(\\17[0-5]\\d([\\.,]\\d+)?)?([zZ]|([\\+-])([01]\\d|2[0-3]):?([0-5]\\d)?)?)?)?$/;\nexport const ISO_TIMEZONE_REGEX = /a-z/i;\nconst FUTURE_YEAR_COERCION = 10; // The number of years in the future to coerce two-digit years into current century\n\n/**\n * Parses a date string value to a `Date` object in local time.\n * @param str The date string value.\n */\nexport function parseDateString(value: string): Date | null {\n value = value.replace(/_|\\s/g, ''); // Remove potential extraneous characters\n\n // We first check if this is a valid date in ISO 8601 format and return it if so\n if (ISO_8601_REGEX.test(value)) {\n const iso8601Date = new Date(value);\n\n // This is an ISO string, but does it have a timezone? If not, we add current timezone offset\n if (!ISO_TIMEZONE_REGEX.test(value)) {\n iso8601Date.setMinutes(iso8601Date.getMinutes() + iso8601Date.getTimezoneOffset());\n }\n\n if (isValidDate(iso8601Date)) {\n return iso8601Date;\n }\n }\n\n let values: string[] = [];\n\n // We accept dates with a \"/\" or \"-\" separator and in the format of MM/DD/YYYY\n if (value.indexOf('/') !== -1) {\n values = value.split('/');\n } else if (value.indexOf('-') !== -1) {\n values = value.split('-');\n } else if ((value.length === 6 || value.length === 8) && !isNaN(+value)) {\n values = [value.substring(0, 2), value.substring(2, 4), value.substring(4)];\n }\n\n const hasMonthDayYear = values.length === 3;\n let [month, day, year] = values;\n\n // Ensure are month and year values are coerced from 0 to 1 in case of incomplete entry\n if (month === '0') {\n month = '1';\n }\n if (day === '0') {\n day = '1';\n }\n\n // Trap for the case where only 3 digit years are entered\n if (typeof year === 'string' && year.length === 3) {\n year = year.padEnd(4, '0');\n }\n \n if (hasMonthDayYear) {\n const isValidMonthLength = month.length === 1 || month.length === 2;\n const isValidDayLength = day.length === 1 || day.length === 2;\n const isValidYearLength = year.length === 2 || year.length === 4;\n\n if (!isValidMonthLength || !isValidDayLength || !isValidYearLength) {\n return null;\n }\n } else {\n return null;\n }\n\n // Check if we need to coerce two-digit years to the four-digit equivalent\n if (year.length === 2) {\n const minYear = new Date().getFullYear() - (100 - FUTURE_YEAR_COERCION);\n const maxYear = new Date().getFullYear() + FUTURE_YEAR_COERCION;\n const minYearCentury = String(minYear).slice(0, 2);\n const maxYearCentury = String(maxYear).slice(0, 2);\n const normalizedMaxYear = +String(maxYear).slice(2);\n year = +year <= normalizedMaxYear ? `${maxYearCentury}${year}` : `${minYearCentury}${year}`;\n }\n\n let numMonth = +month;\n let numDay = +day;\n const numYear = +year;\n\n if (numMonth > 12) {\n numMonth = 12;\n }\n\n const maxDaysInMonth = new Date(numYear, numMonth, 0).getDate();\n\n if (numDay > maxDaysInMonth) {\n numDay = maxDaysInMonth;\n }\n\n const parsedDate = new Date(numYear, numMonth - 1, numDay, 0, 0, 0, 0);\n return isValidDate(parsedDate) ? parsedDate : null;\n}\n\n/**\n * Formats a `Date` to a specified format.\n * @param str The date string value.\n */\nexport function formatDate(date: Date): string {\n const month = String(date.getMonth() + 1).padStart(2, '0');\n const day = String(date.getDate()).padStart(2, '0');\n const year = date.getFullYear();\n return [month, day, year].join('/');\n}\n\n/**\n * Determines if two date objects are equal.\n * \n * Note: Time values are ignored.\n * @param first The date to compare.\n * @param second The date to compare the first date to. \n * @returns A boolean whether the two dates are equivalent.\n */\nexport function isSameDate(first?: Date | null, second?: Date | null): boolean {\n if (!first && !second) {\n return true;\n } else if (!first || !second) {\n return false;\n } else if (!isValidDate(first) || !isValidDate(second)) {\n return false;\n }\n return first.setHours(0, 0, 0, 0) === second.setHours(0, 0, 0, 0);\n}\n\n/** \n * Returns the last date on a month.\n * \n * @param month The month.\n * @param year The year of the month, needed for February otherwise optional.\n * @returns The last date of the given month.\n */\nexport function getLastDateOfMonth(month: number, year?: number): Date {\n return new Date(year ?? 1970, month + 1, 0);\n}\n\n/**\n * Returns the number of days in a month.\n * \n * @param month The month to find the length of.\n * @param year The year to check within, needed for February otherwise optional.\n * @returns The number of days in the month.\n */\nexport function getMonthLength(month: number, year?: number): number {\n return getLastDateOfMonth(month, year).getDate();\n}\n", "/**\n * Creates an SVG element from a string.\n */\nexport function createSvgFromString(svgContent: string, defaultViewBox?: string): SVGSVGElement | null {\n const div = document.createElement('div');\n div.innerHTML = svgContent;\n\n // Remove all non-svg child nodes\n for (let i = div.childNodes.length - 1; i >= 0; i--) {\n if (div.childNodes[i].nodeName.toLowerCase() !== 'svg') {\n div.removeChild(div.childNodes[i]);\n }\n }\n\n const svgElm = div.firstElementChild as SVGSVGElement;\n if (svgElm && svgElm.nodeName.toLowerCase() === 'svg' && isSafeSvg(svgElm)) {\n // Check if a custom viewbox value was provided and use that if so\n if (defaultViewBox) {\n svgElm.setAttribute('viewBox', defaultViewBox);\n }\n\n // Force a default viewBox if one doesn't exist (this ensures our icon is scalable)\n if (!svgElm.hasAttribute('viewBox') && defaultViewBox) {\n svgElm.setAttribute('viewBox', defaultViewBox);\n }\n\n // Remove any height and width attributes to ensure that the icon is properly scalable\n svgElm.removeAttribute('height');\n svgElm.removeAttribute('width');\n\n return svgElm;\n }\n\n return null;\n}\n\n/**\n * Determines if the provided element is a safe SVG to use.\n * @param el The element reference to test.\n */\nexport function isSafeSvg(el: Element): boolean {\n if (el.nodeType !== 1) {\n return true;\n }\n\n // Validate no <script> tags exist\n if (el.nodeName.toLowerCase() === 'script') {\n return false;\n }\n\n // Ensure there are no inline listeners\n const attributes = Array.from(el.attributes);\n for (const attr of attributes) {\n if (typeof attr.name === 'string' && attr.name.toLowerCase().startsWith('on')) {\n return false;\n }\n }\n\n // Ensure all child nodes are valid\n const childNodes = Array.from(el.childNodes) as Element[];\n for (const node of childNodes) {\n if (!isSafeSvg(node)) {\n return false;\n }\n }\n\n return true;\n}\n", "export const TWENTY_FOUR_HOUR_TIME_REGEX = /^(0?[0-9]|1\\d|2[0-3]):([0-5]\\d)(:([0-5]\\d))?$/;\nexport const TWELVE_HOUR_TIME_REGEX = /^(0?[1-9]|1[0-2]):([0-5]\\d)(:([0-5]\\d))?\\s*([AaPp][Mm])?$/;\nexport const PARSEABLE_TIME_FORMAT = /^(\\d\\d?):?(\\d\\d?)(:?(\\d?\\d?))?\\s*([AaPp][Mm]?)?$/;\n\nexport function tokenize24HourTimeString(value: string): { hours: string; minutes: string; seconds: string } {\n const matches = value.match(TWENTY_FOUR_HOUR_TIME_REGEX) as RegExpMatchArray || [null, 0, 0, null, 0];\n const hours = matches[1];\n const minutes = matches[2];\n const seconds = matches[4];\n return { hours, minutes, seconds };\n}\n\nexport function tokenize12HourTimeString(value: string): { hours: string; minutes: string; seconds: string; meridiem: string } {\n const matches = value.match(TWELVE_HOUR_TIME_REGEX) as RegExpMatchArray || [null, 0, 0, null, 0, 'AM'];\n const hours = matches[1];\n const minutes = matches[2];\n const seconds = matches[4];\n const meridiem = matches[5];\n return { hours, minutes, seconds, meridiem };\n}\n\nexport function isSupportedTimeFormat(value: string): boolean {\n return TWENTY_FOUR_HOUR_TIME_REGEX.test(value) ||\n TWELVE_HOUR_TIME_REGEX.test(value);\n}\n\nexport function tryCoerceTimeString(str: string, use24HourTime: boolean, allowSeconds: boolean): string {\n str = str && typeof str === 'string' ? str.replace(/_|\\s/g, '') : '';\n if (/^\\s*$/.test(str)) {\n return '';\n }\n\n const matches = str.match(PARSEABLE_TIME_FORMAT);\n if (!matches) {\n return '';\n }\n\n let hoursStr = matches[1];\n let minutesStr = matches[2];\n let secondsStr = matches[4];\n let meridiem = matches[5];\n\n // Normalize the meridiem string\n if (use24HourTime) {\n meridiem = '';\n } else if (/[AaPp][Mm]/.test(meridiem)) {\n meridiem = meridiem.toUpperCase();\n } else {\n if (/^[AaPp]/.test(meridiem)) {\n if (meridiem.toLowerCase().startsWith('a')) {\n meridiem = 'AM';\n } else if (meridiem.toLowerCase().startsWith('p')) {\n meridiem = 'PM';\n }\n } else {\n meridiem = '';\n }\n }\n\n const hoursNum = +hoursStr || 0;\n const minutesNum = +minutesStr || 0;\n\n // Clamp and normalize hours\n const maxHours = !meridiem || use24HourTime ? 23 : 12;\n if (hoursNum >= maxHours) {\n hoursStr = String(maxHours);\n } else if (hoursNum < 0) {\n hoursStr = '00';\n }\n\n // Clamp and normalize minutes\n if (minutesStr !== undefined) {\n if (minutesNum > 59) {\n minutesStr = '59';\n } else if (minutesNum < 0) {\n minutesStr = '00';\n } else {\n minutesStr = minutesStr.padStart(2, '0');\n }\n }\n\n // Clamp and normalize seconds (if applicable)\n if (secondsStr !== undefined) {\n const secondsNum = +secondsStr || 0;\n if (secondsNum > 59) {\n secondsStr = '59';\n } else if (secondsNum < 0) {\n secondsStr = '00';\n } else {\n secondsStr = secondsStr.padStart(2, '0');\n }\n }\n\n // Build resulting time string\n let timeStr = hoursStr;\n if (minutesStr !== undefined) {\n timeStr += `:${minutesStr}`;\n if (secondsStr === undefined && allowSeconds) {\n secondsStr = '00';\n }\n }\n if (secondsStr !== undefined) {\n timeStr += `:${secondsStr}`;\n }\n if (meridiem) {\n timeStr += ` ${meridiem}`;\n }\n\n return timeStr;\n}\n"],
5
- "mappings": "wCAEO,GAAM,GAAiB,8RACjB,EAAqB,OAC5B,EAAuB,GAMtB,WAAyB,EAA4B,CAI1D,GAHA,EAAQ,EAAM,QAAQ,QAAS,EAAE,EAG7B,EAAe,KAAK,CAAK,EAAG,CAC9B,GAAM,GAAc,GAAI,MAAK,CAAK,EAOlC,GAJK,EAAmB,KAAK,CAAK,GAChC,EAAY,WAAW,EAAY,WAAW,EAAI,EAAY,kBAAkB,CAAC,EAG/E,EAAY,CAAW,EACzB,MAAO,EAEX,CAEA,GAAI,GAAmB,CAAC,EAGxB,AAAI,EAAM,QAAQ,GAAG,IAAM,GACzB,EAAS,EAAM,MAAM,GAAG,EACnB,AAAI,EAAM,QAAQ,GAAG,IAAM,GAChC,EAAS,EAAM,MAAM,GAAG,EACd,GAAM,SAAW,GAAK,EAAM,SAAW,IAAM,CAAC,MAAM,CAAC,CAAK,GACpE,GAAS,CAAC,EAAM,UAAU,EAAG,CAAC,EAAG,EAAM,UAAU,EAAG,CAAC,EAAG,EAAM,UAAU,CAAC,CAAC,GAG5E,GAAM,GAAkB,EAAO,SAAW,EACtC,CAAC,EAAO,EAAK,GAAQ,EAezB,GAZI,IAAU,KACZ,GAAQ,KAEN,IAAQ,KACV,GAAM,KAIJ,MAAO,IAAS,UAAY,EAAK,SAAW,GAC9C,GAAO,EAAK,OAAO,EAAG,GAAG,GAGvB,EAAiB,CACnB,GAAM,GAAqB,EAAM,SAAW,GAAK,EAAM,SAAW,EAC5D,EAAmB,EAAI,SAAW,GAAK,EAAI,SAAW,EACtD,EAAoB,EAAK,SAAW,GAAK,EAAK,SAAW,EAE/D,GAAI,CAAC,GAAsB,CAAC,GAAoB,CAAC,EAC/C,MAAO,KAEX,KACE,OAAO,MAIT,GAAI,EAAK,SAAW,EAAG,CACrB,GAAM,GAAU,GAAI,MAAK,EAAE,YAAY,EAAK,KAAM,GAC5C,EAAU,GAAI,MAAK,EAAE,YAAY,EAAI,EACrC,EAAiB,OAAO,CAAO,EAAE,MAAM,EAAG,CAAC,EAC3C,EAAiB,OAAO,CAAO,EAAE,MAAM,EAAG,CAAC,EAC3C,EAAoB,CAAC,OAAO,CAAO,EAAE,MAAM,CAAC,EAClD,EAAO,CAAC,GAAQ,EAAoB,GAAG,IAAiB,IAAS,GAAG,IAAiB,GACvF,CAEA,GAAI,GAAW,CAAC,EACZ,EAAS,CAAC,EACR,EAAU,CAAC,EAEjB,AAAI,EAAW,IACb,GAAW,IAGb,GAAM,GAAiB,GAAI,MAAK,EAAS,EAAU,CAAC,EAAE,QAAQ,EAE9D,AAAI,EAAS,GACX,GAAS,GAGX,GAAM,GAAa,GAAI,MAAK,EAAS,EAAW,EAAG,EAAQ,EAAG,EAAG,EAAG,CAAC,EACrE,MAAO,GAAY,CAAU,EAAI,EAAa,IAChD,CAMO,WAAoB,EAAoB,CAC7C,GAAM,GAAQ,OAAO,EAAK,SAAS,EAAI,CAAC,EAAE,SAAS,EAAG,GAAG,EACnD,EAAM,OAAO,EAAK,QAAQ,CAAC,EAAE,SAAS,EAAG,GAAG,EAC5C,EAAO,EAAK,YAAY,EAC9B,MAAO,CAAC,EAAO,EAAK,CAAI,EAAE,KAAK,GAAG,CACpC,CAUO,WAAoB,EAAqB,EAA+B,CAC7E,MAAI,CAAC,GAAS,CAAC,EACN,GACE,CAAC,GAAS,CAAC,GAEX,CAAC,EAAY,CAAK,GAAK,CAAC,EAAY,CAAM,EAD5C,GAIF,EAAM,SAAS,EAAG,EAAG,EAAG,CAAC,IAAM,EAAO,SAAS,EAAG,EAAG,EAAG,CAAC,CAClE,CASO,WAA4B,EAAe,EAAqB,CACrE,MAAO,IAAI,MAAK,UAAQ,KAAM,EAAQ,EAAG,CAAC,CAC5C,CASO,WAAwB,EAAe,EAAuB,CACnE,MAAO,GAAmB,EAAO,CAAI,EAAE,QAAQ,CACjD,CC7IO,WAA6B,EAAoB,EAA+C,CACrG,GAAM,GAAM,SAAS,cAAc,KAAK,EACxC,EAAI,UAAY,EAGhB,OAAS,GAAI,EAAI,WAAW,OAAS,EAAG,GAAK,EAAG,IAC9C,AAAI,EAAI,WAAW,GAAG,SAAS,YAAY,IAAM,OAC/C,EAAI,YAAY,EAAI,WAAW,EAAE,EAIrC,GAAM,GAAS,EAAI,kBACnB,MAAI,IAAU,EAAO,SAAS,YAAY,IAAM,OAAS,EAAU,CAAM,EAEnE,IACF,EAAO,aAAa,UAAW,CAAc,EAI3C,CAAC,EAAO,aAAa,SAAS,GAAK,GACrC,EAAO,aAAa,UAAW,CAAc,EAI/C,EAAO,gBAAgB,QAAQ,EAC/B,EAAO,gBAAgB,OAAO,EAEvB,GAGF,IACT,CAMO,WAAmB,EAAsB,CAC9C,GAAI,EAAG,WAAa,EAClB,MAAO,GAIT,GAAI,EAAG,SAAS,YAAY,IAAM,SAChC,MAAO,GAIT,GAAM,GAAa,MAAM,KAAK,EAAG,UAAU,EAC3C,OAAW,KAAQ,GACjB,GAAI,MAAO,GAAK,MAAS,UAAY,EAAK,KAAK,YAAY,EAAE,WAAW,IAAI,EAC1E,MAAO,GAKX,GAAM,GAAa,MAAM,KAAK,EAAG,UAAU,EAC3C,OAAW,KAAQ,GACjB,GAAI,CAAC,EAAU,CAAI,EACjB,MAAO,GAIX,MAAO,EACT,CCnEO,GAAM,GAA8B,gDAC9B,EAAyB,4DACzB,EAAwB,mDAE9B,WAAkC,EAAoE,CAC3G,GAAM,GAAU,EAAM,MAAM,CAA2B,GAAyB,CAAC,KAAM,EAAG,EAAG,KAAM,CAAC,EAC9F,EAAQ,EAAQ,GAChB,EAAU,EAAQ,GAClB,EAAU,EAAQ,GACxB,MAAO,CAAE,QAAO,UAAS,SAAQ,CACnC,CAEO,WAAkC,EAAsF,CAC7H,GAAM,GAAU,EAAM,MAAM,CAAsB,GAAyB,CAAC,KAAM,EAAG,EAAG,KAAM,EAAG,IAAI,EAC/F,EAAQ,EAAQ,GAChB,EAAU,EAAQ,GAClB,EAAU,EAAQ,GAClB,EAAW,EAAQ,GACzB,MAAO,CAAE,QAAO,UAAS,UAAS,UAAS,CAC7C,CAEO,WAA+B,EAAwB,CAC5D,MAAO,GAA4B,KAAK,CAAK,GACtC,EAAuB,KAAK,CAAK,CAC1C,CAEO,WAA6B,EAAa,EAAwB,EAA+B,CAEtG,GADA,EAAM,GAAO,MAAO,IAAQ,SAAW,EAAI,QAAQ,QAAS,EAAE,EAAI,GAC9D,QAAQ,KAAK,CAAG,EAClB,MAAO,GAGT,GAAM,GAAU,EAAI,MAAM,CAAqB,EAC/C,GAAI,CAAC,EACH,MAAO,GAGT,GAAI,GAAW,EAAQ,GACnB,EAAa,EAAQ,GACrB,EAAa,EAAQ,GACrB,EAAW,EAAQ,GAGvB,AAAI,EACF,EAAW,GACN,AAAI,aAAa,KAAK,CAAQ,EACnC,EAAW,EAAS,YAAY,EAEhC,AAAI,UAAU,KAAK,CAAQ,EACzB,AAAI,EAAS,YAAY,EAAE,WAAW,GAAG,EACvC,EAAW,KACF,EAAS,YAAY,EAAE,WAAW,GAAG,GAC9C,GAAW,MAGb,EAAW,GAIf,GAAM,GAAW,CAAC,GAAY,EACxB,EAAa,CAAC,GAAc,EAG5B,EAAW,CAAC,GAAY,EAAgB,GAAK,GAmBnD,GAlBA,AAAI,GAAY,EACd,EAAW,OAAO,CAAQ,EACjB,EAAW,GACpB,GAAW,MAIT,IAAe,QACjB,CAAI,EAAa,GACf,EAAa,KACR,AAAI,EAAa,EACtB,EAAa,KAEb,EAAa,EAAW,SAAS,EAAG,GAAG,GAKvC,IAAe,OAAW,CAC5B,GAAM,GAAa,CAAC,GAAc,EAClC,AAAI,EAAa,GACf,EAAa,KACR,AAAI,EAAa,EACtB,EAAa,KAEb,EAAa,EAAW,SAAS,EAAG,GAAG,CAE3C,CAGA,GAAI,GAAU,EACd,MAAI,KAAe,QACjB,IAAW,IAAI,IACX,IAAe,QAAa,GAC9B,GAAa,OAGb,IAAe,QACjB,IAAW,IAAI,KAEb,GACF,IAAW,IAAI,KAGV,CACT",
6
- "names": []
7
- }