@tylertech/forge 3.0.0-next.8 → 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 (343) hide show
  1. package/custom-elements.json +2080 -487
  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/checkbox/index.js +1 -1
  22. package/dist/esm/chip-field/index.js +1 -1
  23. package/dist/esm/chips/chip/index.js +1 -1
  24. package/dist/esm/chips/chip-set/index.js +1 -1
  25. package/dist/esm/chips/index.js +1 -1
  26. package/dist/esm/chunks/{chunk.PPPTT3SM.js → chunk.2VP57RZO.js} +2 -2
  27. package/dist/esm/chunks/{chunk.PPPTT3SM.js.map → chunk.2VP57RZO.js.map} +2 -2
  28. package/dist/esm/chunks/{chunk.TXFYS6EU.js → chunk.33EJTOVA.js} +2 -2
  29. package/dist/esm/chunks/{chunk.OTVT3XM2.js → chunk.3JDFBEF7.js} +2 -2
  30. package/dist/esm/chunks/chunk.3ME47JIX.js +7 -0
  31. package/dist/esm/chunks/chunk.3ME47JIX.js.map +7 -0
  32. package/dist/esm/chunks/{chunk.V6JVHYVW.js → chunk.44UCSD46.js} +2 -2
  33. package/dist/esm/chunks/{chunk.EUE3OVC7.js → chunk.4WVHON6T.js} +2 -2
  34. package/dist/esm/chunks/chunk.4WVHON6T.js.map +7 -0
  35. package/dist/esm/chunks/{chunk.6SBTLXLH.js → chunk.5IQGVS6U.js} +2 -2
  36. package/dist/esm/chunks/{chunk.6SBTLXLH.js.map → chunk.5IQGVS6U.js.map} +1 -1
  37. package/dist/esm/chunks/{chunk.7JQHQKXN.js → chunk.6MPXRRMB.js} +2 -2
  38. package/dist/esm/chunks/{chunk.MXNLCQRB.js → chunk.6VDF54LZ.js} +2 -2
  39. package/dist/esm/chunks/{chunk.GF2GUVYS.js → chunk.7TGGJGTG.js} +2 -2
  40. package/dist/esm/chunks/{chunk.GF2GUVYS.js.map → chunk.7TGGJGTG.js.map} +1 -1
  41. package/dist/esm/chunks/{chunk.4EB5NVCK.js → chunk.AHHNJSZK.js} +2 -2
  42. package/dist/esm/chunks/chunk.BBKRPL6R.js +7 -0
  43. package/dist/esm/chunks/chunk.BBKRPL6R.js.map +7 -0
  44. package/dist/esm/chunks/{chunk.BSTIDYQJ.js → chunk.BBWMSCVG.js} +2 -2
  45. package/dist/esm/chunks/{chunk.BKCEVPKW.js → chunk.BDCJIRNK.js} +2 -2
  46. package/dist/esm/chunks/{chunk.IIXLFXHZ.js → chunk.BSVFCJCQ.js} +2 -2
  47. package/dist/esm/chunks/chunk.CAUWWFF4.js +7 -0
  48. package/dist/esm/chunks/chunk.CAUWWFF4.js.map +7 -0
  49. package/dist/esm/chunks/{chunk.SYZB7B4F.js → chunk.CL65KLH7.js} +2 -2
  50. package/dist/esm/chunks/{chunk.4LVS2EYJ.js → chunk.DFGBVJBE.js} +2 -2
  51. package/dist/esm/chunks/chunk.DXZ5LVFJ.js +7 -0
  52. package/dist/esm/chunks/chunk.DXZ5LVFJ.js.map +7 -0
  53. package/dist/esm/chunks/{chunk.YUAU5IWT.js → chunk.F776DWXU.js} +2 -2
  54. package/dist/esm/chunks/{chunk.HKJEGD6C.js → chunk.FIBGOPNP.js} +2 -2
  55. package/dist/esm/chunks/{chunk.HKJEGD6C.js.map → chunk.FIBGOPNP.js.map} +1 -1
  56. package/dist/esm/chunks/{chunk.CN27IHDN.js → chunk.GEGK55XX.js} +2 -2
  57. package/dist/esm/chunks/{chunk.CN27IHDN.js.map → chunk.GEGK55XX.js.map} +2 -2
  58. package/dist/esm/chunks/{chunk.2QFIMTVP.js → chunk.GT3XBPZY.js} +2 -2
  59. package/dist/esm/chunks/{chunk.5MK5YWCK.js → chunk.HUGRRRQA.js} +2 -2
  60. package/dist/esm/chunks/{chunk.GJW4WS4I.js → chunk.HXJCTE47.js} +2 -2
  61. package/dist/esm/chunks/{chunk.RHYRMQS7.js → chunk.IPGZ24EH.js} +2 -2
  62. package/dist/esm/chunks/{chunk.RHYRMQS7.js.map → chunk.IPGZ24EH.js.map} +1 -1
  63. package/dist/esm/chunks/chunk.ISC7SZSP.js +7 -0
  64. package/dist/esm/chunks/chunk.ISC7SZSP.js.map +7 -0
  65. package/dist/esm/chunks/{chunk.RUSHOL23.js → chunk.JAAJDT5E.js} +2 -2
  66. package/dist/esm/chunks/{chunk.SIJGKRYS.js → chunk.JCRC2VEI.js} +2 -2
  67. package/dist/esm/chunks/{chunk.SIJGKRYS.js.map → chunk.JCRC2VEI.js.map} +1 -1
  68. package/dist/esm/chunks/{chunk.3AF7CJP2.js → chunk.JFKSREWG.js} +2 -2
  69. package/dist/esm/chunks/{chunk.3AF7CJP2.js.map → chunk.JFKSREWG.js.map} +1 -1
  70. package/dist/esm/chunks/{chunk.FAANPQES.js → chunk.JL4XB4RI.js} +2 -2
  71. package/dist/esm/chunks/{chunk.24L5GDD2.js → chunk.JTIPXKV6.js} +2 -2
  72. package/dist/esm/chunks/{chunk.24L5GDD2.js.map → chunk.JTIPXKV6.js.map} +2 -2
  73. package/dist/esm/chunks/chunk.KO45GDOA.js +7 -0
  74. package/dist/esm/chunks/{chunk.2CTK5R37.js.map → chunk.KO45GDOA.js.map} +2 -2
  75. package/dist/esm/chunks/chunk.KSCUIS5C.js +7 -0
  76. package/dist/esm/chunks/chunk.KSCUIS5C.js.map +7 -0
  77. package/dist/esm/chunks/{chunk.2LRDPTHK.js → chunk.M2M47T4L.js} +2 -2
  78. package/dist/esm/chunks/{chunk.JVW6JGV3.js → chunk.MGWY7YIL.js} +2 -2
  79. package/dist/esm/chunks/{chunk.JVW6JGV3.js.map → chunk.MGWY7YIL.js.map} +2 -2
  80. package/dist/esm/chunks/{chunk.3CBVRCKM.js → chunk.MJSLXZBM.js} +2 -2
  81. package/dist/esm/chunks/{chunk.3CBVRCKM.js.map → chunk.MJSLXZBM.js.map} +1 -1
  82. package/dist/esm/chunks/{chunk.2YAU7AXH.js → chunk.N7PQ2MUQ.js} +2 -2
  83. package/dist/esm/chunks/{chunk.2YAU7AXH.js.map → chunk.N7PQ2MUQ.js.map} +1 -1
  84. package/dist/esm/chunks/{chunk.NDGFQILG.js → chunk.NE4NCRRZ.js} +2 -2
  85. package/dist/esm/chunks/chunk.NF4J3Q5X.js +7 -0
  86. package/dist/esm/chunks/chunk.NF4J3Q5X.js.map +7 -0
  87. package/dist/esm/chunks/chunk.OEYALYRM.js +7 -0
  88. package/dist/esm/chunks/chunk.OEYALYRM.js.map +7 -0
  89. package/dist/esm/chunks/{chunk.GHSAKRYH.js → chunk.OKKH7F7M.js} +2 -2
  90. package/dist/esm/chunks/{chunk.AGMPIMJV.js → chunk.QL45FKVJ.js} +2 -2
  91. package/dist/esm/chunks/{chunk.AGMPIMJV.js.map → chunk.QL45FKVJ.js.map} +2 -2
  92. package/dist/esm/chunks/chunk.QU76MOCS.js +12 -0
  93. package/dist/esm/chunks/chunk.QU76MOCS.js.map +7 -0
  94. package/dist/esm/chunks/{chunk.5PHLKON3.js → chunk.R5HZFOUK.js} +2 -2
  95. package/dist/esm/chunks/{chunk.5PHLKON3.js.map → chunk.R5HZFOUK.js.map} +2 -2
  96. package/dist/esm/chunks/chunk.SAXRW6GB.js +7 -0
  97. package/dist/esm/chunks/chunk.SAXRW6GB.js.map +7 -0
  98. package/dist/esm/chunks/{chunk.2IQGDFQS.js → chunk.SEP3L4QL.js} +2 -2
  99. package/dist/esm/chunks/{chunk.2IQGDFQS.js.map → chunk.SEP3L4QL.js.map} +1 -1
  100. package/dist/esm/chunks/{chunk.Z5TWWM7I.js → chunk.SN5LPTHH.js} +2 -2
  101. package/dist/esm/chunks/{chunk.Z5TWWM7I.js.map → chunk.SN5LPTHH.js.map} +1 -1
  102. package/dist/esm/chunks/{chunk.CNQESSA3.js → chunk.UKFJHDO7.js} +2 -2
  103. package/dist/esm/chunks/{chunk.IGK3VYZG.js → chunk.VI2GRQO3.js} +2 -2
  104. package/dist/esm/chunks/{chunk.A5MBSCSQ.js → chunk.VNOJO2PF.js} +2 -2
  105. package/dist/esm/chunks/chunk.W7PZTNZ4.js +7 -0
  106. package/dist/esm/chunks/chunk.W7PZTNZ4.js.map +7 -0
  107. package/dist/esm/chunks/{chunk.2YX7ASSX.js → chunk.WXN4S7CN.js} +2 -2
  108. package/dist/esm/chunks/{chunk.ER52NFXX.js → chunk.X5BG35YX.js} +2 -2
  109. package/dist/esm/chunks/{chunk.THPU5KBV.js → chunk.XRESQBNE.js} +2 -2
  110. package/dist/esm/chunks/{chunk.632OMHHN.js → chunk.YDY2IGBF.js} +2 -2
  111. package/dist/esm/chunks/{chunk.632OMHHN.js.map → chunk.YDY2IGBF.js.map} +1 -1
  112. package/dist/esm/chunks/{chunk.QYKO543K.js → chunk.YWCLKUK7.js} +2 -2
  113. package/dist/esm/chunks/{chunk.QA3NU7EN.js → chunk.Z4J4D5FD.js} +2 -2
  114. package/dist/esm/chunks/{chunk.QA3NU7EN.js.map → chunk.Z4J4D5FD.js.map} +1 -1
  115. package/dist/esm/chunks/{chunk.V4RBOYNH.js → chunk.ZTGPXIC2.js} +2 -2
  116. package/dist/esm/chunks/{chunk.V4RBOYNH.js.map → chunk.ZTGPXIC2.js.map} +1 -1
  117. package/dist/esm/circular-progress/index.js +1 -1
  118. package/dist/esm/color-picker/index.js +1 -1
  119. package/dist/esm/core/index.js +1 -1
  120. package/dist/esm/core/utils/index.js +1 -1
  121. package/dist/esm/date-picker/index.js +1 -1
  122. package/dist/esm/date-range-picker/index.js +1 -1
  123. package/dist/esm/expansion-panel/index.js +1 -1
  124. package/dist/esm/file-picker/index.js +1 -1
  125. package/dist/esm/focus-indicator/index.js +1 -1
  126. package/dist/esm/icon/index.js +1 -1
  127. package/dist/esm/icon-button/index.js +1 -1
  128. package/dist/esm/index.js +1 -1
  129. package/dist/esm/list/index.js +1 -1
  130. package/dist/esm/list/list/index.js +1 -1
  131. package/dist/esm/list/list-item/index.js +1 -1
  132. package/dist/esm/list-dropdown/index.js +1 -1
  133. package/dist/esm/menu/index.js +1 -1
  134. package/dist/esm/open-icon/index.js +1 -1
  135. package/dist/esm/paginator/index.js +1 -1
  136. package/dist/esm/profile-card/index.js +1 -1
  137. package/dist/esm/quantity-field/index.js +1 -1
  138. package/dist/esm/radio/index.js +1 -1
  139. package/dist/esm/select/core/index.js +1 -1
  140. package/dist/esm/select/index.js +1 -1
  141. package/dist/esm/select/select/index.js +1 -1
  142. package/dist/esm/select/select-dropdown/index.js +1 -1
  143. package/dist/esm/slider/index.js +1 -1
  144. package/dist/esm/split-view/index.js +1 -1
  145. package/dist/esm/split-view/split-view/index.js +1 -1
  146. package/dist/esm/split-view/split-view-panel/index.js +1 -1
  147. package/dist/esm/state-layer/index.js +7 -0
  148. package/dist/esm/state-layer/index.js.map +7 -0
  149. package/dist/esm/stepper/index.js +1 -1
  150. package/dist/esm/stepper/step/index.js +1 -1
  151. package/dist/esm/stepper/stepper/index.js +1 -1
  152. package/dist/esm/switch/index.js +1 -1
  153. package/dist/esm/table/index.js +1 -1
  154. package/dist/esm/tabs/index.js +1 -1
  155. package/dist/esm/tabs/tab/index.js +1 -1
  156. package/dist/esm/tabs/tab-bar/index.js +1 -1
  157. package/dist/esm/text-field/index.js +1 -1
  158. package/dist/esm/time-picker/index.js +1 -1
  159. package/dist/esm/toast/index.js +1 -1
  160. package/dist/forge-dark.css +1 -1
  161. package/dist/forge.css +1 -1
  162. package/dist/icon-button/forge-icon-button.css +1 -1
  163. package/dist/table/forge-table.css +1 -1
  164. package/dist/theme/forge-theme.css +1 -1
  165. package/esm/app-bar/app-bar.js +1 -1
  166. package/esm/banner/banner.js +1 -1
  167. package/esm/bottom-sheet/bottom-sheet.js +1 -1
  168. package/esm/busy-indicator/busy-indicator.js +1 -1
  169. package/esm/button/button.d.ts +1 -0
  170. package/esm/button/button.js +8 -2
  171. package/esm/button-toggle/button-toggle/button-toggle.js +1 -1
  172. package/esm/calendar/calendar-menu/calendar-menu.js +1 -1
  173. package/esm/calendar/calendar.js +1 -1
  174. package/esm/checkbox/checkbox-adapter.d.ts +1 -0
  175. package/esm/checkbox/checkbox-adapter.js +9 -2
  176. package/esm/checkbox/checkbox.js +1 -1
  177. package/esm/chip-field/chip-field.js +1 -1
  178. package/esm/chips/chip/chip.js +1 -1
  179. package/esm/circular-progress/circular-progress.d.ts +3 -3
  180. package/esm/circular-progress/circular-progress.js +4 -4
  181. package/esm/color-picker/color-picker.js +1 -1
  182. package/esm/core/testing/pointer.d.ts +13 -0
  183. package/esm/core/testing/pointer.js +42 -0
  184. package/esm/core/utils/utils.d.ts +16 -2
  185. package/esm/core/utils/utils.js +47 -6
  186. package/esm/file-picker/file-picker.js +1 -1
  187. package/esm/focus-indicator/focus-indicator-adapter.d.ts +0 -8
  188. package/esm/focus-indicator/focus-indicator-adapter.js +2 -22
  189. package/esm/focus-indicator/focus-indicator-foundation.js +1 -1
  190. package/esm/focus-indicator/focus-indicator.js +1 -1
  191. package/esm/icon-button/icon-button.d.ts +1 -0
  192. package/esm/icon-button/icon-button.js +9 -2
  193. package/esm/index.d.ts +1 -0
  194. package/esm/index.js +3 -0
  195. package/esm/list/list-item/list-item-adapter.d.ts +3 -3
  196. package/esm/list/list-item/list-item-adapter.js +2 -2
  197. package/esm/list/list-item/list-item-foundation.d.ts +1 -0
  198. package/esm/list/list-item/list-item-foundation.js +8 -1
  199. package/esm/list/list-item/list-item.js +1 -1
  200. package/esm/paginator/paginator.js +1 -1
  201. package/esm/profile-card/profile-card.js +1 -1
  202. package/esm/radio/radio-adapter.d.ts +1 -0
  203. package/esm/radio/radio-adapter.js +9 -2
  204. package/esm/select/select/select.js +1 -1
  205. package/esm/slider/slider-adapter.d.ts +0 -16
  206. package/esm/slider/slider-adapter.js +11 -71
  207. package/esm/slider/slider-constants.d.ts +0 -3
  208. package/esm/slider/slider-constants.js +0 -3
  209. package/esm/slider/slider-foundation.d.ts +0 -1
  210. package/esm/slider/slider-foundation.js +0 -6
  211. package/esm/slider/slider-utils.js +3 -3
  212. package/esm/slider/slider.d.ts +0 -1
  213. package/esm/slider/slider.js +5 -6
  214. package/esm/split-view/split-view-panel/split-view-panel.js +1 -1
  215. package/esm/state-layer/index.d.ts +10 -0
  216. package/esm/state-layer/index.js +14 -0
  217. package/esm/state-layer/state-layer-adapter.d.ts +41 -0
  218. package/esm/state-layer/state-layer-adapter.js +101 -0
  219. package/esm/state-layer/state-layer-constants.d.ts +79 -0
  220. package/esm/state-layer/state-layer-constants.js +89 -0
  221. package/esm/state-layer/state-layer-foundation.d.ts +57 -0
  222. package/esm/state-layer/state-layer-foundation.js +237 -0
  223. package/esm/state-layer/state-layer-utils.d.ts +26 -0
  224. package/esm/state-layer/state-layer-utils.js +54 -0
  225. package/esm/state-layer/state-layer.d.ts +66 -0
  226. package/esm/state-layer/state-layer.js +96 -0
  227. package/esm/stepper/step/step.js +1 -1
  228. package/esm/switch/switch.js +10 -3
  229. package/esm/tabs/tab/tab-adapter.d.ts +3 -5
  230. package/esm/tabs/tab/tab-adapter.js +6 -15
  231. package/esm/tabs/tab/tab-constants.d.ts +0 -1
  232. package/esm/tabs/tab/tab-constants.js +0 -1
  233. package/esm/tabs/tab/tab-foundation.d.ts +0 -1
  234. package/esm/tabs/tab/tab-foundation.js +1 -3
  235. package/esm/tabs/tab/tab.d.ts +0 -1
  236. package/esm/tabs/tab/tab.js +5 -6
  237. package/esm/tabs/tab-bar/tab-bar.d.ts +2 -2
  238. package/esm/tabs/tab-bar/tab-bar.js +3 -3
  239. package/esm/text-field/text-field.js +1 -1
  240. package/esm/toast/toast.js +1 -1
  241. package/package.json +1 -1
  242. package/styles/app-bar/_mixins.scss +9 -1
  243. package/styles/circular-progress/_mixins.scss +3 -10
  244. package/styles/core/{style-layer → styles}/circular-progress/_core.scss +5 -8
  245. package/styles/core/styles/focus-indicator/_core.scss +5 -0
  246. package/styles/core/styles/focus-indicator/_variables.scss +8 -0
  247. package/styles/core/styles/focus-indicator/index.scss +7 -0
  248. package/styles/core/{style-layer → styles}/slider/_core.scss +13 -31
  249. package/styles/core/styles/state-layer/_core.scss +144 -0
  250. package/styles/core/styles/state-layer/_variables.scss +8 -0
  251. package/styles/core/{style-layer/tabs/tab → styles/state-layer}/index.scss +0 -4
  252. package/styles/core/{style-layer → styles}/tabs/tab/_core.scss +36 -40
  253. package/styles/core/{style-layer → styles}/tabs/tab-bar/_core.scss +2 -2
  254. package/styles/core/{style-layer → styles}/tabs/tab-bar/_variables.scss +1 -1
  255. package/styles/core/styles/tabs/tab-bar/index.scss +7 -0
  256. package/styles/core/styles/tokens/_color-palette.scss +299 -0
  257. package/styles/core/styles/tokens/circular-progress/_tokens.scss +14 -0
  258. package/styles/core/styles/tokens/focus-indicator/_tokens.scss +24 -0
  259. package/styles/core/styles/tokens/index.scss +58 -0
  260. package/styles/core/styles/tokens/state-layer/_tokens.scss +17 -0
  261. package/styles/core/styles/tokens/theme/_tokens.scss +185 -0
  262. package/styles/core/styles/tokens/typography/_tokens.scss +47 -0
  263. package/styles/core/styles/utils/_elevation.scss +5 -0
  264. package/styles/focus-indicator/_mixins.scss +4 -13
  265. package/styles/focus-indicator/_variables.scss +0 -15
  266. package/styles/linear-progress/_mixins.scss +1 -1
  267. package/styles/linear-progress/_variables.scss +1 -1
  268. package/styles/slider/_mixins.scss +8 -1
  269. package/styles/state-layer/_mixins.scss +23 -0
  270. package/styles/state-layer/state-layer.scss +20 -0
  271. package/styles/tabs/tab/_mixins.scss +9 -1
  272. package/styles/tabs/tab/_variables.scss +2 -0
  273. package/styles/tabs/tab-bar/_mixins.scss +2 -1
  274. package/styles/tabs/tab-bar/_variables.scss +2 -2
  275. package/styles/theme/_theme-dark.scss +5 -3
  276. package/styles/theme/_theme.scss +3 -36
  277. package/dist/esm/chunks/chunk.246JM2YT.js +0 -7
  278. package/dist/esm/chunks/chunk.246JM2YT.js.map +0 -7
  279. package/dist/esm/chunks/chunk.2CTK5R37.js +0 -7
  280. package/dist/esm/chunks/chunk.2XFVFZ3P.js +0 -7
  281. package/dist/esm/chunks/chunk.2XFVFZ3P.js.map +0 -7
  282. package/dist/esm/chunks/chunk.57XQ4F6F.js +0 -12
  283. package/dist/esm/chunks/chunk.57XQ4F6F.js.map +0 -7
  284. package/dist/esm/chunks/chunk.5IVB5L5Z.js +0 -7
  285. package/dist/esm/chunks/chunk.5IVB5L5Z.js.map +0 -7
  286. package/dist/esm/chunks/chunk.A5R7KUIP.js +0 -7
  287. package/dist/esm/chunks/chunk.A5R7KUIP.js.map +0 -7
  288. package/dist/esm/chunks/chunk.C2LTB7EX.js +0 -7
  289. package/dist/esm/chunks/chunk.C2LTB7EX.js.map +0 -7
  290. package/dist/esm/chunks/chunk.EUE3OVC7.js.map +0 -7
  291. package/dist/esm/chunks/chunk.GUYPITGA.js +0 -7
  292. package/dist/esm/chunks/chunk.GUYPITGA.js.map +0 -7
  293. package/dist/esm/chunks/chunk.JQIOVCKI.js +0 -7
  294. package/dist/esm/chunks/chunk.JQIOVCKI.js.map +0 -7
  295. package/dist/esm/chunks/chunk.LJYTJ3RV.js +0 -7
  296. package/dist/esm/chunks/chunk.LJYTJ3RV.js.map +0 -7
  297. package/dist/esm/chunks/chunk.NVMILGC2.js +0 -7
  298. package/dist/esm/chunks/chunk.NVMILGC2.js.map +0 -7
  299. package/esm/slider/slider-handle-ripple.d.ts +0 -18
  300. package/esm/slider/slider-handle-ripple.js +0 -37
  301. package/esm/tabs/tab/tab-ripple.d.ts +0 -17
  302. package/esm/tabs/tab/tab-ripple.js +0 -33
  303. package/styles/circular-progress/_variables.scss +0 -12
  304. /package/dist/esm/chunks/{chunk.TXFYS6EU.js.map → chunk.33EJTOVA.js.map} +0 -0
  305. /package/dist/esm/chunks/{chunk.OTVT3XM2.js.map → chunk.3JDFBEF7.js.map} +0 -0
  306. /package/dist/esm/chunks/{chunk.V6JVHYVW.js.map → chunk.44UCSD46.js.map} +0 -0
  307. /package/dist/esm/chunks/{chunk.7JQHQKXN.js.map → chunk.6MPXRRMB.js.map} +0 -0
  308. /package/dist/esm/chunks/{chunk.MXNLCQRB.js.map → chunk.6VDF54LZ.js.map} +0 -0
  309. /package/dist/esm/chunks/{chunk.4EB5NVCK.js.map → chunk.AHHNJSZK.js.map} +0 -0
  310. /package/dist/esm/chunks/{chunk.BSTIDYQJ.js.map → chunk.BBWMSCVG.js.map} +0 -0
  311. /package/dist/esm/chunks/{chunk.BKCEVPKW.js.map → chunk.BDCJIRNK.js.map} +0 -0
  312. /package/dist/esm/chunks/{chunk.IIXLFXHZ.js.map → chunk.BSVFCJCQ.js.map} +0 -0
  313. /package/dist/esm/chunks/{chunk.SYZB7B4F.js.map → chunk.CL65KLH7.js.map} +0 -0
  314. /package/dist/esm/chunks/{chunk.4LVS2EYJ.js.map → chunk.DFGBVJBE.js.map} +0 -0
  315. /package/dist/esm/chunks/{chunk.YUAU5IWT.js.map → chunk.F776DWXU.js.map} +0 -0
  316. /package/dist/esm/chunks/{chunk.2QFIMTVP.js.map → chunk.GT3XBPZY.js.map} +0 -0
  317. /package/dist/esm/chunks/{chunk.5MK5YWCK.js.map → chunk.HUGRRRQA.js.map} +0 -0
  318. /package/dist/esm/chunks/{chunk.GJW4WS4I.js.map → chunk.HXJCTE47.js.map} +0 -0
  319. /package/dist/esm/chunks/{chunk.RUSHOL23.js.map → chunk.JAAJDT5E.js.map} +0 -0
  320. /package/dist/esm/chunks/{chunk.FAANPQES.js.map → chunk.JL4XB4RI.js.map} +0 -0
  321. /package/dist/esm/chunks/{chunk.2LRDPTHK.js.map → chunk.M2M47T4L.js.map} +0 -0
  322. /package/dist/esm/chunks/{chunk.NDGFQILG.js.map → chunk.NE4NCRRZ.js.map} +0 -0
  323. /package/dist/esm/chunks/{chunk.GHSAKRYH.js.map → chunk.OKKH7F7M.js.map} +0 -0
  324. /package/dist/esm/chunks/{chunk.CNQESSA3.js.map → chunk.UKFJHDO7.js.map} +0 -0
  325. /package/dist/esm/chunks/{chunk.IGK3VYZG.js.map → chunk.VI2GRQO3.js.map} +0 -0
  326. /package/dist/esm/chunks/{chunk.A5MBSCSQ.js.map → chunk.VNOJO2PF.js.map} +0 -0
  327. /package/dist/esm/chunks/{chunk.2YX7ASSX.js.map → chunk.WXN4S7CN.js.map} +0 -0
  328. /package/dist/esm/chunks/{chunk.ER52NFXX.js.map → chunk.X5BG35YX.js.map} +0 -0
  329. /package/dist/esm/chunks/{chunk.THPU5KBV.js.map → chunk.XRESQBNE.js.map} +0 -0
  330. /package/dist/esm/chunks/{chunk.QYKO543K.js.map → chunk.YWCLKUK7.js.map} +0 -0
  331. /package/styles/core/{style-layer → styles}/circular-progress/_animations.scss +0 -0
  332. /package/styles/core/{style-layer → styles}/circular-progress/_variables.scss +0 -0
  333. /package/styles/core/{style-layer → styles}/circular-progress/index.scss +0 -0
  334. /package/styles/core/{style-layer → styles}/core/_config.scss +0 -0
  335. /package/styles/core/{style-layer → styles}/linear-progress/_animations.scss +0 -0
  336. /package/styles/core/{style-layer → styles}/linear-progress/_core.scss +0 -0
  337. /package/styles/core/{style-layer → styles}/linear-progress/_variables.scss +0 -0
  338. /package/styles/core/{style-layer → styles}/linear-progress/index.scss +0 -0
  339. /package/styles/core/{style-layer → styles}/slider/_functions.scss +0 -0
  340. /package/styles/core/{style-layer → styles}/slider/_variables.scss +0 -0
  341. /package/styles/core/{style-layer → styles}/slider/index.scss +0 -0
  342. /package/styles/core/{style-layer → styles}/tabs/tab/_variables.scss +0 -0
  343. /package/styles/core/{style-layer/tabs/tab-bar → styles/tabs/tab}/index.scss +0 -0
@@ -0,0 +1,299 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2023 Tyler Technologies, Inc.
4
+ * License: Apache-2.0
5
+ */
6
+ //
7
+ // Copyright 2017 Google Inc.
8
+ //
9
+ // Permission is hereby granted, free of charge, to any person obtaining a copy
10
+ // of this software and associated documentation files (the "Software"), to deal
11
+ // in the Software without restriction, including without limitation the rights
12
+ // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
13
+ // copies of the Software, and to permit persons to whom the Software is
14
+ // furnished to do so, subject to the following conditions:
15
+ //
16
+ // The above copyright notice and this permission notice shall be included in
17
+ // all copies or substantial portions of the Software.
18
+ //
19
+ // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
20
+ // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
21
+ // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
22
+ // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
23
+ // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
24
+ // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
25
+ // THE SOFTWARE.
26
+ //
27
+
28
+ $red-50: #ffebee;
29
+ $red-100: #ffcdd2;
30
+ $red-200: #ef9a9a;
31
+ $red-300: #e57373;
32
+ $red-400: #ef5350;
33
+ $red-500: #f44336;
34
+ $red-600: #e53935;
35
+ $red-700: #d32f2f;
36
+ $red-800: #c62828;
37
+ $red-900: #b71c1c;
38
+ $red-a100: #ff8a80;
39
+ $red-a200: #ff5252;
40
+ $red-a400: #ff1744;
41
+ $red-a700: #d50000;
42
+
43
+ $pink-50: #fce4ec;
44
+ $pink-100: #f8bbd0;
45
+ $pink-200: #f48fb1;
46
+ $pink-300: #f06292;
47
+ $pink-400: #ec407a;
48
+ $pink-500: #e91e63;
49
+ $pink-600: #d81b60;
50
+ $pink-700: #c2185b;
51
+ $pink-800: #ad1457;
52
+ $pink-900: #880e4f;
53
+ $pink-a100: #ff80ab;
54
+ $pink-a200: #ff4081;
55
+ $pink-a400: #f50057;
56
+ $pink-a700: #c51162;
57
+
58
+ $purple-50: #f3e5f5;
59
+ $purple-100: #e1bee7;
60
+ $purple-200: #ce93d8;
61
+ $purple-300: #ba68c8;
62
+ $purple-400: #ab47bc;
63
+ $purple-500: #9c27b0;
64
+ $purple-600: #8e24aa;
65
+ $purple-700: #7b1fa2;
66
+ $purple-800: #6a1b9a;
67
+ $purple-900: #4a148c;
68
+ $purple-a100: #ea80fc;
69
+ $purple-a200: #e040fb;
70
+ $purple-a400: #d500f9;
71
+ $purple-a700: #a0f;
72
+
73
+ $deep-purple-50: #ede7f6;
74
+ $deep-purple-100: #d1c4e9;
75
+ $deep-purple-200: #b39ddb;
76
+ $deep-purple-300: #9575cd;
77
+ $deep-purple-400: #7e57c2;
78
+ $deep-purple-500: #673ab7;
79
+ $deep-purple-600: #5e35b1;
80
+ $deep-purple-700: #512da8;
81
+ $deep-purple-800: #4527a0;
82
+ $deep-purple-900: #311b92;
83
+ $deep-purple-a100: #b388ff;
84
+ $deep-purple-a200: #7c4dff;
85
+ $deep-purple-a400: #651fff;
86
+ $deep-purple-a700: #6200ea;
87
+
88
+ $indigo-50: #e8eaf6;
89
+ $indigo-100: #c5cae9;
90
+ $indigo-200: #9fa8da;
91
+ $indigo-300: #7986cb;
92
+ $indigo-400: #5c6bc0;
93
+ $indigo-500: #3f51b5;
94
+ $indigo-600: #3949ab;
95
+ $indigo-700: #303f9f;
96
+ $indigo-800: #283593;
97
+ $indigo-900: #1a237e;
98
+ $indigo-a100: #8c9eff;
99
+ $indigo-a200: #536dfe;
100
+ $indigo-a400: #3d5afe;
101
+ $indigo-a700: #304ffe;
102
+
103
+ $blue-50: #e3f2fd;
104
+ $blue-100: #bbdefb;
105
+ $blue-200: #90caf9;
106
+ $blue-300: #64b5f6;
107
+ $blue-400: #42a5f5;
108
+ $blue-500: #2196f3;
109
+ $blue-600: #1e88e5;
110
+ $blue-700: #1976d2;
111
+ $blue-800: #1565c0;
112
+ $blue-900: #0d47a1;
113
+ $blue-a100: #82b1ff;
114
+ $blue-a200: #448aff;
115
+ $blue-a400: #2979ff;
116
+ $blue-a700: #2962ff;
117
+
118
+ $light-blue-50: #e1f5fe;
119
+ $light-blue-100: #b3e5fc;
120
+ $light-blue-200: #81d4fa;
121
+ $light-blue-300: #4fc3f7;
122
+ $light-blue-400: #29b6f6;
123
+ $light-blue-500: #03a9f4;
124
+ $light-blue-600: #039be5;
125
+ $light-blue-700: #0288d1;
126
+ $light-blue-800: #0277bd;
127
+ $light-blue-900: #01579b;
128
+ $light-blue-a100: #80d8ff;
129
+ $light-blue-a200: #40c4ff;
130
+ $light-blue-a400: #00b0ff;
131
+ $light-blue-a700: #0091ea;
132
+
133
+ $cyan-50: #e0f7fa;
134
+ $cyan-100: #b2ebf2;
135
+ $cyan-200: #80deea;
136
+ $cyan-300: #4dd0e1;
137
+ $cyan-400: #26c6da;
138
+ $cyan-500: #00bcd4;
139
+ $cyan-600: #00acc1;
140
+ $cyan-700: #0097a7;
141
+ $cyan-800: #00838f;
142
+ $cyan-900: #006064;
143
+ $cyan-a100: #84ffff;
144
+ $cyan-a200: #18ffff;
145
+ $cyan-a400: #00e5ff;
146
+ $cyan-a700: #00b8d4;
147
+
148
+ $teal-50: #e0f2f1;
149
+ $teal-100: #b2dfdb;
150
+ $teal-200: #80cbc4;
151
+ $teal-300: #4db6ac;
152
+ $teal-400: #26a69a;
153
+ $teal-500: #009688;
154
+ $teal-600: #00897b;
155
+ $teal-700: #00796b;
156
+ $teal-800: #00695c;
157
+ $teal-900: #004d40;
158
+ $teal-a100: #a7ffeb;
159
+ $teal-a200: #64ffda;
160
+ $teal-a400: #1de9b6;
161
+ $teal-a700: #00bfa5;
162
+
163
+ $green-50: #e8f5e9;
164
+ $green-100: #c8e6c9;
165
+ $green-200: #a5d6a7;
166
+ $green-300: #81c784;
167
+ $green-400: #66bb6a;
168
+ $green-500: #4caf50;
169
+ $green-600: #43a047;
170
+ $green-700: #388e3c;
171
+ $green-800: #2e7d32;
172
+ $green-900: #1b5e20;
173
+ $green-a100: #b9f6ca;
174
+ $green-a200: #69f0ae;
175
+ $green-a400: #00e676;
176
+ $green-a700: #00c853;
177
+
178
+ $light-green-50: #f1f8e9;
179
+ $light-green-100: #dcedc8;
180
+ $light-green-200: #c5e1a5;
181
+ $light-green-300: #aed581;
182
+ $light-green-400: #9ccc65;
183
+ $light-green-500: #8bc34a;
184
+ $light-green-600: #7cb342;
185
+ $light-green-700: #689f38;
186
+ $light-green-800: #558b2f;
187
+ $light-green-900: #33691e;
188
+ $light-green-a100: #ccff90;
189
+ $light-green-a200: #b2ff59;
190
+ $light-green-a400: #76ff03;
191
+ $light-green-a700: #64dd17;
192
+
193
+ $lime-50: #f9fbe7;
194
+ $lime-100: #f0f4c3;
195
+ $lime-200: #e6ee9c;
196
+ $lime-300: #dce775;
197
+ $lime-400: #d4e157;
198
+ $lime-500: #cddc39;
199
+ $lime-600: #c0ca33;
200
+ $lime-700: #afb42b;
201
+ $lime-800: #9e9d24;
202
+ $lime-900: #827717;
203
+ $lime-a100: #f4ff81;
204
+ $lime-a200: #eeff41;
205
+ $lime-a400: #c6ff00;
206
+ $lime-a700: #aeea00;
207
+
208
+ $yellow-50: #fffde7;
209
+ $yellow-100: #fff9c4;
210
+ $yellow-200: #fff59d;
211
+ $yellow-300: #fff176;
212
+ $yellow-400: #ffee58;
213
+ $yellow-500: #ffeb3b;
214
+ $yellow-600: #fdd835;
215
+ $yellow-700: #fbc02d;
216
+ $yellow-800: #f9a825;
217
+ $yellow-900: #f57f17;
218
+ $yellow-a100: #ffff8d;
219
+ $yellow-a200: #ff0;
220
+ $yellow-a400: #ffea00;
221
+ $yellow-a700: #ffd600;
222
+
223
+ $amber-50: #fff8e1;
224
+ $amber-100: #ffecb3;
225
+ $amber-200: #ffe082;
226
+ $amber-300: #ffd54f;
227
+ $amber-400: #ffca28;
228
+ $amber-500: #ffc107;
229
+ $amber-600: #ffb300;
230
+ $amber-700: #ffa000;
231
+ $amber-800: #ff8f00;
232
+ $amber-900: #ff6f00;
233
+ $amber-a100: #ffe57f;
234
+ $amber-a200: #ffd740;
235
+ $amber-a400: #ffc400;
236
+ $amber-a700: #ffab00;
237
+
238
+ $orange-50: #fff3e0;
239
+ $orange-100: #ffe0b2;
240
+ $orange-200: #ffcc80;
241
+ $orange-300: #ffb74d;
242
+ $orange-400: #ffa726;
243
+ $orange-500: #ff9800;
244
+ $orange-600: #fb8c00;
245
+ $orange-700: #f57c00;
246
+ $orange-800: #ef6c00;
247
+ $orange-900: #e65100;
248
+ $orange-a100: #ffd180;
249
+ $orange-a200: #ffab40;
250
+ $orange-a400: #ff9100;
251
+ $orange-a700: #ff6d00;
252
+
253
+ $deep-orange-50: #fbe9e7;
254
+ $deep-orange-100: #ffccbc;
255
+ $deep-orange-200: #ffab91;
256
+ $deep-orange-300: #ff8a65;
257
+ $deep-orange-400: #ff7043;
258
+ $deep-orange-500: #ff5722;
259
+ $deep-orange-600: #f4511e;
260
+ $deep-orange-700: #e64a19;
261
+ $deep-orange-800: #d84315;
262
+ $deep-orange-900: #bf360c;
263
+ $deep-orange-a100: #ff9e80;
264
+ $deep-orange-a200: #ff6e40;
265
+ $deep-orange-a400: #ff3d00;
266
+ $deep-orange-a700: #dd2c00;
267
+
268
+ $brown-50: #efebe9;
269
+ $brown-100: #d7ccc8;
270
+ $brown-200: #bcaaa4;
271
+ $brown-300: #a1887f;
272
+ $brown-400: #8d6e63;
273
+ $brown-500: #795548;
274
+ $brown-600: #6d4c41;
275
+ $brown-700: #5d4037;
276
+ $brown-800: #4e342e;
277
+ $brown-900: #3e2723;
278
+
279
+ $grey-50: #fafafa;
280
+ $grey-100: #f5f5f5;
281
+ $grey-200: #eee;
282
+ $grey-300: #e0e0e0;
283
+ $grey-400: #bdbdbd;
284
+ $grey-500: #9e9e9e;
285
+ $grey-600: #757575;
286
+ $grey-700: #616161;
287
+ $grey-800: #424242;
288
+ $grey-900: #212121;
289
+
290
+ $blue-grey-50: #eceff1;
291
+ $blue-grey-100: #cfd8dc;
292
+ $blue-grey-200: #b0bec5;
293
+ $blue-grey-300: #90a4ae;
294
+ $blue-grey-400: #78909c;
295
+ $blue-grey-500: #607d8b;
296
+ $blue-grey-600: #546e7a;
297
+ $blue-grey-700: #455a64;
298
+ $blue-grey-800: #37474f;
299
+ $blue-grey-900: #263238;
@@ -0,0 +1,14 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2023 Tyler Technologies, Inc.
4
+ * License: Apache-2.0
5
+ */
6
+ @use '../theme/tokens';
7
+
8
+ $tokens: (
9
+ size: 48px,
10
+ padding: 0,
11
+ track-width: 12,
12
+ track-color: tokens.variable(tertiary),
13
+ track-background: tokens.variable(track-color)
14
+ ) !default;
@@ -0,0 +1,24 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2023 Tyler Technologies, Inc.
4
+ * License: Apache-2.0
5
+ */
6
+ @use '../theme/tokens';
7
+
8
+ /* stylelint-disable length-zero-no-unit */
9
+ $tokens: (
10
+ active-width: 6px,
11
+ color: tokens.variable(primary),
12
+ duration: 600ms,
13
+ outward-offset: 4px,
14
+ inward-offset: 0px,
15
+ shape: 1px,
16
+ width: 2px,
17
+ easing: cubic-bezier(0.2, 0, 0, 1),
18
+ shape-start-start: var(--_shape),
19
+ shape-start-end: var(--_shape),
20
+ shape-end-end: var(--_shape),
21
+ shape-end-start: var(--_shape),
22
+ offset-block: 0,
23
+ offset-inline: 0
24
+ ) !default;
@@ -0,0 +1,58 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2023 Tyler Technologies, Inc.
4
+ * License: Apache-2.0
5
+ */
6
+ @use 'sass:map';
7
+ @use '../core/config';
8
+
9
+ @forward './theme/tokens';
10
+
11
+ // Theme tokens
12
+ @use './theme/tokens' as theme-tokens;
13
+
14
+ // Component tokens
15
+ @use './circular-progress/tokens' as circular-progress-tokens;
16
+ @use './focus-indicator/tokens' as focus-indicator-tokens;
17
+ @use './state-layer/tokens' as state-layer-tokens;
18
+
19
+ ///
20
+ /// This is a map of all tokens across all modules.
21
+ ///
22
+ $all-tokens: (
23
+ theme: theme-tokens.$tokens,
24
+ circular-progress: circular-progress-tokens.$tokens,
25
+ focus-indicator: focus-indicator-tokens.$tokens,
26
+ state-layer: state-layer-tokens.$tokens
27
+ );
28
+
29
+ ///
30
+ /// Emits CSS custom property declarations for tokens on a per-module basis,
31
+ /// using the provided token map.
32
+ ///
33
+ /// The key is the module name, and the value is a map of token names to values.
34
+ ///
35
+ @mixin provide($key, $tokens) {
36
+ $module-tokens: map.get($all-tokens, $key);
37
+
38
+ @if not $module-tokens {
39
+ @error 'Invalid token module key: "#{$key}"';
40
+ }
41
+
42
+ @each $token-name, $token-value in $tokens {
43
+ @if not map.get($module-tokens, $token-name) {
44
+ @error 'Invalid token "#{$token-name}" for module "#{$key}"';
45
+ }
46
+ --#{config.$prefix}-#{$key}-#{$token-name}: #{$token-value};
47
+ }
48
+ }
49
+
50
+ ///
51
+ /// Emits CSS custom property declarations for all in the provided module.
52
+ ///
53
+ @mixin configuration($module, $prefix: config.$prefix) {
54
+ $module-tokens: map.get($all-tokens, $module);
55
+ @each $token, $value in $module-tokens {
56
+ --_#{$token}: var(--#{$prefix}-#{$token}, #{$value});
57
+ }
58
+ }
@@ -0,0 +1,17 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2023 Tyler Technologies, Inc.
4
+ * License: Apache-2.0
5
+ */
6
+ @use '../theme/tokens';
7
+
8
+ $tokens: (
9
+ color: tokens.variable(on-surface),
10
+ hover-color: var(--_color),
11
+ hover-opacity: 0.08,
12
+ pressed-color: var(--_color),
13
+ pressed-opacity: 0.12,
14
+ hover-duration: 15ms,
15
+ pressed-duration: 105ms,
16
+ animation-duration: 375ms
17
+ ) !default;
@@ -0,0 +1,185 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2023 Tyler Technologies, Inc.
4
+ * License: Apache-2.0
5
+ */
6
+ @use 'sass:map';
7
+ @use '../../core/config';
8
+ @use '../color-palette' as color-palette;
9
+ @use '@material/elevation/elevation-theme' as mdc-elevation-theme;
10
+
11
+ /// Layering tokens to define z-index ranges for common UI elements
12
+ $z-index-tokens: (
13
+ surface: 1,
14
+ header: 4,
15
+ backdrop: 7,
16
+ dialog: 8,
17
+ notification: 9,
18
+ popup: 10,
19
+ tooltip: 11
20
+ ) !default;
21
+
22
+ /// All semantic tokens for the Forge default (light) theme
23
+ $tokens: (
24
+ // General theme colors
25
+ primary: color-palette.$indigo-500,
26
+ on-primary: #ffffff,
27
+ secondary: color-palette.$amber-500,
28
+ on-secondary: #000000,
29
+ tertiary: color-palette.$indigo-a400,
30
+ on-tertiary: #ffffff,
31
+ background: color-palette.$grey-50,
32
+ surface: #ffffff,
33
+ on-surface: #000000,
34
+
35
+ // Status colors
36
+ success: color-palette.$green-800,
37
+ on-success: #ffffff,
38
+ error: #b00020,
39
+ on-error: #ffffff,
40
+ warning: #d14900,
41
+ on-warning: #ffffff,
42
+
43
+ // Text colors
44
+ text-primary: rgba(0, 0, 0, 0.87),
45
+ text-secondary: rgba(0, 0, 0, 0.54),
46
+ text-disabled: rgba(0, 0, 0, 0.12),
47
+ text-hint: rgba(0, 0, 0, 0.38),
48
+ text-icon: rgba(0, 0, 0, 0.38),
49
+ text-primary-on-light: rgba(0, 0, 0, 0.87),
50
+ text-secondary-on-light: rgba(0, 0, 0, 0.54),
51
+ text-disabled-on-light: rgba(0, 0, 0, 0.38),
52
+ text-primary-on-dark: rgba(255, 255, 255, 0.87),
53
+ text-secondary-on-dark: rgba(255, 255, 255, 0.7),
54
+
55
+ // Utility semantic colors
56
+ track-color: rgba(0, 0, 0, 0.12),
57
+ border-color: color-palette.$grey-300,
58
+ icon-color: color-palette.$grey-600,
59
+ form-field-label-on-background: rgba(0, 0, 0, 0.65),
60
+ form-field-icon-disabled-on-background: rgba(0, 0, 0, 0.26),
61
+ form-field-text-disabled-on-background: rgba(0, 0, 0, 0.6),
62
+ form-field-disabled-on-background: color-palette.$grey-100,
63
+ label-disabled-on-background: rgba(0, 0, 0, 0.38),
64
+ elevated-surface: #ffffff,
65
+ on-elevated-surface: rgba(0, 0, 0, 0.87),
66
+ popup-elevation: mdc-elevation-theme.elevation-box-shadow(2),
67
+ scrollbar-thumb: color-palette.$grey-400,
68
+ scrollbar-thumb-hover: color-palette.$grey-500,
69
+ scrollbar-track: #f0f0f0,
70
+ scrollbar-track-hover: #ececec
71
+ ) !default;
72
+
73
+ /// All tokens for the Forge dark theme
74
+ $tokens-dark: (
75
+ // General theme colors
76
+ primary: color-palette.$indigo-a100,
77
+ on-primary: #000000,
78
+ secondary: color-palette.$amber-200,
79
+ on-secondary: #000000,
80
+ tertiary: var(--forge-theme-secondary, color-palette.$amber-200),
81
+ on-tertiary: #ffffff,
82
+ background: color-palette.$grey-900,
83
+ surface: #2c2c2c,
84
+ on-surface: #ffffff,
85
+
86
+ // Status colors
87
+ text-primary: rgba(255, 255, 255, 0.87),
88
+ text-secondary: rgba(255, 255, 255, 0.54),
89
+ text-disabled: rgba(255, 255, 255, 0.12),
90
+ text-hint: rgba(255, 255, 255, 0.38),
91
+ text-icon: rgba(255, 255, 255, 0.38),
92
+ text-disabled-on-background: rgba(255, 255, 255, 0.12),
93
+ text-disabled-on-light: rgba(255, 255, 255, 0.38),
94
+ text-secondary-on-light: rgba(255, 255, 255, 0.54),
95
+ text-primary-on-dark: #000000,
96
+
97
+ // Utility semantic colors
98
+ track-color: rgba(255, 255, 255, 0.12),
99
+ border-color: #464646,
100
+ form-field-icon-disabled-on-background: rgba(78, 45, 45, 0.26),
101
+ form-field-disabled-on-background: #353535,
102
+ form-field-text-disabled-on-background: rgba(255, 255, 255, 0.6),
103
+ form-field-label-on-background: rgba(255, 255, 255, 0.65),
104
+ label-disabled-on-background: rgba(255, 255, 255, 0.38),
105
+ scrollbar-thumb: color-palette.$grey-600,
106
+ scrollbar-thumb-hover: color-palette.$grey-500,
107
+ scrollbar-track: #3a3a3a,
108
+ scrollbar-track-hover: color-palette.$grey-800,
109
+ elevated-surface: #363636,
110
+ on-elevated-surface: rgba(255, 255, 255, 0.87),
111
+ popup-elevation: mdc-elevation-theme.elevation-box-shadow(16)
112
+ ) !default;
113
+
114
+ ///
115
+ /// Temporary tokens to map the MDC theme to Forge theme
116
+ ///
117
+ /// TODO: Remove this once MDC dependency is removed
118
+ ///
119
+ $mdc-remap: (
120
+ primary: var(--forge-theme-primary, map.get($tokens, primary)),
121
+ on-primary: var(--forge-theme-on-primary, map.get($tokens, on-primary)),
122
+ secondary: var(--forge-theme-secondary, map.get($tokens, secondary)),
123
+ on-secondary: var(--forge-theme-on-secondary, map.get($tokens, on-secondary)),
124
+ background: var(--forge-theme-background, map.get($tokens, background)),
125
+ surface: var(--forge-theme-surface, map.get($tokens, surface)),
126
+ on-surface: var(--forge-theme-on-surface, map.get($tokens, on-surface)),
127
+ error: var(--forge-theme-error, map.get($tokens, error)),
128
+ on-error: var(--forge-theme-on-error, map.get($tokens, on-error)),
129
+ text-primary-on-background: var(--forge-theme-text-primary, map.get($tokens, text-primary)),
130
+ text-secondary-on-background: var(--forge-theme-text-secondary, map.get($tokens, text-secondary)),
131
+ text-disabled-on-background: var(--forge-theme-text-disabled, map.get($tokens, text-disabled)),
132
+ text-hint-on-background: var(--forge-theme-text-hint, map.get($tokens, text-hint)),
133
+ text-icon-on-background: var(--forge-theme-text-icon, map.get($tokens, text-icon)),
134
+ text-primary-on-light: var(--forge-theme-text-primary-on-light, map.get($tokens, text-primary-on-light)),
135
+ text-secondary-on-light: var(--forge-theme-text-secondary-on-light, map.get($tokens, text-secondary-on-light)),
136
+ text-disabled-on-light: var(--forge-theme-text-disabled-on-light, map.get($tokens, text-disabled-on-light)),
137
+ text-primary-on-dark: var(--forge-theme-text-primary-on-dark, map.get($tokens, text-primary-on-dark)),
138
+ );
139
+
140
+ ///
141
+ /// Emits custom property declarations for all default theme tokens.
142
+ ///
143
+ @mixin theme-properties {
144
+ /// Temporary tokens to map the MDC theme to Forge theme
145
+ /// TODO: Remove this once MDC dependency is removed
146
+ :root {
147
+ @each $token-name, $token-value in $mdc-remap {
148
+ --mdc-theme-#{$token-name}: #{$token-value};
149
+ }
150
+ }
151
+
152
+ // Forge theme tokens
153
+ :root {
154
+ @each $token-name, $token-value in $tokens {
155
+ --forge-theme-#{$token-name}: #{$token-value};
156
+ }
157
+ }
158
+ }
159
+
160
+ ///
161
+ /// Emits custom property declarations for all dark theme tokens.
162
+ ///
163
+ @mixin theme-properties-dark {
164
+ @each $token-name, $token-value in $tokens-dark {
165
+ --forge-theme-#{$token-name}: #{$token-value};
166
+ }
167
+ }
168
+
169
+ ///
170
+ /// Emits a style declaration for a specific style property that references a theme variable.
171
+ ///
172
+ @mixin property($style, $key) {
173
+ #{$style}: #{variable($key, $fallback)};
174
+ }
175
+
176
+ ///
177
+ /// Gets a CSS custom property declaration for a specific theme variable, with its token value as the fallback value
178
+ ///
179
+ @function variable($key, $prefix: '#{config.$prefix}-theme') {
180
+ @if not map.get($tokens, $key) {
181
+ @error 'Invalid theme property: #{$key}';
182
+ }
183
+ $value: map.get($tokens, $key);
184
+ @return var(--#{$prefix}-#{$key}, $value);
185
+ }
@@ -0,0 +1,47 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2023 Tyler Technologies, Inc.
4
+ * License: Apache-2.0
5
+ */
6
+ @use 'sass:map';
7
+ @use '../../tokens';
8
+
9
+ $font-family: 'Roboto', sans-serif !default;
10
+
11
+ $base: (
12
+ font-family: $font-family,
13
+ font-size: 16px,
14
+ font-weight: 400,
15
+ line-height: normal,
16
+ letter-spacing: normal,
17
+ text-transform: none,
18
+ text-decoration: none,
19
+ color: tokens.variable(text-primary)
20
+ ) !default;
21
+
22
+ $title: (
23
+ font-family: map.get($base, font-family)
24
+ font-size: 20px,
25
+ font-weight: map.get($base, font-weight),
26
+ line-height: 24px,
27
+ letter-spacing: 0.0125em,
28
+ text-transform: inherit,
29
+ text-decoration: inherit,
30
+ color: map.get($base, color)
31
+ ) !default;
32
+
33
+ $label: (
34
+ font-family: map.get($base, font-family),
35
+ font-size: 12px,
36
+ font-weight: map.get($base, font-weight),
37
+ line-height: 20px,
38
+ letter-spacing: 0.0333333333em,
39
+ text-transform: inherit,
40
+ text-decoration: inherit,
41
+ color: map.get($base, color)
42
+ ) !default;
43
+
44
+ $tokens: (
45
+ title: $title,
46
+ label: $label
47
+ ) !default;
@@ -0,0 +1,5 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2023 Tyler Technologies, Inc.
4
+ * License: Apache-2.0
5
+ */
@@ -3,29 +3,20 @@
3
3
  * Copyright 2023 Tyler Technologies, Inc.
4
4
  * License: Apache-2.0
5
5
  */
6
- @use 'sass:list';
7
- @use '../theme/theme-values';
8
- @use './variables';
6
+ @use '../core/styles/tokens';
9
7
 
10
8
  @mixin provide-theme($theme) {
11
- @each $key, $value in $theme {
12
- @if list.index(variables.$supported-theme-properties, $key) == null {
13
- @error 'Invalid theme property: #{$key}';
14
- }
15
- @if $value {
16
- --forge-focus-indicator-#{$key}: #{$value};
17
- }
18
- }
9
+ @include tokens.provide('focus-indicator', $theme);
19
10
  }
20
11
 
21
12
  @mixin configuration {
22
13
  --_active-width: var(--forge-focus-indicator-active-width, 6px);
23
- --_color: var(--forge-focus-indicator-color, var(--mdc-theme-primary, #{theme-values.$primary}));
14
+ --_color: var(--forge-focus-indicator-color, #{tokens.variable(primary)});
24
15
  --_duration: var(--forge-focus-indicator-duration, 600ms);
25
16
  --_outward-offset: var(--forge-focus-indicator-outward-offset, 4px);
26
17
  --_inward-offset: var(--forge-focus-indicator-inward-offset, 0px); // stylelint-disable-line length-zero-no-unit
27
18
  --_shape: var(--forge-focus-indicator-shape, 1px);
28
- --_width: var(--forge-focus-indicator-width, 3px);
19
+ --_width: var(--forge-focus-indicator-width, 2px);
29
20
  --_easing: var(--forge-focus-indicator-easing, cubic-bezier(0.2, 0, 0, 1));
30
21
  --_shape-start-start: var(--forge-focus-indicator-shape-start-start, var(--_shape));
31
22
  --_shape-start-end: var(--forge-focus-indicator-shape-start-end, var(--_shape));
@@ -3,18 +3,3 @@
3
3
  * Copyright 2023 Tyler Technologies, Inc.
4
4
  * License: Apache-2.0
5
5
  */
6
- $supported-theme-properties: (
7
- 'active-width',
8
- 'color',
9
- 'duration',
10
- 'outward-offset',
11
- 'inward-offset',
12
- 'shape',
13
- 'width',
14
- 'shape-start-start',
15
- 'shape-start-end',
16
- 'shape-end-end',
17
- 'shape-end-start',
18
- 'offset-block',
19
- 'offset-inline'
20
- );