@hermes-ui/angular 0.1.4

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 (539) hide show
  1. package/README.md +52 -0
  2. package/accordion/_accordion.clarity.scss +81 -0
  3. package/accordion/_properties.accordion.scss +45 -0
  4. package/accordion/_variables.accordion.scss +91 -0
  5. package/addons/a11y/README.md +157 -0
  6. package/addons/a11y/forms/required-field-legend.component.scss +17 -0
  7. package/addons/card-container/card/appfx-card.component.scss +137 -0
  8. package/addons/card-container/container/appfx-card-container.component.scss +17 -0
  9. package/addons/card-container/settings/appfx-card-container-settings.component.scss +62 -0
  10. package/addons/certificate-viewer/certificate-viewer/certificate-viewer.component.scss +69 -0
  11. package/addons/certificate-viewer/certificate-viewer-details/certificate-viewer-details.component.scss +49 -0
  12. package/addons/certificate-viewer/certificate-viewer-general/certificate-viewer-general.component.scss +38 -0
  13. package/addons/datagrid/README.md +289 -0
  14. package/addons/datagrid/addons/action-bar/datagrid-action-bar.component.scss +81 -0
  15. package/addons/datagrid/addons/column-toggle/datagrid-column-toggle.component.scss +99 -0
  16. package/addons/datagrid/addons/export/export-datagrid.component.scss +9 -0
  17. package/addons/datagrid/datagrid.component.scss +339 -0
  18. package/addons/datagrid-filters/README.md +223 -0
  19. package/addons/datagrid-filters/advanced-filters/date-time-filter.component.scss +10 -0
  20. package/addons/datagrid-filters/advanced-filters/enum-filter.component.scss +40 -0
  21. package/addons/datagrid-filters/advanced-filters/users-filter.component.scss +11 -0
  22. package/addons/datagrid-filters/common-styles.scss +98 -0
  23. package/addons/datagrid-filters/composite-filters.component.scss +26 -0
  24. package/addons/datagrid-filters/datagrid-filters.component.scss +22 -0
  25. package/addons/datagrid-filters/manage-filters/manage-filter.component.scss +42 -0
  26. package/addons/dialog/README.md +112 -0
  27. package/addons/dialog/multi-page-dialog.a11y.scss +203 -0
  28. package/addons/dialog/multi-page-dialog.component.scss +102 -0
  29. package/addons/dialog/toggle-component/toggle.component.scss +15 -0
  30. package/addons/drag-and-drop/README.md +48 -0
  31. package/addons/menu/menu.component.scss +120 -0
  32. package/addons/property-view/components/property-view-category.component.scss +38 -0
  33. package/addons/property-view/components/property-view-message.component.scss +48 -0
  34. package/addons/property-view/components/property-view-property.component.scss +122 -0
  35. package/addons/property-view/components/property-view-section.component.scss +59 -0
  36. package/addons/property-view/components/property-view.component.scss +23 -0
  37. package/addons/stepper/stepper.component.scss +53 -0
  38. package/addons/tabs/tab-links/tab-links.component.scss +61 -0
  39. package/addons/tabs/tabs.a11y.scss +26 -0
  40. package/addons/tabs/tabs.component.scss +95 -0
  41. package/addons/theme-builder/README.md +70 -0
  42. package/addons/theme-builder/theme-builder.component.scss +194 -0
  43. package/addons/translate/README.md +124 -0
  44. package/addons/var/debug/workflow-model-monitor.component.scss +50 -0
  45. package/addons/var/error/error.component.scss +38 -0
  46. package/addons/var/spinner/spinner.component.scss +33 -0
  47. package/addons/wizard/summary/summary.component.scss +22 -0
  48. package/addons/wizard/wizard.component.scss +251 -0
  49. package/button/_buttons.clarity.scss +388 -0
  50. package/button/_mixins.buttons.scss +241 -0
  51. package/button/_properties.buttons.scss +387 -0
  52. package/button/_properties.toggles.scss +35 -0
  53. package/button/_variables.buttons.scss +905 -0
  54. package/button/_variables.toggles.scss +41 -0
  55. package/button/button-group/_button-group.clarity.scss +202 -0
  56. package/collapsible-panel/_mixins.collapsible-panel.scss +189 -0
  57. package/collapsible-panel/_properties.collapsible-panel.scss +42 -0
  58. package/collapsible-panel/_variables.collapsible-panel.scss +40 -0
  59. package/data/_mixins.tables.scss +114 -0
  60. package/data/_properties.tables.scss +77 -0
  61. package/data/_tables.clarity.scss +120 -0
  62. package/data/_variables.tables.scss +42 -0
  63. package/data/datagrid/_datagrid.clarity.scss +1871 -0
  64. package/data/datagrid/_mixins.datagrid.scss +102 -0
  65. package/data/datagrid/_properties.datagrid.scss +98 -0
  66. package/data/datagrid/_variables.datagrid.scss +98 -0
  67. package/data/stack-view/_properties.stack-view.scss +50 -0
  68. package/data/stack-view/_stack-view.clarity.scss +267 -0
  69. package/data/stack-view/_variables.stack-view.scss +32 -0
  70. package/data/tree-view/_properties.tree-view.scss +41 -0
  71. package/data/tree-view/_tree-view.clarity.scss +281 -0
  72. package/data/tree-view/_variables.tree-view.scss +51 -0
  73. package/emphasis/alert/_alert.clarity.scss +467 -0
  74. package/emphasis/alert/_mixins.alert.scss +96 -0
  75. package/emphasis/alert/_properties.alert.scss +183 -0
  76. package/emphasis/alert/_variables.alert.scss +502 -0
  77. package/emphasis/badge/_badges.clarity.scss +61 -0
  78. package/emphasis/badge/_mixins.bades.scss +34 -0
  79. package/emphasis/badge/_properties.badges.scss +82 -0
  80. package/emphasis/badge/_variables.badges.scss +160 -0
  81. package/emphasis/label/_labels.clarity.scss +179 -0
  82. package/emphasis/label/_mixins.label.scss +77 -0
  83. package/emphasis/label/_properties.label.scss +105 -0
  84. package/emphasis/label/_variables.label.scss +181 -0
  85. package/fesm2022/hermes-ui-angular-accordion.mjs +355 -0
  86. package/fesm2022/hermes-ui-angular-accordion.mjs.map +1 -0
  87. package/fesm2022/hermes-ui-angular-addons-a11y.mjs +544 -0
  88. package/fesm2022/hermes-ui-angular-addons-a11y.mjs.map +1 -0
  89. package/fesm2022/hermes-ui-angular-addons-card-container.mjs +1082 -0
  90. package/fesm2022/hermes-ui-angular-addons-card-container.mjs.map +1 -0
  91. package/fesm2022/hermes-ui-angular-addons-certificate-viewer.mjs +2520 -0
  92. package/fesm2022/hermes-ui-angular-addons-certificate-viewer.mjs.map +1 -0
  93. package/fesm2022/hermes-ui-angular-addons-datagrid-filters.mjs +2818 -0
  94. package/fesm2022/hermes-ui-angular-addons-datagrid-filters.mjs.map +1 -0
  95. package/fesm2022/hermes-ui-angular-addons-datagrid.mjs +3131 -0
  96. package/fesm2022/hermes-ui-angular-addons-datagrid.mjs.map +1 -0
  97. package/fesm2022/hermes-ui-angular-addons-dialog.mjs +386 -0
  98. package/fesm2022/hermes-ui-angular-addons-dialog.mjs.map +1 -0
  99. package/fesm2022/hermes-ui-angular-addons-drag-and-drop.mjs +78 -0
  100. package/fesm2022/hermes-ui-angular-addons-drag-and-drop.mjs.map +1 -0
  101. package/fesm2022/hermes-ui-angular-addons-menu.mjs +559 -0
  102. package/fesm2022/hermes-ui-angular-addons-menu.mjs.map +1 -0
  103. package/fesm2022/hermes-ui-angular-addons-property-view.mjs +1142 -0
  104. package/fesm2022/hermes-ui-angular-addons-property-view.mjs.map +1 -0
  105. package/fesm2022/hermes-ui-angular-addons-stepper.mjs +716 -0
  106. package/fesm2022/hermes-ui-angular-addons-stepper.mjs.map +1 -0
  107. package/fesm2022/hermes-ui-angular-addons-tabs.mjs +539 -0
  108. package/fesm2022/hermes-ui-angular-addons-tabs.mjs.map +1 -0
  109. package/fesm2022/hermes-ui-angular-addons-testing.mjs +2010 -0
  110. package/fesm2022/hermes-ui-angular-addons-testing.mjs.map +1 -0
  111. package/fesm2022/hermes-ui-angular-addons-theme-builder.mjs +922 -0
  112. package/fesm2022/hermes-ui-angular-addons-theme-builder.mjs.map +1 -0
  113. package/fesm2022/hermes-ui-angular-addons-translate.mjs +295 -0
  114. package/fesm2022/hermes-ui-angular-addons-translate.mjs.map +1 -0
  115. package/fesm2022/hermes-ui-angular-addons-var.mjs +2028 -0
  116. package/fesm2022/hermes-ui-angular-addons-var.mjs.map +1 -0
  117. package/fesm2022/hermes-ui-angular-addons-wizard.mjs +610 -0
  118. package/fesm2022/hermes-ui-angular-addons-wizard.mjs.map +1 -0
  119. package/fesm2022/hermes-ui-angular-addons-workflow-strings.mjs +121 -0
  120. package/fesm2022/hermes-ui-angular-addons-workflow-strings.mjs.map +1 -0
  121. package/fesm2022/hermes-ui-angular-addons-workflow.mjs +88 -0
  122. package/fesm2022/hermes-ui-angular-addons-workflow.mjs.map +1 -0
  123. package/fesm2022/hermes-ui-angular-button.mjs +719 -0
  124. package/fesm2022/hermes-ui-angular-button.mjs.map +1 -0
  125. package/fesm2022/hermes-ui-angular-collapsible-panel.mjs +201 -0
  126. package/fesm2022/hermes-ui-angular-collapsible-panel.mjs.map +1 -0
  127. package/fesm2022/hermes-ui-angular-data-datagrid.mjs +8045 -0
  128. package/fesm2022/hermes-ui-angular-data-datagrid.mjs.map +1 -0
  129. package/fesm2022/hermes-ui-angular-data-stack-view.mjs +442 -0
  130. package/fesm2022/hermes-ui-angular-data-stack-view.mjs.map +1 -0
  131. package/fesm2022/hermes-ui-angular-data-tree-view.mjs +1106 -0
  132. package/fesm2022/hermes-ui-angular-data-tree-view.mjs.map +1 -0
  133. package/fesm2022/hermes-ui-angular-data.mjs +40 -0
  134. package/fesm2022/hermes-ui-angular-data.mjs.map +1 -0
  135. package/fesm2022/hermes-ui-angular-emphasis-alert.mjs +624 -0
  136. package/fesm2022/hermes-ui-angular-emphasis-alert.mjs.map +1 -0
  137. package/fesm2022/hermes-ui-angular-emphasis-badge.mjs +69 -0
  138. package/fesm2022/hermes-ui-angular-emphasis-badge.mjs.map +1 -0
  139. package/fesm2022/hermes-ui-angular-emphasis-common.mjs +25 -0
  140. package/fesm2022/hermes-ui-angular-emphasis-common.mjs.map +1 -0
  141. package/fesm2022/hermes-ui-angular-emphasis-label.mjs +105 -0
  142. package/fesm2022/hermes-ui-angular-emphasis-label.mjs.map +1 -0
  143. package/fesm2022/hermes-ui-angular-emphasis.mjs +41 -0
  144. package/fesm2022/hermes-ui-angular-emphasis.mjs.map +1 -0
  145. package/fesm2022/hermes-ui-angular-forms-checkbox.mjs +279 -0
  146. package/fesm2022/hermes-ui-angular-forms-checkbox.mjs.map +1 -0
  147. package/fesm2022/hermes-ui-angular-forms-combobox.mjs +1775 -0
  148. package/fesm2022/hermes-ui-angular-forms-combobox.mjs.map +1 -0
  149. package/fesm2022/hermes-ui-angular-forms-common.mjs +1251 -0
  150. package/fesm2022/hermes-ui-angular-forms-common.mjs.map +1 -0
  151. package/fesm2022/hermes-ui-angular-forms-datalist.mjs +263 -0
  152. package/fesm2022/hermes-ui-angular-forms-datalist.mjs.map +1 -0
  153. package/fesm2022/hermes-ui-angular-forms-datepicker.mjs +3274 -0
  154. package/fesm2022/hermes-ui-angular-forms-datepicker.mjs.map +1 -0
  155. package/fesm2022/hermes-ui-angular-forms-file-input.mjs +826 -0
  156. package/fesm2022/hermes-ui-angular-forms-file-input.mjs.map +1 -0
  157. package/fesm2022/hermes-ui-angular-forms-input.mjs +153 -0
  158. package/fesm2022/hermes-ui-angular-forms-input.mjs.map +1 -0
  159. package/fesm2022/hermes-ui-angular-forms-native-select.mjs +153 -0
  160. package/fesm2022/hermes-ui-angular-forms-native-select.mjs.map +1 -0
  161. package/fesm2022/hermes-ui-angular-forms-number-input.mjs +236 -0
  162. package/fesm2022/hermes-ui-angular-forms-number-input.mjs.map +1 -0
  163. package/fesm2022/hermes-ui-angular-forms-password.mjs +233 -0
  164. package/fesm2022/hermes-ui-angular-forms-password.mjs.map +1 -0
  165. package/fesm2022/hermes-ui-angular-forms-radio.mjs +224 -0
  166. package/fesm2022/hermes-ui-angular-forms-radio.mjs.map +1 -0
  167. package/fesm2022/hermes-ui-angular-forms-range.mjs +186 -0
  168. package/fesm2022/hermes-ui-angular-forms-range.mjs.map +1 -0
  169. package/fesm2022/hermes-ui-angular-forms-select.mjs +606 -0
  170. package/fesm2022/hermes-ui-angular-forms-select.mjs.map +1 -0
  171. package/fesm2022/hermes-ui-angular-forms-textarea.mjs +136 -0
  172. package/fesm2022/hermes-ui-angular-forms-textarea.mjs.map +1 -0
  173. package/fesm2022/hermes-ui-angular-forms.mjs +105 -0
  174. package/fesm2022/hermes-ui-angular-forms.mjs.map +1 -0
  175. package/fesm2022/hermes-ui-angular-icon.mjs +7413 -0
  176. package/fesm2022/hermes-ui-angular-icon.mjs.map +1 -0
  177. package/fesm2022/hermes-ui-angular-layout-breadcrumbs.mjs +120 -0
  178. package/fesm2022/hermes-ui-angular-layout-breadcrumbs.mjs.map +1 -0
  179. package/fesm2022/hermes-ui-angular-layout-main-container.mjs +100 -0
  180. package/fesm2022/hermes-ui-angular-layout-main-container.mjs.map +1 -0
  181. package/fesm2022/hermes-ui-angular-layout-nav.mjs +582 -0
  182. package/fesm2022/hermes-ui-angular-layout-nav.mjs.map +1 -0
  183. package/fesm2022/hermes-ui-angular-layout-tabs.mjs +807 -0
  184. package/fesm2022/hermes-ui-angular-layout-tabs.mjs.map +1 -0
  185. package/fesm2022/hermes-ui-angular-layout-vertical-nav.mjs +507 -0
  186. package/fesm2022/hermes-ui-angular-layout-vertical-nav.mjs.map +1 -0
  187. package/fesm2022/hermes-ui-angular-layout.mjs +44 -0
  188. package/fesm2022/hermes-ui-angular-layout.mjs.map +1 -0
  189. package/fesm2022/hermes-ui-angular-modal.mjs +619 -0
  190. package/fesm2022/hermes-ui-angular-modal.mjs.map +1 -0
  191. package/fesm2022/hermes-ui-angular-popover-common.mjs +1371 -0
  192. package/fesm2022/hermes-ui-angular-popover-common.mjs.map +1 -0
  193. package/fesm2022/hermes-ui-angular-popover-dropdown.mjs +492 -0
  194. package/fesm2022/hermes-ui-angular-popover-dropdown.mjs.map +1 -0
  195. package/fesm2022/hermes-ui-angular-popover-signpost.mjs +494 -0
  196. package/fesm2022/hermes-ui-angular-popover-signpost.mjs.map +1 -0
  197. package/fesm2022/hermes-ui-angular-popover-tooltip.mjs +293 -0
  198. package/fesm2022/hermes-ui-angular-popover-tooltip.mjs.map +1 -0
  199. package/fesm2022/hermes-ui-angular-popover.mjs +41 -0
  200. package/fesm2022/hermes-ui-angular-popover.mjs.map +1 -0
  201. package/fesm2022/hermes-ui-angular-progress-progress-bars.mjs +217 -0
  202. package/fesm2022/hermes-ui-angular-progress-progress-bars.mjs.map +1 -0
  203. package/fesm2022/hermes-ui-angular-progress-spinner.mjs +132 -0
  204. package/fesm2022/hermes-ui-angular-progress-spinner.mjs.map +1 -0
  205. package/fesm2022/hermes-ui-angular-stepper.mjs +694 -0
  206. package/fesm2022/hermes-ui-angular-stepper.mjs.map +1 -0
  207. package/fesm2022/hermes-ui-angular-timeline.mjs +316 -0
  208. package/fesm2022/hermes-ui-angular-timeline.mjs.map +1 -0
  209. package/fesm2022/hermes-ui-angular-toast.mjs +373 -0
  210. package/fesm2022/hermes-ui-angular-toast.mjs.map +1 -0
  211. package/fesm2022/hermes-ui-angular-utils-conditional.mjs +351 -0
  212. package/fesm2022/hermes-ui-angular-utils-conditional.mjs.map +1 -0
  213. package/fesm2022/hermes-ui-angular-utils-loading.mjs +107 -0
  214. package/fesm2022/hermes-ui-angular-utils-loading.mjs.map +1 -0
  215. package/fesm2022/hermes-ui-angular-utils.mjs +2086 -0
  216. package/fesm2022/hermes-ui-angular-utils.mjs.map +1 -0
  217. package/fesm2022/hermes-ui-angular-wizard.mjs +3074 -0
  218. package/fesm2022/hermes-ui-angular-wizard.mjs.map +1 -0
  219. package/fesm2022/hermes-ui-angular.mjs +130 -0
  220. package/fesm2022/hermes-ui-angular.mjs.map +1 -0
  221. package/forms/combobox/_combobox.clarity.scss +330 -0
  222. package/forms/combobox/_properties.combobox.scss +46 -0
  223. package/forms/combobox/_variables.combobox.scss +32 -0
  224. package/forms/datepicker/_datepicker.clarity.scss +259 -0
  225. package/forms/datepicker/_mixins.datepicker.scss +89 -0
  226. package/forms/datepicker/_properties.datepicker.scss +46 -0
  227. package/forms/datepicker/_variables.datepicker.scss +74 -0
  228. package/forms/styles/_checkbox.clarity.scss +193 -0
  229. package/forms/styles/_containers.clarity.scss +230 -0
  230. package/forms/styles/_datalist.clarity.scss +47 -0
  231. package/forms/styles/_file-input.clarity.scss +134 -0
  232. package/forms/styles/_file.clarity.scss +52 -0
  233. package/forms/styles/_form.clarity.scss +87 -0
  234. package/forms/styles/_input-group.clarity.scss +126 -0
  235. package/forms/styles/_input.clarity.scss +83 -0
  236. package/forms/styles/_mixins.forms.scss +193 -0
  237. package/forms/styles/_native-select.clarity.scss +178 -0
  238. package/forms/styles/_number-input.clarity.scss +58 -0
  239. package/forms/styles/_password.clarity.scss +26 -0
  240. package/forms/styles/_properties.forms.scss +180 -0
  241. package/forms/styles/_radio.clarity.scss +120 -0
  242. package/forms/styles/_range.clarity.scss +124 -0
  243. package/forms/styles/_select.clarity.scss +158 -0
  244. package/forms/styles/_textarea.clarity.scss +71 -0
  245. package/forms/styles/_toggles.clarity.scss +209 -0
  246. package/forms/styles/_variables.forms.scss +156 -0
  247. package/hermes-ui.scss +7 -0
  248. package/icon/icon.component.scss +247 -0
  249. package/image/_icons.clarity.scss +101 -0
  250. package/image/_images.clarity.scss +42 -0
  251. package/image/_mixins.images.scss +11 -0
  252. package/layout/_card.clarity.scss +318 -0
  253. package/layout/_login.clarity.scss +240 -0
  254. package/layout/_properties.card.scss +39 -0
  255. package/layout/_properties.login.scss +32 -0
  256. package/layout/_variables.card.scss +24 -0
  257. package/layout/_variables.login.scss +22 -0
  258. package/layout/breadcrumbs/_breadcrumbs.clarity.scss +60 -0
  259. package/layout/breadcrumbs/_properties.breadcrumbs.scss +18 -0
  260. package/layout/breadcrumbs/_variables.breadcrumbs.scss +11 -0
  261. package/layout/grid/_grid.scss +23 -0
  262. package/layout/grid/grid/_grid.scss +39 -0
  263. package/layout/grid/mixins/_breakpoint.scss +83 -0
  264. package/layout/grid/mixins/_clearfix.scss +13 -0
  265. package/layout/grid/mixins/_grid-framework.scss +91 -0
  266. package/layout/grid/mixins/_grid.scss +39 -0
  267. package/layout/grid/utilities/_align.scss +30 -0
  268. package/layout/grid/utilities/_clearfix.scss +12 -0
  269. package/layout/grid/utilities/_display.scss +18 -0
  270. package/layout/grid/utilities/_flex.scss +222 -0
  271. package/layout/grid/utilities/_float.scss +26 -0
  272. package/layout/grid/utilities/_visibility.scss +60 -0
  273. package/layout/main-container/_layout.clarity.scss +87 -0
  274. package/layout/main-container/_properties.header.scss +55 -0
  275. package/layout/main-container/_variables.header.scss +32 -0
  276. package/layout/nav/_header.clarity.scss +40 -0
  277. package/layout/nav/_links.clarity.scss +84 -0
  278. package/layout/nav/_mixins.header.scss +332 -0
  279. package/layout/nav/_mixins.responsive-nav.scss +75 -0
  280. package/layout/nav/_nav.clarity.scss +100 -0
  281. package/layout/nav/_properties.nav.scss +27 -0
  282. package/layout/nav/_properties.responsive-nav.scss +23 -0
  283. package/layout/nav/_properties.subnav.scss +19 -0
  284. package/layout/nav/_responsive-nav.clarity.scss +490 -0
  285. package/layout/nav/_subnav.clarity.scss +48 -0
  286. package/layout/nav/_variables.nav.scss +13 -0
  287. package/layout/nav/_variables.responsive-nav.scss +28 -0
  288. package/layout/nav/_variables.subnav.scss +21 -0
  289. package/layout/tabs/_mixins.tabs.scss +41 -0
  290. package/layout/tabs/_properties.tabs.scss +25 -0
  291. package/layout/tabs/_tabs.clarity.scss +110 -0
  292. package/layout/tabs/_variables.tabs.scss +17 -0
  293. package/layout/vertical-nav/_mixins.vertical-nav.scss +52 -0
  294. package/layout/vertical-nav/_properties.vertical-nav.scss +73 -0
  295. package/layout/vertical-nav/_variables.vertical-nav.scss +52 -0
  296. package/layout/vertical-nav/_vertical-nav.clarity.scss +469 -0
  297. package/main.scss +14 -0
  298. package/modal/_modal.clarity.scss +379 -0
  299. package/modal/_properties.modal.scss +57 -0
  300. package/modal/_variables.modal.scss +41 -0
  301. package/package.json +325 -0
  302. package/popover/common/README.md +112 -0
  303. package/popover/common/_popover.clarity.scss +28 -0
  304. package/popover/dropdown/_dropdown.clarity.scss +326 -0
  305. package/popover/dropdown/_menu-mixins.clarity.scss +132 -0
  306. package/popover/dropdown/_properties.dropdown.scss +50 -0
  307. package/popover/dropdown/_variables.dropdown.scss +36 -0
  308. package/popover/signpost/_properties.signpost.scss +34 -0
  309. package/popover/signpost/_signposts.clarity.scss +414 -0
  310. package/popover/signpost/_variables.signpost.scss +21 -0
  311. package/popover/tooltip/_mixins.tooltip.scss +186 -0
  312. package/popover/tooltip/_properties.tooltip.scss +28 -0
  313. package/popover/tooltip/_tooltips.clarity.scss +122 -0
  314. package/popover/tooltip/_variables.tooltip.scss +20 -0
  315. package/progress/progress-bars/_progress-bars.clarity.scss +616 -0
  316. package/progress/progress-bars/_properties.progress-bars.scss +24 -0
  317. package/progress/progress-bars/_variables.progress-bars.scss +15 -0
  318. package/progress/progress-bars/utils/_mixins.clarity.scss +18 -0
  319. package/progress/spinner/_mixins.spinner.scss +30 -0
  320. package/progress/spinner/_properties.spinner.scss +37 -0
  321. package/progress/spinner/_spinner.clarity.scss +148 -0
  322. package/progress/spinner/_variables.spinner.scss +25 -0
  323. package/schematics/collection.json +14 -0
  324. package/stepper/_properties.stepper.scss +29 -0
  325. package/stepper/_stepper.clarity.scss +184 -0
  326. package/stepper/_variables.stepper.scss +13 -0
  327. package/styles/_a11y.scss +14 -0
  328. package/styles/_close.clarity.scss +60 -0
  329. package/styles/_components.clarity.scss +189 -0
  330. package/styles/_mixins.scss +460 -0
  331. package/styles/_normalize.scss +292 -0
  332. package/styles/_reboot.clarity.scss +374 -0
  333. package/styles/_variables.clarity.scss +139 -0
  334. package/styles/core/base/base.element.scss +97 -0
  335. package/styles/core/global.scss +12 -0
  336. package/styles/core/layout/_alignments.scss +18 -0
  337. package/styles/core/layout/_container.scss +29 -0
  338. package/styles/core/layout/_display.scss +58 -0
  339. package/styles/core/layout/_optimize.scss +60 -0
  340. package/styles/core/layout/_shadow-dom.scss +47 -0
  341. package/styles/core/layout/_spacing.scss +31 -0
  342. package/styles/core/layout/_type-grid.scss +66 -0
  343. package/styles/core/layout/_type-horizontal.scss +33 -0
  344. package/styles/core/layout/_type-vertical.scss +26 -0
  345. package/styles/core/layout/mixins/_mixins.alignment.scss +35 -0
  346. package/styles/core/layout/mixins/_mixins.display.scss +23 -0
  347. package/styles/core/layout/mixins/_mixins.grid.scss +105 -0
  348. package/styles/core/layout/mixins/_mixins.scss +106 -0
  349. package/styles/core/layout/mixins/_mixins.shadow-dom.scss +106 -0
  350. package/styles/core/layout/mixins/_mixins.type-horizontal.scss +113 -0
  351. package/styles/core/layout/mixins/_mixins.type-vertical.scss +108 -0
  352. package/styles/core/module.layout.scss +22 -0
  353. package/styles/core/module.reset.scss +48 -0
  354. package/styles/core/module.typography.scss +9 -0
  355. package/styles/core/theme.dark.scss +298 -0
  356. package/styles/core/theme.high-contrast.scss +42 -0
  357. package/styles/core/theme.low-motion.scss +20 -0
  358. package/styles/core/tokens/_alias-interaction.scss +74 -0
  359. package/styles/core/tokens/_alias-object-background.scss +29 -0
  360. package/styles/core/tokens/_alias-object-border.scss +21 -0
  361. package/styles/core/tokens/_alias-object-container.scss +20 -0
  362. package/styles/core/tokens/_alias-object-opacity.scss +15 -0
  363. package/styles/core/tokens/_alias-object-shadow.scss +17 -0
  364. package/styles/core/tokens/_alias-primary.scss +21 -0
  365. package/styles/core/tokens/_alias-status.scss +40 -0
  366. package/styles/core/tokens/_alias-typography.scss +107 -0
  367. package/styles/core/tokens/_alias-utility.scss +42 -0
  368. package/styles/core/tokens/_alias-viz-colors.scss +170 -0
  369. package/styles/core/tokens/_global-animation.scss +32 -0
  370. package/styles/core/tokens/_global-colors.scss +249 -0
  371. package/styles/core/tokens/_global-space.scss +52 -0
  372. package/styles/core/tokens/_internal-scale.scss +14 -0
  373. package/styles/core/tokens/_properties.tokens.scss +22 -0
  374. package/styles/core/tokens/_variables.tokens.scss +787 -0
  375. package/styles/core/typography/_legacy-typography.scss +328 -0
  376. package/styles/core/typography/_mixins.typography.scss +18 -0
  377. package/styles/core/typography/_typography.scss +328 -0
  378. package/styles/variables/_properties.density.scss +225 -0
  379. package/styles/variables/_properties.global.scss +51 -0
  380. package/styles/variables/_properties.layout.scss +21 -0
  381. package/styles/variables/_properties.scss +11 -0
  382. package/styles/variables/_properties.typography.scss +164 -0
  383. package/styles/variables/_variables.density.scss +116 -0
  384. package/styles/variables/_variables.global.scss +87 -0
  385. package/styles/variables/_variables.layout.scss +37 -0
  386. package/styles/variables/_variables.scss +11 -0
  387. package/styles/variables/_variables.typography.scss +156 -0
  388. package/timeline/_properties.timeline.scss +38 -0
  389. package/timeline/_timeline.clarity.scss +172 -0
  390. package/timeline/_variables.timeline.scss +29 -0
  391. package/toast/README.md +65 -0
  392. package/toast/_properties.toast.scss +56 -0
  393. package/toast/_toast.clarity.scss +190 -0
  394. package/toast/_variables.toast.scss +33 -0
  395. package/types/hermes-ui-angular-accordion.d.ts +101 -0
  396. package/types/hermes-ui-angular-accordion.d.ts.map +1 -0
  397. package/types/hermes-ui-angular-addons-a11y.d.ts +187 -0
  398. package/types/hermes-ui-angular-addons-a11y.d.ts.map +1 -0
  399. package/types/hermes-ui-angular-addons-card-container.d.ts +482 -0
  400. package/types/hermes-ui-angular-addons-card-container.d.ts.map +1 -0
  401. package/types/hermes-ui-angular-addons-certificate-viewer.d.ts +404 -0
  402. package/types/hermes-ui-angular-addons-certificate-viewer.d.ts.map +1 -0
  403. package/types/hermes-ui-angular-addons-datagrid-filters.d.ts +911 -0
  404. package/types/hermes-ui-angular-addons-datagrid-filters.d.ts.map +1 -0
  405. package/types/hermes-ui-angular-addons-datagrid.d.ts +1529 -0
  406. package/types/hermes-ui-angular-addons-datagrid.d.ts.map +1 -0
  407. package/types/hermes-ui-angular-addons-dialog.d.ts +233 -0
  408. package/types/hermes-ui-angular-addons-dialog.d.ts.map +1 -0
  409. package/types/hermes-ui-angular-addons-drag-and-drop.d.ts +35 -0
  410. package/types/hermes-ui-angular-addons-drag-and-drop.d.ts.map +1 -0
  411. package/types/hermes-ui-angular-addons-menu.d.ts +197 -0
  412. package/types/hermes-ui-angular-addons-menu.d.ts.map +1 -0
  413. package/types/hermes-ui-angular-addons-property-view.d.ts +387 -0
  414. package/types/hermes-ui-angular-addons-property-view.d.ts.map +1 -0
  415. package/types/hermes-ui-angular-addons-stepper.d.ts +298 -0
  416. package/types/hermes-ui-angular-addons-stepper.d.ts.map +1 -0
  417. package/types/hermes-ui-angular-addons-tabs.d.ts +173 -0
  418. package/types/hermes-ui-angular-addons-tabs.d.ts.map +1 -0
  419. package/types/hermes-ui-angular-addons-testing.d.ts +592 -0
  420. package/types/hermes-ui-angular-addons-testing.d.ts.map +1 -0
  421. package/types/hermes-ui-angular-addons-theme-builder.d.ts +200 -0
  422. package/types/hermes-ui-angular-addons-theme-builder.d.ts.map +1 -0
  423. package/types/hermes-ui-angular-addons-translate.d.ts +149 -0
  424. package/types/hermes-ui-angular-addons-translate.d.ts.map +1 -0
  425. package/types/hermes-ui-angular-addons-var.d.ts +923 -0
  426. package/types/hermes-ui-angular-addons-var.d.ts.map +1 -0
  427. package/types/hermes-ui-angular-addons-wizard.d.ts +241 -0
  428. package/types/hermes-ui-angular-addons-wizard.d.ts.map +1 -0
  429. package/types/hermes-ui-angular-addons-workflow-strings.d.ts +124 -0
  430. package/types/hermes-ui-angular-addons-workflow-strings.d.ts.map +1 -0
  431. package/types/hermes-ui-angular-addons-workflow.d.ts +15 -0
  432. package/types/hermes-ui-angular-addons-workflow.d.ts.map +1 -0
  433. package/types/hermes-ui-angular-button.d.ts +170 -0
  434. package/types/hermes-ui-angular-button.d.ts.map +1 -0
  435. package/types/hermes-ui-angular-collapsible-panel.d.ts +74 -0
  436. package/types/hermes-ui-angular-collapsible-panel.d.ts.map +1 -0
  437. package/types/hermes-ui-angular-data-datagrid.d.ts +1938 -0
  438. package/types/hermes-ui-angular-data-datagrid.d.ts.map +1 -0
  439. package/types/hermes-ui-angular-data-stack-view.d.ts +88 -0
  440. package/types/hermes-ui-angular-data-stack-view.d.ts.map +1 -0
  441. package/types/hermes-ui-angular-data-tree-view.d.ts +230 -0
  442. package/types/hermes-ui-angular-data-tree-view.d.ts.map +1 -0
  443. package/types/hermes-ui-angular-data.d.ts +16 -0
  444. package/types/hermes-ui-angular-data.d.ts.map +1 -0
  445. package/types/hermes-ui-angular-emphasis-alert.d.ts +176 -0
  446. package/types/hermes-ui-angular-emphasis-alert.d.ts.map +1 -0
  447. package/types/hermes-ui-angular-emphasis-badge.d.ts +26 -0
  448. package/types/hermes-ui-angular-emphasis-badge.d.ts.map +1 -0
  449. package/types/hermes-ui-angular-emphasis-common.d.ts +7 -0
  450. package/types/hermes-ui-angular-emphasis-common.d.ts.map +1 -0
  451. package/types/hermes-ui-angular-emphasis-label.d.ts +30 -0
  452. package/types/hermes-ui-angular-emphasis-label.d.ts.map +1 -0
  453. package/types/hermes-ui-angular-emphasis.d.ts +16 -0
  454. package/types/hermes-ui-angular-emphasis.d.ts.map +1 -0
  455. package/types/hermes-ui-angular-forms-checkbox.d.ts +73 -0
  456. package/types/hermes-ui-angular-forms-checkbox.d.ts.map +1 -0
  457. package/types/hermes-ui-angular-forms-combobox.d.ts +354 -0
  458. package/types/hermes-ui-angular-forms-combobox.d.ts.map +1 -0
  459. package/types/hermes-ui-angular-forms-common.d.ts +340 -0
  460. package/types/hermes-ui-angular-forms-common.d.ts.map +1 -0
  461. package/types/hermes-ui-angular-forms-datalist.d.ts +60 -0
  462. package/types/hermes-ui-angular-forms-datalist.d.ts.map +1 -0
  463. package/types/hermes-ui-angular-forms-datepicker.d.ts +987 -0
  464. package/types/hermes-ui-angular-forms-datepicker.d.ts.map +1 -0
  465. package/types/hermes-ui-angular-forms-file-input.d.ts +194 -0
  466. package/types/hermes-ui-angular-forms-file-input.d.ts.map +1 -0
  467. package/types/hermes-ui-angular-forms-input.d.ts +30 -0
  468. package/types/hermes-ui-angular-forms-input.d.ts.map +1 -0
  469. package/types/hermes-ui-angular-forms-native-select.d.ts +37 -0
  470. package/types/hermes-ui-angular-forms-native-select.d.ts.map +1 -0
  471. package/types/hermes-ui-angular-forms-number-input.d.ts +44 -0
  472. package/types/hermes-ui-angular-forms-number-input.d.ts.map +1 -0
  473. package/types/hermes-ui-angular-forms-password.d.ts +53 -0
  474. package/types/hermes-ui-angular-forms-password.d.ts.map +1 -0
  475. package/types/hermes-ui-angular-forms-radio.d.ts +50 -0
  476. package/types/hermes-ui-angular-forms-radio.d.ts.map +1 -0
  477. package/types/hermes-ui-angular-forms-range.d.ts +38 -0
  478. package/types/hermes-ui-angular-forms-range.d.ts.map +1 -0
  479. package/types/hermes-ui-angular-forms-select.d.ts +211 -0
  480. package/types/hermes-ui-angular-forms-select.d.ts.map +1 -0
  481. package/types/hermes-ui-angular-forms-textarea.d.ts +30 -0
  482. package/types/hermes-ui-angular-forms-textarea.d.ts.map +1 -0
  483. package/types/hermes-ui-angular-forms.d.ts +39 -0
  484. package/types/hermes-ui-angular-forms.d.ts.map +1 -0
  485. package/types/hermes-ui-angular-icon.d.ts +1504 -0
  486. package/types/hermes-ui-angular-icon.d.ts.map +1 -0
  487. package/types/hermes-ui-angular-layout-breadcrumbs.d.ts +46 -0
  488. package/types/hermes-ui-angular-layout-breadcrumbs.d.ts.map +1 -0
  489. package/types/hermes-ui-angular-layout-main-container.d.ts +29 -0
  490. package/types/hermes-ui-angular-layout-main-container.d.ts.map +1 -0
  491. package/types/hermes-ui-angular-layout-nav.d.ts +143 -0
  492. package/types/hermes-ui-angular-layout-nav.d.ts.map +1 -0
  493. package/types/hermes-ui-angular-layout-tabs.d.ts +159 -0
  494. package/types/hermes-ui-angular-layout-tabs.d.ts.map +1 -0
  495. package/types/hermes-ui-angular-layout-vertical-nav.d.ts +129 -0
  496. package/types/hermes-ui-angular-layout-vertical-nav.d.ts.map +1 -0
  497. package/types/hermes-ui-angular-layout.d.ts +20 -0
  498. package/types/hermes-ui-angular-layout.d.ts.map +1 -0
  499. package/types/hermes-ui-angular-modal.d.ts +161 -0
  500. package/types/hermes-ui-angular-modal.d.ts.map +1 -0
  501. package/types/hermes-ui-angular-popover-common.d.ts +317 -0
  502. package/types/hermes-ui-angular-popover-common.d.ts.map +1 -0
  503. package/types/hermes-ui-angular-popover-dropdown.d.ts +124 -0
  504. package/types/hermes-ui-angular-popover-dropdown.d.ts.map +1 -0
  505. package/types/hermes-ui-angular-popover-signpost.d.ts +158 -0
  506. package/types/hermes-ui-angular-popover-signpost.d.ts.map +1 -0
  507. package/types/hermes-ui-angular-popover-tooltip.d.ts +84 -0
  508. package/types/hermes-ui-angular-popover-tooltip.d.ts.map +1 -0
  509. package/types/hermes-ui-angular-popover.d.ts +17 -0
  510. package/types/hermes-ui-angular-popover.d.ts.map +1 -0
  511. package/types/hermes-ui-angular-progress-progress-bars.d.ts +58 -0
  512. package/types/hermes-ui-angular-progress-progress-bars.d.ts.map +1 -0
  513. package/types/hermes-ui-angular-progress-spinner.d.ts +45 -0
  514. package/types/hermes-ui-angular-progress-spinner.d.ts.map +1 -0
  515. package/types/hermes-ui-angular-stepper.d.ts +180 -0
  516. package/types/hermes-ui-angular-stepper.d.ts.map +1 -0
  517. package/types/hermes-ui-angular-timeline.d.ts +87 -0
  518. package/types/hermes-ui-angular-timeline.d.ts.map +1 -0
  519. package/types/hermes-ui-angular-toast.d.ts +131 -0
  520. package/types/hermes-ui-angular-toast.d.ts.map +1 -0
  521. package/types/hermes-ui-angular-utils-conditional.d.ts +133 -0
  522. package/types/hermes-ui-angular-utils-conditional.d.ts.map +1 -0
  523. package/types/hermes-ui-angular-utils-loading.d.ts +39 -0
  524. package/types/hermes-ui-angular-utils-loading.d.ts.map +1 -0
  525. package/types/hermes-ui-angular-utils.d.ts +914 -0
  526. package/types/hermes-ui-angular-utils.d.ts.map +1 -0
  527. package/types/hermes-ui-angular-wizard.d.ts +1509 -0
  528. package/types/hermes-ui-angular-wizard.d.ts.map +1 -0
  529. package/types/hermes-ui-angular.d.ts +44 -0
  530. package/types/hermes-ui-angular.d.ts.map +1 -0
  531. package/typography/_code.scss +36 -0
  532. package/typography/_font-metropolis.scss +45 -0
  533. package/typography/_lists.scss +81 -0
  534. package/typography/_typography.scss +322 -0
  535. package/utils/animations/_animations.clarity.scss +44 -0
  536. package/utils/animations/_mixins.animations.scss +33 -0
  537. package/wizard/_properties.wizard.scss +54 -0
  538. package/wizard/_variables.wizard.scss +59 -0
  539. package/wizard/_wizard.clarity.scss +692 -0
@@ -0,0 +1,241 @@
1
+ /*
2
+ * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.
3
+ * The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries.
4
+ * This software is released under MIT license.
5
+ * The full license information can be found in LICENSE in the root directory of this project.
6
+ */
7
+
8
+ @use 'sass:meta';
9
+ @use '../styles/mixins';
10
+ @use 'variables.buttons' as buttons-variables;
11
+ @use '../styles/variables/variables.density' as density;
12
+ @use '../styles/core/tokens/variables.tokens' as tokens;
13
+
14
+ @function getSassButtonColor($type: default, $property: null) {
15
+ @if not $property {
16
+ @return null;
17
+ }
18
+ @if $type == default {
19
+ @return buttons-variables.lookupFromDefaultButtonColors($property);
20
+ }
21
+ @if $type == default-outline {
22
+ @return buttons-variables.lookupFromDefaultOutlineButtonColors($property);
23
+ }
24
+ @if $type == info {
25
+ @return buttons-variables.lookupFromInfoButtonColors($property);
26
+ }
27
+ @if $type == info-outline {
28
+ @return buttons-variables.lookupFromInfoOutlineButtonColors($property);
29
+ }
30
+ @if $type == primary {
31
+ @return buttons-variables.lookupFromPrimaryButtonColors($property);
32
+ }
33
+ @if $type == primary-outline {
34
+ @return buttons-variables.lookupFromPrimaryOutlineButtonColors($property);
35
+ }
36
+ @if $type == success {
37
+ @return buttons-variables.lookupFromSuccessButtonColors($property);
38
+ }
39
+ @if $type == success-outline {
40
+ @return buttons-variables.lookupFromSuccessOutlineButtonColors($property);
41
+ }
42
+ @if $type == danger {
43
+ @return buttons-variables.lookupFromDangerButtonColors($property);
44
+ }
45
+ @if $type == danger-outline {
46
+ @return buttons-variables.lookupFromDangerOutlineButtonColors($property);
47
+ }
48
+ @if $type == neutral {
49
+ @return buttons-variables.lookupFromNeutralButtonColors($property);
50
+ }
51
+ @if $type == neutral-outline {
52
+ @return buttons-variables.lookupFromNeutralOutlineButtonColors($property);
53
+ }
54
+ @if $type == warning {
55
+ @return buttons-variables.lookupFromWarningButtonColors($property);
56
+ }
57
+ @if $type == warning-outline {
58
+ @return buttons-variables.lookupFromWarningOutlineButtonColors($property);
59
+ }
60
+ @if $type == link {
61
+ @return buttons-variables.lookupFromLinkButtonColors($property);
62
+ }
63
+ @if $type == link-primary {
64
+ @return buttons-variables.lookupFromLinkPrimaryButtonColors($property);
65
+ }
66
+ @if $type == link-info {
67
+ @return buttons-variables.lookupFromLinkInfoButtonColors($property);
68
+ }
69
+ @if $type == link-success {
70
+ @return buttons-variables.lookupFromLinkSuccessButtonColors($property);
71
+ }
72
+ @if $type == link-warning {
73
+ @return buttons-variables.lookupFromLinkWarningButtonColors($property);
74
+ }
75
+ @if $type == link-danger {
76
+ @return buttons-variables.lookupFromLinkDangerButtonColors($property);
77
+ }
78
+ @if $type == link-neutral {
79
+ @return buttons-variables.lookupFromLinkNeutralButtonColors($property);
80
+ }
81
+ @if $type == inverse {
82
+ @return buttons-variables.lookupFromInverseButtonColors($property);
83
+ }
84
+ @if $type == icon {
85
+ @return buttons-variables.lookupFromIconButtonColors($property);
86
+ }
87
+
88
+ @return null;
89
+ }
90
+
91
+ @mixin button-css-var($button-type: default, $style: null, $styleNickname: $style) {
92
+ @if $style {
93
+ #{$style}: getSassButtonColor($button-type, $styleNickname);
94
+ }
95
+ }
96
+ @mixin populateButtonProperties($button-type: default) {
97
+ @include button-css-var($button-type, border-color);
98
+ @include button-css-var($button-type, background-color, bg-color);
99
+ @include button-css-var($button-type, color);
100
+
101
+ hermes-icon,
102
+ hermes-icon {
103
+ @include button-css-var($button-type, color);
104
+
105
+ &:not([size]) {
106
+ @include mixins.min-equilateral(density.$hermes-base-icon-size-s);
107
+ }
108
+ }
109
+
110
+ &:hover {
111
+ @include button-css-var($button-type, background-color, hover-bg-color);
112
+ @include button-css-var($button-type, color, hover-color);
113
+
114
+ hermes-icon,
115
+ hermes-icon {
116
+ @include button-css-var($button-type, color, hover-color);
117
+ }
118
+ }
119
+
120
+ &:active {
121
+ @include button-css-var($button-type, background-color, active-bg-color);
122
+ @include button-css-var($button-type, color, active-color);
123
+
124
+ hermes-icon,
125
+ hermes-icon {
126
+ @include button-css-var($button-type, color, active-color);
127
+ }
128
+ }
129
+
130
+ &.disabled,
131
+ &:disabled {
132
+ @include button-css-var($button-type, color, disabled-color);
133
+
134
+ cursor: not-allowed;
135
+
136
+ @include button-css-var($button-type, background-color, disabled-bg-color);
137
+ @include button-css-var($button-type, border-color, disabled-border-color);
138
+
139
+ hermes-icon,
140
+ hermes-icon {
141
+ @include button-css-var($button-type, color, disabled-color);
142
+ }
143
+ }
144
+ }
145
+ @mixin btn-checked-styles($button-type: default, $type: checkbox) {
146
+ // add semantic prop: group-checked-font-color
147
+ input[type='#{$type}']:checked + label {
148
+ @include button-css-var($button-type, background-color, checked-bg-color);
149
+ @include button-css-var($button-type, color, checked-color);
150
+
151
+ // override icon colors on inverted backgrounds
152
+ & > hermes-icon,
153
+ & > hermes-icon {
154
+ @include button-css-var($button-type, color, checked-color);
155
+ }
156
+ }
157
+
158
+ input[type='#{$type}']:checked:hover + label {
159
+ @include button-css-var($button-type, background-color, checked-hover-bg-color);
160
+ @include button-css-var($button-type, color, checked-hover-color);
161
+
162
+ // override icon colors on inverted backgrounds
163
+ & > hermes-icon,
164
+ & > hermes-icon {
165
+ @include button-css-var($button-type, color, checked-hover-color);
166
+ }
167
+ }
168
+
169
+ input[type='#{$type}']:checked:active + label {
170
+ @include button-css-var($button-type, background-color, checked-active-bg-color);
171
+ @include button-css-var($button-type, color, checked-active-color);
172
+
173
+ // override icon colors on inverted backgrounds
174
+ & > hermes-icon,
175
+ & > hermes-icon {
176
+ @include button-css-var($button-type, color, checked-active-color);
177
+ }
178
+ }
179
+
180
+ &.disabled input[type='#{$type}']:checked + label,
181
+ &:disabled input[type='#{$type}']:checked + label {
182
+ @include button-css-var($button-type, color, checked-disabled-color);
183
+ @include button-css-var($button-type, background-color, checked-disabled-bg-color);
184
+ // override icon colors on inverted backgrounds
185
+ & > hermes-icon,
186
+ & > hermes-icon {
187
+ @include button-css-var($button-type, color, checked-disabled-color);
188
+ }
189
+ }
190
+ }
191
+ @mixin btn-nowrap() {
192
+ white-space: nowrap;
193
+ text-overflow: ellipsis;
194
+ overflow: hidden;
195
+ }
196
+ @mixin btn-min-max-widths() {
197
+ min-width: tokens.$hermes-global-space-14;
198
+ max-width: mixins.baselinePx(360);
199
+ }
200
+ @mixin btn-text-properties() {
201
+ text-align: center;
202
+ text-decoration: none;
203
+ vertical-align: middle;
204
+
205
+ &:hover {
206
+ text-decoration: none;
207
+ }
208
+ }
209
+ @mixin btn-default-border-styles() {
210
+ border: buttons-variables.$hermes-btn-border-width solid;
211
+ border-radius: buttons-variables.$hermes-btn-border-radius;
212
+ }
213
+ @mixin btn-appearance() {
214
+ cursor: pointer;
215
+ display: inline-flex;
216
+ gap: buttons-variables.$hermes-btn-gap;
217
+ align-items: center;
218
+ place-content: center;
219
+
220
+ // Overrides a Fix for IOS in BS4 _normalize.scss (~ln 330)
221
+ // `!important` is to override specificity in this instance
222
+ // But we wanted to preserve the normalize fix in non-Clarity buttons for iOS
223
+ appearance: none !important;
224
+ }
225
+ @mixin btn-sm-appearance() {
226
+ @include mixins.generate-typography-token('BUTTON-11-SMALL');
227
+
228
+ height: buttons-variables.$hermes-btn-appearance-standard-height;
229
+ padding: buttons-variables.$hermes-btn-appearance-standard-padding;
230
+ }
231
+ @mixin generateButton() {
232
+ @include btn-appearance();
233
+ @include btn-default-border-styles();
234
+ @include btn-min-max-widths();
235
+ @include btn-nowrap();
236
+ @include btn-text-properties();
237
+ }
238
+ @mixin square-off-btngroup-btns($dir: left) {
239
+ border-top-#{$dir}-radius: 0;
240
+ border-bottom-#{$dir}-radius: 0;
241
+ }
@@ -0,0 +1,387 @@
1
+ /*
2
+ * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.
3
+ * The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries.
4
+ * This software is released under MIT license.
5
+ * The full license information can be found in LICENSE in the root directory of this project.
6
+ */
7
+
8
+ @use '../styles/mixins';
9
+ @use '../styles/variables/variables.density' as density;
10
+ @use '../styles/core/tokens/variables.tokens' as tokens;
11
+
12
+ @include mixins.exports('button.properties') {
13
+ @include mixins.root-or-host() {
14
+ --hermes-btn-group-focus-outline: #{tokens.$hermes-alias-object-interaction-outline};
15
+
16
+ &,
17
+ [hermes-density] {
18
+ // Spacing
19
+ --hermes-btn-vertical-margin: #{density.$hermes-base-vertical-offset-s};
20
+ --hermes-btn-horizontal-margin: #{density.$hermes-base-gap-m};
21
+ --hermes-btn-horizontal-padding: #{density.$hermes-base-horizontal-offset-l};
22
+ --hermes-btn-vertical-padding: 0;
23
+ --hermes-btn-padding: var(--hermes-btn-vertical-padding) var(--hermes-btn-horizontal-padding);
24
+ --hermes-btn-gap: #{density.$hermes-base-gap-s};
25
+
26
+ // Sizing
27
+ --hermes-btn-height: #{density.$hermes-base-row-height-m}; // this is standard height
28
+ --hermes-btn-height-sm: #{density.$hermes-base-row-height-s}; // this is btn-sm (small) height
29
+
30
+ // Typography
31
+ // shadcn text-sm (14px) for the default button text, overriding the shared BUTTON-12
32
+ // typography token (font-size-button, 12px) that .btn otherwise pulls in - that token
33
+ // is also used elsewhere in this file, so it's left alone and only font-size is
34
+ // overridden here. Compact keeps the original 12px via the density-invariant raw
35
+ // token (not density.$hermes-base-typography-font-size-button: that's a var(...)
36
+ // passthrough that would just resolve to compact's own value again).
37
+ --hermes-btn-font-size: #{mixins.baselinePx(14)};
38
+
39
+ // Borders
40
+ // shadcn-style rounding (rounded-md, 8px) instead of Clarity's sharp 4px corners.
41
+ // Uses mixins.baselinePx(8), not a bare `0.5rem`: this codebase's rem scale is
42
+ // calibrated to a 20px root font-size (--hermes-global-base: 20), so a literal
43
+ // 0.5rem renders as 10px, not 8px.
44
+ --hermes-btn-border-radius: #{mixins.baselinePx(8)};
45
+ --hermes-btn-border-width: #{tokens.$hermes-global-space-1};
46
+
47
+ // Standard button appearance - overrideable but not advertised!
48
+ --hermes-btn-appearance-standard-height: var(--hermes-btn-height-sm);
49
+ --hermes-btn-appearance-standard-padding: var(--hermes-btn-padding);
50
+ --hermes-btn-appearance-standard-icon-size: #{density.$hermes-base-icon-size-s};
51
+
52
+ // form-style button appearance styles - overrideable but not advertised!
53
+ --hermes-btn-appearance-form-height: var(--hermes-btn-height);
54
+ --hermes-btn-appearance-form-padding: var(--hermes-btn-padding);
55
+ }
56
+
57
+ [hermes-density='compact'] {
58
+ --hermes-btn-font-size: #{tokens.$hermes-global-space-6};
59
+ // Compact buttons are shorter (~20-24px), so the default 8px radius reads as a
60
+ // pill/circle instead of a rounded rectangle. Scale it down to match.
61
+ --hermes-btn-border-radius: #{mixins.baselinePx(4)};
62
+ }
63
+
64
+ &,
65
+ [hermes-theme] {
66
+ // Shared colors
67
+ --hermes-btn-transparent-bg-color: #{tokens.$hermes-alias-object-opacity-0};
68
+ --hermes-btn-outline-bg-color: var(--hermes-btn-transparent-bg-color);
69
+
70
+ // Default button colors
71
+ --hermes-btn-default-color: #{tokens.$hermes-alias-primary};
72
+ --hermes-btn-default-border-color: var(--hermes-btn-default-color);
73
+ --hermes-btn-default-bg-color: var(--hermes-btn-outline-bg-color);
74
+ --hermes-btn-default-hover-bg-color: #{tokens.$hermes-alias-object-interaction-primary-secondary-hover};
75
+ --hermes-btn-default-hover-color: #{tokens.$hermes-alias-typography-primary-hover};
76
+ --hermes-btn-default-active-color: var(--hermes-btn-default-color);
77
+ --hermes-btn-default-active-bg-color: var(--hermes-btn-outline-bg-color);
78
+ --hermes-btn-default-disabled-color: #{tokens.$hermes-alias-typography-disabled};
79
+ --hermes-btn-default-disabled-bg-color: var(--hermes-btn-default-outline-bg-color);
80
+ --hermes-btn-default-disabled-border-color: #{tokens.$hermes-alias-status-disabled};
81
+ --hermes-btn-default-checked-color: #{tokens.$hermes-alias-typography-color-100};
82
+ --hermes-btn-default-checked-bg-color: var(--hermes-btn-default-color);
83
+ --hermes-btn-default-checked-hover-color: var(--hermes-btn-default-checked-color);
84
+ --hermes-btn-default-checked-hover-bg-color: #{tokens.$hermes-alias-object-interaction-info-hover};
85
+ --hermes-btn-default-checked-active-color: var(--hermes-btn-default-checked-color);
86
+ --hermes-btn-default-checked-active-bg-color: var(--hermes-btn-default-color);
87
+ --hermes-btn-default-checked-disabled-color: #{tokens.$hermes-alias-typography-disabled-button};
88
+ --hermes-btn-default-checked-disabled-bg-color: #{tokens.$hermes-alias-status-disabled};
89
+
90
+ // Default outline button
91
+ --hermes-btn-default-outline-color: #{tokens.$hermes-alias-primary};
92
+ --hermes-btn-default-outline-border-color: var(--hermes-btn-primary-outline-color);
93
+ --hermes-btn-default-outline-bg-color: var(--hermes-btn-outline-bg-color);
94
+ --hermes-btn-default-outline-hover-bg-color: #{tokens.$hermes-alias-object-interaction-primary-secondary-hover};
95
+ --hermes-btn-default-outline-hover-color: #{tokens.$hermes-alias-typography-primary-hover};
96
+ --hermes-btn-default-outline-active-color: var(--hermes-btn-default-outline-color);
97
+ --hermes-btn-default-outline-active-bg-color: var(--hermes-btn-outline-bg-color);
98
+ --hermes-btn-default-outline-disabled-color: #{tokens.$hermes-alias-typography-disabled};
99
+ --hermes-btn-default-outline-disabled-bg-color: var(--hermes-btn-default-outline-bg-color);
100
+ --hermes-btn-default-outline-disabled-border-color: #{tokens.$hermes-alias-status-disabled};
101
+ --hermes-btn-default-outline-checked-color: #{tokens.$hermes-alias-typography-color-100};
102
+ --hermes-btn-default-outline-checked-bg-color: var(--hermes-btn-default-outline-bg-color);
103
+
104
+ // Primary button colors
105
+ --hermes-btn-primary-color: #{tokens.$hermes-alias-typography-color-100};
106
+ --hermes-btn-primary-bg-color: #{tokens.$hermes-alias-primary};
107
+ --hermes-btn-primary-border-color: #{tokens.$hermes-alias-primary};
108
+ --hermes-btn-primary-hover-bg-color: #{tokens.$hermes-alias-object-interaction-primary-hover};
109
+ --hermes-btn-primary-hover-color: var(--hermes-btn-primary-color);
110
+ --hermes-btn-primary-active-color: #{tokens.$hermes-alias-typography-color-100};
111
+ --hermes-btn-primary-active-bg-color: #{tokens.$hermes-alias-object-interaction-primary-active};
112
+ --hermes-btn-primary-disabled-color: #{tokens.$hermes-alias-typography-disabled-button};
113
+ --hermes-btn-primary-disabled-bg-color: #{tokens.$hermes-alias-status-disabled};
114
+ --hermes-btn-primary-disabled-border-color: #{tokens.$hermes-alias-status-disabled};
115
+ --hermes-btn-primary-checked-bg-color: #{tokens.$hermes-alias-primary};
116
+ --hermes-btn-primary-checked-color: #{tokens.$hermes-alias-typography-color-100};
117
+
118
+ // Primary outline button
119
+ --hermes-btn-primary-outline-color: #{tokens.$hermes-alias-primary};
120
+ --hermes-btn-primary-outline-border-color: var(--hermes-btn-primary-outline-color);
121
+ --hermes-btn-primary-outline-bg-color: var(--hermes-btn-outline-bg-color);
122
+ --hermes-btn-primary-outline-hover-bg-color: #{tokens.$hermes-alias-object-interaction-primary-secondary-hover};
123
+ --hermes-btn-primary-outline-hover-color: #{tokens.$hermes-alias-typography-primary-hover};
124
+ --hermes-btn-primary-outline-active-bg-color: var(--hermes-btn-outline-bg-color);
125
+ --hermes-btn-primary-outline-active-color: var(--hermes-btn-primary-outline-color);
126
+ --hermes-btn-primary-outline-disabled-color: #{tokens.$hermes-alias-typography-disabled};
127
+ --hermes-btn-primary-outline-disabled-bg-color: var(--hermes-btn-default-outline-bg-color);
128
+ --hermes-btn-primary-outline-disabled-border-color: #{tokens.$hermes-alias-status-disabled};
129
+ --hermes-btn-primary-outline-checked-color: #{tokens.$hermes-alias-typography-color-100};
130
+ --hermes-btn-primary-outline-checked-bg-color: var(--hermes-btn-default-outline-bg-color);
131
+
132
+ // Info button colors
133
+ --hermes-btn-info-color: #{tokens.$hermes-alias-typography-color-100};
134
+ --hermes-btn-info-bg-color: #{tokens.$hermes-alias-status-info};
135
+ --hermes-btn-info-border-color: #{tokens.$hermes-alias-status-info};
136
+ --hermes-btn-info-hover-bg-color: #{tokens.$hermes-alias-object-interaction-info-hover};
137
+ --hermes-btn-info-hover-color: var(--hermes-btn-info-color);
138
+ --hermes-btn-info-active-color: #{tokens.$hermes-alias-typography-color-100};
139
+ --hermes-btn-info-active-bg-color: #{tokens.$hermes-alias-object-interaction-info-active};
140
+ --hermes-btn-info-disabled-color: #{tokens.$hermes-alias-typography-disabled-button};
141
+ --hermes-btn-info-disabled-bg-color: #{tokens.$hermes-alias-status-disabled};
142
+ --hermes-btn-info-disabled-border-color: #{tokens.$hermes-alias-status-disabled};
143
+ --hermes-btn-info-checked-bg-color: #{tokens.$hermes-alias-status-info};
144
+ --hermes-btn-info-checked-color: #{tokens.$hermes-alias-typography-color-100};
145
+
146
+ // Info outline button
147
+ --hermes-btn-info-outline-color: #{tokens.$hermes-alias-status-info};
148
+ --hermes-btn-info-outline-border-color: var(--hermes-btn-info-outline-color);
149
+ --hermes-btn-info-outline-bg-color: var(--hermes-btn-outline-bg-color);
150
+ --hermes-btn-info-outline-hover-bg-color: #{tokens.$hermes-alias-object-interaction-info-secondary-hover};
151
+ --hermes-btn-info-outline-hover-color: #{tokens.$hermes-alias-typography-info-hover};
152
+ --hermes-btn-info-outline-active-bg-color: var(--hermes-btn-outline-bg-color);
153
+ --hermes-btn-info-outline-active-color: var(--hermes-btn-info-outline-color);
154
+ --hermes-btn-info-outline-disabled-color: #{tokens.$hermes-alias-typography-disabled};
155
+ --hermes-btn-info-outline-disabled-bg-color: var(--hermes-btn-default-outline-bg-color);
156
+ --hermes-btn-info-outline-disabled-border-color: #{tokens.$hermes-alias-status-disabled};
157
+ --hermes-btn-info-outline-checked-color: #{tokens.$hermes-alias-typography-color-100};
158
+ --hermes-btn-info-outline-checked-bg-color: var(--hermes-btn-default-outline-bg-color);
159
+
160
+ // Success button colors
161
+ --hermes-btn-success-color: #{tokens.$hermes-alias-typography-color-100};
162
+ --hermes-btn-success-bg-color: #{tokens.$hermes-alias-status-success};
163
+ --hermes-btn-success-border-color: var(--hermes-btn-success-bg-color);
164
+ --hermes-btn-success-hover-bg-color: #{tokens.$hermes-alias-object-interaction-success-hover};
165
+ --hermes-btn-success-hover-color: var(--hermes-btn-success-color);
166
+ --hermes-btn-success-active-color: #{tokens.$hermes-alias-typography-color-100};
167
+ --hermes-btn-success-active-bg-color: var(--hermes-alias-object-interaction-success-active);
168
+ --hermes-btn-success-disabled-color: #{tokens.$hermes-alias-typography-disabled-button};
169
+ --hermes-btn-success-disabled-bg-color: #{tokens.$hermes-alias-status-disabled};
170
+ --hermes-btn-success-disabled-border-color: #{tokens.$hermes-alias-status-disabled};
171
+ --hermes-btn-success-checked-bg-color: var(--hermes-btn-success-color);
172
+ --hermes-btn-success-checked-color: var(--hermes-btn-success-bg-color);
173
+
174
+ // Success outline button colors
175
+ --hermes-btn-success-outline-color: #{tokens.$hermes-alias-status-success};
176
+ --hermes-btn-success-outline-bg-color: var(--hermes-btn-outline-bg-color);
177
+ --hermes-btn-success-outline-border-color: #{tokens.$hermes-alias-status-success};
178
+ --hermes-btn-success-outline-hover-bg-color: #{tokens.$hermes-alias-object-interaction-success-secondary-hover};
179
+ --hermes-btn-success-outline-hover-color: #{tokens.$hermes-alias-typography-success-hover};
180
+ --hermes-btn-success-outline-active-bg-color: var(--hermes-btn-success-outline-bg-color);
181
+ --hermes-btn-success-outline-active-color: var(--hermes-btn-success-outline-color);
182
+ --hermes-btn-success-outline-disabled-color: #{tokens.$hermes-alias-typography-disabled};
183
+ --hermes-btn-success-outline-disabled-bg-color: var(--hermes-btn-default-outline-bg-color);
184
+ --hermes-btn-success-outline-disabled-border-color: #{tokens.$hermes-alias-status-disabled};
185
+ --hermes-btn-success-outline-checked-bg-color: var(--hermes-btn-success-outline-bg-color);
186
+ --hermes-btn-success-outline-checked-color: var(--hermes-btn-success-outline-color);
187
+
188
+ // Danger button colors
189
+ --hermes-btn-danger-color: #{tokens.$hermes-alias-typography-color-100};
190
+ --hermes-btn-danger-bg-color: #{tokens.$hermes-alias-status-danger};
191
+ --hermes-btn-danger-border-color: var(--hermes-btn-danger-bg-color);
192
+ --hermes-btn-danger-hover-bg-color: #{tokens.$hermes-alias-object-interaction-danger-hover};
193
+ --hermes-btn-danger-hover-color: var(--hermes-btn-danger-color);
194
+ --hermes-btn-danger-active-bg-color: var(--hermes-alias-object-interaction-danger-active);
195
+ --hermes-btn-danger-active-color: #{tokens.$hermes-alias-typography-color-100};
196
+ --hermes-btn-danger-disabled-color: #{tokens.$hermes-alias-typography-disabled-button};
197
+ --hermes-btn-danger-disabled-bg-color: #{tokens.$hermes-alias-status-disabled};
198
+ --hermes-btn-danger-disabled-border-color: #{tokens.$hermes-alias-status-disabled};
199
+ --hermes-btn-danger-checked-bg-color: var(--hermes-btn-danger-bg-color);
200
+ --hermes-btn-danger-checked-color: var(--hermes-btn-danger-color);
201
+
202
+ // Danger outline button colors
203
+ --hermes-btn-danger-outline-color: #{tokens.$hermes-alias-status-danger};
204
+ --hermes-btn-danger-outline-bg-color: var(--hermes-btn-outline-bg-color);
205
+ --hermes-btn-danger-outline-border-color: #{tokens.$hermes-alias-status-danger};
206
+ --hermes-btn-danger-outline-hover-bg-color: #{tokens.$hermes-alias-object-interaction-danger-secondary-hover};
207
+ --hermes-btn-danger-outline-hover-color: #{tokens.$hermes-alias-typography-danger-hover};
208
+ --hermes-btn-danger-outline-active-bg-color: var(--hermes-btn-danger-outline-bg-color);
209
+ --hermes-btn-danger-outline-active-color: var(--hermes-btn-danger-outline-color);
210
+ --hermes-btn-danger-outline-disabled-color: #{tokens.$hermes-alias-typography-disabled};
211
+ --hermes-btn-danger-outline-disabled-bg-color: var(--hermes-btn-default-outline-bg-color);
212
+ --hermes-btn-danger-outline-disabled-border-color: #{tokens.$hermes-alias-status-disabled};
213
+ --hermes-btn-danger-outline-checked-bg-color: var(--hermes-btn-danger-outline-bg-color);
214
+ --hermes-btn-danger-outline-checked-color: var(--hermes-btn-danger-outline-color);
215
+
216
+ // Warning button colors
217
+ --hermes-btn-warning-color: #{tokens.$hermes-alias-typography-color-black};
218
+ --hermes-btn-warning-bg-color: #{tokens.$hermes-alias-status-warning};
219
+ --hermes-btn-warning-border-color: var(--hermes-btn-warning-bg-color);
220
+ --hermes-btn-warning-hover-bg-color: #{tokens.$hermes-alias-object-interaction-warning-hover};
221
+ --hermes-btn-warning-hover-color: var(--hermes-btn-warning-color);
222
+ --hermes-btn-warning-active-bg-color: var(--hermes-alias-object-interaction-warning-active);
223
+ --hermes-btn-warning-active-color: var(--hermes-btn-warning-color);
224
+ --hermes-btn-warning-disabled-color: #{tokens.$hermes-alias-typography-disabled-button};
225
+ --hermes-btn-warning-disabled-bg-color: #{tokens.$hermes-alias-status-disabled};
226
+ --hermes-btn-warning-disabled-border-color: #{tokens.$hermes-alias-status-disabled};
227
+ --hermes-btn-warning-checked-bg-color: var(--hermes-btn-warning-bg-color);
228
+ --hermes-btn-warning-checked-color: var(--hermes-btn-warning-color);
229
+
230
+ // Warning outline button colors
231
+ --hermes-btn-warning-outline-color: #{tokens.$hermes-alias-status-warning-dark};
232
+ --hermes-btn-warning-outline-bg-color: var(--hermes-btn-outline-bg-color);
233
+ --hermes-btn-warning-outline-border-color: #{tokens.$hermes-alias-status-warning-dark};
234
+ --hermes-btn-warning-outline-hover-bg-color: #{tokens.$hermes-alias-object-interaction-warning-secondary-hover};
235
+ --hermes-btn-warning-outline-hover-color: #{tokens.$hermes-alias-typography-warning-hover};
236
+ --hermes-btn-warning-outline-active-bg-color: var(--hermes-btn-warning-outline-bg-color);
237
+ --hermes-btn-warning-outline-active-color: var(--hermes-btn-warning-outline-color);
238
+ --hermes-btn-warning-outline-disabled-color: #{tokens.$hermes-alias-typography-disabled};
239
+ --hermes-btn-warning-outline-disabled-bg-color: var(--hermes-btn-default-outline-bg-color);
240
+ --hermes-btn-warning-outline-disabled-border-color: #{tokens.$hermes-alias-status-disabled};
241
+ --hermes-btn-warning-outline-checked-bg-color: var(--hermes-btn-warning-outline-bg-color);
242
+ --hermes-btn-warning-outline-checked-color: var(--hermes-btn-warning-outline-color);
243
+
244
+ // Neutral button colors
245
+ --hermes-btn-neutral-color: #{tokens.$hermes-alias-typography-color-100};
246
+ --hermes-btn-neutral-bg-color: #{tokens.$hermes-alias-status-neutral};
247
+ --hermes-btn-neutral-border-color: var(--hermes-btn-neutral-bg-color);
248
+ --hermes-btn-neutral-hover-bg-color: #{tokens.$hermes-alias-object-interaction-neutral-hover};
249
+ --hermes-btn-neutral-hover-color: var(--hermes-btn-neutral-color);
250
+ --hermes-btn-neutral-active-bg-color: var(--hermes-alias-object-interaction-neutral-active);
251
+ --hermes-btn-neutral-active-color: var(--hermes-btn-neutral-color);
252
+ --hermes-btn-neutral-disabled-color: #{tokens.$hermes-alias-typography-disabled-button};
253
+ --hermes-btn-neutral-disabled-bg-color: #{tokens.$hermes-alias-status-disabled};
254
+ --hermes-btn-neutral-disabled-border-color: #{tokens.$hermes-alias-status-disabled};
255
+ --hermes-btn-neutral-checked-bg-color: var(--hermes-btn-neutral-bg-color);
256
+ --hermes-btn-neutral-checked-color: var(--hermes-btn-neutral-color);
257
+
258
+ // Neutral outline button colors
259
+ --hermes-btn-neutral-outline-color: #{tokens.$hermes-alias-status-neutral};
260
+ --hermes-btn-neutral-outline-bg-color: #{tokens.$hermes-alias-object-opacity-0};
261
+ --hermes-btn-neutral-outline-border-color: var(--hermes-btn-neutral-outline-color);
262
+ --hermes-btn-neutral-outline-hover-color: #{tokens.$hermes-alias-typography-neutral-hover};
263
+ --hermes-btn-neutral-outline-hover-bg-color: #{tokens.$hermes-alias-object-interaction-neutral-secondary-hover};
264
+ --hermes-btn-neutral-outline-active-color: #{tokens.$hermes-alias-status-neutral};
265
+ --hermes-btn-neutral-outline-active-bg-color: #{tokens.$hermes-alias-object-opacity-0};
266
+ --hermes-btn-neutral-outline-disabled-color: #{tokens.$hermes-alias-typography-disabled};
267
+ --hermes-btn-neutral-outline-disabled-bg-color: var(--hermes-btn-default-outline-bg-color);
268
+ --hermes-btn-neutral-outline-disabled-border-color: #{tokens.$hermes-alias-status-disabled};
269
+ --hermes-btn-neutral-outline-checked-bg-color: var(--hermes-btn-neutral-outline-bg-color);
270
+ --hermes-btn-neutral-outline-checked-color: var(--hermes-btn-neutral-outline-color);
271
+
272
+ // Link button colors
273
+ --hermes-btn-link-color: #{tokens.$hermes-alias-primary};
274
+ --hermes-btn-link-bg-color: var(--hermes-btn-transparent-bg-color);
275
+ --hermes-btn-link-border-color: var(--hermes-btn-transparent-bg-color);
276
+ --hermes-btn-link-active-color: var(--hermes-btn-link-color);
277
+ --hermes-btn-link-active-bg-color: var(--hermes-btn-transparent-bg-color);
278
+ --hermes-btn-link-hover-bg-color: var(--hermes-btn-transparent-bg-color);
279
+ --hermes-btn-link-hover-color: #{tokens.$hermes-alias-typography-primary-hover};
280
+ --hermes-btn-link-visited-color: #{tokens.$hermes-alias-typography-link-color-visited};
281
+ --hermes-btn-link-visited-hover-color: #{tokens.$hermes-alias-typography-link-color-visited-hover};
282
+ --hermes-btn-link-disabled-color: #{tokens.$hermes-alias-typography-disabled};
283
+ --hermes-btn-link-disabled-bg-color: var(--hermes-btn-transparent-bg-color);
284
+ --hermes-btn-link-disabled-border-color: var(--hermes-btn-transparent-bg-color);
285
+ --hermes-btn-link-checked-bg-color: var(--hermes-btn-transparent-bg-color);
286
+ --hermes-btn-link-checked-color: var(--hermes-btn-link-color);
287
+
288
+ // Primary Link button colors
289
+ --hermes-btn-link-primary-color: #{tokens.$hermes-alias-primary};
290
+ --hermes-btn-link-primary-bg-color: var(--hermes-btn-transparent-bg-color);
291
+ --hermes-btn-link-primary-border-color: var(--hermes-btn-transparent-bg-color);
292
+ --hermes-btn-link-primary-hover-bg-color: var(--hermes-btn-transparent-bg-color);
293
+ --hermes-btn-link-primary-hover-color: #{tokens.$hermes-alias-typography-primary-hover};
294
+ --hermes-btn-link-primary-active-color: var(--hermes-btn-link-primary-color);
295
+ --hermes-btn-link-primary-active-bg-color: var(--hermes-btn-transparent-bg-color);
296
+ --hermes-btn-link-primary-disabled-color: #{tokens.$hermes-alias-typography-disabled};
297
+ --hermes-btn-link-primary-disabled-bg-color: var(--hermes-btn-transparent-bg-color);
298
+ --hermes-btn-link-primary-disabled-border-color: var(--hermes-btn-transparent-bg-color);
299
+ --hermes-btn-link-primary-checked-bg-color: var(--hermes-btn-transparent-bg-color);
300
+ --hermes-btn-link-primary-checked-color: var(--hermes-btn-link-primary-color);
301
+
302
+ // Info Link button colors
303
+ --hermes-btn-link-info-color: #{tokens.$hermes-alias-status-info};
304
+ --hermes-btn-link-info-bg-color: var(--hermes-btn-transparent-bg-color);
305
+ --hermes-btn-link-info-border-color: var(--hermes-btn-transparent-bg-color);
306
+ --hermes-btn-link-info-hover-bg-color: var(--hermes-btn-transparent-bg-color);
307
+ --hermes-btn-link-info-hover-color: #{tokens.$hermes-alias-typography-info-hover};
308
+ --hermes-btn-link-info-active-color: var(--hermes-btn-link-info-color);
309
+ --hermes-btn-link-info-active-bg-color: var(--hermes-btn-transparent-bg-color);
310
+ --hermes-btn-link-info-disabled-color: #{tokens.$hermes-alias-typography-disabled};
311
+ --hermes-btn-link-info-disabled-bg-color: var(--hermes-btn-transparent-bg-color);
312
+ --hermes-btn-link-info-disabled-border-color: var(--hermes-btn-transparent-bg-color);
313
+ --hermes-btn-link-info-checked-bg-color: var(--hermes-btn-transparent-bg-color);
314
+ --hermes-btn-link-info-checked-color: var(--hermes-btn-link-info-color);
315
+
316
+ // Success Link button colors
317
+ --hermes-btn-link-success-color: #{tokens.$hermes-alias-status-success};
318
+ --hermes-btn-link-success-bg-color: var(--hermes-btn-transparent-bg-color);
319
+ --hermes-btn-link-success-border-color: var(--hermes-btn-transparent-bg-color);
320
+ --hermes-btn-link-success-hover-bg-color: var(--hermes-btn-transparent-bg-color);
321
+ --hermes-btn-link-success-hover-color: #{tokens.$hermes-alias-typography-success-hover};
322
+ --hermes-btn-link-success-active-color: var(--hermes-btn-link-success-color);
323
+ --hermes-btn-link-success-active-bg-color: var(--hermes-btn-transparent-bg-color);
324
+ --hermes-btn-link-success-disabled-color: #{tokens.$hermes-alias-typography-disabled};
325
+ --hermes-btn-link-success-disabled-bg-color: var(--hermes-btn-transparent-bg-color);
326
+ --hermes-btn-link-success-disabled-border-color: var(--hermes-btn-transparent-bg-color);
327
+ --hermes-btn-link-success-checked-bg-color: var(--hermes-btn-transparent-bg-color);
328
+ --hermes-btn-link-success-checked-color: var(--hermes-btn-link-success-color);
329
+
330
+ // Warning Link button colors
331
+ --hermes-btn-link-warning-color: #{tokens.$hermes-alias-status-warning-dark};
332
+ --hermes-btn-link-warning-bg-color: var(--hermes-btn-transparent-bg-color);
333
+ --hermes-btn-link-warning-border-color: var(--hermes-btn-transparent-bg-color);
334
+ --hermes-btn-link-warning-hover-bg-color: var(--hermes-btn-transparent-bg-color);
335
+ --hermes-btn-link-warning-hover-color: #{tokens.$hermes-alias-typography-warning-hover};
336
+ --hermes-btn-link-warning-active-color: var(--hermes-btn-link-warning-color);
337
+ --hermes-btn-link-warning-active-bg-color: var(--hermes-btn-transparent-bg-color);
338
+ --hermes-btn-link-warning-disabled-color: #{tokens.$hermes-alias-typography-disabled};
339
+ --hermes-btn-link-warning-disabled-bg-color: var(--hermes-btn-transparent-bg-color);
340
+ --hermes-btn-link-warning-disabled-border-color: var(--hermes-btn-transparent-bg-color);
341
+ --hermes-btn-link-warning-checked-bg-color: var(--hermes-btn-transparent-bg-color);
342
+ --hermes-btn-link-warning-checked-color: var(--hermes-btn-link-warning-color);
343
+
344
+ // Danger Link button colors
345
+ --hermes-btn-link-danger-color: #{tokens.$hermes-alias-status-danger};
346
+ --hermes-btn-link-danger-bg-color: var(--hermes-btn-transparent-bg-color);
347
+ --hermes-btn-link-danger-border-color: var(--hermes-btn-transparent-bg-color);
348
+ --hermes-btn-link-danger-hover-bg-color: var(--hermes-btn-transparent-bg-color);
349
+ --hermes-btn-link-danger-hover-color: #{tokens.$hermes-alias-typography-danger-hover};
350
+ --hermes-btn-link-danger-active-color: var(--hermes-btn-link-danger-color);
351
+ --hermes-btn-link-danger-active-bg-color: var(--hermes-btn-transparent-bg-color);
352
+ --hermes-btn-link-danger-disabled-color: #{tokens.$hermes-alias-typography-disabled};
353
+ --hermes-btn-link-danger-disabled-bg-color: var(--hermes-btn-transparent-bg-color);
354
+ --hermes-btn-link-danger-disabled-border-color: var(--hermes-btn-transparent-bg-color);
355
+ --hermes-btn-link-danger-checked-bg-color: var(--hermes-btn-transparent-bg-color);
356
+ --hermes-btn-link-danger-checked-color: var(--hermes-btn-link-danger-color);
357
+
358
+ // Danger Link button colors
359
+ --hermes-btn-link-neutral-color: #{tokens.$hermes-alias-status-neutral};
360
+ --hermes-btn-link-neutral-bg-color: var(--hermes-btn-transparent-bg-color);
361
+ --hermes-btn-link-neutral-border-color: var(--hermes-btn-transparent-bg-color);
362
+ --hermes-btn-link-neutral-hover-bg-color: var(--hermes-btn-transparent-bg-color);
363
+ --hermes-btn-link-neutral-hover-color: #{tokens.$hermes-alias-typography-neutral-hover};
364
+ --hermes-btn-link-neutral-active-color: var(--hermes-btn-link-neutral-color);
365
+ --hermes-btn-link-neutral-active-bg-color: var(--hermes-btn-transparent-bg-color);
366
+ --hermes-btn-link-neutral-disabled-color: #{tokens.$hermes-alias-typography-disabled};
367
+ --hermes-btn-link-neutral-disabled-bg-color: var(--hermes-btn-transparent-bg-color);
368
+ --hermes-btn-link-neutral-disabled-border-color: var(--hermes-btn-transparent-bg-color);
369
+ --hermes-btn-link-neutral-checked-bg-color: var(--hermes-btn-transparent-bg-color);
370
+ --hermes-btn-link-neutral-checked-color: var(--hermes-btn-link-neutral-color);
371
+
372
+ // Inverse button colors
373
+ --hermes-btn-inverse-color: #{tokens.$hermes-global-color-white};
374
+ --hermes-btn-inverse-border-color: #{tokens.$hermes-global-color-white};
375
+ --hermes-btn-inverse-bg-color: var(--hermes-btn-transparent-bg-color);
376
+ --hermes-btn-inverse-hover-bg-color: #{tokens.$hermes-alias-object-interaction-inverse-hover};
377
+ --hermes-btn-inverse-hover-color: var(--hermes-btn-inverse-color); // var(--hermes-color-neutral-0);
378
+ --hermes-btn-inverse-active-bg-color: var(--hermes-alias-object-interaction-inverse-active);
379
+ --hermes-btn-inverse-active-color: #{tokens.$hermes-global-color-white};
380
+ --hermes-btn-inverse-disabled-color: #{tokens.$hermes-alias-typography-disabled};
381
+ --hermes-btn-inverse-disabled-bg-color: var(--hermes-btn-default-outline-bg-color);
382
+ --hermes-btn-inverse-disabled-border-color: #{tokens.$hermes-alias-status-disabled};
383
+ --hermes-btn-inverse-checked-bg-color: var(--hermes-btn-inverse-bg-color);
384
+ --hermes-btn-inverse-checked-color: var(--hermes-btn-inverse-color);
385
+ }
386
+ }
387
+ }
@@ -0,0 +1,35 @@
1
+ /*
2
+ * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.
3
+ * The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries.
4
+ * This software is released under MIT license.
5
+ * The full license information can be found in LICENSE in the root directory of this project.
6
+ */
7
+
8
+ @use '../styles/mixins';
9
+ @use '../styles/core/tokens/variables.tokens' as tokens;
10
+
11
+ @include mixins.exports('toggle.properties') {
12
+ @include mixins.root-or-host() {
13
+ &,
14
+ [hermes-theme] {
15
+ // colors
16
+ --hermes-toggle-bg-color-off: #{tokens.$hermes-alias-status-neutral};
17
+ --hermes-toggle-bg-color-on: #{tokens.$hermes-alias-status-success};
18
+ --hermes-toggle-handle-bg-color: #{tokens.$hermes-alias-object-interaction-background};
19
+ --hermes-toggle-handle-border-color: var(--hermes-toggle-bg-color-off);
20
+ --hermes-toggle-handle-border-color-on: var(--hermes-toggle-bg-color-on);
21
+
22
+ // disabled colors
23
+ --hermes-toggle-disabled-default-border-color: #{tokens.$hermes-alias-object-interaction-color-disabled};
24
+ --hermes-toggle-disabled-default-handle-color: #{tokens.$hermes-alias-object-interaction-background};
25
+ --hermes-toggle-disabled-off-border-color: var(--hermes-toggle-disabled-default-border-color);
26
+ --hermes-toggle-disabled-off-bg-color: var(--hermes-toggle-disabled-default-handle-color);
27
+
28
+ // Also sets disabled/on inner part of handle circle.
29
+ --hermes-toggle-disabled-off-handle-border-color: var(--hermes-toggle-disabled-default-border-color);
30
+ --hermes-toggle-disabled-on-border-color: var(--hermes-toggle-disabled-default-border-color);
31
+ --hermes-toggle-disabled-on-bg-color: var(--hermes-toggle-disabled-default-border-color);
32
+ --hermes-toggle-disabled-on-handle-border-color: var(--hermes-toggle-disabled-default-border-color);
33
+ }
34
+ }
35
+ }