@tylertech/forge 3.0.0-next.7 → 3.0.0-next.9

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 (359) hide show
  1. package/custom-elements.json +7530 -4847
  2. package/dist/button/forge-button.css +1 -1
  3. package/dist/esm/accordion/index.js +1 -1
  4. package/dist/esm/app-bar/help-button/index.js +1 -1
  5. package/dist/esm/app-bar/index.js +1 -1
  6. package/dist/esm/app-bar/menu-button/index.js +1 -1
  7. package/dist/esm/app-bar/notification-button/index.js +1 -1
  8. package/dist/esm/app-bar/profile-button/index.js +1 -1
  9. package/dist/esm/app-bar/search/index.js +1 -1
  10. package/dist/esm/autocomplete/index.js +1 -1
  11. package/dist/esm/banner/index.js +1 -1
  12. package/dist/esm/bottom-sheet/index.js +1 -1
  13. package/dist/esm/busy-indicator/index.js +1 -1
  14. package/dist/esm/button/index.js +1 -1
  15. package/dist/esm/button-toggle/button-toggle/index.js +1 -1
  16. package/dist/esm/button-toggle/button-toggle-group/index.js +1 -1
  17. package/dist/esm/button-toggle/index.js +1 -1
  18. package/dist/esm/calendar/calendar-dropdown/index.js +1 -1
  19. package/dist/esm/calendar/calendar-menu/index.js +1 -1
  20. package/dist/esm/calendar/index.js +1 -1
  21. package/dist/esm/card/index.js +1 -1
  22. package/dist/esm/checkbox/index.js +1 -1
  23. package/dist/esm/chip-field/index.js +1 -1
  24. package/dist/esm/chips/chip/index.js +1 -1
  25. package/dist/esm/chips/chip-set/index.js +1 -1
  26. package/dist/esm/chips/index.js +1 -1
  27. package/dist/esm/chunks/{chunk.PPPTT3SM.js → chunk.2VP57RZO.js} +2 -2
  28. package/dist/esm/chunks/{chunk.PPPTT3SM.js.map → chunk.2VP57RZO.js.map} +2 -2
  29. package/dist/esm/chunks/{chunk.TXFYS6EU.js → chunk.33EJTOVA.js} +2 -2
  30. package/dist/esm/chunks/{chunk.OTVT3XM2.js → chunk.3JDFBEF7.js} +2 -2
  31. package/dist/esm/chunks/chunk.3ME47JIX.js +7 -0
  32. package/dist/esm/chunks/chunk.3ME47JIX.js.map +7 -0
  33. package/dist/esm/chunks/{chunk.V6JVHYVW.js → chunk.44UCSD46.js} +2 -2
  34. package/dist/esm/chunks/{chunk.EUE3OVC7.js → chunk.4WVHON6T.js} +2 -2
  35. package/dist/esm/chunks/chunk.4WVHON6T.js.map +7 -0
  36. package/dist/esm/chunks/{chunk.6SBTLXLH.js → chunk.5IQGVS6U.js} +2 -2
  37. package/dist/esm/chunks/{chunk.6SBTLXLH.js.map → chunk.5IQGVS6U.js.map} +1 -1
  38. package/dist/esm/chunks/{chunk.7JQHQKXN.js → chunk.6MPXRRMB.js} +2 -2
  39. package/dist/esm/chunks/{chunk.MXNLCQRB.js → chunk.6VDF54LZ.js} +2 -2
  40. package/dist/esm/chunks/{chunk.GF2GUVYS.js → chunk.7TGGJGTG.js} +2 -2
  41. package/dist/esm/chunks/{chunk.GF2GUVYS.js.map → chunk.7TGGJGTG.js.map} +1 -1
  42. package/dist/esm/chunks/{chunk.4EB5NVCK.js → chunk.AHHNJSZK.js} +2 -2
  43. package/dist/esm/chunks/chunk.BBKRPL6R.js +7 -0
  44. package/dist/esm/chunks/chunk.BBKRPL6R.js.map +7 -0
  45. package/dist/esm/chunks/{chunk.BSTIDYQJ.js → chunk.BBWMSCVG.js} +2 -2
  46. package/dist/esm/chunks/{chunk.BKCEVPKW.js → chunk.BDCJIRNK.js} +2 -2
  47. package/dist/esm/chunks/chunk.BSVFCJCQ.js +7 -0
  48. package/dist/esm/chunks/chunk.BSVFCJCQ.js.map +7 -0
  49. package/dist/esm/chunks/chunk.CAUWWFF4.js +7 -0
  50. package/dist/esm/chunks/chunk.CAUWWFF4.js.map +7 -0
  51. package/dist/esm/chunks/{chunk.SYZB7B4F.js → chunk.CL65KLH7.js} +2 -2
  52. package/dist/esm/chunks/{chunk.4LVS2EYJ.js → chunk.DFGBVJBE.js} +2 -2
  53. package/dist/esm/chunks/chunk.DXZ5LVFJ.js +7 -0
  54. package/dist/esm/chunks/chunk.DXZ5LVFJ.js.map +7 -0
  55. package/dist/esm/chunks/{chunk.YUAU5IWT.js → chunk.F776DWXU.js} +2 -2
  56. package/dist/esm/chunks/{chunk.HKJEGD6C.js → chunk.FIBGOPNP.js} +2 -2
  57. package/dist/esm/chunks/{chunk.HKJEGD6C.js.map → chunk.FIBGOPNP.js.map} +1 -1
  58. package/dist/esm/chunks/{chunk.OHNPVHPF.js → chunk.GEGK55XX.js} +2 -2
  59. package/dist/esm/chunks/{chunk.OHNPVHPF.js.map → chunk.GEGK55XX.js.map} +2 -2
  60. package/dist/esm/chunks/{chunk.2QFIMTVP.js → chunk.GT3XBPZY.js} +2 -2
  61. package/dist/esm/chunks/{chunk.OT6H5NHX.js → chunk.HUGRRRQA.js} +2 -2
  62. package/dist/esm/chunks/{chunk.GJW4WS4I.js → chunk.HXJCTE47.js} +2 -2
  63. package/dist/esm/chunks/{chunk.RHYRMQS7.js → chunk.IPGZ24EH.js} +2 -2
  64. package/dist/esm/chunks/{chunk.RHYRMQS7.js.map → chunk.IPGZ24EH.js.map} +1 -1
  65. package/dist/esm/chunks/chunk.ISC7SZSP.js +7 -0
  66. package/dist/esm/chunks/chunk.ISC7SZSP.js.map +7 -0
  67. package/dist/esm/chunks/{chunk.RUSHOL23.js → chunk.JAAJDT5E.js} +2 -2
  68. package/dist/esm/chunks/{chunk.SIJGKRYS.js → chunk.JCRC2VEI.js} +2 -2
  69. package/dist/esm/chunks/{chunk.SIJGKRYS.js.map → chunk.JCRC2VEI.js.map} +1 -1
  70. package/dist/esm/chunks/{chunk.STGRPD2L.js → chunk.JFKSREWG.js} +2 -2
  71. package/dist/esm/chunks/{chunk.STGRPD2L.js.map → chunk.JFKSREWG.js.map} +1 -1
  72. package/dist/esm/chunks/{chunk.FAANPQES.js → chunk.JL4XB4RI.js} +2 -2
  73. package/dist/esm/chunks/{chunk.24L5GDD2.js → chunk.JTIPXKV6.js} +2 -2
  74. package/dist/esm/chunks/{chunk.24L5GDD2.js.map → chunk.JTIPXKV6.js.map} +2 -2
  75. package/dist/esm/chunks/chunk.KO45GDOA.js +7 -0
  76. package/dist/esm/chunks/{chunk.2CTK5R37.js.map → chunk.KO45GDOA.js.map} +2 -2
  77. package/dist/esm/chunks/chunk.KSCUIS5C.js +7 -0
  78. package/dist/esm/chunks/chunk.KSCUIS5C.js.map +7 -0
  79. package/dist/esm/chunks/{chunk.2LRDPTHK.js → chunk.M2M47T4L.js} +2 -2
  80. package/dist/esm/chunks/{chunk.JVW6JGV3.js → chunk.MGWY7YIL.js} +2 -2
  81. package/dist/esm/chunks/{chunk.JVW6JGV3.js.map → chunk.MGWY7YIL.js.map} +2 -2
  82. package/dist/esm/chunks/{chunk.3CBVRCKM.js → chunk.MJSLXZBM.js} +2 -2
  83. package/dist/esm/chunks/{chunk.3CBVRCKM.js.map → chunk.MJSLXZBM.js.map} +1 -1
  84. package/dist/esm/chunks/{chunk.2YAU7AXH.js → chunk.N7PQ2MUQ.js} +2 -2
  85. package/dist/esm/chunks/{chunk.2YAU7AXH.js.map → chunk.N7PQ2MUQ.js.map} +1 -1
  86. package/dist/esm/chunks/{chunk.XMFQFFKR.js → chunk.NE4NCRRZ.js} +2 -2
  87. package/dist/esm/chunks/chunk.NF4J3Q5X.js +7 -0
  88. package/dist/esm/chunks/chunk.NF4J3Q5X.js.map +7 -0
  89. package/dist/esm/chunks/chunk.OEYALYRM.js +7 -0
  90. package/dist/esm/chunks/chunk.OEYALYRM.js.map +7 -0
  91. package/dist/esm/chunks/{chunk.GHSAKRYH.js → chunk.OKKH7F7M.js} +2 -2
  92. package/dist/esm/chunks/{chunk.AGMPIMJV.js → chunk.QL45FKVJ.js} +2 -2
  93. package/dist/esm/chunks/{chunk.AGMPIMJV.js.map → chunk.QL45FKVJ.js.map} +2 -2
  94. package/dist/esm/chunks/chunk.QU76MOCS.js +12 -0
  95. package/dist/esm/chunks/chunk.QU76MOCS.js.map +7 -0
  96. package/dist/esm/chunks/{chunk.5PHLKON3.js → chunk.R5HZFOUK.js} +2 -2
  97. package/dist/esm/chunks/{chunk.5PHLKON3.js.map → chunk.R5HZFOUK.js.map} +2 -2
  98. package/dist/esm/chunks/chunk.SAXRW6GB.js +7 -0
  99. package/dist/esm/chunks/chunk.SAXRW6GB.js.map +7 -0
  100. package/dist/esm/chunks/{chunk.2IQGDFQS.js → chunk.SEP3L4QL.js} +2 -2
  101. package/dist/esm/chunks/{chunk.2IQGDFQS.js.map → chunk.SEP3L4QL.js.map} +1 -1
  102. package/dist/esm/chunks/{chunk.Z5TWWM7I.js → chunk.SN5LPTHH.js} +2 -2
  103. package/dist/esm/chunks/{chunk.Z5TWWM7I.js.map → chunk.SN5LPTHH.js.map} +1 -1
  104. package/dist/esm/chunks/{chunk.CNQESSA3.js → chunk.UKFJHDO7.js} +2 -2
  105. package/dist/esm/chunks/{chunk.IGK3VYZG.js → chunk.VI2GRQO3.js} +2 -2
  106. package/dist/esm/chunks/{chunk.A5MBSCSQ.js → chunk.VNOJO2PF.js} +2 -2
  107. package/dist/esm/chunks/chunk.W7PZTNZ4.js +7 -0
  108. package/dist/esm/chunks/chunk.W7PZTNZ4.js.map +7 -0
  109. package/dist/esm/chunks/chunk.WH6C36MO.js +7 -0
  110. package/dist/esm/chunks/chunk.WH6C36MO.js.map +7 -0
  111. package/dist/esm/chunks/{chunk.2YX7ASSX.js → chunk.WXN4S7CN.js} +2 -2
  112. package/dist/esm/chunks/{chunk.ER52NFXX.js → chunk.X5BG35YX.js} +2 -2
  113. package/dist/esm/chunks/{chunk.THPU5KBV.js → chunk.XRESQBNE.js} +2 -2
  114. package/dist/esm/chunks/{chunk.632OMHHN.js → chunk.YDY2IGBF.js} +2 -2
  115. package/dist/esm/chunks/{chunk.632OMHHN.js.map → chunk.YDY2IGBF.js.map} +1 -1
  116. package/dist/esm/chunks/{chunk.QYKO543K.js → chunk.YWCLKUK7.js} +2 -2
  117. package/dist/esm/chunks/{chunk.QA3NU7EN.js → chunk.Z4J4D5FD.js} +2 -2
  118. package/dist/esm/chunks/{chunk.QA3NU7EN.js.map → chunk.Z4J4D5FD.js.map} +1 -1
  119. package/dist/esm/chunks/{chunk.V4RBOYNH.js → chunk.ZTGPXIC2.js} +2 -2
  120. package/dist/esm/chunks/{chunk.V4RBOYNH.js.map → chunk.ZTGPXIC2.js.map} +1 -1
  121. package/dist/esm/circular-progress/index.js +1 -1
  122. package/dist/esm/color-picker/index.js +1 -1
  123. package/dist/esm/core/index.js +1 -1
  124. package/dist/esm/core/utils/index.js +1 -1
  125. package/dist/esm/date-picker/index.js +1 -1
  126. package/dist/esm/date-range-picker/index.js +1 -1
  127. package/dist/esm/expansion-panel/index.js +1 -1
  128. package/dist/esm/file-picker/index.js +1 -1
  129. package/dist/esm/focus-indicator/index.js +7 -0
  130. package/dist/esm/focus-indicator/index.js.map +7 -0
  131. package/dist/esm/icon/index.js +1 -1
  132. package/dist/esm/icon-button/index.js +1 -1
  133. package/dist/esm/index.js +1 -1
  134. package/dist/esm/list/index.js +1 -1
  135. package/dist/esm/list/list/index.js +1 -1
  136. package/dist/esm/list/list-item/index.js +1 -1
  137. package/dist/esm/list-dropdown/index.js +1 -1
  138. package/dist/esm/menu/index.js +1 -1
  139. package/dist/esm/open-icon/index.js +1 -1
  140. package/dist/esm/paginator/index.js +1 -1
  141. package/dist/esm/profile-card/index.js +1 -1
  142. package/dist/esm/quantity-field/index.js +1 -1
  143. package/dist/esm/radio/index.js +1 -1
  144. package/dist/esm/select/core/index.js +1 -1
  145. package/dist/esm/select/index.js +1 -1
  146. package/dist/esm/select/select/index.js +1 -1
  147. package/dist/esm/select/select-dropdown/index.js +1 -1
  148. package/dist/esm/slider/index.js +1 -1
  149. package/dist/esm/split-view/index.js +1 -1
  150. package/dist/esm/split-view/split-view/index.js +1 -1
  151. package/dist/esm/split-view/split-view-panel/index.js +1 -1
  152. package/dist/esm/state-layer/index.js +7 -0
  153. package/dist/esm/state-layer/index.js.map +7 -0
  154. package/dist/esm/stepper/index.js +1 -1
  155. package/dist/esm/stepper/step/index.js +1 -1
  156. package/dist/esm/stepper/stepper/index.js +1 -1
  157. package/dist/esm/switch/index.js +1 -1
  158. package/dist/esm/table/index.js +1 -1
  159. package/dist/esm/tabs/index.js +1 -1
  160. package/dist/esm/tabs/tab/index.js +1 -1
  161. package/dist/esm/tabs/tab-bar/index.js +1 -1
  162. package/dist/esm/text-field/index.js +1 -1
  163. package/dist/esm/time-picker/index.js +1 -1
  164. package/dist/esm/toast/index.js +1 -1
  165. package/dist/forge-dark.css +1 -1
  166. package/dist/forge.css +1 -1
  167. package/dist/icon-button/forge-icon-button.css +1 -1
  168. package/dist/table/forge-table.css +1 -1
  169. package/dist/theme/forge-theme.css +1 -1
  170. package/esm/app-bar/app-bar.js +1 -1
  171. package/esm/banner/banner.js +1 -1
  172. package/esm/bottom-sheet/bottom-sheet.js +1 -1
  173. package/esm/busy-indicator/busy-indicator.js +1 -1
  174. package/esm/button/button.d.ts +1 -0
  175. package/esm/button/button.js +8 -2
  176. package/esm/button-toggle/button-toggle/button-toggle.js +1 -1
  177. package/esm/calendar/calendar-menu/calendar-menu.js +1 -1
  178. package/esm/calendar/calendar.js +1 -1
  179. package/esm/card/card-constants.d.ts +2 -2
  180. package/esm/card/card-constants.js +2 -2
  181. package/esm/card/card.d.ts +19 -8
  182. package/esm/card/card.js +30 -21
  183. package/esm/checkbox/checkbox-adapter.d.ts +1 -0
  184. package/esm/checkbox/checkbox-adapter.js +9 -2
  185. package/esm/checkbox/checkbox.js +1 -1
  186. package/esm/chip-field/chip-field.js +1 -1
  187. package/esm/chips/chip/chip.js +1 -1
  188. package/esm/circular-progress/circular-progress.d.ts +3 -3
  189. package/esm/circular-progress/circular-progress.js +4 -4
  190. package/esm/color-picker/color-picker.js +1 -1
  191. package/esm/core/testing/pointer.d.ts +13 -0
  192. package/esm/core/testing/pointer.js +42 -0
  193. package/esm/core/utils/utils.d.ts +16 -2
  194. package/esm/core/utils/utils.js +47 -6
  195. package/esm/file-picker/file-picker.js +1 -1
  196. package/esm/focus-indicator/focus-indicator-adapter.d.ts +29 -0
  197. package/esm/focus-indicator/focus-indicator-adapter.js +39 -0
  198. package/esm/focus-indicator/focus-indicator-constants.d.ts +15 -0
  199. package/esm/focus-indicator/focus-indicator-constants.js +19 -0
  200. package/esm/focus-indicator/focus-indicator-foundation.d.ts +43 -0
  201. package/esm/focus-indicator/focus-indicator-foundation.js +110 -0
  202. package/esm/focus-indicator/focus-indicator.d.ts +67 -0
  203. package/esm/focus-indicator/focus-indicator.js +112 -0
  204. package/esm/focus-indicator/index.d.ts +10 -0
  205. package/esm/focus-indicator/index.js +14 -0
  206. package/esm/icon-button/icon-button.d.ts +1 -0
  207. package/esm/icon-button/icon-button.js +9 -2
  208. package/esm/index.d.ts +2 -0
  209. package/esm/index.js +6 -0
  210. package/esm/list/list-item/list-item-adapter.d.ts +3 -3
  211. package/esm/list/list-item/list-item-adapter.js +2 -2
  212. package/esm/list/list-item/list-item-foundation.d.ts +1 -0
  213. package/esm/list/list-item/list-item-foundation.js +8 -1
  214. package/esm/list/list-item/list-item.js +1 -1
  215. package/esm/paginator/paginator.js +1 -1
  216. package/esm/profile-card/profile-card.js +1 -1
  217. package/esm/radio/radio-adapter.d.ts +1 -0
  218. package/esm/radio/radio-adapter.js +9 -2
  219. package/esm/select/select/select.js +1 -1
  220. package/esm/slider/slider-adapter.d.ts +0 -16
  221. package/esm/slider/slider-adapter.js +11 -71
  222. package/esm/slider/slider-constants.d.ts +0 -3
  223. package/esm/slider/slider-constants.js +0 -3
  224. package/esm/slider/slider-foundation.d.ts +0 -1
  225. package/esm/slider/slider-foundation.js +0 -6
  226. package/esm/slider/slider-utils.js +6 -3
  227. package/esm/slider/slider.d.ts +0 -2
  228. package/esm/slider/slider.js +9 -7
  229. package/esm/split-view/split-view-panel/split-view-panel.js +1 -1
  230. package/esm/state-layer/index.d.ts +10 -0
  231. package/esm/state-layer/index.js +14 -0
  232. package/esm/state-layer/state-layer-adapter.d.ts +41 -0
  233. package/esm/state-layer/state-layer-adapter.js +101 -0
  234. package/esm/state-layer/state-layer-constants.d.ts +79 -0
  235. package/esm/state-layer/state-layer-constants.js +89 -0
  236. package/esm/state-layer/state-layer-foundation.d.ts +57 -0
  237. package/esm/state-layer/state-layer-foundation.js +237 -0
  238. package/esm/state-layer/state-layer-utils.d.ts +26 -0
  239. package/esm/state-layer/state-layer-utils.js +54 -0
  240. package/esm/state-layer/state-layer.d.ts +66 -0
  241. package/esm/state-layer/state-layer.js +96 -0
  242. package/esm/stepper/step/step.js +1 -1
  243. package/esm/switch/switch.js +10 -3
  244. package/esm/tabs/tab/tab-adapter.d.ts +4 -6
  245. package/esm/tabs/tab/tab-adapter.js +9 -18
  246. package/esm/tabs/tab/tab-constants.d.ts +0 -1
  247. package/esm/tabs/tab/tab-constants.js +0 -1
  248. package/esm/tabs/tab/tab-foundation.d.ts +0 -1
  249. package/esm/tabs/tab/tab-foundation.js +1 -3
  250. package/esm/tabs/tab/tab.d.ts +0 -1
  251. package/esm/tabs/tab/tab.js +9 -6
  252. package/esm/tabs/tab-bar/tab-bar.d.ts +2 -2
  253. package/esm/tabs/tab-bar/tab-bar.js +3 -3
  254. package/esm/text-field/text-field.js +1 -1
  255. package/esm/toast/toast.js +1 -1
  256. package/package.json +1 -1
  257. package/styles/app-bar/_mixins.scss +9 -1
  258. package/styles/card/_mixins.scss +8 -7
  259. package/styles/circular-progress/_mixins.scss +3 -10
  260. package/styles/core/{style-layer → styles}/circular-progress/_core.scss +5 -8
  261. package/styles/core/styles/focus-indicator/_core.scss +5 -0
  262. package/styles/core/styles/focus-indicator/_variables.scss +8 -0
  263. package/styles/core/styles/focus-indicator/index.scss +7 -0
  264. package/styles/core/{style-layer → styles}/slider/_core.scss +13 -31
  265. package/styles/core/styles/state-layer/_core.scss +144 -0
  266. package/styles/core/styles/state-layer/_variables.scss +8 -0
  267. package/styles/core/{style-layer/tabs/tab → styles/state-layer}/index.scss +0 -4
  268. package/styles/core/{style-layer → styles}/tabs/tab/_core.scss +36 -40
  269. package/styles/core/{style-layer → styles}/tabs/tab-bar/_core.scss +2 -2
  270. package/styles/core/{style-layer → styles}/tabs/tab-bar/_variables.scss +1 -1
  271. package/styles/core/styles/tabs/tab-bar/index.scss +7 -0
  272. package/styles/core/styles/tokens/_color-palette.scss +299 -0
  273. package/styles/core/styles/tokens/circular-progress/_tokens.scss +14 -0
  274. package/styles/core/styles/tokens/focus-indicator/_tokens.scss +24 -0
  275. package/styles/core/styles/tokens/index.scss +58 -0
  276. package/styles/core/styles/tokens/state-layer/_tokens.scss +17 -0
  277. package/styles/core/styles/tokens/theme/_tokens.scss +185 -0
  278. package/styles/core/styles/tokens/typography/_tokens.scss +47 -0
  279. package/styles/core/styles/utils/_elevation.scss +5 -0
  280. package/styles/focus-indicator/_mixins.scss +138 -0
  281. package/styles/focus-indicator/_variables.scss +5 -0
  282. package/styles/focus-indicator/focus-indicator.scss +32 -0
  283. package/styles/linear-progress/_mixins.scss +1 -1
  284. package/styles/linear-progress/_variables.scss +1 -1
  285. package/styles/slider/_mixins.scss +17 -1
  286. package/styles/state-layer/_mixins.scss +23 -0
  287. package/styles/state-layer/state-layer.scss +20 -0
  288. package/styles/tabs/tab/_mixins.scss +20 -1
  289. package/styles/tabs/tab/_variables.scss +2 -0
  290. package/styles/tabs/tab-bar/_mixins.scss +2 -1
  291. package/styles/tabs/tab-bar/_variables.scss +2 -2
  292. package/styles/theme/_theme-dark.scss +5 -3
  293. package/styles/theme/_theme.scss +3 -36
  294. package/dist/esm/chunks/chunk.246JM2YT.js +0 -7
  295. package/dist/esm/chunks/chunk.246JM2YT.js.map +0 -7
  296. package/dist/esm/chunks/chunk.2CTK5R37.js +0 -7
  297. package/dist/esm/chunks/chunk.2XFVFZ3P.js +0 -7
  298. package/dist/esm/chunks/chunk.2XFVFZ3P.js.map +0 -7
  299. package/dist/esm/chunks/chunk.5IVB5L5Z.js +0 -7
  300. package/dist/esm/chunks/chunk.5IVB5L5Z.js.map +0 -7
  301. package/dist/esm/chunks/chunk.A5R7KUIP.js +0 -7
  302. package/dist/esm/chunks/chunk.A5R7KUIP.js.map +0 -7
  303. package/dist/esm/chunks/chunk.BWZKQ6WX.js +0 -7
  304. package/dist/esm/chunks/chunk.BWZKQ6WX.js.map +0 -7
  305. package/dist/esm/chunks/chunk.EUE3OVC7.js.map +0 -7
  306. package/dist/esm/chunks/chunk.GUYPITGA.js +0 -7
  307. package/dist/esm/chunks/chunk.GUYPITGA.js.map +0 -7
  308. package/dist/esm/chunks/chunk.GWIVOPRO.js +0 -7
  309. package/dist/esm/chunks/chunk.GWIVOPRO.js.map +0 -7
  310. package/dist/esm/chunks/chunk.JHXNEHWR.js +0 -12
  311. package/dist/esm/chunks/chunk.JHXNEHWR.js.map +0 -7
  312. package/dist/esm/chunks/chunk.NVMILGC2.js +0 -7
  313. package/dist/esm/chunks/chunk.NVMILGC2.js.map +0 -7
  314. package/dist/esm/chunks/chunk.WFDIA7R6.js +0 -7
  315. package/dist/esm/chunks/chunk.WFDIA7R6.js.map +0 -7
  316. package/esm/slider/slider-handle-ripple.d.ts +0 -18
  317. package/esm/slider/slider-handle-ripple.js +0 -37
  318. package/esm/tabs/tab/tab-ripple.d.ts +0 -17
  319. package/esm/tabs/tab/tab-ripple.js +0 -33
  320. package/styles/circular-progress/_variables.scss +0 -12
  321. /package/dist/esm/chunks/{chunk.TXFYS6EU.js.map → chunk.33EJTOVA.js.map} +0 -0
  322. /package/dist/esm/chunks/{chunk.OTVT3XM2.js.map → chunk.3JDFBEF7.js.map} +0 -0
  323. /package/dist/esm/chunks/{chunk.V6JVHYVW.js.map → chunk.44UCSD46.js.map} +0 -0
  324. /package/dist/esm/chunks/{chunk.7JQHQKXN.js.map → chunk.6MPXRRMB.js.map} +0 -0
  325. /package/dist/esm/chunks/{chunk.MXNLCQRB.js.map → chunk.6VDF54LZ.js.map} +0 -0
  326. /package/dist/esm/chunks/{chunk.4EB5NVCK.js.map → chunk.AHHNJSZK.js.map} +0 -0
  327. /package/dist/esm/chunks/{chunk.BSTIDYQJ.js.map → chunk.BBWMSCVG.js.map} +0 -0
  328. /package/dist/esm/chunks/{chunk.BKCEVPKW.js.map → chunk.BDCJIRNK.js.map} +0 -0
  329. /package/dist/esm/chunks/{chunk.SYZB7B4F.js.map → chunk.CL65KLH7.js.map} +0 -0
  330. /package/dist/esm/chunks/{chunk.4LVS2EYJ.js.map → chunk.DFGBVJBE.js.map} +0 -0
  331. /package/dist/esm/chunks/{chunk.YUAU5IWT.js.map → chunk.F776DWXU.js.map} +0 -0
  332. /package/dist/esm/chunks/{chunk.2QFIMTVP.js.map → chunk.GT3XBPZY.js.map} +0 -0
  333. /package/dist/esm/chunks/{chunk.OT6H5NHX.js.map → chunk.HUGRRRQA.js.map} +0 -0
  334. /package/dist/esm/chunks/{chunk.GJW4WS4I.js.map → chunk.HXJCTE47.js.map} +0 -0
  335. /package/dist/esm/chunks/{chunk.RUSHOL23.js.map → chunk.JAAJDT5E.js.map} +0 -0
  336. /package/dist/esm/chunks/{chunk.FAANPQES.js.map → chunk.JL4XB4RI.js.map} +0 -0
  337. /package/dist/esm/chunks/{chunk.2LRDPTHK.js.map → chunk.M2M47T4L.js.map} +0 -0
  338. /package/dist/esm/chunks/{chunk.XMFQFFKR.js.map → chunk.NE4NCRRZ.js.map} +0 -0
  339. /package/dist/esm/chunks/{chunk.GHSAKRYH.js.map → chunk.OKKH7F7M.js.map} +0 -0
  340. /package/dist/esm/chunks/{chunk.CNQESSA3.js.map → chunk.UKFJHDO7.js.map} +0 -0
  341. /package/dist/esm/chunks/{chunk.IGK3VYZG.js.map → chunk.VI2GRQO3.js.map} +0 -0
  342. /package/dist/esm/chunks/{chunk.A5MBSCSQ.js.map → chunk.VNOJO2PF.js.map} +0 -0
  343. /package/dist/esm/chunks/{chunk.2YX7ASSX.js.map → chunk.WXN4S7CN.js.map} +0 -0
  344. /package/dist/esm/chunks/{chunk.ER52NFXX.js.map → chunk.X5BG35YX.js.map} +0 -0
  345. /package/dist/esm/chunks/{chunk.THPU5KBV.js.map → chunk.XRESQBNE.js.map} +0 -0
  346. /package/dist/esm/chunks/{chunk.QYKO543K.js.map → chunk.YWCLKUK7.js.map} +0 -0
  347. /package/styles/core/{style-layer → styles}/circular-progress/_animations.scss +0 -0
  348. /package/styles/core/{style-layer → styles}/circular-progress/_variables.scss +0 -0
  349. /package/styles/core/{style-layer → styles}/circular-progress/index.scss +0 -0
  350. /package/styles/core/{style-layer → styles}/core/_config.scss +0 -0
  351. /package/styles/core/{style-layer → styles}/linear-progress/_animations.scss +0 -0
  352. /package/styles/core/{style-layer → styles}/linear-progress/_core.scss +0 -0
  353. /package/styles/core/{style-layer → styles}/linear-progress/_variables.scss +0 -0
  354. /package/styles/core/{style-layer → styles}/linear-progress/index.scss +0 -0
  355. /package/styles/core/{style-layer → styles}/slider/_functions.scss +0 -0
  356. /package/styles/core/{style-layer → styles}/slider/_variables.scss +0 -0
  357. /package/styles/core/{style-layer → styles}/slider/index.scss +0 -0
  358. /package/styles/core/{style-layer → styles}/tabs/tab/_variables.scss +0 -0
  359. /package/styles/core/{style-layer/tabs/tab-bar → styles/tabs/tab}/index.scss +0 -0
@@ -11,7 +11,7 @@ import { FilePickerAdapter } from './file-picker-adapter';
11
11
  import { FILE_PICKER_CONSTANTS } from './file-picker-constants';
12
12
  import { FilePickerFoundation } from './file-picker-foundation';
13
13
  const template = '<template><form class=\"forge-file-picker\" id=\"container\" part=\"form\"><div class=\"forge-file-picker__primary\" id=\"primary\" part=\"primary\"><slot name=\"primary\"></slot></div><slot id=\"button-slot\"></slot><div class=\"forge-file-picker__secondary\" id=\"secondary\" part=\"secondary\"><slot name=\"secondary\"></slot></div><input type=\"file\" class=\"forge-file-picker__input\" id=\"input\" part=\"input\"></form><div class=\"forge-file-picker__helper-text\" part=\"helper-text-container\"><slot name=\"helper-text\"></slot></div></template>';
14
- const styles = '.forge-file-picker{-webkit-box-sizing:border-box;box-sizing:border-box;width:100%;height:100%;background-color:rgba(189,189,189,.12);border:1px dashed #e0e0e0;display:grid;-webkit-box-pack:center;justify-content:center;align-content:center;gap:16px;padding:16px;text-align:center;cursor:pointer}.forge-file-picker__primary{-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-size:1rem;font-size:var(--mdc-typography-subtitle1-font-size, 1rem);line-height:1.75rem;line-height:var(--mdc-typography-subtitle1-line-height, 1.75rem);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);color:rgba(0,0,0,.87);color:var(--mdc-theme-text-primary-on-background,rgba(0,0,0,.87));max-width:auto;max-width:var(--forge-file-picker-max-content-width,auto)}.forge-file-picker__secondary{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-size:.875rem;font-size:var(--forge-typography-subtitle2-secondary-font-size, .875rem);line-height:1.375rem;line-height:var(--forge-typography-subtitle2-secondary-line-height, 1.375rem);font-weight:400;font-weight:var(--forge-typography-subtitle2-secondary-font-weight,400);letter-spacing:.0087500001em;letter-spacing:var(--forge-typography-subtitle2-secondary-letter-spacing, .0087500001em);text-decoration:inherit;-webkit-text-decoration:var(--forge-typography-subtitle2-secondary-text-decoration,inherit);text-decoration:var(--forge-typography-subtitle2-secondary-text-decoration,inherit);text-transform:inherit;text-transform:var(--forge-typography-subtitle2-secondary-text-transform,inherit);color:var(--mdc-theme-text-secondary-on-background);color:var(--forge-typography-subtitle2-secondary-color,var(--mdc-theme-text-secondary-on-background));color:rgba(0,0,0,.87);color:var(--mdc-theme-text-primary-on-background,rgba(0,0,0,.87));max-width:auto;max-width:var(--forge-file-picker-max-content-width,auto)}.forge-file-picker__input{display:none}.forge-file-picker__helper-text ::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;color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54));margin-left:12px;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-caption-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:.75rem;font-size:var(--mdc-typography-caption-font-size, .75rem);line-height:1.25rem;line-height:var(--mdc-typography-caption-line-height, 1.25rem);font-weight:400;font-weight:var(--mdc-typography-caption-font-weight,400);letter-spacing:.0333333333em;letter-spacing:var(--mdc-typography-caption-letter-spacing, .0333333333em);text-decoration:inherit;text-decoration:var(--mdc-typography-caption-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-caption-text-transform,inherit);text-align:start}.forge-file-picker[disabled]{background-color:#fafafa;background-color:var(--mdc-theme-background,#fafafa);border-color:#e0e0e0;border-color:var(--forge-theme-border-color,#e0e0e0);opacity:.38;cursor:unset}.forge-file-picker.compact{height:-webkit-fit-content;height:-moz-fit-content;height:fit-content;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;background-color:transparent;border:none;padding:0}.forge-file-picker.compact .forge-file-picker__primary,.forge-file-picker.compact .forge-file-picker__secondary{display:none}.forge-file-picker.compact .forge-file-picker__button>button{width:auto;width:var(--forge-file-picker-width,auto);background-color:transparent}.forge-file-picker:not(.compact).highlight{border-color:#3f51b5;border-color:var(--mdc-theme-primary,#3f51b5);background-color:rgba(63,81,181,.12);border-width:1px;border-style:solid}.forge-file-picker.borderless{--forge-file-picker-width:100%;border:none}.forge-file-picker.borderless:not(.compact).highlight{border:none}.forge-file-picker.borderless+.forge-file-picker__helper-text{display:none}:host{width:auto;width:var(--forge-file-picker-width,auto);height:auto;height:var(--forge-file-picker-height,auto);display:inline-block}:host([hidden]){display:none}';
14
+ const styles = '.forge-file-picker{-webkit-box-sizing:border-box;box-sizing:border-box;width:100%;height:100%;background-color:rgba(189,189,189,.12);border:1px dashed #e0e0e0;display:grid;-webkit-box-pack:center;justify-content:center;align-content:center;gap:16px;padding:16px;text-align:center;cursor:pointer}.forge-file-picker__primary{-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-size:1rem;font-size:var(--mdc-typography-subtitle1-font-size, 1rem);line-height:1.75rem;line-height:var(--mdc-typography-subtitle1-line-height, 1.75rem);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);color:rgba(0,0,0,.87);color:var(--mdc-theme-text-primary-on-background,rgba(0,0,0,.87));max-width:auto;max-width:var(--forge-file-picker-max-content-width,auto)}.forge-file-picker__secondary{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-size:.875rem;font-size:var(--forge-typography-subtitle2-secondary-font-size, .875rem);line-height:1.375rem;line-height:var(--forge-typography-subtitle2-secondary-line-height, 1.375rem);font-weight:400;font-weight:var(--forge-typography-subtitle2-secondary-font-weight,400);letter-spacing:.0087500001em;letter-spacing:var(--forge-typography-subtitle2-secondary-letter-spacing, .0087500001em);text-decoration:inherit;-webkit-text-decoration:var(--forge-typography-subtitle2-secondary-text-decoration,inherit);text-decoration:var(--forge-typography-subtitle2-secondary-text-decoration,inherit);text-transform:inherit;text-transform:var(--forge-typography-subtitle2-secondary-text-transform,inherit);color:var(--mdc-theme-text-secondary-on-background);color:var(--forge-typography-subtitle2-secondary-color,var(--mdc-theme-text-secondary-on-background));color:rgba(0,0,0,.87);color:var(--mdc-theme-text-primary-on-background,rgba(0,0,0,.87));max-width:auto;max-width:var(--forge-file-picker-max-content-width,auto)}.forge-file-picker__input{display:none}.forge-file-picker__helper-text ::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;color:rgba(0,0,0,.54);color:var(--mdc-theme-text-secondary-on-background,rgba(0,0,0,.54));margin-left:12px;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto,sans-serif;font-family:var(--mdc-typography-caption-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));font-size:.75rem;font-size:var(--mdc-typography-caption-font-size, .75rem);line-height:1.25rem;line-height:var(--mdc-typography-caption-line-height, 1.25rem);font-weight:400;font-weight:var(--mdc-typography-caption-font-weight,400);letter-spacing:.0333333333em;letter-spacing:var(--mdc-typography-caption-letter-spacing, .0333333333em);text-decoration:inherit;text-decoration:var(--mdc-typography-caption-text-decoration,inherit);text-transform:inherit;text-transform:var(--mdc-typography-caption-text-transform,inherit);text-align:start}.forge-file-picker[disabled]{background-color:#fff;background-color:var(--mdc-theme-background,#fff);border-color:#e0e0e0;border-color:var(--forge-theme-border-color,#e0e0e0);opacity:.38;cursor:unset}.forge-file-picker.compact{height:-webkit-fit-content;height:-moz-fit-content;height:fit-content;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;background-color:transparent;border:none;padding:0}.forge-file-picker.compact .forge-file-picker__primary,.forge-file-picker.compact .forge-file-picker__secondary{display:none}.forge-file-picker.compact .forge-file-picker__button>button{width:auto;width:var(--forge-file-picker-width,auto);background-color:transparent}.forge-file-picker:not(.compact).highlight{border-color:#6200ee;border-color:var(--mdc-theme-primary,#6200ee);background-color:rgba(98,0,238,.12);border-width:1px;border-style:solid}.forge-file-picker.borderless{--forge-file-picker-width:100%;border:none}.forge-file-picker.borderless:not(.compact).highlight{border:none}.forge-file-picker.borderless+.forge-file-picker__helper-text{display:none}:host{width:auto;width:var(--forge-file-picker-width,auto);height:auto;height:var(--forge-file-picker-height,auto);display:inline-block}:host([hidden]){display:none}';
15
15
  /**
16
16
  * The web component class behind the `<forge-file-picker>` custom element.
17
17
  *
@@ -0,0 +1,29 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2023 Tyler Technologies, Inc.
4
+ * License: Apache-2.0
5
+ */
6
+ import { BaseAdapter, IBaseAdapter } from '../core';
7
+ import { IFocusIndicatorComponent } from './focus-indicator';
8
+ export interface IFocusIndicatorAdapter extends IBaseAdapter {
9
+ destroy(): void;
10
+ hasTargetElement(): boolean;
11
+ addTargetListener(type: string, listener: EventListener): void;
12
+ removeTargetListener(type: string, listener: EventListener): void;
13
+ getTargetElement(): HTMLElement | null;
14
+ setTargetElement(el: HTMLElement | null): void;
15
+ trySetTarget(value: string | null): void;
16
+ isActive(selector: string): boolean;
17
+ }
18
+ export declare class FocusIndicatorAdapter extends BaseAdapter<IFocusIndicatorComponent> implements IFocusIndicatorAdapter {
19
+ private _targetElement;
20
+ constructor(component: IFocusIndicatorComponent);
21
+ destroy(): void;
22
+ hasTargetElement(): boolean;
23
+ addTargetListener(type: string, listener: EventListener): void;
24
+ removeTargetListener(type: string, listener: EventListener): void;
25
+ getTargetElement(): HTMLElement | null;
26
+ setTargetElement(el: HTMLElement | null): void;
27
+ trySetTarget(value: string | null): void;
28
+ isActive(selector: string): boolean;
29
+ }
@@ -0,0 +1,39 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2023 Tyler Technologies, Inc.
4
+ * License: Apache-2.0
5
+ */
6
+ import { BaseAdapter, locateTargetHeuristic } from '../core';
7
+ export class FocusIndicatorAdapter extends BaseAdapter {
8
+ constructor(component) {
9
+ super(component);
10
+ this._targetElement = null;
11
+ }
12
+ destroy() {
13
+ this._targetElement = null;
14
+ }
15
+ hasTargetElement() {
16
+ return !!this._targetElement;
17
+ }
18
+ addTargetListener(type, listener) {
19
+ var _a;
20
+ (_a = this._targetElement) === null || _a === void 0 ? void 0 : _a.addEventListener(type, listener);
21
+ }
22
+ removeTargetListener(type, listener) {
23
+ var _a;
24
+ (_a = this._targetElement) === null || _a === void 0 ? void 0 : _a.removeEventListener(type, listener);
25
+ }
26
+ getTargetElement() {
27
+ return this._targetElement;
28
+ }
29
+ setTargetElement(el) {
30
+ this._targetElement = el;
31
+ }
32
+ trySetTarget(value) {
33
+ this._targetElement = locateTargetHeuristic(this._component, value);
34
+ }
35
+ isActive(selector) {
36
+ var _a;
37
+ return !!((_a = this._targetElement) === null || _a === void 0 ? void 0 : _a.matches(selector));
38
+ }
39
+ }
@@ -0,0 +1,15 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2023 Tyler Technologies, Inc.
4
+ * License: Apache-2.0
5
+ */
6
+ export declare const FOCUS_INDICATOR_CONSTANTS: {
7
+ elementName: "forge-focus-indicator";
8
+ attributes: {
9
+ TARGET: string;
10
+ ACTIVE: string;
11
+ INWARD: string;
12
+ CIRCULAR: string;
13
+ ALLOW_FOCUS: string;
14
+ };
15
+ };
@@ -0,0 +1,19 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2023 Tyler Technologies, Inc.
4
+ * License: Apache-2.0
5
+ */
6
+ import { COMPONENT_NAME_PREFIX } from '../constants';
7
+ const elementName = `${COMPONENT_NAME_PREFIX}focus-indicator`;
8
+ const observedAttributes = {
9
+ TARGET: 'target',
10
+ ACTIVE: 'active',
11
+ INWARD: 'inward',
12
+ CIRCULAR: 'circular',
13
+ ALLOW_FOCUS: 'allow-focus'
14
+ };
15
+ const attributes = Object.assign({}, observedAttributes);
16
+ export const FOCUS_INDICATOR_CONSTANTS = {
17
+ elementName,
18
+ attributes
19
+ };
@@ -0,0 +1,43 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2023 Tyler Technologies, Inc.
4
+ * License: Apache-2.0
5
+ */
6
+ import { IFocusIndicatorAdapter } from './focus-indicator-adapter';
7
+ export interface IFocusIndicatorFoundation {
8
+ targetElement: HTMLElement | null;
9
+ target: string | null;
10
+ active: boolean;
11
+ inward: boolean;
12
+ circular: boolean;
13
+ allowFocus: boolean;
14
+ initialize(): void;
15
+ destroy(): void;
16
+ }
17
+ export declare class FocusIndicatorFoundation implements IFocusIndicatorFoundation {
18
+ private _adapter;
19
+ private _target;
20
+ private _active;
21
+ private _inward;
22
+ private _circular;
23
+ private _allowFocus;
24
+ private _interactionListener;
25
+ constructor(_adapter: IFocusIndicatorAdapter);
26
+ initialize(): void;
27
+ destroy(): void;
28
+ private _addListeners;
29
+ private _removeListeners;
30
+ private _onInteraction;
31
+ get targetElement(): HTMLElement | null;
32
+ set targetElement(value: HTMLElement | null);
33
+ get target(): string | null;
34
+ set target(value: string | null);
35
+ get active(): boolean;
36
+ set active(value: boolean);
37
+ get inward(): boolean;
38
+ set inward(value: boolean);
39
+ get circular(): boolean;
40
+ set circular(value: boolean);
41
+ get allowFocus(): boolean;
42
+ set allowFocus(value: boolean);
43
+ }
@@ -0,0 +1,110 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2023 Tyler Technologies, Inc.
4
+ * License: Apache-2.0
5
+ */
6
+ import { FOCUS_INDICATOR_CONSTANTS } from './focus-indicator-constants';
7
+ export class FocusIndicatorFoundation {
8
+ constructor(_adapter) {
9
+ this._adapter = _adapter;
10
+ this._target = null;
11
+ this._active = false;
12
+ this._inward = false;
13
+ this._circular = false;
14
+ this._allowFocus = false;
15
+ this._interactionListener = evt => this._onInteraction(evt);
16
+ }
17
+ initialize() {
18
+ if (!this._adapter.hasTargetElement()) {
19
+ this._adapter.trySetTarget(this._target);
20
+ }
21
+ this._addListeners();
22
+ }
23
+ destroy() {
24
+ this._adapter.destroy();
25
+ this._removeListeners();
26
+ }
27
+ _addListeners() {
28
+ this._adapter.addTargetListener('focusin', this._interactionListener);
29
+ this._adapter.addTargetListener('focusout', this._interactionListener);
30
+ this._adapter.addTargetListener('pointerdown', this._interactionListener);
31
+ }
32
+ _removeListeners() {
33
+ this._adapter.removeTargetListener('focusin', this._interactionListener);
34
+ this._adapter.removeTargetListener('focusout', this._interactionListener);
35
+ this._adapter.removeTargetListener('pointerdown', this._interactionListener);
36
+ }
37
+ _onInteraction(evt) {
38
+ switch (evt.type) {
39
+ case 'focusin':
40
+ this.active = this._adapter.isActive(this._allowFocus ? ':focus' : ':focus-visible');
41
+ break;
42
+ case 'focusout':
43
+ this.active = false;
44
+ break;
45
+ case 'pointerdown':
46
+ this.active = this._allowFocus ? this._adapter.isActive(':focus') : this._adapter.isActive(':focus-visible');
47
+ break;
48
+ }
49
+ }
50
+ get targetElement() {
51
+ return this._adapter.getTargetElement();
52
+ }
53
+ set targetElement(value) {
54
+ this._removeListeners();
55
+ this._adapter.setTargetElement(value);
56
+ this._addListeners();
57
+ }
58
+ get target() {
59
+ return this._adapter.getHostAttribute(FOCUS_INDICATOR_CONSTANTS.attributes.TARGET);
60
+ }
61
+ set target(value) {
62
+ if (this._target !== value) {
63
+ this._target = value;
64
+ if (this._adapter.isConnected) {
65
+ this._adapter.trySetTarget(value);
66
+ }
67
+ this._adapter.toggleHostAttribute(FOCUS_INDICATOR_CONSTANTS.attributes.TARGET, Boolean(this._target), this._target);
68
+ }
69
+ }
70
+ get active() {
71
+ return this._active;
72
+ }
73
+ set active(value) {
74
+ value = Boolean(value);
75
+ if (this._active !== value) {
76
+ this._active = value;
77
+ this._adapter.toggleHostAttribute(FOCUS_INDICATOR_CONSTANTS.attributes.ACTIVE, this._active);
78
+ }
79
+ }
80
+ get inward() {
81
+ return this._inward;
82
+ }
83
+ set inward(value) {
84
+ value = Boolean(value);
85
+ if (this._inward !== value) {
86
+ this._inward = value;
87
+ this._adapter.toggleHostAttribute(FOCUS_INDICATOR_CONSTANTS.attributes.INWARD, this._inward);
88
+ }
89
+ }
90
+ get circular() {
91
+ return this._circular;
92
+ }
93
+ set circular(value) {
94
+ value = Boolean(value);
95
+ if (this._circular !== value) {
96
+ this._circular = value;
97
+ this._adapter.toggleHostAttribute(FOCUS_INDICATOR_CONSTANTS.attributes.CIRCULAR, this._circular);
98
+ }
99
+ }
100
+ get allowFocus() {
101
+ return this._allowFocus;
102
+ }
103
+ set allowFocus(value) {
104
+ value = Boolean(value);
105
+ if (this._allowFocus !== value) {
106
+ this._allowFocus = value;
107
+ this._adapter.toggleHostAttribute(FOCUS_INDICATOR_CONSTANTS.attributes.ALLOW_FOCUS, this._allowFocus);
108
+ }
109
+ }
110
+ }
@@ -0,0 +1,67 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2023 Tyler Technologies, Inc.
4
+ * License: Apache-2.0
5
+ */
6
+ import { BaseComponent, IBaseComponent } from '../core/base/base-component';
7
+ export interface IFocusIndicatorComponent extends IBaseComponent {
8
+ targetElement: HTMLElement;
9
+ target: string | null;
10
+ active: boolean;
11
+ inward: boolean;
12
+ circular: boolean;
13
+ allowFocus: boolean;
14
+ }
15
+ declare global {
16
+ interface HTMLElementTagNameMap {
17
+ 'forge-focus-indicator': IFocusIndicatorComponent;
18
+ }
19
+ }
20
+ /**
21
+ * @tag forge-focus-indicator
22
+ *
23
+ * @summary Renders a focus indicator when an attached element matches `:focus-visible`.
24
+ *
25
+ * @property {HTMLElement} targetElement - The element to attach the focus indicator to.
26
+ * @property {string} target - The id of the element to attach the focus indicator to.
27
+ * @property {boolean} active - Controls whether the indicator is active.
28
+ * @property {boolean} inward - Controls whether the indicator renders inward.
29
+ * @property {boolean} circular - Controls whether the indicator renders circular.
30
+ * @property {boolean} allowFocus - Controls whether the indicator renders when the target element matches `:focus` instead of `:focus-visible`.
31
+ *
32
+ * @attribute {string} target - The id of the element to attach the focus indicator to.
33
+ * @attribute {boolean} active - Controls whether the indicator is active.
34
+ * @attribute {boolean} inward - Controls whether the indicator renders inward.
35
+ * @attribute {boolean} circular - Controls whether the indicator renders circular.
36
+ * @attribute {boolean} allow-focus - Controls whether the indicator renders when the target element matches `:focus` instead of `:focus-visible`.
37
+ *
38
+ * @cssproperty --forge-focus-indicator-active-width - The width of the focus indicator when active. When animating this is the max extent.
39
+ * @cssproperty --forge-focus-indicator-color - The color of the focus indicator.
40
+ * @cssproperty --forge-focus-indicator-duration - The animation duration.
41
+ * @cssproperty --forge-focus-indicator-outward-offset - The offset of the focus indicator when outward.
42
+ * @cssproperty --forge-focus-indicator-inward-offset - The offset of the focus indicator when inward.
43
+ * @cssproperty --forge-focus-indicator-shape - The shape of the focus indicator.
44
+ * @cssproperty --forge-focus-indicator-width - The width of the focus indicator when resting.
45
+ * @cssproperty --forge-focus-indicator-shape-start-start - The start start shape.
46
+ * @cssproperty --forge-focus-indicator-shape-start-end - The start end shape.
47
+ * @cssproperty --forge-focus-indicator-shape-end-start - The end start shape.
48
+ * @cssproperty --forge-focus-indicator-shape-end-end - The end end shape.
49
+ * @cssproperty --forge-focus-indicator-offset-block - The block offset.
50
+ * @cssproperty --forge-focus-indicator-offset-inline - The inline offset.
51
+ *
52
+ * @csspart indicator - The focus indicator element.
53
+ */
54
+ export declare class FocusIndicatorComponent extends BaseComponent implements IFocusIndicatorComponent {
55
+ static get observedAttributes(): string[];
56
+ private _foundation;
57
+ constructor();
58
+ connectedCallback(): void;
59
+ disconnectedCallback(): void;
60
+ attributeChangedCallback(name: string, oldValue: string, newValue: string): void;
61
+ targetElement: HTMLElement;
62
+ target: string | null;
63
+ active: boolean;
64
+ inward: boolean;
65
+ circular: boolean;
66
+ allowFocus: boolean;
67
+ }
@@ -0,0 +1,112 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2023 Tyler Technologies, Inc.
4
+ * License: Apache-2.0
5
+ */
6
+ import { __decorate } from "tslib";
7
+ import { attachShadowTemplate, coerceBoolean, CustomElement, FoundationProperty } from '@tylertech/forge-core';
8
+ import { BaseComponent } from '../core/base/base-component';
9
+ import { FocusIndicatorAdapter } from './focus-indicator-adapter';
10
+ import { FOCUS_INDICATOR_CONSTANTS } from './focus-indicator-constants';
11
+ import { FocusIndicatorFoundation } from './focus-indicator-foundation';
12
+ const template = '<template><div class=\"forge-focus-indicator\" part=\"indicator\"></div></template>';
13
+ const styles = '.forge-focus-indicator{--_active-width:var(--forge-focus-indicator-active-width, 6px);--_color:var(--forge-focus-indicator-color, var(--forge-theme-primary, #3f51b5));--_duration:var(--forge-focus-indicator-duration, 600ms);--_outward-offset:var(--forge-focus-indicator-outward-offset, 4px);--_inward-offset:var(--forge-focus-indicator-inward-offset, 0px);--_shape:var(--forge-focus-indicator-shape, 1px);--_width:var(--forge-focus-indicator-width, 2px);--_easing:var(--forge-focus-indicator-easing, cubic-bezier(0.2, 0, 0, 1));--_shape-start-start:var(--forge-focus-indicator-shape-start-start, var(--_shape));--_shape-start-end:var(--forge-focus-indicator-shape-start-end, var(--_shape));--_shape-end-start:var(--forge-focus-indicator-shape-end-start, var(--_shape));--_shape-end-end:var(--forge-focus-indicator-shape-end-end, var(--_shape));--_margin-block:var(--forge-focus-indicator-offset-block, 0);--_margin-inline:var(--forge-focus-indicator-offset-inline, 0);-webkit-animation-delay:0s,calc(var(--_duration) * .25);animation-delay:0s,calc(var(--_duration) * .25);-webkit-animation-duration:calc(var(--_duration) * .25),calc(var(--_duration) * .75);animation-duration:calc(var(--_duration) * .25),calc(var(--_duration) * .75);-webkit-animation-timing-function:var(--_easing);animation-timing-function:var(--_easing);-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--_color);display:none;pointer-events:none;position:absolute;margin-block:var(--_margin-block);margin-inline:var(--_margin-inline)}@media (prefers-reduced-motion){.forge-focus-indicator{-webkit-animation:none;animation:none}}@-webkit-keyframes outward-grow{from{outline-width:0}to{outline-width:var(--_active-width)}}@keyframes outward-grow{from{outline-width:0}to{outline-width:var(--_active-width)}}@-webkit-keyframes outward-shrink{from{outline-width:var(--_active-width)}}@keyframes outward-shrink{from{outline-width:var(--_active-width)}}@-webkit-keyframes inward-grow{from{border-width:0}to{border-width:var(--_active-width)}}@keyframes inward-grow{from{border-width:0}to{border-width:var(--_active-width)}}@-webkit-keyframes inward-shrink{from{border-width:var(--_active-width)}}@keyframes inward-shrink{from{border-width:var(--_active-width)}}:host{display:contents}:host([hidden]){display:none}:host([active]) .forge-focus-indicator{display:-webkit-box;display:flex}:host(:not([inward])) .forge-focus-indicator{-webkit-animation-name:outward-grow,outward-shrink;animation-name:outward-grow,outward-shrink;border-end-end-radius:calc(var(--_shape-end-end) + var(--_outward-offset));border-end-start-radius:calc(var(--_shape-end-start) + var(--_outward-offset));border-start-end-radius:calc(var(--_shape-start-end) + var(--_outward-offset));border-start-start-radius:calc(var(--_shape-start-start) + var(--_outward-offset));inset:calc(-1 * var(--_outward-offset));outline:var(--_width) solid currentColor}:host([inward]) .forge-focus-indicator{-webkit-animation-name:inward-grow,inward-shrink;animation-name:inward-grow,inward-shrink;border-end-end-radius:calc(var(--_shape-end-end) - var(--_inward-offset));border-end-start-radius:calc(var(--_shape-end-start) - var(--_inward-offset));border-start-end-radius:calc(var(--_shape-start-end) - var(--_inward-offset));border-start-start-radius:calc(var(--_shape-start-start) - var(--_inward-offset));border:var(--_width) solid currentColor;inset:var(--_inward-offset)}:host([circular]) .forge-focus-indicator{--_shape:50%}';
14
+ /**
15
+ * @tag forge-focus-indicator
16
+ *
17
+ * @summary Renders a focus indicator when an attached element matches `:focus-visible`.
18
+ *
19
+ * @property {HTMLElement} targetElement - The element to attach the focus indicator to.
20
+ * @property {string} target - The id of the element to attach the focus indicator to.
21
+ * @property {boolean} active - Controls whether the indicator is active.
22
+ * @property {boolean} inward - Controls whether the indicator renders inward.
23
+ * @property {boolean} circular - Controls whether the indicator renders circular.
24
+ * @property {boolean} allowFocus - Controls whether the indicator renders when the target element matches `:focus` instead of `:focus-visible`.
25
+ *
26
+ * @attribute {string} target - The id of the element to attach the focus indicator to.
27
+ * @attribute {boolean} active - Controls whether the indicator is active.
28
+ * @attribute {boolean} inward - Controls whether the indicator renders inward.
29
+ * @attribute {boolean} circular - Controls whether the indicator renders circular.
30
+ * @attribute {boolean} allow-focus - Controls whether the indicator renders when the target element matches `:focus` instead of `:focus-visible`.
31
+ *
32
+ * @cssproperty --forge-focus-indicator-active-width - The width of the focus indicator when active. When animating this is the max extent.
33
+ * @cssproperty --forge-focus-indicator-color - The color of the focus indicator.
34
+ * @cssproperty --forge-focus-indicator-duration - The animation duration.
35
+ * @cssproperty --forge-focus-indicator-outward-offset - The offset of the focus indicator when outward.
36
+ * @cssproperty --forge-focus-indicator-inward-offset - The offset of the focus indicator when inward.
37
+ * @cssproperty --forge-focus-indicator-shape - The shape of the focus indicator.
38
+ * @cssproperty --forge-focus-indicator-width - The width of the focus indicator when resting.
39
+ * @cssproperty --forge-focus-indicator-shape-start-start - The start start shape.
40
+ * @cssproperty --forge-focus-indicator-shape-start-end - The start end shape.
41
+ * @cssproperty --forge-focus-indicator-shape-end-start - The end start shape.
42
+ * @cssproperty --forge-focus-indicator-shape-end-end - The end end shape.
43
+ * @cssproperty --forge-focus-indicator-offset-block - The block offset.
44
+ * @cssproperty --forge-focus-indicator-offset-inline - The inline offset.
45
+ *
46
+ * @csspart indicator - The focus indicator element.
47
+ */
48
+ let FocusIndicatorComponent = class FocusIndicatorComponent extends BaseComponent {
49
+ static get observedAttributes() {
50
+ return [
51
+ FOCUS_INDICATOR_CONSTANTS.attributes.TARGET,
52
+ FOCUS_INDICATOR_CONSTANTS.attributes.ACTIVE,
53
+ FOCUS_INDICATOR_CONSTANTS.attributes.INWARD,
54
+ FOCUS_INDICATOR_CONSTANTS.attributes.CIRCULAR,
55
+ FOCUS_INDICATOR_CONSTANTS.attributes.ALLOW_FOCUS
56
+ ];
57
+ }
58
+ constructor() {
59
+ super();
60
+ attachShadowTemplate(this, template, styles);
61
+ this._foundation = new FocusIndicatorFoundation(new FocusIndicatorAdapter(this));
62
+ }
63
+ connectedCallback() {
64
+ this._foundation.initialize();
65
+ }
66
+ disconnectedCallback() {
67
+ this._foundation.destroy();
68
+ }
69
+ attributeChangedCallback(name, oldValue, newValue) {
70
+ switch (name) {
71
+ case FOCUS_INDICATOR_CONSTANTS.attributes.TARGET:
72
+ this.target = newValue;
73
+ break;
74
+ case FOCUS_INDICATOR_CONSTANTS.attributes.ACTIVE:
75
+ this.active = coerceBoolean(newValue);
76
+ break;
77
+ case FOCUS_INDICATOR_CONSTANTS.attributes.INWARD:
78
+ this.inward = coerceBoolean(newValue);
79
+ break;
80
+ case FOCUS_INDICATOR_CONSTANTS.attributes.CIRCULAR:
81
+ this.circular = coerceBoolean(newValue);
82
+ break;
83
+ case FOCUS_INDICATOR_CONSTANTS.attributes.ALLOW_FOCUS:
84
+ this.allowFocus = coerceBoolean(newValue);
85
+ break;
86
+ }
87
+ }
88
+ };
89
+ __decorate([
90
+ FoundationProperty()
91
+ ], FocusIndicatorComponent.prototype, "targetElement", void 0);
92
+ __decorate([
93
+ FoundationProperty()
94
+ ], FocusIndicatorComponent.prototype, "target", void 0);
95
+ __decorate([
96
+ FoundationProperty()
97
+ ], FocusIndicatorComponent.prototype, "active", void 0);
98
+ __decorate([
99
+ FoundationProperty()
100
+ ], FocusIndicatorComponent.prototype, "inward", void 0);
101
+ __decorate([
102
+ FoundationProperty()
103
+ ], FocusIndicatorComponent.prototype, "circular", void 0);
104
+ __decorate([
105
+ FoundationProperty()
106
+ ], FocusIndicatorComponent.prototype, "allowFocus", void 0);
107
+ FocusIndicatorComponent = __decorate([
108
+ CustomElement({
109
+ name: FOCUS_INDICATOR_CONSTANTS.elementName
110
+ })
111
+ ], FocusIndicatorComponent);
112
+ export { FocusIndicatorComponent };
@@ -0,0 +1,10 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2023 Tyler Technologies, Inc.
4
+ * License: Apache-2.0
5
+ */
6
+ export * from './focus-indicator-adapter';
7
+ export * from './focus-indicator-constants';
8
+ export * from './focus-indicator-foundation';
9
+ export * from './focus-indicator';
10
+ export declare function defineFocusIndicatorComponent(): void;
@@ -0,0 +1,14 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2023 Tyler Technologies, Inc.
4
+ * License: Apache-2.0
5
+ */
6
+ import { defineCustomElement } from '@tylertech/forge-core';
7
+ import { FocusIndicatorComponent } from './focus-indicator';
8
+ export * from './focus-indicator-adapter';
9
+ export * from './focus-indicator-constants';
10
+ export * from './focus-indicator-foundation';
11
+ export * from './focus-indicator';
12
+ export function defineFocusIndicatorComponent() {
13
+ defineCustomElement(FocusIndicatorComponent);
14
+ }
@@ -33,6 +33,7 @@ export declare class IconButtonComponent extends BaseComponent implements IIconB
33
33
  private _dense;
34
34
  private _densityLevel;
35
35
  private _toggleHandler;
36
+ private _destroyUserInteractionListener;
36
37
  constructor();
37
38
  connectedCallback(): void;
38
39
  disconnectedCallback(): void;
@@ -7,7 +7,7 @@ import { __decorate } from "tslib";
7
7
  import { coerceBoolean, coerceNumber, CustomElement, emitEvent, ensureChild, toggleClass } from '@tylertech/forge-core';
8
8
  import { BaseComponent } from '../core/base/base-component';
9
9
  import { ForgeRipple } from '../ripple';
10
- import { userInteractionListener } from '../core/utils';
10
+ import { createUserInteractionListener } from '../core/utils';
11
11
  import { ICON_BUTTON_CONSTANTS } from './icon-button-constants';
12
12
  /**
13
13
  * The custom element class behind the `<forge-icon-button>` element.
@@ -39,6 +39,10 @@ let IconButtonComponent = class IconButtonComponent extends BaseComponent {
39
39
  }
40
40
  }
41
41
  disconnectedCallback() {
42
+ if (typeof this._destroyUserInteractionListener === 'function') {
43
+ this._destroyUserInteractionListener();
44
+ this._destroyUserInteractionListener = undefined;
45
+ }
42
46
  if (this._rippleInstance) {
43
47
  this._rippleInstance.destroy();
44
48
  }
@@ -130,7 +134,10 @@ let IconButtonComponent = class IconButtonComponent extends BaseComponent {
130
134
  this._deferRippleInitialization();
131
135
  }
132
136
  async _deferRippleInitialization() {
133
- const type = await userInteractionListener(this._buttonElement);
137
+ const { userInteraction, destroy } = createUserInteractionListener(this._buttonElement);
138
+ this._destroyUserInteractionListener = destroy;
139
+ const { type } = await userInteraction;
140
+ this._destroyUserInteractionListener = undefined;
134
141
  if (!this._rippleInstance) {
135
142
  this._rippleInstance = this._createRipple();
136
143
  if (type === 'focusin') {
package/esm/index.d.ts CHANGED
@@ -32,6 +32,7 @@ export * from './expansion-panel';
32
32
  export * from './file-picker';
33
33
  export * from './floating-action-button';
34
34
  export * from './floating-label';
35
+ export * from './focus-indicator';
35
36
  export * from './icon-button';
36
37
  export * from './inline-message';
37
38
  export * from './keyboard-shortcut';
@@ -52,6 +53,7 @@ export * from './select';
52
53
  export * from './skeleton';
53
54
  export * from './slider';
54
55
  export * from './split-view';
56
+ export * from './state-layer';
55
57
  export * from './stepper';
56
58
  export * from './switch';
57
59
  export * from './table';
package/esm/index.js CHANGED
@@ -35,6 +35,7 @@ import { DrawerComponent, MiniDrawerComponent, ModalDrawerComponent } from './dr
35
35
  import { ExpansionPanelComponent } from './expansion-panel';
36
36
  import { FilePickerComponent } from './file-picker';
37
37
  import { FloatingActionButton } from './floating-action-button';
38
+ import { FocusIndicatorComponent } from './focus-indicator';
38
39
  import { IconButtonComponent } from './icon-button';
39
40
  import { InlineMessageComponent } from './inline-message';
40
41
  import { KeyboardShortcutComponent } from './keyboard-shortcut';
@@ -57,6 +58,7 @@ import { OptionComponent, OptionGroupComponent, SelectComponent } from './select
57
58
  import { SkeletonComponent } from './skeleton';
58
59
  import { SliderComponent } from './slider';
59
60
  import { SplitViewComponent } from './split-view';
61
+ import { StateLayerComponent } from './state-layer';
60
62
  import { StepComponent, StepperComponent } from './stepper';
61
63
  import { SwitchComponent } from './switch';
62
64
  import { TableComponent } from './table';
@@ -99,6 +101,7 @@ export * from './expansion-panel';
99
101
  export * from './file-picker';
100
102
  export * from './floating-action-button';
101
103
  export * from './floating-label';
104
+ export * from './focus-indicator';
102
105
  export * from './icon-button';
103
106
  export * from './inline-message';
104
107
  export * from './keyboard-shortcut';
@@ -119,6 +122,7 @@ export * from './select';
119
122
  export * from './skeleton';
120
123
  export * from './slider';
121
124
  export * from './split-view';
125
+ export * from './state-layer';
122
126
  export * from './stepper';
123
127
  export * from './switch';
124
128
  export * from './table';
@@ -162,6 +166,7 @@ const CUSTOM_ELEMENTS = [
162
166
  ExpansionPanelComponent,
163
167
  FilePickerComponent,
164
168
  FloatingActionButton,
169
+ FocusIndicatorComponent,
165
170
  ProductIconComponent,
166
171
  IconComponent,
167
172
  IconButtonComponent,
@@ -195,6 +200,7 @@ const CUSTOM_ELEMENTS = [
195
200
  SliderComponent,
196
201
  SplitViewComponent,
197
202
  StackComponent,
203
+ StateLayerComponent,
198
204
  StepperComponent,
199
205
  StepComponent,
200
206
  SwitchComponent,
@@ -4,7 +4,7 @@
4
4
  * License: Apache-2.0
5
5
  */
6
6
  import { BaseAdapter, IBaseAdapter } from '../../core/base/base-adapter';
7
- import { userInteractionListener } from '../../core/utils';
7
+ import { createUserInteractionListener } from '../../core/utils';
8
8
  import { IListItemComponent } from './list-item';
9
9
  export interface IListItemAdapter extends IBaseAdapter {
10
10
  initializeAccessibility(): void;
@@ -27,7 +27,7 @@ export interface IListItemAdapter extends IBaseAdapter {
27
27
  setIndented(indented: boolean): void;
28
28
  setWrap(value: boolean): void;
29
29
  trySelect(value: unknown): boolean | null;
30
- userInteractionListener(): ReturnType<typeof userInteractionListener>;
30
+ userInteractionListener(): ReturnType<typeof createUserInteractionListener>;
31
31
  }
32
32
  export declare class ListItemAdapter extends BaseAdapter<IListItemComponent> implements IListItemAdapter {
33
33
  private _listItemElement;
@@ -105,5 +105,5 @@ export declare class ListItemAdapter extends BaseAdapter<IListItemComponent> imp
105
105
  * @returns Returns whether the list item is selected or not
106
106
  */
107
107
  trySelect(value: unknown): boolean | null;
108
- userInteractionListener(): ReturnType<typeof userInteractionListener>;
108
+ userInteractionListener(): ReturnType<typeof createUserInteractionListener>;
109
109
  }
@@ -5,7 +5,7 @@
5
5
  */
6
6
  import { addClass, getShadowElement, removeClass, requireParent, isDeepEqual, toggleClass } from '@tylertech/forge-core';
7
7
  import { BaseAdapter } from '../../core/base/base-adapter';
8
- import { userInteractionListener } from '../../core/utils';
8
+ import { createUserInteractionListener } from '../../core/utils';
9
9
  import { LIST_CONSTANTS } from '../list/list-constants';
10
10
  import { LIST_ITEM_CONSTANTS } from './list-item-constants';
11
11
  import { ForgeRipple } from '../../ripple';
@@ -180,6 +180,6 @@ export class ListItemAdapter extends BaseAdapter {
180
180
  return isSelected;
181
181
  }
182
182
  userInteractionListener() {
183
- return userInteractionListener(this._listItemElement);
183
+ return createUserInteractionListener(this._listItemElement);
184
184
  }
185
185
  }