@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,98 @@
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
+ .form-compact {
9
+ padding: 0;
10
+ text-align: left;
11
+ font-weight: normal;
12
+ }
13
+
14
+ .form-control-compact {
15
+ margin-top: 0.3rem;
16
+ }
17
+
18
+ .btn-compact {
19
+ min-width: 1.2rem;
20
+ padding: 0;
21
+ margin: 0 0.4rem;
22
+ }
23
+
24
+ .btn-right {
25
+ float: right;
26
+ margin-right: 0;
27
+ margin-top: 0.9rem;
28
+ margin-left: 0.3rem;
29
+ }
30
+
31
+ .mt-half {
32
+ margin-top: 0.6rem;
33
+ }
34
+
35
+ .mt-compact {
36
+ margin-top: 0.9rem;
37
+ }
38
+
39
+ .mb-compact {
40
+ margin-bottom: 0.9rem;
41
+ }
42
+
43
+ .ml-half {
44
+ margin-left: 0.6rem;
45
+ }
46
+
47
+ .mt-0 {
48
+ margin-top: 0;
49
+ }
50
+
51
+ .mb-0 {
52
+ margin-bottom: 0;
53
+ }
54
+
55
+ :host-context(.zoom2x, .zoom4x) {
56
+ .form-max-height {
57
+ max-height: 8rem;
58
+ overflow-y: auto;
59
+ }
60
+ }
61
+
62
+ select {
63
+ max-width: 18rem;
64
+ text-overflow: ellipsis;
65
+ }
66
+ // in order to display properties with longer names.
67
+ hermes-signpost-content {
68
+ max-width: 20rem;
69
+ }
70
+
71
+ .flex-end-container {
72
+ display: flex;
73
+ align-items: flex-end;
74
+ }
75
+
76
+ .flex-container {
77
+ display: flex;
78
+ }
79
+
80
+ .loading-overlay {
81
+ position: absolute;
82
+ top: 0;
83
+ left: 0;
84
+ width: 100%;
85
+ height: 100%;
86
+ background: var(--hermes-datagrid-loading-background);
87
+ display: flex;
88
+ align-items: center;
89
+ justify-content: center;
90
+ z-index: 10;
91
+ }
92
+
93
+ .loading-content {
94
+ display: flex;
95
+ flex-direction: column;
96
+ align-items: center;
97
+ gap: 0.5rem;
98
+ }
@@ -0,0 +1,26 @@
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
+ .composite-filter-container {
9
+ display: flex;
10
+ }
11
+
12
+ .height-standard {
13
+ height: 1.2rem;
14
+ }
15
+
16
+ .manage-filter-container {
17
+ display: flex;
18
+ flex-wrap: wrap;
19
+ }
20
+
21
+ :host-context(.zoom2x, .zoom4x) {
22
+ .composite-filter-container,
23
+ .manage-filter-container {
24
+ display: contents;
25
+ }
26
+ }
@@ -0,0 +1,22 @@
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
+ .filter-container {
9
+ display: flex;
10
+ align-items: baseline;
11
+ margin-left: 0.2rem;
12
+ }
13
+
14
+ :host-context(.zoom2x, .zoom4x) {
15
+ .filter-container {
16
+ flex-wrap: wrap;
17
+ }
18
+
19
+ .filter-contents {
20
+ display: contents;
21
+ }
22
+ }
@@ -0,0 +1,42 @@
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
+ .filter-remove-btn {
9
+ background: transparent;
10
+ border: none;
11
+ cursor: pointer;
12
+ }
13
+
14
+ .text-lower {
15
+ text-transform: lowercase;
16
+ }
17
+
18
+ :host-context(body[data-theme='light']) {
19
+ :host-context(.user-tabbing) {
20
+ .edit-filter:focus,
21
+ .remove-filter:focus {
22
+ outline: 2px solid #000;
23
+ }
24
+
25
+ .edit-filter:focus {
26
+ outline-offset: 1px;
27
+ }
28
+ }
29
+ }
30
+
31
+ :host-context(body[data-theme='dark']) {
32
+ :host-context(.user-tabbing) {
33
+ .edit-filter:focus,
34
+ .remove-filter:focus {
35
+ outline: 2px solid #fafafa;
36
+ }
37
+
38
+ .edit-filter:focus {
39
+ outline-offset: 1px;
40
+ }
41
+ }
42
+ }
@@ -0,0 +1,112 @@
1
+ ### Overview
2
+
3
+ AppFx Multi-Page Dialog (`appfx-dialog`) renders a composition of step components as tabs inside a Clarity modal.
4
+ It is built on top of [AppFx Tabs](../tabs/README.md), reusing the same `Step`/`WorkflowModel` API, and adds the
5
+ modal chrome (title, footer buttons, close handling) on top.
6
+
7
+ Step components and step models can be reused between AppFx Tabs and AppFx Dialog.
8
+
9
+ ### Features
10
+
11
+ #### Horizontal or Vertical tabs
12
+
13
+ AppFx Dialog offers the flexibility to display tabs horizontally (the default) or in a vertical orientation.
14
+ To customize the layout, refer to the `DialogComponent.tabLayout` property.
15
+
16
+ #### Submit / Cancel workflow
17
+
18
+ The dialog's OK and Cancel buttons are wired to an optional `closeHandler`. `closeHandler.onSubmit` is invoked
19
+ when the user clicks OK, `closeHandler.onCancel` when the user clicks Cancel or closes the dialog. The dialog
20
+ waits for the returned `Observable` to complete before closing; if it errors, the error is shown in the dialog
21
+ and it remains open.
22
+
23
+ #### Reusable with AppFx Tabs
24
+
25
+ AppFx Dialog is fully compatible with AppFx Tabs, with both components sharing the same functionality. The key
26
+ distinction lies in how they are rendered, with AppFx Dialog appearing as a modal popup. This compatibility
27
+ allows one to effortlessly reuse the same steps and models between an inline AppFx Tabs page and an AppFx Dialog,
28
+ reducing code duplication and enhancing maintainability.
29
+
30
+ ### Component API
31
+
32
+ #### appfx-dialog
33
+
34
+ | Attribute | I/O | Type | Required? | Description |
35
+ | -------------------- | ------ | ------------------------------ | --------- | ----------------------------------------------------------------------------------------------- |
36
+ | `title` | Input | `string` | No | The title of the dialog. |
37
+ | `subTitle` | Input | `string \| Observable<string>` | No | The sub title of the dialog. |
38
+ | `size` | Input | `ModalSize` | No | Dialog's Clarity size (`'xl' \| 'lg' \| 'md' \| 'sm' \| 'full-screen'`). |
39
+ | `height` | Input | `string` | No | Specifies the height of the dialog. |
40
+ | `defaultButton` | Input | `'submit' \| 'close'` | No | Which button is highlighted. Default value: `'close'`. |
41
+ | `cancelButtonLabel` | Input | `string` | No | The cancel button label. |
42
+ | `okButtonLabel` | Input | `string` | No | The OK button label. |
43
+ | `tabLayout` | Input | `'horizontal' \| 'vertical'` | No | Tab layout. Default value: `'horizontal'`. |
44
+ | `disableTabsContent` | Input | `boolean` | No | Disable the content of the tabs. |
45
+ | `loading` | Input | `boolean` | No | Display loading indicator when set to `true`. Default value: `false`. |
46
+ | `steps` | Input | `Step[]` | Yes | Configure pages of the dialog - title, component class, model, etc. |
47
+ | `model` | Input | `WorkflowModel` | No | Object used to inject/eject properties between step models. Steps stay disconnected if omitted. |
48
+ | `closeHandler` | Input | `CloseHandler` | No | Callbacks invoked when the dialog is submitted or cancelled. |
49
+ | `showTabLinks` | Input | `boolean` | No | Show tab links. Default value: `true`. Set to `false` if you have only one step. |
50
+ | `opened` | Input | `boolean` | No | Controls the dialog open/close state. |
51
+ | `onModelChange` | Output | `EventEmitter<ModelChange[]>` | No | Emits when any of the workflow model's variables changes. |
52
+ | `onClose` | Output | `EventEmitter<void>` | No | Emits when the dialog is closed (close button, or the OK/Cancel buttons). |
53
+ | `openedChange` | Output | `EventEmitter<boolean>` | No | Emits when the `opened` input changes. |
54
+
55
+ See [AppFx Tabs](../tabs/README.md) for the `Step` interface reference.
56
+
57
+ ### Examples
58
+
59
+ _sample-dialog.component.html_:
60
+
61
+ ```html
62
+ <button class="btn btn-primary" (click)="dialogOpened = true">Open Dialog</button>
63
+
64
+ <appfx-dialog
65
+ [(opened)]="dialogOpened"
66
+ [steps]="steps"
67
+ [model]="dialogModel"
68
+ [title]="'Sample Dialog'"
69
+ [tabLayout]="TabLayout.horizontal"
70
+ [closeHandler]="closeHandler"
71
+ >
72
+ </appfx-dialog>
73
+ ```
74
+
75
+ _sample-dialog.component.ts_:
76
+
77
+ ```ts
78
+ import { AppfxMultiPageDialogModule } from '@hermes/angular/addons/dialog';
79
+ import { CloseHandler, Step, TabLayout } from '@hermes/angular/addons/var';
80
+
81
+ @Component({
82
+ templateUrl: 'sample-dialog.component.html',
83
+ })
84
+ export class SampleDialog {
85
+ TabLayout = TabLayout;
86
+
87
+ dialogOpened = false;
88
+ steps: Step[];
89
+ dialogModel: SampleWorkflowModel;
90
+
91
+ closeHandler: CloseHandler = {
92
+ onSubmit: () => this.workflowService.apply(this.dialogModel),
93
+ onCancel: () => of(true),
94
+ };
95
+
96
+ constructor() {
97
+ this.dialogModel = new SampleWorkflowModel();
98
+ this.steps = [
99
+ <Step>{
100
+ title: 'Virtual Machine Name',
101
+ componentClass: ObjectNameComponent,
102
+ model: new ObjectNameModel(),
103
+ },
104
+ <Step>{
105
+ title: 'Select a Compute Resource',
106
+ componentClass: SelectHostComponent,
107
+ model: new SelectHostModel(),
108
+ },
109
+ ];
110
+ }
111
+ }
112
+ ```
@@ -0,0 +1,203 @@
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
+ .appfx-dialog {
9
+ // note mibryamov: dialog positioning related styling that is making sure the
10
+ // dialog is sized and displayed well in zoom mode similar to clarity wizard,
11
+ // this styling applies to both modes of the dialog - horizontal and vertical
12
+ // - and is not related to re-flowing of the dialog content
13
+ &.zoom2x,
14
+ &.zoom4x {
15
+ ::ng-deep {
16
+ .modal {
17
+ overflow: visible;
18
+
19
+ .modal-dialog {
20
+ .modal-content-wrapper {
21
+ display: flex;
22
+ flex-direction: row;
23
+ flex: 1 1 100%;
24
+ height: 100%;
25
+ width: 100%;
26
+ max-height: 100%;
27
+
28
+ .modal-content {
29
+ display: flex;
30
+ flex-direction: column;
31
+ flex: 2 2 auto;
32
+ align-items: flex-start;
33
+ padding: 0;
34
+ overflow: hidden;
35
+ border: none;
36
+ border-radius: 0;
37
+
38
+ .modal-header--accessible {
39
+ flex: 0 0 auto;
40
+ width: 100%;
41
+ padding: 1.2rem;
42
+ display: flex;
43
+ justify-content: space-between;
44
+ align-items: flex-start;
45
+
46
+ .modal-title-wrapper {
47
+ width: calc(100% - 1.2rem);
48
+
49
+ .modal-title {
50
+ flex-direction: column;
51
+ max-width: 100%;
52
+
53
+ .separator {
54
+ display: none;
55
+ }
56
+ }
57
+ }
58
+ }
59
+
60
+ .modal-body {
61
+ flex: 1 1 auto;
62
+ width: 100%;
63
+ height: 100%;
64
+ padding: 0 1.2rem;
65
+ }
66
+
67
+ .modal-footer {
68
+ padding-right: 1.2rem;
69
+ display: block;
70
+ height: 4.2rem;
71
+ min-height: 4.2rem;
72
+ max-height: 4.2rem;
73
+ width: 100%;
74
+ flex: 0 0 4.2rem;
75
+ }
76
+ }
77
+ }
78
+ }
79
+ }
80
+ }
81
+
82
+ .secondaryTitle {
83
+ white-space: pre-line;
84
+ }
85
+ }
86
+
87
+ &.zoom2x {
88
+ ::ng-deep {
89
+ .modal-dialog {
90
+ height: 75vh;
91
+ }
92
+ }
93
+ }
94
+
95
+ &.zoom4x {
96
+ ::ng-deep {
97
+ .modal {
98
+ padding: 0;
99
+
100
+ .modal-dialog {
101
+ width: 100%;
102
+ height: 100%;
103
+ margin: 0;
104
+
105
+ .modal-content-wrapper {
106
+ .modal-content {
107
+ display: block;
108
+ overflow-y: auto;
109
+
110
+ .modal-body {
111
+ overflow-y: hidden;
112
+ max-height: unset;
113
+ height: unset;
114
+ }
115
+
116
+ .modal-footer {
117
+ position: sticky;
118
+ bottom: 0;
119
+ background-color: inherit;
120
+ min-height: 3.2rem;
121
+ height: 3.2rem;
122
+ padding-top: 0.7rem;
123
+ z-index: 1000;
124
+ }
125
+ }
126
+ }
127
+ }
128
+ }
129
+ }
130
+
131
+ .primaryTitle {
132
+ max-width: 55%;
133
+ }
134
+ }
135
+
136
+ // zoom related styling for vertical tabs dialog
137
+ &.vertical {
138
+ &.zoom2x,
139
+ &.zoom4x {
140
+ &:not(.tab-links-opened) {
141
+ .primaryTitle {
142
+ display: none;
143
+ }
144
+
145
+ .secondaryTitle {
146
+ white-space: pre-line;
147
+ }
148
+ }
149
+
150
+ &.tab-links-opened {
151
+ ::ng-deep {
152
+ .modal-dialog .modal-content-wrapper .modal-content {
153
+ .modal-header--accessible {
154
+ flex-direction: row;
155
+
156
+ .modal-title-wrapper .modal-title {
157
+ flex-direction: initial;
158
+ }
159
+
160
+ .close {
161
+ display: none;
162
+ }
163
+ }
164
+ }
165
+ }
166
+
167
+ .primaryTitle {
168
+ width: 100%;
169
+ max-width: 100%;
170
+ }
171
+
172
+ .separator,
173
+ .secondaryTitle {
174
+ display: none;
175
+ }
176
+ }
177
+
178
+ .secondaryTitle {
179
+ padding-left: 1.5rem;
180
+ }
181
+ }
182
+ }
183
+ }
184
+
185
+ :host {
186
+ .appfx-dialog {
187
+ &.show-tab-content {
188
+ ::ng-deep {
189
+ .tab-content {
190
+ display: flex;
191
+ }
192
+ }
193
+ }
194
+
195
+ &:not(.show-tab-content) {
196
+ ::ng-deep {
197
+ .tab-content {
198
+ display: none !important;
199
+ }
200
+ }
201
+ }
202
+ }
203
+ }
@@ -0,0 +1,102 @@
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
+ :root {
9
+ :host ::ng-deep {
10
+ .tab-content {
11
+ display: inline;
12
+ }
13
+ }
14
+ }
15
+
16
+ /* considered as a clone of js-ui-lib from `vxActivityIndicator.less`. Simplify and reduce these styles as needed */
17
+ .center-dialog-content {
18
+ position: absolute;
19
+ inset: 0;
20
+ z-index: 1;
21
+ pointer-events: none;
22
+ display: flex;
23
+ flex-direction: column;
24
+ justify-content: center;
25
+ align-items: center;
26
+ }
27
+
28
+ /* considered as a clone of js-ui-lib from `modal.less`. Simplify and reduce these styles as needed */
29
+ %text-overflow-ellipsis {
30
+ text-overflow: ellipsis;
31
+ white-space: nowrap;
32
+ overflow: hidden;
33
+ }
34
+
35
+ // action and object name parts of a title
36
+ .modal-title {
37
+ display: flex;
38
+ align-items: flex-start;
39
+ padding-left: 0;
40
+
41
+ // note: Clarity should define headers, however using the h3 introduced awkward spacing
42
+ $title-height: 24px;
43
+ $secondary-title-height: 18px;
44
+
45
+ .primaryTitle {
46
+ flex-shrink: 0;
47
+ font-size: $title-height;
48
+
49
+ &.secondaryTitleIsEmpty {
50
+ @extend %text-overflow-ellipsis;
51
+
52
+ flex-shrink: 1;
53
+ }
54
+
55
+ &:not(.secondaryTitleIsEmpty) {
56
+ max-width: 65%;
57
+ }
58
+ }
59
+
60
+ .secondaryTitle {
61
+ display: block;
62
+ word-break: break-all;
63
+ margin-top: 0;
64
+ margin-bottom: 0;
65
+ line-height: 24px;
66
+ font-size: $secondary-title-height;
67
+ }
68
+
69
+ .separator {
70
+ content: '';
71
+ border-left: 1px solid #ccc;
72
+ margin: 0 18px;
73
+ height: 22px;
74
+ }
75
+ }
76
+
77
+ .div-disabled {
78
+ pointer-events: none;
79
+ cursor: not-allowed;
80
+ opacity: 0.6;
81
+
82
+ // Prevent double-disabling of elements.
83
+ .div-disabled {
84
+ opacity: 1;
85
+ }
86
+ }
87
+
88
+ .debug-popup {
89
+ ::ng-deep {
90
+ div.modal-dialog.modal-xl {
91
+ margin-left: 350px; // width of hermes-signpost-popup
92
+ }
93
+ }
94
+ }
95
+
96
+ hermes-tabs {
97
+ ::ng-deep {
98
+ section {
99
+ flex: 1 1 auto;
100
+ }
101
+ }
102
+ }
@@ -0,0 +1,15 @@
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
+ .toggle-header {
8
+ display: flex;
9
+ margin-left: 0;
10
+ margin-bottom: 5px;
11
+ }
12
+
13
+ .toggle-label {
14
+ margin-right: 5px;
15
+ }
@@ -0,0 +1,48 @@
1
+ ### Overview & Rationale
2
+
3
+ AppFx Drag and Drop provides utilities to easily and declaratively work with CDK drag-and-drop within Angular applications.
4
+
5
+ ### DragAndDropGroupService
6
+
7
+ The DragAndDropGroupService is a singleton Angular service that manages groups of items that can be dragged and dropped using Angular's CDK Drag and Drop functionality. It facilitates the organization and manipulation of draggable items by grouping them and providing methods for adding, retrieving, and removing drop lists (CdkDropList) associated with specific groups.
8
+
9
+ #### Methods
10
+
11
+ `getGroupItems(group: string): readonly CdkDropList[]` - Retrieves an array of CdkDropList instances belonging to the specified group. If the group doesn't exist, it returns an empty array.
12
+
13
+ `addGroupItem(group: string, item: CdkDropList): void` - Adds a CdkDropList instance to the specified group. If the group doesn't exist, it creates a new one.
14
+
15
+ `removeGroupItem(group: string, item: CdkDropList): void` - Removes a CdkDropList instance from the specified group if it exists.
16
+
17
+ #### Example Code
18
+
19
+ _example-drag-and-drop.component.ts_:
20
+
21
+ ```typescript
22
+ import { DragAndDropGroupService } from '@hermes/angular/addons/drag-and-drop';
23
+
24
+ @Component({
25
+ selector: 'example-drag-and-drop',
26
+ templateUrl: 'example-drag-and-drop.component.html',
27
+ })
28
+ export class ExampleDragAndDropComponent {
29
+ @ViewChild(CdkDropList, { static: true })
30
+ public readonly dropList: CdkDropList;
31
+
32
+ private dropGroup: string;
33
+
34
+ public constructor(private groupService: DragAndDropGroupService) {}
35
+
36
+ public dropGroup(group: string): readonly CdkDropList[] {
37
+ return this.groupService.getGroupItems(group);
38
+ }
39
+
40
+ public ngAfterViewInit(): void {
41
+ this.groupService.addGroupItem(this.dropGroup, this.dropList);
42
+ }
43
+
44
+ public ngOnDestroy(): void {
45
+ this.groupService.removeGroupItem(this.dropGroup, this.dropList);
46
+ }
47
+ }
48
+ ```