@design-factory/design-factory 17.0.1 → 17.1.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 (89) hide show
  1. package/README.md +2 -1
  2. package/design-factory-initial-branding.css +1 -1
  3. package/design-factory.css +1 -1
  4. package/esm2022/lib/angular/accessibility/accessibility.module.mjs +4 -4
  5. package/esm2022/lib/angular/accessibility/components/skip-links-container/skip-links-container.component.mjs +3 -3
  6. package/esm2022/lib/angular/accessibility/directives/skip-link.directive.mjs +3 -3
  7. package/esm2022/lib/angular/alert/alert.module.mjs +4 -4
  8. package/esm2022/lib/angular/card/card-advanced.module.mjs +4 -4
  9. package/esm2022/lib/angular/card/manage-card-selection.directive.mjs +3 -3
  10. package/esm2022/lib/angular/datepicker/closedatepicker.directive.mjs +3 -3
  11. package/esm2022/lib/angular/datepicker/datepicker-keyboard-nav.service.mjs +3 -3
  12. package/esm2022/lib/angular/datepicker/datepicker-range.directive.mjs +3 -3
  13. package/esm2022/lib/angular/datepicker/datepicker-range.service.mjs +3 -3
  14. package/esm2022/lib/angular/datepicker/datepicker.module.mjs +4 -4
  15. package/esm2022/lib/angular/df.module.mjs +4 -4
  16. package/esm2022/lib/angular/footer/footer.module.mjs +4 -4
  17. package/esm2022/lib/angular/icon/amadeus-icon.mjs +3 -3
  18. package/esm2022/lib/angular/icon/icon.module.mjs +4 -4
  19. package/esm2022/lib/angular/icon/insert/insert-icon.directive.mjs +3 -3
  20. package/esm2022/lib/angular/icon/insert/insert-icon.module.mjs +4 -4
  21. package/esm2022/lib/angular/inputs/click/trigger-click.directive.mjs +3 -3
  22. package/esm2022/lib/angular/inputs/icon/inputicon.directive.mjs +3 -3
  23. package/esm2022/lib/angular/inputs/input-advanced.module.mjs +4 -4
  24. package/esm2022/lib/angular/mediaqueries/ifMedia.directive.mjs +3 -3
  25. package/esm2022/lib/angular/mediaqueries/media.module.mjs +4 -4
  26. package/esm2022/lib/angular/mediaqueries/media.service.mjs +3 -3
  27. package/esm2022/lib/angular/mediaqueries/mediaUtils.service.mjs +9 -9
  28. package/esm2022/lib/angular/modal/modal.service.mjs +3 -3
  29. package/esm2022/lib/angular/popover/config/popover.config.mjs +3 -3
  30. package/esm2022/lib/angular/popover/popover.module.mjs +4 -4
  31. package/esm2022/lib/angular/progressbar/progressbar.component.mjs +3 -3
  32. package/esm2022/lib/angular/progressbar/progressbar.module.mjs +4 -4
  33. package/esm2022/lib/angular/progressindicator/default/default-spinner.component.mjs +3 -3
  34. package/esm2022/lib/angular/progressindicator/progressindicator-backdrop.component.mjs +3 -3
  35. package/esm2022/lib/angular/progressindicator/progressindicator-container.component.mjs +3 -3
  36. package/esm2022/lib/angular/progressindicator/progressindicator.directive.mjs +3 -3
  37. package/esm2022/lib/angular/progressindicator/progressindicator.module.mjs +4 -4
  38. package/esm2022/lib/angular/progressindicator/progressindicator.service.mjs +3 -3
  39. package/esm2022/lib/angular/right-to-left/directionDetection.service.mjs +3 -3
  40. package/esm2022/lib/angular/selects/events/manage-badge-events.directive.mjs +3 -3
  41. package/esm2022/lib/angular/selects/nav/manage-nav-select.directive.mjs +3 -3
  42. package/esm2022/lib/angular/selects/option-highlight.directive.mjs +3 -3
  43. package/esm2022/lib/angular/selects/select.module.mjs +4 -4
  44. package/esm2022/lib/angular/sidenav/dfSideNavCollapse.mjs +3 -3
  45. package/esm2022/lib/angular/sidenav/dfSideNavCollapse.module.mjs +4 -4
  46. package/esm2022/lib/angular/sidenav/dfSideNavCollapse.service.mjs +3 -3
  47. package/esm2022/lib/angular/sidenav/dfSideNavCollapseConfig.mjs +3 -3
  48. package/esm2022/lib/angular/sidenav/excludeTrap.directive.mjs +3 -3
  49. package/esm2022/lib/angular/sidenav/manage-sidenav.directive.mjs +3 -3
  50. package/esm2022/lib/angular/sidenav/sidenav-config.mjs +3 -3
  51. package/esm2022/lib/angular/sidenav/sidenav.component.mjs +12 -12
  52. package/esm2022/lib/angular/sidenav/sidenav.module.mjs +4 -4
  53. package/esm2022/lib/angular/sidenav/sidenav.service.mjs +10 -9
  54. package/esm2022/lib/angular/sidenav/sidenavlist.component.mjs +3 -3
  55. package/esm2022/lib/angular/slider/direction/sliderdirection.directive.mjs +3 -3
  56. package/esm2022/lib/angular/slider/lib/slider-element.directive.mjs +3 -3
  57. package/esm2022/lib/angular/slider/lib/slider-handle.directive.mjs +3 -3
  58. package/esm2022/lib/angular/slider/lib/slider-label.directive.mjs +3 -3
  59. package/esm2022/lib/angular/slider/lib/slider.component.mjs +3 -3
  60. package/esm2022/lib/angular/slider/lib/tooltip-wrapper.component.mjs +3 -3
  61. package/esm2022/lib/angular/slider/slider.module.mjs +4 -4
  62. package/esm2022/lib/angular/stepper/stepper.component.mjs +6 -6
  63. package/esm2022/lib/angular/stepper/stepper.directive.mjs +6 -6
  64. package/esm2022/lib/angular/stepper/stepper.module.mjs +4 -4
  65. package/esm2022/lib/angular/stepper/stepper.service.mjs +3 -3
  66. package/esm2022/lib/angular/toast/toast.module.mjs +4 -4
  67. package/esm2022/lib/angular/tooltip/tooltip.module.mjs +4 -4
  68. package/esm2022/lib/angular/tooltip/truncate/tooltipTruncate.directive.mjs +3 -3
  69. package/esm2022/lib/angular/utils/scrollbar.service.mjs +3 -3
  70. package/esm2022/lib/angular/utils/titleTruncate.directive.mjs +3 -3
  71. package/esm2022/lib/index.mjs +2 -1
  72. package/fesm2022/design-factory.mjs +249 -248
  73. package/fesm2022/design-factory.mjs.map +1 -1
  74. package/lib/angular/sidenav/sidenav.service.d.ts +1 -0
  75. package/lib/index.d.ts +1 -0
  76. package/package.json +6 -9
  77. package/styles/scss/_variables.scss +1 -0
  78. package/styles/scss/bootstrap/_mixins-override.scss +0 -26
  79. package/styles/scss/bootstrap/_variables-dark.scss +86 -0
  80. package/styles/scss/bootstrap/_variables.scss +10 -3
  81. package/styles/scss/components/brand-color/_brand-color_container.scss +1 -6
  82. package/styles/scss/components/datepicker/_datepicker.variables.scss +1 -1
  83. package/styles/scss/components/fonts/_fonts.root.scss +2 -1
  84. package/styles/scss/components/fonts/_fonts.scss +20 -1
  85. package/styles/scss/components/fonts/_fonts.variables.scss +2 -0
  86. package/styles/scss/components/select/_select.scss +16 -12
  87. package/styles/scss/components/tabs/_tabs.scss +32 -18
  88. package/styles/scss/components/tabs/_tabs.variables.scss +1 -0
  89. package/styles/scss/themes/brand2023/_variables.scss +0 -2
@@ -30,6 +30,7 @@ export declare enum DfNavItemType {
30
30
  * Creating a sidenav is straightforward: use [DfSideNavComponent](#/components/sidenav/api#DfSideNavComponent) component
31
31
  */
32
32
  export declare class DfSideNavService implements OnDestroy {
33
+ private readonly config;
33
34
  type: typeof DfNavItemType;
34
35
  private readonly _sideNavItems$;
35
36
  private readonly _isMinmized$;
package/lib/index.d.ts CHANGED
@@ -55,6 +55,7 @@ export { DfSideNavService } from './angular/sidenav/sidenav.service';
55
55
  export { DfIfMediaDirective } from './angular/mediaqueries/ifMedia.directive';
56
56
  export { DfSideNavModule } from './angular/sidenav/sidenav.module';
57
57
  export { DfSideNavComponent } from './angular/sidenav/sidenav.component';
58
+ export { DfSideNavConfig } from './angular/sidenav/sidenav-config';
58
59
  export { DfNavItemType } from './angular/sidenav/sidenav.service';
59
60
  export { DfSideNavCollapseModule } from './angular/sidenav/dfSideNavCollapse.module';
60
61
  export { DfSideNavCollapseDirective } from './angular/sidenav/dfSideNavCollapse';
package/package.json CHANGED
@@ -2,26 +2,23 @@
2
2
  "name": "@design-factory/design-factory",
3
3
  "description": "Amadeus design system",
4
4
  "license": "BSD-3-Clause",
5
- "version": "17.0.1",
5
+ "version": "17.1.0",
6
6
  "dependencies": {
7
7
  "tslib": "^2.0.0"
8
8
  },
9
9
  "peerDependencies": {
10
- "@agnos-ui/angular": "^0.1.1",
10
+ "@agnos-ui/angular": "^0.2.0",
11
11
  "@angular/common": "^17.1.0",
12
12
  "@angular/core": "^17.1.0",
13
13
  "@angular/localize": "^17.1.0",
14
14
  "@angular/router": "^17.1.0",
15
15
  "@ng-bootstrap/ng-bootstrap": "~16.0.0",
16
- "@ng-select/ng-select": "~12.0.6",
17
- "ag-grid-angular": "~31.0.2",
18
- "ag-grid-community": "~31.0.2",
19
- "bootstrap": "5.3.2"
16
+ "@ng-select/ng-select": "~12.0.7",
17
+ "ag-grid-angular": "~31.1.1",
18
+ "ag-grid-community": "~31.1.1",
19
+ "bootstrap": "5.3.3"
20
20
  },
21
21
  "peerDependenciesMeta": {
22
- "@agnos-ui/angular": {
23
- "optional": true
24
- },
25
22
  "@angular/router": {
26
23
  "optional": true
27
24
  },
@@ -3,6 +3,7 @@
3
3
 
4
4
  // File to override bootstrap variables
5
5
  @import 'bootstrap/variables';
6
+ @import 'bootstrap/variables-dark';
6
7
  @import 'bootstrap/scss/variables';
7
8
 
8
9
  // File to override agnosui variables
@@ -67,29 +67,3 @@
67
67
  }
68
68
  }
69
69
  }
70
-
71
- @mixin table-variant($state, $background) {
72
- .table-#{$state} {
73
- $text-color: shades-css-var($state, 'bg-color', true);
74
- $hover-bg-color: shades-css-var($state, 'bg-subtle-color');
75
- $text-hover-color: shades-css-var($state, 'bg-subtle-color', true);
76
- $striped-bg-color: shades-css-var($state, 'bg-subtle-hover-color');
77
- $striped-text-color: shades-css-var($state, 'bg-subtle-hover-color', true);
78
- $active-bg: shades-css-var($state, 'bg-subtle-active-color');
79
- $active-text-color: shades-css-var($state, 'bg-subtle-active-color', true);
80
- $border-color: shades-css-var($state, 'border-color');
81
-
82
- --#{$prefix}table-color: #{$text-color};
83
- --#{$prefix}table-bg: #{$background};
84
- --#{$prefix}table-border-color: #{$border-color};
85
- --#{$prefix}table-striped-bg: #{$striped-bg-color};
86
- --#{$prefix}table-striped-color: #{$striped-text-color};
87
- --#{$prefix}table-active-bg: #{$active-bg};
88
- --#{$prefix}table-active-color: #{$active-text-color};
89
- --#{$prefix}table-hover-bg: #{$hover-bg-color};
90
- --#{$prefix}table-hover-color: #{$text-hover-color};
91
-
92
- color: var(--#{$prefix}table-color);
93
- border-color: var(--#{$prefix}table-border-color);
94
- }
95
- }
@@ -0,0 +1,86 @@
1
+ // stylelint-disable scss/dollar-variable-pattern
2
+ // Dark color mode variables
3
+ //
4
+ // Custom variables for the `[data-bs-theme="dark"]` theme. Use this as a starting point for your own custom color modes by creating a new theme-specific file like `_variables-dark.scss` and adding the variables you need.
5
+
6
+ //
7
+ // Global colors
8
+ //
9
+
10
+ // scss-docs-start sass-dark-mode-vars
11
+ // scss-docs-start theme-text-dark-variables
12
+ // $primary-text-emphasis-dark: tint-color($primary, 40%) !default;
13
+ // $secondary-text-emphasis-dark: tint-color($secondary, 40%) !default;
14
+ // $success-text-emphasis-dark: tint-color($success, 40%) !default;
15
+ // $info-text-emphasis-dark: tint-color($info, 40%) !default;
16
+ // $warning-text-emphasis-dark: tint-color($warning, 40%) !default;
17
+ // $danger-text-emphasis-dark: tint-color($danger, 40%) !default;
18
+ // $light-text-emphasis-dark: $gray-100 !default;
19
+ // $dark-text-emphasis-dark: $gray-300 !default;
20
+ // scss-docs-end theme-text-dark-variables
21
+
22
+ // scss-docs-start theme-bg-subtle-dark-variables
23
+ // $primary-bg-subtle-dark: shade-color($primary, 80%) !default;
24
+ // $secondary-bg-subtle-dark: shade-color($secondary, 80%) !default;
25
+ // $success-bg-subtle-dark: shade-color($success, 80%) !default;
26
+ // $info-bg-subtle-dark: shade-color($info, 80%) !default;
27
+ // $warning-bg-subtle-dark: shade-color($warning, 80%) !default;
28
+ // $danger-bg-subtle-dark: shade-color($danger, 80%) !default;
29
+ // $light-bg-subtle-dark: $gray-800 !default;
30
+ // $dark-bg-subtle-dark: mix($gray-800, $black) !default;
31
+ // scss-docs-end theme-bg-subtle-dark-variables
32
+
33
+ // scss-docs-start theme-border-subtle-dark-variables
34
+ // $primary-border-subtle-dark: shade-color($primary, 40%) !default;
35
+ // $secondary-border-subtle-dark: shade-color($secondary, 40%) !default;
36
+ // $success-border-subtle-dark: shade-color($success, 40%) !default;
37
+ // $info-border-subtle-dark: shade-color($info, 40%) !default;
38
+ // $warning-border-subtle-dark: shade-color($warning, 40%) !default;
39
+ // $danger-border-subtle-dark: shade-color($danger, 40%) !default;
40
+ // $light-border-subtle-dark: $gray-700 !default;
41
+ // $dark-border-subtle-dark: $gray-800 !default;
42
+ // scss-docs-end theme-border-subtle-dark-variables
43
+
44
+ // $body-color-dark: $gray-300 !default;
45
+ // $body-bg-dark: $gray-900 !default;
46
+ // $body-secondary-color-dark: rgba($body-color-dark, .75) !default;
47
+ // $body-secondary-bg-dark: $gray-800 !default;
48
+ // $body-tertiary-color-dark: rgba($body-color-dark, .5) !default;
49
+ // $body-tertiary-bg-dark: mix($gray-800, $gray-900, 50%) !default;
50
+ // $body-emphasis-color-dark: $white !default;
51
+ // $border-color-dark: $gray-700 !default;
52
+ // $border-color-translucent-dark: rgba($white, .15) !default;
53
+ // $headings-color-dark: inherit !default;
54
+ // $link-color-dark: tint-color($primary, 40%) !default;
55
+ // $link-hover-color-dark: shift-color($link-color-dark, -$link-shade-percentage) !default;
56
+ $code-color-dark: tint-color($pink, 40%) !default;
57
+ // $mark-color-dark: $body-color-dark !default;
58
+ // $mark-bg-dark: $yellow-800 !default;
59
+
60
+ //
61
+ // Forms
62
+ //
63
+
64
+ // $form-select-indicator-color-dark: $body-color-dark !default;
65
+ // $form-select-indicator-dark: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'><path fill='none' stroke='#{$form-select-indicator-color-dark}' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/></svg>") !default;
66
+
67
+ // $form-switch-color-dark: rgba($white, .25) !default;
68
+ // $form-switch-bg-image-dark: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'><circle r='3' fill='#{$form-switch-color-dark}'/></svg>") !default;
69
+
70
+ // scss-docs-start form-validation-colors-dark
71
+ // $form-valid-color-dark: $green-300 !default;
72
+ // $form-valid-border-color-dark: $green-300 !default;
73
+ // $form-invalid-color-dark: $red-300 !default;
74
+ // $form-invalid-border-color-dark: $red-300 !default;
75
+ // scss-docs-end form-validation-colors-dark
76
+
77
+ //
78
+ // Accordion
79
+ //
80
+
81
+ // $accordion-icon-color-dark: $primary-text-emphasis-dark !default;
82
+ // $accordion-icon-active-color-dark: $primary-text-emphasis-dark !default;
83
+
84
+ // $accordion-button-icon-dark: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='#{$accordion-icon-color-dark}'><path fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/></svg>") !default;
85
+ // $accordion-button-active-icon-dark: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='#{$accordion-icon-active-color-dark}'><path fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/></svg>") !default;
86
+ // scss-docs-end sass-dark-mode-vars
@@ -695,7 +695,7 @@ $lights-mapping: (
695
695
 
696
696
  $whites-mapping: (
697
697
  'bg-color': var(--#{$prefix}white-50),
698
- 'bg-hover-color': var(--#{$prefix}white-100),
698
+ 'bg-hover-color': var(--#{$prefix}white-200),
699
699
  'bg-active-color': var(--#{$prefix}white-200),
700
700
  'inert-color': var(--#{$prefix}white-50),
701
701
  'bg-subtle-color': var(--#{$prefix}white-50),
@@ -1059,9 +1059,16 @@ $shade-colors: map.merge(
1059
1059
  $map1: $shade-colors,
1060
1060
  $map2: $pacifics
1061
1061
  );
1062
+
1063
+ // Grays map does not include gray prefix in the color name by default
1064
+ $grays-names: ();
1065
+ @each $colorName, $colorValue in $grays {
1066
+ $grays-names: map.set($grays-names, gray-#{$colorName}, $colorValue);
1067
+ }
1068
+
1062
1069
  $shade-colors: map.merge(
1063
1070
  $map1: $shade-colors,
1064
- $map2: $grays
1071
+ $map2: $grays-names
1065
1072
  );
1066
1073
  $shade-colors: map.merge(
1067
1074
  $map1: $shade-colors,
@@ -2166,7 +2173,7 @@ $accordion-icon-active-color: $accordion-icon-color !default;
2166
2173
  // Tooltips
2167
2174
 
2168
2175
  // scss-docs-start tooltip-variables
2169
- $tooltip-font-size: 1em * map.get($df-size-ratios, 'sm') !default; // $font-size-sm !default;
2176
+ // $tooltip-font-size: $font-size-sm !default;
2170
2177
  // $tooltip-max-width: 200px !default;
2171
2178
  // $tooltip-color: var(--#{$prefix}body-bg) !default;
2172
2179
  $tooltip-bg: var(--#{$prefix}gray-600) !default;
@@ -1,8 +1,3 @@
1
- // stylelint-disable scss/dollar-variable-pattern
2
- $shade-colors-rgb: map-loop($shade-colors, to-rgb, "$value") !default;
3
- $shade-colors-text: map-loop($shade-colors, color-contrast, "$value") !default;
4
- $shade-colors-text-rgb: map-loop($shade-colors-text, to-rgb, "$value") !default;
5
-
6
1
  #{$df-css-namespace-selector} {
7
2
  --#{$prefix}dark-primary: #{$dark-primary};
8
3
  --#{$prefix}yellow-rgb: #{to-rgb($yellow)};
@@ -25,4 +20,4 @@ $shade-colors-text-rgb: map-loop($shade-colors-text, to-rgb, "$value") !default;
25
20
  @each $color, $value in $shade-colors-text-rgb {
26
21
  --#{$prefix}#{$color}-color-rgb: #{$value};
27
22
  }
28
- }
23
+ }
@@ -32,7 +32,7 @@ $df-datepicker-day-hover-color: color-contrast($df-datepicker-day-hover-bg-color
32
32
  $df-datepicker-day-hover-text-decoration: underline !default; // why underline here add the reason with UX
33
33
  $df-datepicker-day-focus-outline-width: 0.2rem !default;
34
34
  $df-datepicker-day-focus-border: ($df-datepicker-day-focus-outline-width + 0.05rem) solid
35
- rgba($input-focus-border-color, 0.5) !default;
35
+ rgba(to-rgb($input-focus-border-color), 0.5) !default;
36
36
  $df-datepicker-day-focus-active-z-index: 0 !default;
37
37
  $df-datepicker-day-focus-active-border-color: rgba($white, 0.5) !default;
38
38
  $df-datepicker-day-focus-active-border-z-index: -1 !default;
@@ -17,6 +17,7 @@
17
17
  --#{$prefix}recommend-border-bottom-width: #{$df-recommend-border-bottom-width};
18
18
  --#{$prefix}recommend-color: #{$df-recommend-color};
19
19
  --#{$prefix}recommend-not-color: #{$df-recommend-not-color};
20
+ --#{$prefix}recommend-warning-color: #{$df-recommend-warning-color};
20
21
  --#{$prefix}caption-letter-spacing: #{$df-caption-letter-spacing};
21
22
  --#{$prefix}caption-font-size: #{$df-caption-font-size};
22
23
  --#{$prefix}blockquote-letter-spacing: #{$df-blockquote-letter-spacing};
@@ -24,4 +25,4 @@
24
25
  --#{$prefix}blockquote-line-height: #{$df-blockquote-line-height};
25
26
  --#{$prefix}mark-color: #{$df-mark-color};
26
27
  --#{$prefix}font-weight-semi-bold: #{$df-font-weight-semi-bold};
27
- }
28
+ }
@@ -64,19 +64,38 @@ mark {
64
64
  }
65
65
 
66
66
  .df-recommend,
67
- .df-not-recommend {
67
+ .df-not-recommend,
68
+ .df-warning {
68
69
  font-size: var(--#{$prefix}recommend-font-size);
69
70
  font-weight: var(--#{$prefix}recommend-font-weight);
70
71
  line-height: var(--#{$prefix}recommend-line-height);
71
72
  border-bottom: var(--#{$prefix}recommend-border-bottom-width) solid;
72
73
  padding-bottom: var(--#{$prefix}recommend-padding-bottom);
73
74
  margin-bottom: var(--#{$prefix}recommend-margin-bottom);
75
+ &:before {
76
+ @extend %df-icon-style;
77
+ font-weight: $df-icon-solid-font-weight;
78
+ margin-inline-end: $df-recommend-icon-margin-inline-end;
79
+ }
74
80
  }
75
81
 
76
82
  .df-recommend {
77
83
  color: var(--#{$prefix}recommend-color);
84
+ &:before {
85
+ content: '\ea19'; // icon-check-circle
86
+ }
78
87
  }
79
88
 
80
89
  .df-not-recommend {
81
90
  color: var(--#{$prefix}recommend-not-color);
91
+ &:before {
92
+ content: '\ec97'; // icon-minus-circle
93
+ }
94
+ }
95
+
96
+ .df-warning {
97
+ color: var(--#{$prefix}recommend-warning-color);
98
+ &:before {
99
+ content: '\eafc'; // icon-exclamation-triangle
100
+ }
82
101
  }
@@ -18,6 +18,8 @@ $df-recommend-margin-bottom: 1rem !default;
18
18
  $df-recommend-border-bottom-width: 3 * $border-width !default;
19
19
  $df-recommend-color: shades-css-var('success', 'text-color') !default;
20
20
  $df-recommend-not-color: shades-css-var('danger', 'text-color') !default;
21
+ $df-recommend-warning-color: shades-css-var('warning', 'text-color') !default;
22
+ $df-recommend-icon-margin-inline-end: 0.5rem !default;
21
23
 
22
24
  $df-caption-letter-spacing: 0.025rem !default;
23
25
  $df-caption-font-size: 0.875rem !default;
@@ -1,5 +1,10 @@
1
1
  @use 'sass:map';
2
2
 
3
+ .form-select,
4
+ .ng-select {
5
+ --#{$prefix}form-select-focus-border-color: #{$form-select-focus-border-color};
6
+ }
7
+
3
8
  /* Native select */
4
9
  .form-select {
5
10
  --#{$prefix}box-shadow-color: #{$input-focus-border-color};
@@ -13,14 +18,14 @@
13
18
  --#{$prefix}box-shadow-color: #{shades-css-var($colorName, 'border-color')};
14
19
  } @else {
15
20
  --#{$prefix}border-color-opacity: #{$input-btn-focus-color-opacity};
16
- --#{$prefix}box-shadow-color: #{shades-rgba-css-var-with-opacity($colorName, 'border-color')}
21
+ --#{$prefix}box-shadow-color: #{shades-rgba-css-var-with-opacity($colorName, 'border-color')};
17
22
  }
18
23
  }
19
24
  }
20
25
 
21
26
  &:focus {
22
27
  // override
23
- border-color: $input-focus-border-color;
28
+ border-color: var(--#{$prefix}form-select-focus-border-color);
24
29
  }
25
30
 
26
31
  &:not([disabled]) {
@@ -40,13 +45,13 @@
40
45
  &:not([multiple]):disabled {
41
46
  // override
42
47
  @include ltr {
43
- background: $form-select-disabled-bg var(--#{$prefix}select-indicator-disabled) no-repeat right $form-select-padding-x
44
- center;
48
+ background: $form-select-disabled-bg var(--#{$prefix}select-indicator-disabled) no-repeat right
49
+ $form-select-padding-x center;
45
50
  background-size: $form-select-bg-size;
46
51
  }
47
52
  @include rtl {
48
- background: $form-select-disabled-bg var(--#{$prefix}select-indicator-disabled) no-repeat left $form-select-padding-x
49
- center;
53
+ background: $form-select-disabled-bg var(--#{$prefix}select-indicator-disabled) no-repeat left
54
+ $form-select-padding-x center;
50
55
  background-size: $form-select-bg-size;
51
56
  }
52
57
  }
@@ -172,9 +177,9 @@
172
177
  --#{$prefix}box-shadow-color: #{$input-focus-border-color};
173
178
  } @else {
174
179
  --#{$prefix}border-color-opacity: #{$input-btn-focus-color-opacity};
175
- --#{$prefix}box-shadow-color: #{shades-rgba-css-var-with-opacity('primary', 'border-color')}
180
+ --#{$prefix}box-shadow-color: #{shades-rgba-css-var-with-opacity('primary', 'border-color')};
176
181
  }
177
-
182
+
178
183
  &.form-control {
179
184
  // add
180
185
  padding: 0;
@@ -278,7 +283,7 @@
278
283
  }
279
284
  }
280
285
  }
281
- &.df-ng-select-readonly {
286
+ &.df-ng-select-readonly {
282
287
  // add
283
288
  > .ng-select-container {
284
289
  background-color: var(--#{$prefix}select-readonly-bg);
@@ -303,7 +308,7 @@
303
308
  --#{$prefix}box-shadow-color: #{shades-css-var($colorName, 'border-color')};
304
309
  } @else {
305
310
  --#{$prefix}border-color-opacity: #{$input-btn-focus-color-opacity};
306
- --#{$prefix}box-shadow-color: #{shades-rgba-css-var-with-opacity($colorName, 'border-color')}
311
+ --#{$prefix}box-shadow-color: #{shades-rgba-css-var-with-opacity($colorName, 'border-color')};
307
312
  }
308
313
  $color: map.get($data, color);
309
314
  $box-shadow: $df-select-input-box-shadow;
@@ -564,7 +569,6 @@
564
569
  }
565
570
  }
566
571
 
567
-
568
572
  .ng-spinner-zone {
569
573
  padding-right: 0.3125rem; // todo check when feature is needed
570
574
  padding-top: 0.3125rem; // todo check when feature is needed
@@ -797,4 +801,4 @@
797
801
  }
798
802
  }
799
803
  }
800
- }
804
+ }
@@ -22,12 +22,8 @@
22
22
  --#{$prefix}tabs-secondary-active-border-right: #{$df-tabs-secondary-active-border-right};
23
23
  --#{$prefix}tabs-secondary-active-border-bottom: #{$df-tabs-secondary-active-border-bottom};
24
24
  --#{$prefix}tabs-secondary-active-margin-bottom: #{$df-tabs-secondary-active-margin-bottom};
25
-
26
- --#{$prefix}tabs-content-tab-pane-padding: #{$df-tabs-content-tab-pane-padding};
27
- --#{$prefix}tabs-content-border-style: #{$df-tabs-content-border-style};
28
- --#{$prefix}tabs-content-border-color: #{$df-tabs-content-border-color};
29
- --#{$prefix}tabs-content-border-width: #{$df-tabs-content-border-width};
30
25
  --#{$prefix}tabs-item-active-font-weight: #{$df-tabs-item-active-font-weight};
26
+ --#{$prefix}tabs-cursor-disabled: #{$df-tabs-cursor-disabled};
31
27
 
32
28
  @if variable-exists($name: 'df-enableBranding2023') and $df-enableBranding2023 {
33
29
  --#{$prefix}box-shadow-color: var(--#{$prefix}nav-link-color);
@@ -41,7 +37,8 @@
41
37
  padding-top: var(--#{$prefix}tabs-padding-y); // add
42
38
  padding-bottom: var(--#{$prefix}tabs-padding-y); // add
43
39
 
44
- &.active { // add
40
+ &.active {
41
+ // add
45
42
  font-weight: var(--#{$prefix}tabs-item-active-font-weight);
46
43
  }
47
44
 
@@ -80,6 +77,18 @@
80
77
  }
81
78
  }
82
79
 
80
+ .nav-link.disabled,
81
+ .nav-link:disabled {
82
+ pointer-events: auto;
83
+ cursor: var(--#{$prefix}tabs-cursor-disabled);
84
+
85
+ &:focus {
86
+ color: var(--df-nav-link-disabled-color);
87
+ outline: none;
88
+ box-shadow: none;
89
+ }
90
+ }
91
+
83
92
  .nav-item + .nav-item {
84
93
  // add
85
94
  margin-left: var(--#{$prefix}tabs-between-item-margin); // add
@@ -94,6 +103,16 @@
94
103
  }
95
104
  }
96
105
 
106
+ .tab-content {
107
+ --#{$prefix}tabs-content-tab-pane-padding: #{$df-tabs-content-tab-pane-padding};
108
+ --#{$prefix}tabs-content-border-style: #{$df-tabs-content-border-style};
109
+ --#{$prefix}tabs-content-border-color: #{$df-tabs-content-border-color};
110
+ --#{$prefix}tabs-content-border-width: #{$df-tabs-content-border-width};
111
+ > .tab-pane {
112
+ padding: var(--#{$prefix}tabs-content-tab-pane-padding); //add
113
+ }
114
+ }
115
+
97
116
  %secondary {
98
117
  .nav-link {
99
118
  border-bottom: var(--#{$prefix}tabs-secondary-border-bottom); // add
@@ -143,12 +162,6 @@
143
162
  @extend %secondary;
144
163
  }
145
164
 
146
- .tab-content {
147
- > .tab-pane {
148
- padding: var(--#{$prefix}tabs-content-tab-pane-padding); //add
149
- }
150
- }
151
-
152
165
  %secondary-content {
153
166
  border-style: var(--#{$prefix}tabs-content-border-style); //add
154
167
  border-color: var(--#{$prefix}tabs-content-border-color); //add
@@ -161,12 +174,13 @@
161
174
  }
162
175
 
163
176
  .nav {
164
- &.nav-pills[role=tablist] { // role=tablist is to target only tabset as pill and not scrollspy
165
- .nav-link {
166
- &:focus {
167
- outline: 0;
168
- box-shadow: $df-tabs-focus-box-shadow;
177
+ &.nav-pills[role='tablist'] {
178
+ // role=tablist is to target only tabset as pill and not scrollspy
179
+ .nav-link {
180
+ &:focus {
181
+ outline: 0;
182
+ box-shadow: $df-tabs-focus-box-shadow;
183
+ }
169
184
  }
170
185
  }
171
- }
172
186
  }
@@ -7,6 +7,7 @@ $df-tabs-hover-border-bottom: 2px solid transparent !default;
7
7
  $df-tabs-hover-text-decoration: underline !default;
8
8
  $df-tabs-hover-bg-color: $df-hover-bg-color !default;
9
9
  $df-tabs-disabled-text-decoration: none !default;
10
+ $df-tabs-cursor-disabled: var(--#{$prefix}disabled-cursor) !default;
10
11
  // TODO rem instead of px
11
12
  $df-tabs-between-item-margin: 3px !default;
12
13
  $df-tabs-active-border-bottom: 3px solid shades-css-var('primary', 'inert-color') !default;
@@ -469,8 +469,6 @@ $df-btn-focus-box-shadow:
469
469
  0 0 0 4px var(--#{$prefix}box-shadow-color, $primary) !default;
470
470
  $df-btn-focus-box-shadow-color: rgba(var(--#{$prefix}btn-focus-shadow-rgb), 1) !default;
471
471
  $df-btn-check-active-property: 'bg-active-color' !default;
472
- $df-btn-bg-color: var(--#{$prefix}white) !default;
473
- $df-btn-focus-only-bg-color: var(--#{$prefix}white) !default;
474
472
  $df-btn-outline-focus-box-shadow-color: var(--#{$prefix}btn-color) !default;
475
473
 
476
474
  // Button close