@design-factory/design-factory 15.2.3 → 16.0.1

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 (205) hide show
  1. package/README.md +17 -1
  2. package/assets/fonts/amadeus-neue/bold/AmadeusNeue-Bold.ttf +0 -0
  3. package/assets/fonts/amadeus-neue/bold/AmadeusNeue-Bold.woff +0 -0
  4. package/assets/fonts/amadeus-neue/bold/AmadeusNeue-Bold.woff2 +0 -0
  5. package/assets/fonts/amadeus-neue/bold/AmadeusNeue-BoldItalic.ttf +0 -0
  6. package/assets/fonts/amadeus-neue/bold/AmadeusNeue-BoldItalic.woff +0 -0
  7. package/assets/fonts/amadeus-neue/bold/AmadeusNeue-BoldItalic.woff2 +0 -0
  8. package/assets/fonts/amadeus-neue/light/AmadeusNeue-Light.ttf +0 -0
  9. package/assets/fonts/amadeus-neue/light/AmadeusNeue-Light.woff +0 -0
  10. package/assets/fonts/amadeus-neue/light/AmadeusNeue-Light.woff2 +0 -0
  11. package/assets/fonts/amadeus-neue/light/AmadeusNeue-LightItalic.ttf +0 -0
  12. package/assets/fonts/amadeus-neue/light/AmadeusNeue-LightItalic.woff +0 -0
  13. package/assets/fonts/amadeus-neue/light/AmadeusNeue-LightItalic.woff2 +0 -0
  14. package/assets/fonts/amadeus-neue/medium/AmadeusNeue-Medium.ttf +0 -0
  15. package/assets/fonts/amadeus-neue/medium/AmadeusNeue-Medium.woff +0 -0
  16. package/assets/fonts/amadeus-neue/medium/AmadeusNeue-Medium.woff2 +0 -0
  17. package/assets/fonts/amadeus-neue/medium/AmadeusNeue-MediumItalic.ttf +0 -0
  18. package/assets/fonts/amadeus-neue/medium/AmadeusNeue-MediumItalic.woff +0 -0
  19. package/assets/fonts/amadeus-neue/medium/AmadeusNeue-MediumItalic.woff2 +0 -0
  20. package/assets/fonts/amadeus-neue/regular/AmadeusNeue-Regular.ttf +0 -0
  21. package/assets/fonts/amadeus-neue/regular/AmadeusNeue-Regular.woff +0 -0
  22. package/assets/fonts/amadeus-neue/regular/AmadeusNeue-Regular.woff2 +0 -0
  23. package/assets/fonts/amadeus-neue/regular/AmadeusNeue-RegularItalic.ttf +0 -0
  24. package/assets/fonts/amadeus-neue/regular/AmadeusNeue-RegularItalic.woff +0 -0
  25. package/assets/fonts/amadeus-neue/regular/AmadeusNeue-RegularItalic.woff2 +0 -0
  26. package/design-factory-initial-branding.css +1 -0
  27. package/design-factory-initial-branding.scss +1 -0
  28. package/design-factory.css +1 -3
  29. package/design-factory.scss +1 -0
  30. package/esm2022/lib/angular/accessibility/components/skip-links-container/skip-links-container.component.mjs +3 -3
  31. package/esm2022/lib/angular/df.module.mjs +102 -0
  32. package/esm2022/lib/angular/icon/amadeus-icon.mjs +2 -2
  33. package/esm2022/lib/angular/sidenav/sidenavlist.component.mjs +3 -12
  34. package/esm2022/lib/angular/stepper/stepper.component.mjs +65 -0
  35. package/esm2022/lib/angular/stepper/stepper.directive.mjs +174 -0
  36. package/esm2022/lib/angular/stepper/stepper.module.mjs +17 -0
  37. package/esm2022/lib/angular/stepper/stepper.service.mjs +213 -0
  38. package/esm2022/lib/angular/tooltip/truncate/tooltipTruncate.directive.mjs +5 -3
  39. package/esm2022/lib/index.mjs +9 -96
  40. package/fesm2022/design-factory.mjs +1838 -1427
  41. package/fesm2022/design-factory.mjs.map +1 -1
  42. package/lib/angular/df.module.d.ts +26 -0
  43. package/lib/angular/stepper/stepper.component.d.ts +31 -0
  44. package/lib/angular/stepper/stepper.directive.d.ts +37 -0
  45. package/lib/angular/stepper/stepper.module.d.ts +8 -0
  46. package/lib/angular/stepper/stepper.service.d.ts +126 -0
  47. package/lib/angular/tooltip/truncate/tooltipTruncate.directive.d.ts +1 -0
  48. package/lib/index.d.ts +7 -23
  49. package/package.json +23 -4
  50. package/schematics/migrations/15_0_0/remove-ngx-slider/index.js +0 -1
  51. package/schematics/migrations/16_0_0/navbar-logo-dark/index.d.ts +9 -0
  52. package/schematics/migrations/16_0_0/navbar-logo-dark/index.js +43 -0
  53. package/schematics/migrations/16_0_0/revert-to-old-brand/index.d.ts +7 -0
  54. package/schematics/migrations/16_0_0/revert-to-old-brand/index.js +115 -0
  55. package/schematics/migrations/16_0_0/scss-var/files/removed.json +55 -0
  56. package/schematics/migrations/16_0_0/scss-var/files/renames.json +76 -0
  57. package/schematics/migrations/16_0_0/scss-var/index.d.ts +7 -0
  58. package/schematics/migrations/16_0_0/scss-var/index.js +57 -0
  59. package/schematics/migrations/16_0_0/stepper-classes/index.d.ts +13 -0
  60. package/schematics/migrations/16_0_0/stepper-classes/index.js +63 -0
  61. package/schematics/migrations/helpers.js +0 -1
  62. package/schematics/migrations/migration.json +23 -1
  63. package/schematics/migrations/utils/component-resource-collector.d.ts +44 -0
  64. package/schematics/migrations/utils/component-resource-collector.js +166 -0
  65. package/schematics/migrations/utils/project_tsconfig_paths.js +0 -1
  66. package/schematics/migrations/utils/style-updater.d.ts +9 -0
  67. package/schematics/migrations/utils/style-updater.js +38 -0
  68. package/schematics/migrations/utils/template-updater.d.ts +9 -0
  69. package/schematics/migrations/utils/template-updater.js +38 -0
  70. package/schematics/migrations/utils/typescript/compiler_host.js +0 -1
  71. package/schematics/migrations/utils/typescript/decorators.d.ts +22 -0
  72. package/schematics/migrations/utils/typescript/decorators.js +41 -0
  73. package/schematics/migrations/utils/typescript/functions.d.ts +14 -0
  74. package/schematics/migrations/utils/typescript/functions.js +20 -0
  75. package/schematics/migrations/utils/typescript/imports.d.ts +17 -0
  76. package/schematics/migrations/utils/typescript/imports.js +110 -0
  77. package/schematics/migrations/utils/typescript/line-mappings.d.ts +21 -0
  78. package/schematics/migrations/utils/typescript/line-mappings.js +75 -0
  79. package/schematics/migrations/utils/typescript/parse_tsconfig.js +0 -1
  80. package/schematics/migrations/utils/typescript/property-name.d.ts +18 -0
  81. package/schematics/migrations/utils/typescript/property-name.js +27 -0
  82. package/schematics/ng-add/index.js +0 -1
  83. package/schematics/ng-add/schema.js +0 -1
  84. package/styles/scss/_common.root.scss +37 -0
  85. package/styles/scss/_common.scss +3 -9
  86. package/styles/scss/_common.variables.scss +16 -6
  87. package/styles/scss/_variables.scss +0 -1
  88. package/styles/scss/bootstrap/_maps.scss +10 -9
  89. package/styles/scss/bootstrap/_mixins-override.scss +26 -0
  90. package/styles/scss/bootstrap/_variables.scss +927 -267
  91. package/styles/scss/components/accordion/_accordion.scss +31 -14
  92. package/styles/scss/components/accordion/_accordion.variables.scss +5 -5
  93. package/styles/scss/components/alert/_alert.scss +130 -228
  94. package/styles/scss/components/alert/_alert.variables.scss +22 -33
  95. package/styles/scss/components/badge/_badge.scss +130 -118
  96. package/styles/scss/components/badge/_badge.variables.scss +14 -8
  97. package/styles/scss/components/brand-color/_brand-color.mixins.scss +19 -4
  98. package/styles/scss/components/brand-color/_brand-color.scss +4 -6
  99. package/styles/scss/components/brand-color/_brand-color.variables.scss +1 -7
  100. package/styles/scss/components/brand-color/_brand-color_container.scss +28 -0
  101. package/styles/scss/components/breadcrumbs/_breadcrumbs.scss +77 -65
  102. package/styles/scss/components/breadcrumbs/_breadcrumbs.variables.scss +6 -4
  103. package/styles/scss/components/button/_button.scss +120 -55
  104. package/styles/scss/components/button/_button.variables.scss +18 -4
  105. package/styles/scss/components/button/_button_container.scss +9 -45
  106. package/styles/scss/components/card/_card.scss +90 -58
  107. package/styles/scss/components/card/_card.variables.scss +13 -13
  108. package/styles/scss/components/carousel/_carousel.scss +22 -23
  109. package/styles/scss/components/carousel/_carousel.variables.scss +2 -1
  110. package/styles/scss/components/checkbox/_checkbox.scss +14 -8
  111. package/styles/scss/components/checkbox/_checkbox.variables.scss +2 -2
  112. package/styles/scss/components/collapse/_collapse.scss +15 -7
  113. package/styles/scss/components/collapse/_collapse.variables.scss +3 -3
  114. package/styles/scss/components/datepicker/_datepicker.scss +178 -122
  115. package/styles/scss/components/datepicker/_datepicker.variables.scss +22 -15
  116. package/styles/scss/components/dropdown/_dropdown.mixins.scss +4 -4
  117. package/styles/scss/components/dropdown/_dropdown.scss +39 -19
  118. package/styles/scss/components/dropdown/_dropdown.variables.scss +4 -4
  119. package/styles/scss/components/fieldset/_fieldset.scss +4 -2
  120. package/styles/scss/components/fonts/_fonts-family.scss +112 -29
  121. package/styles/scss/components/fonts/_fonts.root.scss +27 -0
  122. package/styles/scss/components/fonts/_fonts.scss +25 -26
  123. package/styles/scss/components/fonts/_fonts.variables.scss +2 -2
  124. package/styles/scss/components/footer/_footer.scss +48 -18
  125. package/styles/scss/components/footer/_footer.variables.scss +4 -2
  126. package/styles/scss/components/form/_form.scss +69 -16
  127. package/styles/scss/components/form/_form.variables.scss +23 -3
  128. package/styles/scss/components/icon/_amadeus-icon.scss +2 -2
  129. package/styles/scss/components/icon/_amadeus-icon.variables.scss +1 -0
  130. package/styles/scss/components/inputs/_inputs.mixin.scss +8 -4
  131. package/styles/scss/components/inputs/_inputs.root.scss +8 -0
  132. package/styles/scss/components/inputs/_inputs.scss +159 -118
  133. package/styles/scss/components/inputs/_inputs.variables.scss +2 -1
  134. package/styles/scss/components/link/_link.mixins.scss +49 -49
  135. package/styles/scss/components/link/_link.scss +84 -22
  136. package/styles/scss/components/link/_link.variables.scss +6 -6
  137. package/styles/scss/components/list/_list.scss +10 -5
  138. package/styles/scss/components/list-group/_list-group.scss +54 -48
  139. package/styles/scss/components/list-group/_list-group.variables.scss +6 -14
  140. package/styles/scss/components/media/_media.scss +17 -9
  141. package/styles/scss/components/media/_media.variables.scss +2 -1
  142. package/styles/scss/components/modal/_modal.scss +88 -39
  143. package/styles/scss/components/modal/_modal.variables.scss +4 -5
  144. package/styles/scss/components/navbar/_navbar.scss +298 -115
  145. package/styles/scss/components/navbar/_navbar.variables.scss +29 -18
  146. package/styles/scss/components/pagination/_pagination.scss +68 -82
  147. package/styles/scss/components/pagination/_pagination.variables.scss +5 -8
  148. package/styles/scss/components/pagination/_pagination_container.scss +3 -0
  149. package/styles/scss/components/popover/_popover.mixin.scss +20 -33
  150. package/styles/scss/components/popover/_popover.scss +25 -7
  151. package/styles/scss/components/popover/_popover_container.scss +123 -74
  152. package/styles/scss/components/progressbar/_progressbar.scss +15 -7
  153. package/styles/scss/components/progressbar/_progressbar.variables.scss +3 -2
  154. package/styles/scss/components/radio/_radio.scss +19 -14
  155. package/styles/scss/components/rating/_rating.scss +41 -22
  156. package/styles/scss/components/rating/_rating.variables.scss +5 -5
  157. package/styles/scss/components/scrollspy/_scrollspy.scss +30 -13
  158. package/styles/scss/components/scrollspy/_scrollspy.variables.scss +2 -1
  159. package/styles/scss/components/select/_select.scss +232 -166
  160. package/styles/scss/components/select/_select.variables.scss +15 -15
  161. package/styles/scss/components/separator/_separator.scss +2 -1
  162. package/styles/scss/components/sidenav/_sidenav.scss +208 -135
  163. package/styles/scss/components/sidenav/_sidenav.variables.scss +19 -20
  164. package/styles/scss/components/skip-links/_skip-links.scss +31 -16
  165. package/styles/scss/components/skip-links/_skip-links.variables.scss +6 -6
  166. package/styles/scss/components/slider/_slider.scss +11 -10
  167. package/styles/scss/components/slider/_slider.variables.scss +8 -8
  168. package/styles/scss/components/speechbubble/_speechbubble.scss +50 -30
  169. package/styles/scss/components/speechbubble/_speechbubble.variables.scss +4 -2
  170. package/styles/scss/components/spinner/_spinner.scss +34 -29
  171. package/styles/scss/components/stepper/_stepper.mixins.scss +111 -151
  172. package/styles/scss/components/stepper/_stepper.scss +163 -69
  173. package/styles/scss/components/stepper/_stepper.variables.scss +23 -17
  174. package/styles/scss/components/table/_advancedtables.scss +50 -31
  175. package/styles/scss/components/table/_table.variables.scss +3 -2
  176. package/styles/scss/components/tabs/_tabs.scss +98 -49
  177. package/styles/scss/components/tabs/_tabs.variables.scss +11 -10
  178. package/styles/scss/components/toast/_toast.scss +136 -68
  179. package/styles/scss/components/toast/_toast.variables.scss +4 -4
  180. package/styles/scss/components/toggle/_toggle.scss +90 -44
  181. package/styles/scss/components/toggle/_toggle.variables.scss +7 -5
  182. package/styles/scss/components/typeahead/_typeahead.scss +18 -8
  183. package/styles/scss/components/typeahead/_typeahead.variables.scss +1 -1
  184. package/styles/scss/df-styles-namespace.scss +8 -11
  185. package/styles/scss/df-styles.scss +6 -3
  186. package/styles/scss/themes/brand2023/_variables.scss +588 -0
  187. package/styles/scss/utilities/_common.utilities.scss +112 -32
  188. package/assets/fonts/amadeus-light/amadeus-light.svg +0 -8658
  189. package/assets/fonts/amadeus-light/amadeus-light.ttf +0 -0
  190. package/assets/fonts/amadeus-light/amadeus-light.woff +0 -0
  191. package/assets/fonts/amadeus-light/amadeus-light.woff2 +0 -0
  192. package/assets/icon-amadeus.svg +0 -1
  193. package/esm2022/lib/angular/utils/html-element-helper.mjs +0 -8
  194. package/esm2022/lib/angular/utils/titleTruncate.directive.mjs +0 -39
  195. package/lib/angular/utils/html-element-helper.d.ts +0 -5
  196. package/lib/angular/utils/titleTruncate.directive.d.ts +0 -16
  197. package/schematics/migrations/15_0_0/remove-ngx-slider/index.js.map +0 -1
  198. package/schematics/migrations/helpers.js.map +0 -1
  199. package/schematics/migrations/utils/project_tsconfig_paths.js.map +0 -1
  200. package/schematics/migrations/utils/typescript/compiler_host.js.map +0 -1
  201. package/schematics/migrations/utils/typescript/parse_tsconfig.js.map +0 -1
  202. package/schematics/ng-add/index.js.map +0 -1
  203. package/schematics/ng-add/schema.js.map +0 -1
  204. package/styles/scss/components/tooltip/_tooltip.scss +0 -3
  205. package/styles/scss/components/tooltip/_tooltip.variables.scss +0 -5
@@ -1,63 +1,39 @@
1
- @mixin df-pagination-size($size, $border-radius, $font-size, $icon-left-offset, $transformX-offset) {
2
- .page-item {
3
- .page-link {
4
- height: $size;
5
- min-width: $size;
6
- border-radius: $border-radius;
7
- line-height: $size;
8
- font-size: $font-size;
9
- }
10
- .page-link[aria-label] {
11
- span:after {
12
- font-size: $font-size !important; // needs to override the styles of @extend %df-icon-style;
13
- @include ltr {
14
- left: $icon-left-offset !important; // needs to override the styles of @extend %df-icon-style;
15
- transform: translateX($transformX-offset);
16
- }
17
- @include rtl {
18
- right: $icon-left-offset !important;
19
- transform: translateX(-$transformX-offset);
20
- }
21
- line-height: $size !important;
22
- // needs to override the styles of @extend %df-icon-style;
23
- }
24
- }
25
- }
26
- .page-item + .page-item {
27
- @include ltr {
28
- margin-left: $df-pagination-between-list-item-space;
29
- }
30
- @include rtl {
31
- margin-right: $df-pagination-between-list-item-space;
32
- }
33
- }
34
- }
35
1
  @mixin replace-span-innertext-with-icon($iconContent) {
36
2
  .page-link[aria-label] {
37
- border-radius: $df-pagination-direction-border-radius;
38
- span {
39
- font-size: 0px; // use this trick because visibility: hidden is not working correctly on IE (it also hides the :after content)
40
- text-decoration: none;
41
- }
42
3
  span:after {
43
- color: $df-pagination-icon-color;
44
- @extend %df-icon-style;
45
- position: absolute;
46
4
  content: $iconContent;
47
5
  }
48
6
  }
49
7
  }
50
8
 
51
- .df-custom-pages-input {
52
- min-width: $df-custom-pages-input-minwidth;
53
- }
54
-
55
9
  .pagination {
56
- --df-pagination-focus-color: var(--df-pagination-color);
57
- --df-pagination-focus-bg: var(--df-pagination-bg);
58
- margin-bottom: $df-pagination-margin-bottom;
10
+ --#{$prefix}pagination-size: #{$df-pagination-size-base};
11
+ --#{$prefix}pagination-item-border-radius: #{$df-pagination-border-radius-base};
12
+ --#{$prefix}pagination-item-font-size: #{$font-size-base};
13
+ --#{$prefix}pagination-icon-offset-start: #{$df-pagination-icon-offset-start-base};
14
+ --#{$prefix}pagination-icon-translateX-offset: #{$df-pagination-icon-translateX-offset};
15
+ --#{$prefix}pagination-between-list-item-space: #{$df-pagination-between-list-item-space};
16
+ --#{$prefix}custom-pages-sm-vertical-alignment: #{$df-custom-pages-sm-vertical-alignment};
17
+ --#{$prefix}pagination-direction-border-radius: #{$df-pagination-direction-border-radius};
18
+ --#{$prefix}pagination-margin-bottom: #{$df-pagination-margin-bottom};
19
+ --#{$prefix}pagination-icon-color: #{$df-pagination-icon-color};
20
+
21
+ margin-bottom: var(--#{$prefix}pagination-margin-bottom);
59
22
  .page-item {
23
+ @if variable-exists($name: 'df-enableBranding2023') and $df-enableBranding2023 {
24
+ &.active > .page-link {
25
+ &:hover {
26
+ background-color: var(--#{$prefix}pagination-hover-bg);
27
+ color: var(--#{$prefix}pagination-hover-color);
28
+ }
29
+ }
30
+ }
60
31
  .page-link {
32
+ height: var(--#{$prefix}pagination-size);
33
+ min-width: var(--#{$prefix}pagination-size);
34
+ border-radius: var(--#{$prefix}pagination-item-border-radius);
35
+ line-height: var(--#{$prefix}pagination-size);
36
+ font-size: var(--#{$prefix}pagination-item-font-size);
61
37
  border: none;
62
38
  text-align: center;
63
39
  margin: 0 0.0625rem; // 0.0625rem = 1px with font-size=16
@@ -68,7 +44,7 @@
68
44
  &:focus {
69
45
  z-index: 2;
70
46
  &:hover {
71
- --df-pagination-focus-bg: var(--df-pagination-hover-bg);
47
+ --#{$prefix}pagination-focus-bg: var(--#{$prefix}pagination-hover-bg);
72
48
  }
73
49
  }
74
50
  z-index: initial; // overides z-index: 2 so that it is below the active page link
@@ -77,6 +53,27 @@
77
53
  cursor: $df-pagination-disabled-cursor;
78
54
  }
79
55
  .page-link[aria-label] {
56
+ border-radius: var(--#{$prefix}pagination-direction-border-radius) !important;
57
+ span {
58
+ font-size: 0px; // use this trick because visibility: hidden is not working correctly on IE (it also hides the :after content)
59
+ text-decoration: none;
60
+ &:after {
61
+ color: var(--#{$prefix}pagination-icon-color);
62
+ @extend %df-icon-style;
63
+ position: absolute;
64
+ font-size: var(--#{$prefix}pagination-item-font-size) !important; // needs to override the styles of @extend %df-icon-style;
65
+ @include ltr {
66
+ left: var(--#{$prefix}pagination-icon-offset-start) !important; // needs to override the styles of @extend %df-icon-style;
67
+ transform: translateX(var(--#{$prefix}pagination-icon-translateX-offset));
68
+ }
69
+ @include rtl {
70
+ right: var(--#{$prefix}pagination-icon-offset-start) !important;
71
+ transform: translateX(calc(-1 * var(--#{$prefix}pagination-icon-translateX-offset)));
72
+ }
73
+ line-height: var(--#{$prefix}pagination-size) !important;
74
+ // needs to override the styles of @extend %df-icon-style;
75
+ }
76
+ }
80
77
  &:hover {
81
78
  span:after {
82
79
  text-decoration: underline;
@@ -90,8 +87,8 @@
90
87
  .page-item.disabled .page-link span:after {
91
88
  color: $pagination-disabled-color !important;
92
89
  }
93
- // TODO: First Part When icons customization feature will be added to ngbootstrap, use it and remove following css
94
- // Link to ngbootsrap issue : https://github.com/ng-bootstrap/ng-bootstrap/issues/899
90
+ // TODO: First Part When icons customization feature will be added to ng-bootstrap, use it and remove following css
91
+ // Link to ng-bootsrap issue : https://github.com/ng-bootstrap/ng-bootstrap/issues/899
95
92
  // css style to modify the arrow texts with DF icons
96
93
  // first case: boundaryLinks = false
97
94
  li.page-item:nth-of-type(1) {
@@ -110,45 +107,34 @@
110
107
  @include replace-span-innertext-with-icon($df-pagination-previous-icon-code);
111
108
  }
112
109
  }
113
- // css style to handle the different sizes of pagination (sm, lg, ...)
114
- @include df-pagination-size(
115
- $df-pagination-size-base,
116
- $df-pagination-border-radius-base,
117
- $font-size-base,
118
- $df-pagination-icon-left-offset-base,
119
- $df-pagination-icon-translateX-offset
120
- );
121
- &.pagination-lg {
122
- @include df-pagination-size(
123
- $df-pagination-size-lg,
124
- $df-pagination-border-radius-lg,
125
- $font-size-lg,
126
- $df-pagination-icon-left-offset-lg,
127
- $df-pagination-icon-translateX-offset
128
- );
129
- .df-custom-pages-input {
130
- min-width: $df-custom-pages-input-minwidth-lg;
110
+ .page-item + .page-item {
111
+ @include ltr {
112
+ margin-left: var(--#{$prefix}pagination-between-list-item-space);
113
+ }
114
+ @include rtl {
115
+ margin-right: var(--#{$prefix}pagination-between-list-item-space);
131
116
  }
132
117
  }
118
+ &.pagination-lg {
119
+ --#{$prefix}pagination-size: #{$df-pagination-size-lg};
120
+ --#{$prefix}pagination-item-border-radius: #{$df-pagination-border-radius-lg};
121
+ --#{$prefix}pagination-item-font-size: #{$font-size-lg};
122
+ --#{$prefix}pagination-icon-offset-start: #{$df-pagination-icon-offset-start-lg};
123
+ --#{$prefix}custom-pages-input-minwidth: #{$df-custom-pages-input-minwidth-lg};
124
+ }
133
125
 
134
126
  &.pagination-sm {
135
- @include df-pagination-size(
136
- $df-pagination-size-sm,
137
- $df-pagination-border-radius-sm,
138
- $font-size-sm,
139
- $df-pagination-icon-left-offset-sm,
140
- $df-pagination-icon-translateX-offset
141
- );
142
-
143
- .df-custom-pages-input {
144
- min-width: $df-custom-pages-input-minwidth-sm;
145
- }
127
+ --#{$prefix}pagination-size: #{$df-pagination-size-sm};
128
+ --#{$prefix}pagination-item-border-radius: #{$df-pagination-border-radius-sm};
129
+ --#{$prefix}pagination-item-font-size: #{$font-size-sm};
130
+ --#{$prefix}pagination-icon-offset-start: #{$df-pagination-icon-offset-start-sm};
131
+ --#{$prefix}custom-pages-input-minwidth: #{$df-custom-pages-input-minwidth-sm};
146
132
  }
147
133
  }
148
134
 
149
135
  .df-custom-pages {
150
136
  .pagination-sm {
151
- align-items: $df-custom-pages-sm-vertical-alignment;
137
+ align-items: var(--#{$prefix}custom-pages-sm-vertical-alignment);
152
138
  .page-item {
153
139
  height: fit-content;
154
140
  height: -moz-max-content;
@@ -6,22 +6,19 @@ $df-pagination-border-radius-base: 0.175rem !default;
6
6
  $df-pagination-border-radius-sm: 0.15rem !default;
7
7
  $df-pagination-border-radius-lg: 0.2rem !default;
8
8
 
9
- $df-pagination-icon-left-offset-base: 50% !default;
10
- $df-pagination-icon-left-offset-lg: $df-pagination-icon-left-offset-base !default;
11
- $df-pagination-icon-left-offset-sm: $df-pagination-icon-left-offset-base !default;
9
+ $df-pagination-icon-offset-start-base: 50% !default;
10
+ $df-pagination-icon-offset-start-lg: $df-pagination-icon-offset-start-base !default;
11
+ $df-pagination-icon-offset-start-sm: $df-pagination-icon-offset-start-base !default;
12
12
  $df-pagination-icon-color: $df-font-icon-color !default;
13
- $df-pagination-icon-translateX-offset: -$df-pagination-icon-left-offset-base !default;
13
+ $df-pagination-icon-translateX-offset: -$df-pagination-icon-offset-start-base !default;
14
14
 
15
15
  $df-pagination-first-icon-code: '\ef22' !default; // .icon-df-first-item
16
16
  $df-pagination-previous-icon-code: '\ea32' !default; // .icon-chevron-left
17
17
  $df-pagination-next-icon-code: '\ea33' !default; // .icon-chevron-right
18
18
  $df-pagination-last-icon-code: '\ef23' !default; // .icon-df-last-item
19
19
 
20
- $df-pagination-disabled-cursor: $df-disabled-cursor !default;
20
+ $df-pagination-disabled-cursor: var(--#{$prefix}disabled-cursor) !default;
21
21
  $df-pagination-direction-border-radius: 50% !default;
22
22
  $df-pagination-between-list-item-space: 0.2rem !default;
23
23
  $df-pagination-margin-bottom: 0px !default; // reset the ul margin.
24
- $df-custom-pages-input-minwidth-sm: 32px !default;
25
- $df-custom-pages-input-minwidth: 40px !default;
26
- $df-custom-pages-input-minwidth-lg: 48px !default;
27
24
  $df-custom-pages-sm-vertical-alignment: center !default;
@@ -4,6 +4,9 @@
4
4
  color: var(--#{$prefix}pagination-active-color);
5
5
  @include gradient-bg(var(--#{$prefix}pagination-active-bg));
6
6
  border-color: var(--#{$prefix}pagination-active-border-color);
7
+ &:hover {
8
+ background-color: var(--#{$prefix}pagination-hover-bg);
9
+ }
7
10
  }
8
11
  .disabled > .page-link {
9
12
  color: var(--#{$prefix}pagination-disabled-color);
@@ -2,12 +2,9 @@
2
2
  @if $enable-shadows == false {
3
3
  box-shadow: var(--#{$prefix}popover-box-shadow);
4
4
  }
5
- padding: $df-popover-padding;
6
- @include media-breakpoint-up(xs) {
7
- max-width: $df-popover-max-width-mobile;
8
- }
9
- @include media-breakpoint-up(sm) {
10
- max-width: $df-popover-max-width;
5
+ padding: var(--#{$prefix}popover-padding);
6
+ @include media-breakpoint-down(sm) {
7
+ --#{$prefix}popover-max-width: #{$df-popover-max-width-mobile};
11
8
  }
12
9
 
13
10
  &.bs-popover-top:not(.bs-popover-top-left):not(.bs-popover-top-right) .arrow,
@@ -15,43 +12,33 @@
15
12
  transform: translateX(-50%);
16
13
  }
17
14
 
18
- &.bs-popover-left:not(.bs-popover-left-top):not(.bs-popover-left-bottom) .arrow,
19
- &.bs-popover-right:not(.bs-popover-right-top):not(.bs-popover-right-bottom) .arrow {
15
+ &.bs-popover-start:not(.bs-popover-start-top):not(.bs-popover-start-bottom) .arrow,
16
+ &.bs-popover-end:not(.bs-popover-end-top):not(.bs-popover-end-bottom) .arrow {
20
17
  transform: translateY(-50%);
21
18
  }
22
19
 
23
20
  .popover-header {
24
- margin: $df-popover-header-default-margin;
25
- font-size: $h3-font-size;
26
- line-height: $df-popover-header-line-height;
21
+ margin: var(--#{$prefix}popover-header-margin);
22
+ font-size: var(--#{$prefix}popover-header-font-size);
23
+ line-height: var(--#{$prefix}popover-header-line-height);
27
24
  }
28
25
 
29
26
  .popover-body {
30
- margin: $df-popover-body-default-margin;
31
- font-size: $font-size-base;
27
+ margin: var(--#{$prefix}popover-body-margin);
28
+ font-size: var(--#{$prefix}popover-body-font-size);
32
29
  }
33
30
  &.popover-sm {
34
- padding: $df-popover-sm-padding;
35
- .popover-header {
36
- margin: $df-popover-header-sm-margin;
37
- font-size: $h4-font-size;
38
- }
39
-
40
- .popover-body {
41
- margin: $df-popover-body-sm-margin;
42
- font-size: $font-size-sm;
43
- }
31
+ --#{$prefix}popover-padding: #{$df-popover-sm-padding};
32
+ --#{$prefix}popover-header-margin: #{$df-popover-header-sm-margin};
33
+ --#{$prefix}popover-header-font-size: #{$h4-font-size};
34
+ --#{$prefix}popover-body-font-size: #{$font-size-sm};
35
+ --#{$prefix}popover-body-margin: #{$df-popover-body-sm-margin};
44
36
  }
45
37
  &.popover-lg {
46
- padding: $df-popover-lg-padding;
47
- .popover-header {
48
- margin: $df-popover-header-lg-margin;
49
- font-size: $h2-font-size;
50
- }
51
-
52
- .popover-body {
53
- margin: $df-popover-body-lg-margin;
54
- font-size: $font-size-lg;
55
- }
38
+ --#{$prefix}popover-padding: #{$df-popover-lg-padding};
39
+ --#{$prefix}popover-header-margin: #{$df-popover-header-lg-margin};
40
+ --#{$prefix}popover-header-font-size: #{$h2-font-size};
41
+ --#{$prefix}popover-body-font-size: #{$font-size-lg};
42
+ --#{$prefix}popover-body-margin: #{$df-popover-body-lg-margin};
56
43
  }
57
44
  }
@@ -1,24 +1,42 @@
1
1
  @import 'popover.mixin';
2
2
 
3
3
  .popover {
4
- @include popover-mixin;
4
+ --#{$prefix}popover-margin: #{$df-popover-margin};
5
+ --#{$prefix}popover-padding: #{$df-popover-padding};
6
+ --#{$prefix}popover-header-line-height: #{$df-popover-header-line-height};
7
+ --#{$prefix}popover-header-margin: #{$df-popover-header-default-margin};
8
+ --#{$prefix}popover-body-margin: #{$df-popover-body-default-margin};
9
+ --#{$prefix}popover-header-font-size: #{$h3-font-size};
10
+ --#{$prefix}popover-body-font-size: #{$font-size-base};
11
+
12
+ @include popover-mixin();
5
13
  }
6
14
 
15
+ // BS override
7
16
  .bs-popover-top {
8
- margin-bottom: $popover-arrow-height + $df-popover-margin;
17
+ > .popover-arrow {
18
+ bottom: calc((var(--#{$prefix}popover-arrow-height) * -1));
19
+ }
9
20
  }
10
21
 
11
- .bs-popover-right {
12
- margin-left: $popover-arrow-height + $df-popover-margin;
22
+ .bs-popover-end {
23
+ > .popover-arrow {
24
+ left: calc((var(--#{$prefix}popover-arrow-height) * -1));
25
+ }
13
26
  }
14
27
 
15
28
  .bs-popover-bottom {
16
- margin-top: $popover-arrow-height + $df-popover-margin;
29
+ > .popover-arrow {
30
+ top: calc((var(--#{$prefix}popover-arrow-height) * -1));
31
+ }
17
32
  }
18
33
 
19
- .bs-popover-left {
20
- margin-right: $popover-arrow-height + $df-popover-margin;
34
+ .bs-popover-start {
35
+ > .popover-arrow {
36
+ right: calc((var(--#{$prefix}popover-arrow-height) * -1));
37
+ }
21
38
  }
39
+ // End of override
22
40
 
23
41
  .popover-header {
24
42
  border-bottom: none;
@@ -1,144 +1,172 @@
1
1
  @import 'popover.mixin';
2
2
 
3
+ // TODO update this file with the new file from bootstrap
4
+ // Ref file is popover.scss in BS folder.
5
+ // Attention I backport the fix from the override in popover.scss in this file too
3
6
  #{$df-css-namespace-selector} {
4
7
  &.popover {
5
8
  @include popover-mixin();
6
-
7
- position: absolute;
8
- top: 0;
9
- left: 0;
10
- z-index: $zindex-popover;
9
+ // scss-docs-start popover-css-vars
10
+ --#{$prefix}popover-zindex: #{$zindex-popover};
11
+ --#{$prefix}popover-max-width: #{$popover-max-width};
12
+ @include rfs($popover-font-size, --#{$prefix}popover-font-size);
13
+ --#{$prefix}popover-bg: #{$popover-bg};
14
+ --#{$prefix}popover-border-width: #{$popover-border-width};
15
+ --#{$prefix}popover-border-color: #{$popover-border-color};
16
+ --#{$prefix}popover-border-radius: #{$popover-border-radius};
17
+ --#{$prefix}popover-inner-border-radius: #{$popover-inner-border-radius};
18
+ --#{$prefix}popover-box-shadow: #{$popover-box-shadow};
19
+ --#{$prefix}popover-header-padding-x: #{$popover-header-padding-x};
20
+ --#{$prefix}popover-header-padding-y: #{$popover-header-padding-y};
21
+ @include rfs($popover-header-font-size, --#{$prefix}popover-header-font-size);
22
+ --#{$prefix}popover-header-color: #{$popover-header-color};
23
+ --#{$prefix}popover-header-bg: #{$popover-header-bg};
24
+ --#{$prefix}popover-body-padding-x: #{$popover-body-padding-x};
25
+ --#{$prefix}popover-body-padding-y: #{$popover-body-padding-y};
26
+ --#{$prefix}popover-body-color: #{$popover-body-color};
27
+ --#{$prefix}popover-arrow-width: #{$popover-arrow-width};
28
+ --#{$prefix}popover-arrow-height: #{$popover-arrow-height};
29
+ --#{$prefix}popover-arrow-border: var(--#{$prefix}popover-border-color);
30
+ // scss-docs-end popover-css-vars
31
+
32
+ z-index: var(--#{$prefix}popover-zindex);
11
33
  display: block;
34
+ max-width: var(--#{$prefix}popover-max-width);
12
35
  // Our parent element can be arbitrary since tooltips are by default inserted as a sibling of their target element.
13
36
  // So reset our font and text properties to avoid inheriting weird values.
14
37
  @include reset-text();
15
- @include font-size($popover-font-size);
38
+ @include font-size(var(--#{$prefix}popover-font-size));
16
39
  // Allow breaking very long words so they don't overflow the popover's bounds
17
40
  word-wrap: break-word;
18
- background-color: $popover-bg;
41
+ background-color: var(--#{$prefix}popover-bg);
19
42
  background-clip: padding-box;
20
- border: $popover-border-width solid $popover-border-color;
21
- @include border-radius($popover-border-radius);
22
-
23
- @if $enable-shadows {
24
- @include box-shadow(var(--#{$prefix}popover-box-shadow));
25
- } @else {
26
- box-shadow: var(--#{$prefix}popover-box-shadow);
27
- }
28
-
29
- .popover-arrow {
30
- position: absolute;
43
+ border: var(--#{$prefix}popover-border-width) solid var(--#{$prefix}popover-border-color);
44
+ @include border-radius(var(--#{$prefix}popover-border-radius));
45
+ @include box-shadow(var(--#{$prefix}popover-box-shadow));
46
+
47
+ &.popover-arrow {
31
48
  display: block;
32
- width: $popover-arrow-width;
33
- height: $popover-arrow-height;
34
-
49
+ width: var(--#{$prefix}popover-arrow-width);
50
+ height: var(--#{$prefix}popover-arrow-height);
51
+
35
52
  &::before,
36
53
  &::after {
37
54
  position: absolute;
38
55
  display: block;
39
- content: '';
56
+ content: "";
40
57
  border-color: transparent;
41
58
  border-style: solid;
59
+ border-width: 0;
42
60
  }
43
61
  }
44
62
  }
45
-
63
+
46
64
  &.bs-popover-top {
47
- margin-bottom: $popover-arrow-height + $df-popover-margin;
48
-
49
65
  > .popover-arrow {
50
- bottom: subtract(-$popover-arrow-height, $popover-border-width);
51
-
66
+ bottom: calc((var(--#{$prefix}popover-arrow-height) * -1)); // stylelint-disable-line function-disallowed-list
67
+
68
+ &::before,
69
+ &::after {
70
+ border-width: var(--#{$prefix}popover-arrow-height) calc(var(--#{$prefix}popover-arrow-width) * .5) 0; // stylelint-disable-line function-disallowed-list
71
+ }
72
+
52
73
  &::before {
53
74
  bottom: 0;
54
- border-width: $popover-arrow-height ($popover-arrow-width * .5) 0;
55
- border-top-color: $popover-arrow-outer-color;
75
+ border-top-color: var(--#{$prefix}popover-arrow-border);
56
76
  }
57
77
 
58
78
  &::after {
59
- bottom: $popover-border-width;
60
- border-width: $popover-arrow-height ($popover-arrow-width * .5) 0;
61
- border-top-color: $popover-arrow-color;
79
+ bottom: var(--#{$prefix}popover-border-width);
80
+ border-top-color: var(--#{$prefix}popover-bg);
62
81
  }
63
82
  }
64
83
  }
65
-
66
- &.bs-popover-right {
67
- margin-left: $popover-arrow-height + $df-popover-margin;
68
-
84
+
85
+ /* rtl:begin:ignore */
86
+ &.bs-popover-end {
69
87
  > .popover-arrow {
70
- left: subtract(-$popover-arrow-height, $popover-border-width);
71
- width: $popover-arrow-height;
72
- height: $popover-arrow-width;
73
-
88
+ left: calc((var(--#{$prefix}popover-arrow-height) * -1)); // stylelint-disable-line function-disallowed-list
89
+ width: var(--#{$prefix}popover-arrow-height);
90
+ height: var(--#{$prefix}popover-arrow-width);
91
+
92
+ &::before,
93
+ &::after {
94
+ border-width: calc(var(--#{$prefix}popover-arrow-width) * .5) var(--#{$prefix}popover-arrow-height) calc(var(--#{$prefix}popover-arrow-width) * .5) 0; // stylelint-disable-line function-disallowed-list
95
+ }
96
+
74
97
  &::before {
75
98
  left: 0;
76
- border-width: ($popover-arrow-width * .5) $popover-arrow-height ($popover-arrow-width * .5) 0;
77
- border-right-color: $popover-arrow-outer-color;
99
+ border-right-color: var(--#{$prefix}popover-arrow-border);
78
100
  }
79
101
 
80
102
  &::after {
81
- left: $popover-border-width;
82
- border-width: ($popover-arrow-width * .5) $popover-arrow-height ($popover-arrow-width * .5) 0;
83
- border-right-color: $popover-arrow-color;
103
+ left: var(--#{$prefix}popover-border-width);
104
+ border-right-color: var(--#{$prefix}popover-bg);
84
105
  }
85
106
  }
86
107
  }
87
-
108
+
109
+ /* rtl:end:ignore */
110
+
88
111
  &.bs-popover-bottom {
89
- margin-top: $popover-arrow-height + $df-popover-margin;
90
-
91
112
  > .popover-arrow {
92
- top: subtract(-$popover-arrow-height, $popover-border-width);
93
-
113
+ top: calc((var(--#{$prefix}popover-arrow-height) * -1)); // stylelint-disable-line function-disallowed-list
114
+
115
+ &::before,
116
+ &::after {
117
+ border-width: 0 calc(var(--#{$prefix}popover-arrow-width) * .5) var(--#{$prefix}popover-arrow-height); // stylelint-disable-line function-disallowed-list
118
+ }
119
+
94
120
  &::before {
95
121
  top: 0;
96
- border-width: 0 ($popover-arrow-width * .5) $popover-arrow-height ($popover-arrow-width * .5);
97
- border-bottom-color: $popover-arrow-outer-color;
122
+ border-bottom-color: var(--#{$prefix}popover-arrow-border);
98
123
  }
99
124
 
100
125
  &::after {
101
- top: $popover-border-width;
102
- border-width: 0 ($popover-arrow-width * .5) $popover-arrow-height ($popover-arrow-width * .5);
103
- border-bottom-color: $popover-arrow-color;
126
+ top: var(--#{$prefix}popover-border-width);
127
+ border-bottom-color: var(--#{$prefix}popover-bg);
104
128
  }
105
129
  }
106
-
130
+
107
131
  // This will remove the popover-header's border just below the arrow
108
132
  .popover-header::before {
109
133
  position: absolute;
110
134
  top: 0;
111
135
  left: 50%;
112
136
  display: block;
113
- width: $popover-arrow-width;
114
- margin-left: -$popover-arrow-width * .5;
115
- content: '';
116
- border-bottom: $popover-border-width solid $popover-header-bg;
137
+ width: var(--#{$prefix}popover-arrow-width);
138
+ margin-left: calc(var(--#{$prefix}popover-arrow-width) * -.5); // stylelint-disable-line function-disallowed-list
139
+ content: "";
140
+ border-bottom: var(--#{$prefix}popover-border-width) solid var(--#{$prefix}popover-header-bg);
117
141
  }
118
142
  }
119
-
120
- &.bs-popover-left {
121
- margin-right: $popover-arrow-height + $df-popover-margin;
122
-
143
+
144
+ /* rtl:begin:ignore */
145
+ &.bs-popover-start {
123
146
  > .popover-arrow {
124
- right: subtract(-$popover-arrow-height, $popover-border-width);
125
- width: $popover-arrow-height;
126
- height: $popover-arrow-width;
127
-
147
+ right: calc((var(--#{$prefix}popover-arrow-height) * -1)); // stylelint-disable-line function-disallowed-list
148
+ width: var(--#{$prefix}popover-arrow-height);
149
+ height: var(--#{$prefix}popover-arrow-width);
150
+
151
+ &::before,
152
+ &::after {
153
+ border-width: calc(var(--#{$prefix}popover-arrow-width) * .5) 0 calc(var(--#{$prefix}popover-arrow-width) * .5) var(--#{$prefix}popover-arrow-height); // stylelint-disable-line function-disallowed-list
154
+ }
155
+
128
156
  &::before {
129
157
  right: 0;
130
- border-width: ($popover-arrow-width * .5) 0 ($popover-arrow-width * .5) $popover-arrow-height;
131
- border-left-color: $popover-arrow-outer-color;
158
+ border-left-color: var(--#{$prefix}popover-arrow-border);
132
159
  }
133
160
 
134
161
  &::after {
135
- right: $popover-border-width;
136
- border-width: ($popover-arrow-width * .5) 0 ($popover-arrow-width * .5) $popover-arrow-height;
137
- border-left-color: $popover-arrow-color;
162
+ right: var(--#{$prefix}popover-border-width);
163
+ border-left-color: var(--#{$prefix}popover-bg);
138
164
  }
139
165
  }
140
166
  }
141
-
167
+
168
+ /* rtl:end:ignore */
169
+
142
170
  &.bs-popover-auto {
143
171
  &[data-popper-placement^="top"] {
144
172
  @extend .bs-popover-top;
@@ -153,4 +181,25 @@
153
181
  @extend .bs-popover-start;
154
182
  }
155
183
  }
184
+
185
+ // Offset the popover to account for the popover arrow
186
+ &.popover-header {
187
+ padding: var(--#{$prefix}popover-header-padding-y) var(--#{$prefix}popover-header-padding-x);
188
+ margin-bottom: 0; // Reset the default from Reboot
189
+ @include font-size(var(--#{$prefix}popover-header-font-size));
190
+ color: var(--#{$prefix}popover-header-color);
191
+ background-color: var(--#{$prefix}popover-header-bg);
192
+ border-bottom: var(--#{$prefix}popover-border-width) solid var(--#{$prefix}popover-border-color);
193
+ @include border-top-radius(var(--#{$prefix}popover-inner-border-radius));
194
+
195
+ &:empty {
196
+ display: none;
197
+ }
198
+ }
199
+
200
+ &.popover-body {
201
+ padding: var(--#{$prefix}popover-body-padding-y) var(--#{$prefix}popover-body-padding-x);
202
+ color: var(--#{$prefix}popover-body-color);
203
+ }
204
+
156
205
  }