@design-factory/styles 21.0.0-next.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (242) hide show
  1. package/LICENSE +26 -0
  2. package/README.md +13 -0
  3. package/assets/fonts/amadeus-bold/amadeus-bold.woff +0 -0
  4. package/assets/fonts/amadeus-bold/amadeus-bold.woff2 +0 -0
  5. package/assets/fonts/amadeus-full/amadeus-full-bold.woff +0 -0
  6. package/assets/fonts/amadeus-full/amadeus-full-bold.woff2 +0 -0
  7. package/assets/fonts/amadeus-full/amadeus-full-bolditalic.woff +0 -0
  8. package/assets/fonts/amadeus-full/amadeus-full-bolditalic.woff2 +0 -0
  9. package/assets/fonts/amadeus-full/amadeus-full-italic.woff +0 -0
  10. package/assets/fonts/amadeus-full/amadeus-full-italic.woff2 +0 -0
  11. package/assets/fonts/amadeus-full/amadeus-full-light.woff +0 -0
  12. package/assets/fonts/amadeus-full/amadeus-full-light.woff2 +0 -0
  13. package/assets/fonts/amadeus-full/amadeus-full-lightitalic.woff +0 -0
  14. package/assets/fonts/amadeus-full/amadeus-full-lightitalic.woff2 +0 -0
  15. package/assets/fonts/amadeus-full/amadeus-full-regular.woff +0 -0
  16. package/assets/fonts/amadeus-full/amadeus-full-regular.woff2 +0 -0
  17. package/assets/fonts/amadeus-full/amadeus-full-thin.woff +0 -0
  18. package/assets/fonts/amadeus-full/amadeus-full-thin.woff2 +0 -0
  19. package/assets/fonts/amadeus-full/amadeus-full-thinitalic.woff +0 -0
  20. package/assets/fonts/amadeus-full/amadeus-full-thinitalic.woff2 +0 -0
  21. package/assets/fonts/amadeus-neue/bold/AmadeusNeueWeb-Bold.woff +0 -0
  22. package/assets/fonts/amadeus-neue/bold/AmadeusNeueWeb-Bold.woff2 +0 -0
  23. package/assets/fonts/amadeus-neue/bold/AmadeusNeueWeb-BoldItalic.woff +0 -0
  24. package/assets/fonts/amadeus-neue/bold/AmadeusNeueWeb-BoldItalic.woff2 +0 -0
  25. package/assets/fonts/amadeus-neue/light/AmadeusNeueWeb-Light.woff +0 -0
  26. package/assets/fonts/amadeus-neue/light/AmadeusNeueWeb-Light.woff2 +0 -0
  27. package/assets/fonts/amadeus-neue/light/AmadeusNeueWeb-LightItalic.woff +0 -0
  28. package/assets/fonts/amadeus-neue/light/AmadeusNeueWeb-LightItalic.woff2 +0 -0
  29. package/assets/fonts/amadeus-neue/medium/AmadeusNeueWeb-Medium.woff +0 -0
  30. package/assets/fonts/amadeus-neue/medium/AmadeusNeueWeb-Medium.woff2 +0 -0
  31. package/assets/fonts/amadeus-neue/medium/AmadeusNeueWeb-MediumItalic.woff +0 -0
  32. package/assets/fonts/amadeus-neue/medium/AmadeusNeueWeb-MediumItalic.woff2 +0 -0
  33. package/assets/fonts/amadeus-neue/regular/AmadeusNeueWeb-Regular.woff +0 -0
  34. package/assets/fonts/amadeus-neue/regular/AmadeusNeueWeb-Regular.woff2 +0 -0
  35. package/assets/fonts/amadeus-neue/regular/AmadeusNeueWeb-RegularItalic.woff +0 -0
  36. package/assets/fonts/amadeus-neue/regular/AmadeusNeueWeb-RegularItalic.woff2 +0 -0
  37. package/assets/fonts/amadeus-regular/amadeus-regular.woff +0 -0
  38. package/assets/fonts/amadeus-regular/amadeus-regular.woff2 +0 -0
  39. package/assets/fonts/amadeus-thin/amadeus-thin.woff +0 -0
  40. package/assets/fonts/amadeus-thin/amadeus-thin.woff2 +0 -0
  41. package/assets/fonts/df-icons/df-icons-light.woff2 +0 -0
  42. package/assets/fonts/df-icons/df-icons-solid.woff2 +0 -0
  43. package/assets/fonts/font-awesome/fa-brands-400.woff2 +0 -0
  44. package/assets/fonts/font-awesome/fa-light-300.woff2 +0 -0
  45. package/assets/fonts/font-awesome/fa-solid-900.woff2 +0 -0
  46. package/assets/fonts/noto/notosans-bold.woff +0 -0
  47. package/assets/fonts/noto/notosans-bold.woff2 +0 -0
  48. package/assets/fonts/noto/notosans-bolditalic.woff +0 -0
  49. package/assets/fonts/noto/notosans-bolditalic.woff2 +0 -0
  50. package/assets/fonts/noto/notosans-italic.woff +0 -0
  51. package/assets/fonts/noto/notosans-italic.woff2 +0 -0
  52. package/assets/fonts/noto/notosans-light.woff +0 -0
  53. package/assets/fonts/noto/notosans-light.woff2 +0 -0
  54. package/assets/fonts/noto/notosans-lightitalic.woff +0 -0
  55. package/assets/fonts/noto/notosans-lightitalic.woff2 +0 -0
  56. package/assets/fonts/noto/notosans-regular.woff +0 -0
  57. package/assets/fonts/noto/notosans-regular.woff2 +0 -0
  58. package/assets/fonts/noto/notosans-thin.woff +0 -0
  59. package/assets/fonts/noto/notosans-thin.woff2 +0 -0
  60. package/assets/fonts/noto/notosans-thinitalic.woff +0 -0
  61. package/assets/fonts/noto/notosans-thinitalic.woff2 +0 -0
  62. package/assets/fonts/noto/notosansarabic-bold.woff +0 -0
  63. package/assets/fonts/noto/notosansarabic-bold.woff2 +0 -0
  64. package/assets/fonts/noto/notosansarabic-light.woff +0 -0
  65. package/assets/fonts/noto/notosansarabic-light.woff2 +0 -0
  66. package/assets/fonts/noto/notosansarabic-regular.woff +0 -0
  67. package/assets/fonts/noto/notosansarabic-regular.woff2 +0 -0
  68. package/assets/fonts/noto/notosansarabic-thin.woff +0 -0
  69. package/assets/fonts/noto/notosansarabic-thin.woff2 +0 -0
  70. package/assets/fonts/noto/notosansgeorgian-bold.woff +0 -0
  71. package/assets/fonts/noto/notosansgeorgian-bold.woff2 +0 -0
  72. package/assets/fonts/noto/notosansgeorgian-light.woff +0 -0
  73. package/assets/fonts/noto/notosansgeorgian-light.woff2 +0 -0
  74. package/assets/fonts/noto/notosansgeorgian-regular.woff +0 -0
  75. package/assets/fonts/noto/notosansgeorgian-regular.woff2 +0 -0
  76. package/assets/fonts/noto/notosansgeorgian-thin.woff +0 -0
  77. package/assets/fonts/noto/notosansgeorgian-thin.woff2 +0 -0
  78. package/assets/fonts/noto/notosanshebrew-bold.woff +0 -0
  79. package/assets/fonts/noto/notosanshebrew-bold.woff2 +0 -0
  80. package/assets/fonts/noto/notosanshebrew-light.woff +0 -0
  81. package/assets/fonts/noto/notosanshebrew-light.woff2 +0 -0
  82. package/assets/fonts/noto/notosanshebrew-regular.woff +0 -0
  83. package/assets/fonts/noto/notosanshebrew-regular.woff2 +0 -0
  84. package/assets/fonts/noto/notosanshebrew-thin.woff +0 -0
  85. package/assets/fonts/noto/notosanshebrew-thin.woff2 +0 -0
  86. package/assets/fonts/source-sans-pro-bold/source-sans-pro-bold.woff +0 -0
  87. package/assets/fonts/source-sans-pro-bold/source-sans-pro-bold.woff2 +0 -0
  88. package/assets/fonts/source-sans-pro-full/sourcesanspro-full-bold.woff +0 -0
  89. package/assets/fonts/source-sans-pro-full/sourcesanspro-full-bold.woff2 +0 -0
  90. package/assets/fonts/source-sans-pro-full/sourcesanspro-full-bolditalic.woff +0 -0
  91. package/assets/fonts/source-sans-pro-full/sourcesanspro-full-bolditalic.woff2 +0 -0
  92. package/assets/fonts/source-sans-pro-full/sourcesanspro-full-italic.woff +0 -0
  93. package/assets/fonts/source-sans-pro-full/sourcesanspro-full-italic.woff2 +0 -0
  94. package/assets/fonts/source-sans-pro-full/sourcesanspro-full-light.woff +0 -0
  95. package/assets/fonts/source-sans-pro-full/sourcesanspro-full-light.woff2 +0 -0
  96. package/assets/fonts/source-sans-pro-full/sourcesanspro-full-lightitalic.woff +0 -0
  97. package/assets/fonts/source-sans-pro-full/sourcesanspro-full-lightitalic.woff2 +0 -0
  98. package/assets/fonts/source-sans-pro-full/sourcesanspro-full-regular.woff +0 -0
  99. package/assets/fonts/source-sans-pro-full/sourcesanspro-full-regular.woff2 +0 -0
  100. package/assets/fonts/source-sans-pro-light/source-sans-pro-light.woff +0 -0
  101. package/assets/fonts/source-sans-pro-light/source-sans-pro-light.woff2 +0 -0
  102. package/assets/fonts/source-sans-pro-regular/source-sans-pro-regular.woff +0 -0
  103. package/assets/fonts/source-sans-pro-regular/source-sans-pro-regular.woff2 +0 -0
  104. package/assets/fonts/source-sans-pro-semibold/source-sans-pro-semibold.woff +0 -0
  105. package/assets/fonts/source-sans-pro-semibold/source-sans-pro-semibold.woff2 +0 -0
  106. package/bundle.css +13 -0
  107. package/package.json +31 -0
  108. package/scss/_common.mixins.scss +30 -0
  109. package/scss/_common.root.scss +36 -0
  110. package/scss/_common.scss +50 -0
  111. package/scss/_common.variables.scss +62 -0
  112. package/scss/_new-brand-common.variables.scss +7 -0
  113. package/scss/_variables.scss +46 -0
  114. package/scss/agnosui/_variables.scss +33 -0
  115. package/scss/bootstrap/_helpers.scss +12 -0
  116. package/scss/bootstrap/_maps.scss +68 -0
  117. package/scss/bootstrap/_mixins-override.scss +69 -0
  118. package/scss/bootstrap/_rtl-styles-override.scss +111 -0
  119. package/scss/bootstrap/_utilities-override.scss +127 -0
  120. package/scss/bootstrap/_variables-dark.scss +86 -0
  121. package/scss/bootstrap/_variables.scss +1118 -0
  122. package/scss/bootstrap/helpers/_color-bg.scss +14 -0
  123. package/scss/bundle.scss +120 -0
  124. package/scss/components/accordion/_accordion.mixin.scss +94 -0
  125. package/scss/components/accordion/_accordion.scss +201 -0
  126. package/scss/components/accordion/_accordion.variables.scss +14 -0
  127. package/scss/components/alert/_alert.mixin.scss +64 -0
  128. package/scss/components/alert/_alert.scss +142 -0
  129. package/scss/components/alert/_alert.variables.scss +3 -0
  130. package/scss/components/badge/_badge.mixins.scss +9 -0
  131. package/scss/components/badge/_badge.scss +250 -0
  132. package/scss/components/badge/_badge.variables.scss +4 -0
  133. package/scss/components/brand-color/_brand-color.mixins.scss +17 -0
  134. package/scss/components/brand-color/_brand-color.scss +13 -0
  135. package/scss/components/brand-color/_brand-color.variables.scss +146 -0
  136. package/scss/components/brand-color/_brand-color_container.scss +23 -0
  137. package/scss/components/breadcrumbs/_breadcrumbs.scss +110 -0
  138. package/scss/components/breadcrumbs/_breadcrumbs.variables.scss +7 -0
  139. package/scss/components/button/_button.mixins.scss +144 -0
  140. package/scss/components/button/_button.scss +178 -0
  141. package/scss/components/button/_button.variables.scss +8 -0
  142. package/scss/components/button/_button_container.scss +47 -0
  143. package/scss/components/card/_card.scss +167 -0
  144. package/scss/components/card/_card.variables.scss +12 -0
  145. package/scss/components/carousel/_carousel.scss +83 -0
  146. package/scss/components/carousel/_carousel.variables.scss +3 -0
  147. package/scss/components/checkbox/_checkbox.scss +155 -0
  148. package/scss/components/checkbox/_checkbox.variables.scss +23 -0
  149. package/scss/components/collapse/_collapse.scss +48 -0
  150. package/scss/components/datepicker/_datepicker.scss +223 -0
  151. package/scss/components/drawer/_drawer.scss +120 -0
  152. package/scss/components/dropdown/_dropdown.mixins.scss +24 -0
  153. package/scss/components/dropdown/_dropdown.scss +129 -0
  154. package/scss/components/dropdown/_dropdown.variables.scss +15 -0
  155. package/scss/components/fieldset/_fieldset.variables.scss +2 -0
  156. package/scss/components/fonts/_font-awesome-icons-brands.scss +1585 -0
  157. package/scss/components/fonts/_font-awesome-icons.scss +12886 -0
  158. package/scss/components/fonts/_font-faces.mixins.scss +579 -0
  159. package/scss/components/fonts/_fonts-family.scss +195 -0
  160. package/scss/components/fonts/_fonts.scss +50 -0
  161. package/scss/components/fonts/_fonts.variables.scss +68 -0
  162. package/scss/components/fonts/_icon-font.scss +97 -0
  163. package/scss/components/fonts/_multi-lang.mixins.scss +8 -0
  164. package/scss/components/fonts/multi-lang/_arabic.mixins.scss +9 -0
  165. package/scss/components/fonts/multi-lang/_chinese.mixins.scss +14 -0
  166. package/scss/components/fonts/multi-lang/_cyrillic-extended.mixins.scss +11 -0
  167. package/scss/components/fonts/multi-lang/_cyrillic.mixins.scss +10 -0
  168. package/scss/components/fonts/multi-lang/_georgian.mixins.scss +9 -0
  169. package/scss/components/fonts/multi-lang/_hebrew.mixins.scss +9 -0
  170. package/scss/components/fonts/multi-lang/_japanese.mixins.scss +25 -0
  171. package/scss/components/fonts/multi-lang/_korean.mixins.scss +12 -0
  172. package/scss/components/footer/_footer.mixins.scss +36 -0
  173. package/scss/components/footer/_footer.scss +49 -0
  174. package/scss/components/form/_form.scss +101 -0
  175. package/scss/components/form/_form.variables.scss +48 -0
  176. package/scss/components/icon/_amadeus-icon.scss +29 -0
  177. package/scss/components/image/_image.variables.scss +2 -0
  178. package/scss/components/inputs/_inputs.mixin.scss +45 -0
  179. package/scss/components/inputs/_inputs.scss +254 -0
  180. package/scss/components/inputs/_inputs.variables.scss +20 -0
  181. package/scss/components/link/_link.scss +150 -0
  182. package/scss/components/link/_link.variables.scss +5 -0
  183. package/scss/components/list/_list.scss +17 -0
  184. package/scss/components/list-group/_list-group.scss +81 -0
  185. package/scss/components/list-group/_list-group.variables.scss +21 -0
  186. package/scss/components/media/_media.scss +27 -0
  187. package/scss/components/modal/_modal.scss +154 -0
  188. package/scss/components/modal/_modal.variables.scss +13 -0
  189. package/scss/components/navbar/_navbar.mixins.scss +46 -0
  190. package/scss/components/navbar/_navbar.scss +287 -0
  191. package/scss/components/navbar/_navbar.variables.scss +14 -0
  192. package/scss/components/pagination/_pagination.mixins.scss +30 -0
  193. package/scss/components/pagination/_pagination.scss +189 -0
  194. package/scss/components/pagination/_pagination.variables.scss +20 -0
  195. package/scss/components/pagination/_pagination_container.scss +17 -0
  196. package/scss/components/popover/_popover.mixins.scss +13 -0
  197. package/scss/components/popover/_popover.scss +65 -0
  198. package/scss/components/popover/_popover.variables.scss +17 -0
  199. package/scss/components/popover/_popover_container.scss +214 -0
  200. package/scss/components/progressbar/_progressbar.scss +52 -0
  201. package/scss/components/progressbar/_progressbar.variables.scss +6 -0
  202. package/scss/components/radio/_radio.scss +63 -0
  203. package/scss/components/rating/_rating.mixins.scss +17 -0
  204. package/scss/components/rating/_rating.scss +51 -0
  205. package/scss/components/scrollspy/_scrollspy.scss +42 -0
  206. package/scss/components/select/_select.mixin.scss +7 -0
  207. package/scss/components/select/_select.scss +531 -0
  208. package/scss/components/select/_select.variables.scss +18 -0
  209. package/scss/components/separator/_separator.scss +8 -0
  210. package/scss/components/separator/_separator.variables.scss +5 -0
  211. package/scss/components/sidenav/_sidenav-deprecated.scss +165 -0
  212. package/scss/components/sidenav/_sidenav.scss +227 -0
  213. package/scss/components/slider/_slider.mixins.scss +82 -0
  214. package/scss/components/slider/_slider.scss +402 -0
  215. package/scss/components/speechbubble/_speechbubble.mixin.scss +28 -0
  216. package/scss/components/speechbubble/_speechbubble.scss +107 -0
  217. package/scss/components/spinner/_spinner.scss +68 -0
  218. package/scss/components/spinner/_spinner.variables.scss +5 -0
  219. package/scss/components/spinner/_spinner_container.scss +43 -0
  220. package/scss/components/stepper/_stepper.mixins.scss +22 -0
  221. package/scss/components/stepper/_stepper.scss +176 -0
  222. package/scss/components/table/_advancedtables.scss +285 -0
  223. package/scss/components/table/_table.scss +19 -0
  224. package/scss/components/table/_table.variables.scss +20 -0
  225. package/scss/components/tabs/_tabs.scss +163 -0
  226. package/scss/components/tabs/_tabs.variables.scss +19 -0
  227. package/scss/components/timepicker/_timepicker.scss +9 -0
  228. package/scss/components/toast/_toast.scss +79 -0
  229. package/scss/components/toast/_toast.variables.scss +7 -0
  230. package/scss/components/toggle/_toggle.scss +140 -0
  231. package/scss/components/toggle/_toggle.variables.scss +10 -0
  232. package/scss/components/tooltip/_tooltip.scss +24 -0
  233. package/scss/components/tooltip/_tooltip.variables.scss +7 -0
  234. package/scss/components/tooltip/_tooltip_container.scss +116 -0
  235. package/scss/components/typeahead/_typeahead.scss +44 -0
  236. package/scss/components/waves/waves.scss +19 -0
  237. package/scss/namespace.scss +160 -0
  238. package/scss/themes/brand2023/_variables.scss +315 -0
  239. package/scss/utilities/_common.utilities.scss +98 -0
  240. package/scss/utilities/_form.mixins.scss +26 -0
  241. package/scss/utilities/_rgb.scss +10 -0
  242. package/scss/utilities.scss +5 -0
@@ -0,0 +1,176 @@
1
+ @use 'sass:map';
2
+ @use 'stepper.mixins' as stepper-mixins;
3
+
4
+ .df-stepper {
5
+ @include stepper-mixins.stepper-size(1.75rem, 1.5rem, 0.75rem, 0.3125rem);
6
+
7
+ .df-stepper-outline-icon.fa-exclamation-triangle::before {
8
+ font-size: 1.5rem;
9
+ }
10
+
11
+ .df-stepper-step-circle {
12
+ width: 1.75rem;
13
+ height: 1.75rem;
14
+ min-width: 1.75rem;
15
+ line-height: 1.75rem;
16
+ border-radius: 50%;
17
+ }
18
+
19
+ // Stepper sizing
20
+ &.df-stepper-sm {
21
+ @include stepper-mixins.stepper-size(1.53125rem, 1.3125rem, 0.65625rem, 0.21875rem);
22
+
23
+ .df-stepper-step {
24
+ --df-btn-font-size: var(--df-typo-sizing-small);
25
+ --df-btn-border-radius: var(--df-borderRadius-main-small);
26
+ }
27
+ }
28
+
29
+ &.df-stepper-lg {
30
+ @include stepper-mixins.stepper-size(1.96875rem, 1.6875rem, 0.84375rem, 0.59375rem);
31
+
32
+ .df-stepper-step {
33
+ --df-btn-font-size: var(--df-typo-sizing-large);
34
+ --df-btn-border-radius: var(--df-borderRadius-main-large);
35
+ }
36
+ }
37
+
38
+ .df-stepper-step {
39
+ min-width: 5.625rem; // TODO work with the negative margin even in mobile version
40
+ // put it depending of the button padding and as the btn-sm size
41
+ background-color: var(--df-color-inert-neutral-main-background);
42
+ border: 1px solid transparent; // override to have same border as btn
43
+ gap: 0;
44
+
45
+ --df-box-shadow-color: currentColor;
46
+ --df-btn-active-border-color: transparent;
47
+ --df-btn-disabled-bg: transparent;
48
+ --df-btn-disabled-border-color: transparent;
49
+ }
50
+
51
+ $stepper-states: (
52
+ 'visited': (
53
+ 'text-color': var(--df-color-primary-alt-default-foreground),
54
+ 'border-color': var(--df-color-primary-alt-default-border),
55
+ 'text-hover-color': var(--df-color-primary-alt-hovered-foreground),
56
+ 'border-hover-color': var(--df-color-primary-alt-hovered-border),
57
+ 'text-active-color': var(--df-color-primary-alt-active-foreground),
58
+ 'border-active-color': var(--df-color-primary-alt-active-border),
59
+ 'bg-hover-color': var(--df-color-primary-alt-hovered-background)
60
+ ),
61
+ 'future': (
62
+ 'text-color': var(--df-color-subtext-foreground),
63
+ 'border-color': var(--df-color-subtext-border),
64
+ 'text-hover-color': var(--df-color-neutral-alt-hovered-foreground),
65
+ 'border-hover-color': var(--df-color-subtext-border),
66
+ 'text-active-color': var(--df-color-neutral-alt-active-foreground),
67
+ 'border-active-color': var(--df-color-primary-alt-active-border),
68
+ 'bg-hover-color': var(--df-color-neutral-alt-hovered-background)
69
+ ),
70
+ 'completed': (
71
+ 'text-color': var(--df-color-primary-alt-default-foreground),
72
+ 'border-color': var(--df-color-primary-alt-default-border),
73
+ 'text-hover-color': var(--df-color-primary-alt-hovered-foreground),
74
+ 'border-hover-color': var(--df-color-primary-alt-hovered-border),
75
+ 'text-active-color': var(--df-color-primary-alt-active-foreground),
76
+ 'border-active-color': var(--df-color-primary-alt-active-border),
77
+ 'bg-hover-color': var(--df-color-primary-alt-hovered-background)
78
+ ),
79
+ 'warning': (
80
+ 'text-color': var(--df-color-danger-alt-default-foreground),
81
+ 'border-color': var(--df-color-danger-alt-default-border),
82
+ 'text-hover-color': var(--df-color-danger-alt-hovered-foreground),
83
+ 'border-hover-color': var(--df-color-danger-alt-hovered-border),
84
+ 'text-active-color': var(--df-color-danger-alt-active-foreground),
85
+ 'border-active-color': var(--df-color-danger-alt-active-border),
86
+ 'bg-hover-color': var(--df-color-danger-alt-hovered-background)
87
+ )
88
+ );
89
+
90
+ /* stepper icon color */
91
+ @each $state, $value in $stepper-states {
92
+ .df-stepper-step-#{$state} {
93
+ $stepper-step-color: map.get($value, 'text-color');
94
+ $stepper-step-hover-color: map.get($value, 'text-hover-color');
95
+ $stepper-step-active-color: map.get($value, 'text-active-color');
96
+ $stepper-step-hover-bg-color: map.get($value, 'bg-hover-color');
97
+ $stepper-step-border-color: map.get($value, 'border-color');
98
+ $stepper-step-border-hover-color: map.get($value, 'border-hover-color');
99
+ $stepper-step-border-active-color: map.get($value, 'border-active-color');
100
+
101
+ --df-btn-disabled-color: #{$stepper-step-color};
102
+
103
+ &:not(:disabled) {
104
+ :is(.df-stepper-outline-number, .df-stepper-outline-icon) {
105
+ border-color: #{$stepper-step-border-color};
106
+ }
107
+
108
+ &:hover:not(:active) {
109
+ color: #{$stepper-step-hover-color};
110
+ background-color: #{$stepper-step-hover-bg-color};
111
+
112
+ :is(.df-stepper-outline-number, .df-stepper-outline-icon) {
113
+ border-color: #{$stepper-step-border-hover-color};
114
+ }
115
+ }
116
+
117
+ &:active {
118
+ color: #{$stepper-step-active-color};
119
+ background-color: #{$stepper-step-hover-bg-color};
120
+
121
+ :is(.df-stepper-outline-number, .df-stepper-outline-icon) {
122
+ border-color: #{$stepper-step-border-active-color};
123
+ }
124
+ }
125
+
126
+ &.active {
127
+ color: #{$stepper-step-active-color};
128
+
129
+ :is(.df-stepper-outline-number, .df-stepper-outline-icon) {
130
+ border-color: #{$stepper-step-border-active-color};
131
+ }
132
+ }
133
+ }
134
+
135
+ color: #{$stepper-step-color};
136
+ }
137
+ }
138
+ }
139
+
140
+ .df-stepper-step-circle {
141
+ border-radius: 50%;
142
+ }
143
+
144
+ .df-stepper-label {
145
+ max-width: 13.75rem;
146
+ }
147
+
148
+ .df-stepper-horizontal-line {
149
+ height: 0;
150
+ }
151
+
152
+ .df-vertical-stepper-panel {
153
+ margin-inline-start: 1.6796875rem;
154
+
155
+ &::before {
156
+ content: '';
157
+ position: absolute;
158
+ border-inline-start: 1px solid var(--df-color-inert-neutral-main-border);
159
+ inset-inline-start: 0;
160
+ top: -1rem;
161
+ bottom: -1rem;
162
+ }
163
+ }
164
+
165
+ .df-stepper-outline-number {
166
+ border: 1px solid currentColor;
167
+ }
168
+
169
+ .df-stepper-icon {
170
+ background-color: currentColor;
171
+ }
172
+
173
+ .df-stepper-icon::before {
174
+ color: var(--df-color-inert-neutral-main-background);
175
+ vertical-align: middle;
176
+ }
@@ -0,0 +1,285 @@
1
+ @use 'ag-grid-community/styles' as ag;
2
+ @use '../../new-brand-common.variables' as df;
3
+
4
+ // TODO check new checkbox look and border radius
5
+ @include ag.grid-styles(
6
+ (
7
+ theme: alpine
8
+ )
9
+ );
10
+
11
+ // See issue https://github.com/ag-grid/ag-grid/issues/4095
12
+ .df-table:not(.df-aggrid-filtered) {
13
+ .ag-layout-auto-height .ag-center-cols-clipper,
14
+ .ag-layout-auto-height .ag-center-cols-container,
15
+ .ag-layout-print .ag-center-cols-clipper,
16
+ .ag-layout-print .ag-center-cols-container {
17
+ min-height: 0 !important;
18
+ }
19
+ }
20
+
21
+ .df-table.df-aggrid-filtered {
22
+ .ag-layout-auto-height .ag-center-cols-clipper,
23
+ .ag-layout-auto-height .ag-center-cols-container,
24
+ .ag-layout-print .ag-center-cols-clipper,
25
+ .ag-layout-print .ag-center-cols-container {
26
+ min-height: 100px !important;
27
+ }
28
+ }
29
+
30
+ .ag-overlay-loading-center {
31
+ border: none !important;
32
+ box-shadow: none !important;
33
+ }
34
+
35
+ .df-table-icon {
36
+ @extend .fa-light;
37
+ }
38
+
39
+ .df-table.ag-theme-alpine {
40
+ --ag-background-color: var(--df-color-inert-neutral-main-background);
41
+ --ag-checkbox-border-radius: #{$form-check-input-border-radius};
42
+ --ag-font-size: var(--df-typo-sizing-default);
43
+ --ag-alpine-active-color: var(--df-color-primary-alt-active-background);
44
+ --ag-header-height: 42px;
45
+ --ag-row-height: 44px;
46
+ --ag-data-color: var(--df-color-neutral-alt-default-foreground);
47
+ --ag-font-family: var(--df-typo-font-primaryFamily), sans-serif;
48
+ --ag-header-background-color: var(--df-color-primary-subtle-background);
49
+ --ag-header-cell-hover-background-color: var(--df-color-primary-alt-hovered-background);
50
+ --ag-selected-row-background-color: var(--df-color-primary-alt-active-background);
51
+ --ag-row-hover-color: var(--df-color-primary-alt-hovered-background);
52
+ --ag-row-border-color: var(--df-color-inert-neutral-main-border);
53
+ --ag-input-focus-border-color: var(--df-color-focus-main-border);
54
+ --ag-checkbox-indeterminate-color: var(--df-color-primary-main-default-background);
55
+ --ag-odd-row-background-color: var(--ag-background-color);
56
+ --ag-wrapper-border-radius: 0;
57
+ --ag-header-foreground-color: var(--df-color-neutral-alt-default-foreground);
58
+ --ag-icon-font-color: var(--df-color-primary-alt-default-foreground); //using T2 because not a button
59
+
60
+ .ag-menu {
61
+ --ag-control-panel-background-color: var(--df-color-inert-neutral-main-background);
62
+ }
63
+
64
+ .ag-row {
65
+ font-size: var(--ag-font-size);
66
+ }
67
+
68
+ .ag-popup {
69
+ --ag-background-color: var(--df-color-inert-neutral-main-background);
70
+ --ag-foreground-color: var(--df-color-inert-neutral-main-foreground);
71
+
72
+ --ag-checkbox-checked-color: var(--df-color-primary-main-default-border);
73
+ }
74
+
75
+ &.df-table-striped-odd {
76
+ --ag-odd-row-background-color: var(--df-color-primary-subtle-background);
77
+ }
78
+
79
+ &.df-table-striped-even .ag-row-even {
80
+ background-color: var(--df-color-primary-subtle-background);
81
+ }
82
+
83
+ &.df-table-white-header {
84
+ --ag-header-background-color: var(--df-color-neutral-alt-default-background);
85
+
86
+ .ag-header {
87
+ --ag-header-cell-hover-background-color: var(--df-color-neutral-alt-hovered-background);
88
+
89
+ &:hover {
90
+ background-color: var(--ag-header-cell-hover-background-color);
91
+ }
92
+ }
93
+ }
94
+
95
+ .ag-icon.ag-icon-asc {
96
+ @extend .df-table-icon;
97
+ @extend .fa-sort-amount-up;
98
+ }
99
+
100
+ .ag-root-wrapper {
101
+ border-inline: none;
102
+ border-top: 0;
103
+ border-bottom: 1px solid var(--df-color-neutral-main-default-border);
104
+ }
105
+
106
+ .df-table-expand-icon {
107
+ color: var(--df-color-primary-alt-default-foreground);
108
+ }
109
+
110
+ .ag-row-hover .df-table-expand-icon {
111
+ color: var(--df-color-primary-alt-hovered-foreground);
112
+ }
113
+
114
+ .ag-row-selected .df-table-expand-icon {
115
+ color: var(--df-color-primary-alt-active-foreground);
116
+ }
117
+
118
+ .ag-icon.ag-icon-desc {
119
+ @extend .df-table-icon;
120
+ @extend .fa-sort-amount-down;
121
+ }
122
+
123
+ .ag-icon.ag-icon-menu {
124
+ @extend .df-table-icon;
125
+ @extend .fa-filter;
126
+ }
127
+
128
+ .ag-icon.ag-icon-none {
129
+ @extend .df-table-icon;
130
+ @extend .fa-sort-up-down;
131
+ }
132
+
133
+ .ag-icon.ag-icon-filter {
134
+ @extend .df-table-icon;
135
+ @extend .fa-filter;
136
+ }
137
+
138
+ .ag-input-field-input.ag-text-field-input {
139
+ @extend .form-control;
140
+ @extend .form-control-sm;
141
+ @extend .ms-1;
142
+ @extend .mt-3;
143
+ @extend .mb-3;
144
+ @extend .me-1;
145
+ }
146
+
147
+ .ag-row-last {
148
+ border-bottom: none;
149
+ }
150
+
151
+ .ag-header {
152
+ border-bottom: 1px solid var(--df-color-neutral-main-default-border);
153
+ }
154
+
155
+ .ag-header-row {
156
+ font-weight: var(--df-typo-weight-medium);
157
+
158
+ .ag-header-cell.ag-header-active {
159
+ .df-table-icon:before {
160
+ color: var(--df-color-primary-alt-hovered-foreground);
161
+ }
162
+ }
163
+ }
164
+
165
+ .ag-header-cell:not(.ag-cell-inline-editing),
166
+ .ag-cell:not(.ag-cell-inline-editing) {
167
+ padding-inline: var(--df-spacing-3);
168
+ }
169
+
170
+ .ag-header-cell.ag-header-cell-sortable,
171
+ .ag-header-cell.ag-floating-filter {
172
+ padding-right: 0px;
173
+ }
174
+
175
+ .ag-header-cell-label {
176
+ justify-content: space-between;
177
+ }
178
+
179
+ .ag-header-cell:focus-visible::after {
180
+ border: 2px solid var(--ag-input-focus-border-color);
181
+ }
182
+
183
+ .ag-header-icon,
184
+ .ag-sort-indicator-icon {
185
+ // todo RTL elements
186
+ margin-right: var(--ag-font-size);
187
+ }
188
+
189
+ .ag-header-row.ag-header-row-floating-filter {
190
+ .ag-column-hover {
191
+ background-color: var(--df-color-inert-neutral-main-background);
192
+ }
193
+
194
+ .ag-header-cell:hover {
195
+ background-color: var(--df-color-inert-neutral-main-background);
196
+ }
197
+ }
198
+
199
+ .df-tables-aggrid-overlay-withfilter {
200
+ background-color: transparent;
201
+ padding-top: 2rem;
202
+ }
203
+
204
+ .ag-floating-filter-body {
205
+ align-items: center;
206
+ }
207
+
208
+ // custom checkbox to have the same look as the DF one.
209
+ // TODO change this globaly with a CSS variable global
210
+ .ag-checkbox-input-wrapper:focus-within,
211
+ .ag-checkbox-input-wrapper:active {
212
+ box-shadow: none;
213
+ }
214
+
215
+ .ag-checkbox-input-wrapper:has(.ag-checkbox-input:focus-visible) {
216
+ box-shadow: df.$df-focus-box-shadow;
217
+ }
218
+
219
+ .ag-checkbox-input,
220
+ .ag-cell {
221
+ cursor: pointer;
222
+ }
223
+
224
+ // TODO do this change in the PR about form...
225
+ // Or should we create some CSS variables for this?
226
+ .ag-checkbox-input-wrapper {
227
+ cursor: pointer;
228
+ width: $form-check-input-width;
229
+ height: $form-check-input-width;
230
+ background-color: $form-check-input-bg;
231
+
232
+ &::after {
233
+ @include border-radius($form-check-input-border-radius);
234
+ content: '';
235
+ width: $form-check-input-width;
236
+ height: $form-check-input-width;
237
+ vertical-align: top;
238
+ background-color: $form-check-input-bg;
239
+ background-repeat: no-repeat;
240
+ background-position: center;
241
+ background-size: contain;
242
+ border: $form-check-input-border;
243
+ appearance: none;
244
+ }
245
+
246
+ &.ag-indeterminate,
247
+ &.ag-checked {
248
+ background-image: none;
249
+ background-color: var(--df-color-primary-main-default-background);
250
+ position: relative;
251
+
252
+ &::after {
253
+ content: '';
254
+ position: absolute;
255
+ inset: 0;
256
+ background-color: var(--df-color-primary-main-default-foreground);
257
+ mask-repeat: no-repeat;
258
+ mask-size: contain;
259
+ mask-position: center center;
260
+ }
261
+ }
262
+
263
+ &.ag-indeterminate::after {
264
+ // TODO: export properly from a common place the SVGs, this is duplication of checkbox
265
+ mask-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-2 0 14 4'%3e%3crect x='3' y='6.75' width='10' height='2.5' rx='1.25' transform='translate%28-3 -6%29' fill='%23fff' fill-rule='nonzero'/%3e%3c/svg%3e");
266
+ }
267
+
268
+ &.ag-checked::after {
269
+ // TODO: export properly from a common place the SVGs, this is duplication of checkbox
270
+ mask-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-2 -2 14 12'%3e%3cpath d='M3.265 8a.995.995 0 0 1-.717-.306L.297 5.369a1.071 1.071 0 0 1 0-1.48.99.99 0 0 1 1.434 0l1.534 1.584L8.27.307a.99.99 0 0 1 1.433 0 1.07 1.07 0 0 1 0 1.482l-5.72 5.905A.995.995 0 0 1 3.266 8' fill='%23fff' stroke-width='0' fill-rule='evenodd'/%3e%3c/svg%3e");
271
+ }
272
+ }
273
+
274
+ .ag-list-item.ag-active-item {
275
+ --ag-row-hover-color: var(--df-color-primary-alt-hovered-background);
276
+ }
277
+
278
+ .ag-cell-focus:not(.ag-cell-range-selected):focus-within {
279
+ border: 2px solid var(--ag-input-focus-border-color);
280
+ }
281
+ }
282
+
283
+ .df-pagination-secondary-elements {
284
+ font-size: var(--df-typo-sizing-small);
285
+ }
@@ -0,0 +1,19 @@
1
+ .table {
2
+ > caption:first-child {
3
+ & + thead,
4
+ & + tbody {
5
+ border-top: 0;
6
+ }
7
+ }
8
+
9
+ caption {
10
+ font-size: var(--df-typo-sizing-small);
11
+ }
12
+ th {
13
+ font-size: var(--df-typo-sizing-small);
14
+ }
15
+ thead,
16
+ tfoot {
17
+ border-bottom: 1px solid var(--df-color-neutral-main-default-border);
18
+ }
19
+ }
@@ -0,0 +1,20 @@
1
+ $table-cell-padding-y: 0.75rem !default;
2
+ $table-cell-padding-x: var(--df-spacing-3) !default;
3
+ $table-cell-padding-y-sm: 0.3rem !default;
4
+ $table-cell-padding-x-sm: 0.3rem !default;
5
+
6
+ $table-color: var(--df-color-neutral-alt-default-foreground) !default;
7
+ $table-bg: transparent !default;
8
+
9
+ $table-th-font-weight: var(--df-typo-weight-medium) !default;
10
+
11
+ $table-group-separator-color: var(--df-color-neutral-main-default-border) !default;
12
+
13
+ $table-caption-color: var(--df-color-subtext-foreground) !default;
14
+
15
+ $table-striped-bg: var(--df-color-primary-subtle-background) !default;
16
+ $table-hover-bg: var(--df-color-primary-alt-hovered-background) !default;
17
+ $table-active-bg: var(--df-color-primary-alt-active-background) !default;
18
+
19
+ $table-border-width: 1px !default;
20
+ $table-border-color: var(--df-color-inert-neutral-main-border) !default;
@@ -0,0 +1,163 @@
1
+ @use '../../new-brand-common.variables' as df;
2
+
3
+ .nav-link {
4
+ &:visited {
5
+ color: var(--df-nav-link-color);
6
+ }
7
+
8
+ &:hover:not(.disabled):not(:disabled) {
9
+ // required to avoid :visited shenanigans
10
+ background-color: var(--df-color-primary-alt-hovered-background);
11
+ // required to avoid :visited shenanigans
12
+ color: var(--df-nav-link-hover-color);
13
+ }
14
+ }
15
+
16
+ .nav-tabs {
17
+ .nav-link {
18
+ border: unset;
19
+ border-bottom: 2px solid transparent;
20
+ padding-top: var(--df-spacing-3);
21
+ padding-bottom: var(--df-spacing-3);
22
+
23
+ &.active {
24
+ font-weight: var(--df-typo-weight-bold);
25
+ border-bottom: 3px solid var(--df-color-primary-alt-active-border);
26
+
27
+ &:hover {
28
+ border-bottom-color: var(--df-color-primary-alt-activeHovered-border);
29
+ }
30
+ }
31
+
32
+ &:hover:not(.disabled):not(:disabled) {
33
+ // required to avoid :visited shenanigans
34
+ background-color: var(--df-color-primary-alt-hovered-background);
35
+ // required to avoid :visited shenanigans
36
+ color: var(--df-nav-link-hover-color);
37
+ }
38
+
39
+ &:focus {
40
+ box-shadow: none;
41
+ outline: none;
42
+ }
43
+
44
+ &:focus-visible {
45
+ --df-box-shadow-color: #{$nav-link-color};
46
+ outline: none;
47
+ box-shadow: df.$df-focus-inset-box-shadow;
48
+ &:not(.active) {
49
+ color: var(--df-nav-link-color);
50
+ }
51
+
52
+ &:hover {
53
+ --df-inner-box-shadow-color: var(--df-color-primary-alt-hovered-background);
54
+ }
55
+ }
56
+ }
57
+
58
+ // the :is selector is needed for specificity and supporting basic and alternative variants
59
+ :is(.nav-link, .nav-item .nav-link):is(.disabled, :disabled) {
60
+ pointer-events: auto;
61
+ cursor: not-allowed;
62
+ // override link hover styles
63
+ border-bottom-color: transparent;
64
+ }
65
+
66
+ .nav-item + .nav-item {
67
+ margin-left: 0px;
68
+ }
69
+ }
70
+
71
+ .tab-content > .tab-pane {
72
+ padding: var(--df-spacing-6) var(--df-spacing-5);
73
+ }
74
+
75
+ .secondary {
76
+ .nav-tabs {
77
+ .nav-link {
78
+ border-top: 2px solid transparent;
79
+ }
80
+
81
+ :is(.nav-link.active, .nav-item.show .nav-link) {
82
+ border-top: 3px solid var(--df-color-primary-alt-active-border);
83
+ border-left: 1px solid var(--df-color-inert-neutral-main-border);
84
+ border-right: 1px solid var(--df-color-inert-neutral-main-border);
85
+ border-bottom: 2px solid transparent;
86
+ margin-bottom: -2px;
87
+ }
88
+ }
89
+
90
+ .tab-content {
91
+ border-style: solid;
92
+ border-color: var(--df-color-inert-neutral-main-border);
93
+ border-width: 0px 1px 1px 1px;
94
+ }
95
+ }
96
+
97
+ .nav {
98
+ &.nav-pills[role='tablist'] {
99
+ // role=tablist is to target only tabset as pill and not scrollspy
100
+
101
+ a.nav-link {
102
+ border-bottom: 0;
103
+ padding-inline-start: var(--df-spacing-5);
104
+ }
105
+
106
+ .nav-link {
107
+ &:is(.disabled, [disabled]) {
108
+ pointer-events: auto; //needed to show the cursor
109
+ cursor: not-allowed;
110
+
111
+ &:focus {
112
+ outline: none;
113
+ box-shadow: none;
114
+ }
115
+ }
116
+
117
+ &:focus-visible {
118
+ outline: none;
119
+ box-shadow: df.$df-focus-inset-box-shadow;
120
+ }
121
+ }
122
+ }
123
+ }
124
+
125
+ // We need this selector in case the Tabset is used inside a card to round the corners depending on the alignment
126
+ :is(.card, .card-body, .card-text) {
127
+ & > .nav.nav-tabs {
128
+ //not sure if we should deal with breakpoint cases here since we use nav fill and nav-justified for the others alignment
129
+ $justify-content-start-implicit-selector: ':not(.justify-content-center):not(.justify-content-end)';
130
+ @each $breakpoint, $value in $grid-breakpoints {
131
+ $justify-content-start-implicit-selector: '#{$justify-content-start-implicit-selector}:not(.justify-content-#{$breakpoint}-center)';
132
+ $justify-content-start-implicit-selector: '#{$justify-content-start-implicit-selector}:not(.justify-content-#{$breakpoint}-end)';
133
+ }
134
+
135
+ &#{$justify-content-start-implicit-selector},
136
+ &.justify-content-start {
137
+ .nav-item:first-of-type .nav-link {
138
+ //default case, no alignment class on triggering the border-start-start-radius
139
+ border-start-start-radius: var(--df-card-border-radius);
140
+ }
141
+ }
142
+
143
+ @each $breakpoint, $value in $grid-breakpoints {
144
+ &.justify-content-#{$breakpoint}-start {
145
+ .nav-item:first-of-type .nav-link {
146
+ //default case triggering the border-start-start-radius
147
+ border-start-start-radius: var(--df-card-border-radius);
148
+ }
149
+ }
150
+ &.justify-content-#{$breakpoint}-end {
151
+ .nav-item:last-of-type .nav-link {
152
+ border-start-end-radius: var(--df-card-border-radius);
153
+ }
154
+ }
155
+ }
156
+
157
+ &:is(.justify-content-end, .nav-fill, .nav-justified) {
158
+ .nav-item:last-of-type .nav-link {
159
+ border-start-end-radius: var(--df-card-border-radius);
160
+ }
161
+ }
162
+ }
163
+ }
@@ -0,0 +1,19 @@
1
+ $nav-link-hover-color: var(--df-color-neutral-alt-hovered-foreground) !default;
2
+ $nav-link-disabled-color: var(--df-color-disabled-main-foreground) !default;
3
+ $nav-link-padding-y: var(--df-spacing-3) !default;
4
+ $nav-link-padding-x: var(--df-spacing-5) !default;
5
+ $nav-link-color: var(--df-color-neutral-alt-default-foreground) !default;
6
+
7
+ $nav-tabs-border-radius: 0 !default;
8
+ $nav-tabs-border-color: var(--df-color-inert-neutral-main-border) !default;
9
+ $nav-tabs-link-active-bg: var(--df-color-neutral-alt-default-background) !default;
10
+ $nav-tabs-link-active-color: var(--df-color-neutral-alt-active-foreground) !default;
11
+ $nav-tabs-link-hover-border-color: transparent !default;
12
+
13
+ $nav-pills-link-active-color: var(--df-color-neutral-alt-active-foreground) !default;
14
+ $nav-pills-link-active-bg: var(--df-color-primary-alt-active-background) !default;
15
+ $nav-pills-border-radius: var(--df-borderRadius-main-medium) !default;
16
+
17
+ // TODO put those two lines back in navbar.variables when cleaning up navbar styles
18
+ $nav-link-height: calc($font-size-base * $line-height-base + $nav-link-padding-y * 2) !default;
19
+ $navbar-brand-padding-y: calc(($nav-link-height - $navbar-brand-height) * 0.5) !default;
@@ -0,0 +1,9 @@
1
+ ngb-timepicker {
2
+ .ngb-tp-spacer {
3
+ width: var(--df-spacing-5);
4
+ }
5
+ .btn-link {
6
+ @extend .btn-outline-primary, .df-btn-icononly, .df-btn-tertiary;
7
+ background-color: transparent;
8
+ }
9
+ }