@faststore/ui 3.99.1 → 4.0.0-dev.3

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 (136) hide show
  1. package/dist/cjs/index.js +1 -12
  2. package/dist/{cjs/components → components}/atoms/Incentive/Incentive.d.ts +1 -2
  3. package/dist/components/atoms/Incentive/Incentive.d.ts.map +1 -0
  4. package/dist/components/atoms/Incentive/index.d.ts.map +1 -0
  5. package/dist/{esm/components → components}/organisms/Tiles/Tile.d.ts +1 -2
  6. package/dist/components/organisms/Tiles/Tile.d.ts.map +1 -0
  7. package/dist/{cjs/components → components}/organisms/Tiles/Tiles.d.ts +1 -2
  8. package/dist/components/organisms/Tiles/Tiles.d.ts.map +1 -0
  9. package/dist/components/organisms/Tiles/index.d.ts.map +1 -0
  10. package/dist/es/index.mjs +46 -0
  11. package/dist/index.d.ts.map +1 -0
  12. package/dist/{cjs/typings → typings}/PolymorphicGenerics.d.ts +1 -7
  13. package/dist/typings/PolymorphicGenerics.d.ts.map +1 -0
  14. package/dist/typings/index.d.ts.map +1 -0
  15. package/package.json +28 -29
  16. package/src/components/atoms/Button/styles.scss +4 -2
  17. package/src/components/atoms/Checkbox/styles.scss +3 -1
  18. package/src/components/atoms/Input/styles.scss +4 -2
  19. package/src/components/atoms/Link/styles.scss +4 -2
  20. package/src/components/atoms/Radio/styles.scss +3 -1
  21. package/src/components/atoms/Select/styles.scss +7 -5
  22. package/src/components/atoms/Textarea/styles.scss +3 -1
  23. package/src/components/molecules/Accordion/styles.scss +3 -1
  24. package/src/components/molecules/Breadcrumb/styles.scss +8 -5
  25. package/src/components/molecules/BuyButton/styles.scss +3 -2
  26. package/src/components/molecules/Carousel/styles.scss +22 -16
  27. package/src/components/molecules/CartItem/styles.scss +3 -1
  28. package/src/components/molecules/FileUploadCard/styles.scss +14 -14
  29. package/src/components/molecules/Gift/styles.scss +5 -3
  30. package/src/components/molecules/InputField/styles.scss +7 -3
  31. package/src/components/molecules/Modal/styles.scss +3 -1
  32. package/src/components/molecules/NavbarLinks/styles.scss +9 -6
  33. package/src/components/molecules/PickupPointCard/styles.scss +4 -2
  34. package/src/components/molecules/Popover/styles.scss +1 -1
  35. package/src/components/molecules/ProductCard/styles.scss +7 -5
  36. package/src/components/molecules/ProductTile/styles.scss +6 -4
  37. package/src/components/molecules/ProductTitle/styles.scss +8 -6
  38. package/src/components/molecules/SearchDropdown/styles.scss +4 -2
  39. package/src/components/molecules/SearchInputField/styles.scss +8 -10
  40. package/src/components/molecules/SearchProducts/styles.scss +5 -3
  41. package/src/components/molecules/SkuSelector/styles.scss +9 -9
  42. package/src/components/molecules/TextareaField/styles.scss +5 -3
  43. package/src/components/molecules/Toast/styles.scss +5 -3
  44. package/src/components/molecules/Toggle/styles.scss +3 -1
  45. package/src/components/organisms/BannerNewsletter/styles.scss +3 -1
  46. package/src/components/organisms/BannerText/styles.scss +6 -3
  47. package/src/components/organisms/EmptyState/styles.scss +4 -2
  48. package/src/components/organisms/Filter/styles.scss +6 -4
  49. package/src/components/organisms/FilterSkeleton/styles.scss +3 -1
  50. package/src/components/organisms/Footer/styles.scss +23 -21
  51. package/src/components/organisms/Hero/styles.scss +19 -16
  52. package/src/components/organisms/ImageGallery/styles.scss +26 -24
  53. package/src/components/organisms/Incentives/styles.scss +5 -3
  54. package/src/components/organisms/LocalizationSelector/styles.scss +90 -0
  55. package/src/components/organisms/Navbar/styles.scss +47 -29
  56. package/src/components/organisms/NavbarSlider/styles.scss +10 -2
  57. package/src/components/organisms/Newsletter/styles.scss +13 -12
  58. package/src/components/organisms/PaymentMethods/styles.scss +6 -4
  59. package/src/components/organisms/ProductComparison/styles.scss +7 -5
  60. package/src/components/organisms/ProductDetails/styles.scss +27 -25
  61. package/src/components/organisms/ProductGallery/styles.scss +20 -18
  62. package/src/components/organisms/ProductGrid/styles.scss +5 -3
  63. package/src/components/organisms/ProductShelf/styles.scss +5 -3
  64. package/src/components/organisms/QuickOrderDrawer/styles.scss +3 -13
  65. package/src/components/organisms/RegionPopover/styles.scss +3 -1
  66. package/src/components/organisms/SKUMatrix/styles.scss +22 -23
  67. package/src/components/organisms/SearchInput/styles.scss +3 -1
  68. package/src/components/organisms/SlideOver/styles.scss +46 -10
  69. package/src/components/organisms/Tiles/styles.scss +6 -4
  70. package/src/styles/base/layout.scss +6 -4
  71. package/src/styles/base/reset.scss +4 -2
  72. package/src/styles/base/tokens.scss +11 -9
  73. package/src/styles/base/typography.scss +2 -1
  74. package/src/styles/base/utilities.scss +32 -18
  75. package/src/styles/base.scss +4 -4
  76. package/src/styles/components.scss +1 -0
  77. package/src/styles/global.scss +1 -1
  78. package/dist/cjs/components/atoms/Incentive/Incentive.d.ts.map +0 -1
  79. package/dist/cjs/components/atoms/Incentive/Incentive.js +0 -9
  80. package/dist/cjs/components/atoms/Incentive/Incentive.js.map +0 -1
  81. package/dist/cjs/components/atoms/Incentive/index.d.ts.map +0 -1
  82. package/dist/cjs/components/atoms/Incentive/index.js +0 -9
  83. package/dist/cjs/components/atoms/Incentive/index.js.map +0 -1
  84. package/dist/cjs/components/organisms/Tiles/Tile.d.ts +0 -12
  85. package/dist/cjs/components/organisms/Tiles/Tile.d.ts.map +0 -1
  86. package/dist/cjs/components/organisms/Tiles/Tile.js +0 -9
  87. package/dist/cjs/components/organisms/Tiles/Tile.js.map +0 -1
  88. package/dist/cjs/components/organisms/Tiles/Tiles.d.ts.map +0 -1
  89. package/dist/cjs/components/organisms/Tiles/Tiles.js +0 -33
  90. package/dist/cjs/components/organisms/Tiles/Tiles.js.map +0 -1
  91. package/dist/cjs/components/organisms/Tiles/index.d.ts.map +0 -1
  92. package/dist/cjs/components/organisms/Tiles/index.js +0 -11
  93. package/dist/cjs/components/organisms/Tiles/index.js.map +0 -1
  94. package/dist/cjs/index.d.ts.map +0 -1
  95. package/dist/cjs/index.js.map +0 -1
  96. package/dist/cjs/typings/PolymorphicGenerics.d.ts.map +0 -1
  97. package/dist/cjs/typings/PolymorphicGenerics.js +0 -9
  98. package/dist/cjs/typings/PolymorphicGenerics.js.map +0 -1
  99. package/dist/cjs/typings/index.d.ts.map +0 -1
  100. package/dist/cjs/typings/index.js +0 -3
  101. package/dist/cjs/typings/index.js.map +0 -1
  102. package/dist/esm/components/atoms/Incentive/Incentive.d.ts +0 -12
  103. package/dist/esm/components/atoms/Incentive/Incentive.d.ts.map +0 -1
  104. package/dist/esm/components/atoms/Incentive/Incentive.js +0 -6
  105. package/dist/esm/components/atoms/Incentive/Incentive.js.map +0 -1
  106. package/dist/esm/components/atoms/Incentive/index.d.ts +0 -3
  107. package/dist/esm/components/atoms/Incentive/index.d.ts.map +0 -1
  108. package/dist/esm/components/atoms/Incentive/index.js +0 -2
  109. package/dist/esm/components/atoms/Incentive/index.js.map +0 -1
  110. package/dist/esm/components/organisms/Tiles/Tile.d.ts.map +0 -1
  111. package/dist/esm/components/organisms/Tiles/Tile.js +0 -6
  112. package/dist/esm/components/organisms/Tiles/Tile.js.map +0 -1
  113. package/dist/esm/components/organisms/Tiles/Tiles.d.ts +0 -12
  114. package/dist/esm/components/organisms/Tiles/Tiles.d.ts.map +0 -1
  115. package/dist/esm/components/organisms/Tiles/Tiles.js +0 -30
  116. package/dist/esm/components/organisms/Tiles/Tiles.js.map +0 -1
  117. package/dist/esm/components/organisms/Tiles/index.d.ts +0 -5
  118. package/dist/esm/components/organisms/Tiles/index.d.ts.map +0 -1
  119. package/dist/esm/components/organisms/Tiles/index.js +0 -3
  120. package/dist/esm/components/organisms/Tiles/index.js.map +0 -1
  121. package/dist/esm/index.d.ts +0 -6
  122. package/dist/esm/index.d.ts.map +0 -1
  123. package/dist/esm/index.js +0 -5
  124. package/dist/esm/index.js.map +0 -1
  125. package/dist/esm/typings/PolymorphicGenerics.d.ts +0 -29
  126. package/dist/esm/typings/PolymorphicGenerics.d.ts.map +0 -1
  127. package/dist/esm/typings/PolymorphicGenerics.js +0 -8
  128. package/dist/esm/typings/PolymorphicGenerics.js.map +0 -1
  129. package/dist/esm/typings/index.d.ts +0 -2
  130. package/dist/esm/typings/index.d.ts.map +0 -1
  131. package/dist/esm/typings/index.js +0 -2
  132. package/dist/esm/typings/index.js.map +0 -1
  133. /package/dist/{cjs/components → components}/atoms/Incentive/index.d.ts +0 -0
  134. /package/dist/{cjs/components → components}/organisms/Tiles/index.d.ts +0 -0
  135. /package/dist/{cjs/index.d.ts → index.d.ts} +0 -0
  136. /package/dist/{cjs/typings → typings}/index.d.ts +0 -0
@@ -1,3 +1,5 @@
1
+ @use "../../../styles/base/utilities";
2
+
1
3
  [data-fs-filter] {
2
4
  // --------------------------------------------------------
3
5
  // Design Tokens for Filter
@@ -55,13 +57,13 @@
55
57
  font-size: var(--fs-filter-title-text-size);
56
58
  line-height: var(--fs-filter-accordion-button-line-height-notebook);
57
59
 
58
- @include media("<notebook") {
60
+ @include utilities.media("<notebook") {
59
61
  display: none;
60
62
  }
61
63
  }
62
64
 
63
65
  [data-fs-filter-accordion] {
64
- @include media(">=notebook") {
66
+ @include utilities.media(">=notebook") {
65
67
  border: var(--fs-filter-accordion-border-width-notebook) solid var(--fs-filter-accordion-border-color-notebook);
66
68
  border-radius: var(--fs-filter-accordion-border-radius-notebook);
67
69
  }
@@ -74,7 +76,7 @@
74
76
  font-weight: var(--fs-filter-accordion-button-text-weight);
75
77
  line-height: var(--fs-filter-accordion-button-line-height);
76
78
 
77
- @include media(">=notebook") {
79
+ @include utilities.media(">=notebook") {
78
80
  padding-right: var(--fs-filter-accordion-button-padding-right-notebook);
79
81
  padding-left: var(--fs-filter-accordion-button-padding-left-notebook);
80
82
  font-size: var(--fs-filter-accordion-button-text-size-notebook);
@@ -84,7 +86,7 @@
84
86
  }
85
87
 
86
88
  [data-fs-accordion-panel] {
87
- @include media(">=notebook") {
89
+ @include utilities.media(">=notebook") {
88
90
  padding-right: var(--fs-filter-accordion-item-panel-padding-right-notebook);
89
91
  padding-left: var(--fs-filter-accordion-item-panel-padding-left-notebook);
90
92
  }
@@ -1,3 +1,5 @@
1
+ @use "../../../styles/base/utilities";
2
+
1
3
  [data-fs-filter-skeleton] {
2
4
  // --------------------------------------------------------
3
5
  // Design Tokens for Filter Skeleton
@@ -24,7 +26,7 @@
24
26
 
25
27
  margin-top: var(--fs-filter-skeleton-margin-top);
26
28
 
27
- @include media("<notebook") { display: none; }
29
+ @include utilities.media("<notebook") { display: none; }
28
30
 
29
31
  [data-fs-filter-skeleton-text] {
30
32
  max-width: var(--fs-filter-skeleton-title-max-width);
@@ -1,3 +1,5 @@
1
+ @use "../../../styles/base/utilities";
2
+
1
3
  [data-fs-footer] {
2
4
  // --------------------------------------------------------
3
5
  // Design Tokens for Footer
@@ -31,7 +33,7 @@
31
33
  background-color: var(--fs-footer-bkg-color);
32
34
  }
33
35
 
34
- @include media("<notebook") {
36
+ @include utilities.media("<notebook") {
35
37
  padding-top: 0;
36
38
  }
37
39
 
@@ -42,7 +44,7 @@
42
44
  font-weight: var(--fs-footer-title-weight);
43
45
  line-height: var(--fs-footer-title-line-height);
44
46
 
45
- @include media("<notebook") {
47
+ @include utilities.media("<notebook") {
46
48
  text-align: center;
47
49
  }
48
50
  }
@@ -52,11 +54,11 @@
52
54
  position: relative;
53
55
  display: flex;
54
56
 
55
- @include media("<notebook") {
57
+ @include utilities.media("<notebook") {
56
58
  flex-direction: column;
57
59
  }
58
60
 
59
- @include media(">=notebook") {
61
+ @include utilities.media(">=notebook") {
60
62
  display: grid;
61
63
  grid-template-columns: repeat(12, 1fr);
62
64
  column-gap: var(--fs-footer-spacing-horizontal-notebook);
@@ -67,7 +69,7 @@
67
69
  content: "";
68
70
  border-top: var(--fs-footer-divisor-border-width) solid var(--fs-footer-divisor-border-color);
69
71
 
70
- @include media(">=notebook") {
72
+ @include utilities.media(">=notebook") {
71
73
  grid-column: span 12;
72
74
  }
73
75
  }
@@ -82,7 +84,7 @@
82
84
  }
83
85
 
84
86
  [data-fs-footer-navigation] {
85
- @include media(">=notebook") {
87
+ @include utilities.media(">=notebook") {
86
88
  row-gap: var(--fs-footer-spacing-vertical-notebook);
87
89
  padding-bottom: var(--fs-footer-spacing-vertical-notebook);
88
90
  }
@@ -91,7 +93,7 @@
91
93
  [data-fs-footer-info] {
92
94
  position: relative;
93
95
 
94
- @include media("<notebook") {
96
+ @include utilities.media("<notebook") {
95
97
  display: flex;
96
98
  align-items: center;
97
99
  justify-content: space-between;
@@ -102,7 +104,7 @@
102
104
  }
103
105
  }
104
106
 
105
- @include media(">=notebook") {
107
+ @include utilities.media(">=notebook") {
106
108
  row-gap: var(--fs-footer-spacing-vertical-notebook);
107
109
  padding-bottom: var(--fs-footer-spacing-vertical-notebook);
108
110
  }
@@ -110,7 +112,7 @@
110
112
 
111
113
  [data-fs-footer-social],
112
114
  [data-fs-payment-methods] {
113
- @include media(">=notebook") {
115
+ @include utilities.media(">=notebook") {
114
116
  grid-column: 11 / span 2;
115
117
  margin-inline-start: calc(-1 * var(--fs-spacing-3));
116
118
  }
@@ -120,7 +122,7 @@
120
122
  display: flex;
121
123
  flex-direction: column;
122
124
 
123
- @include media("<notebook") {
125
+ @include utilities.media("<notebook") {
124
126
  padding: var(--fs-footer-spacing-vertical-mobile) 0 var(--fs-spacing-3);
125
127
  }
126
128
 
@@ -128,7 +130,7 @@
128
130
  display: flex;
129
131
  justify-content: center;
130
132
 
131
- @include media(">=notebook") {
133
+ @include utilities.media(">=notebook") {
132
134
  justify-content: space-between;
133
135
  }
134
136
 
@@ -144,17 +146,17 @@
144
146
  }
145
147
 
146
148
  [data-fs-payment-methods] {
147
- @include media("<notebook") {
149
+ @include utilities.media("<notebook") {
148
150
  margin: var(--fs-footer-spacing-vertical-mobile) auto;
149
151
  }
150
152
 
151
- @include media(">=notebook") {
153
+ @include utilities.media(">=notebook") {
152
154
  order: 3;
153
155
  }
154
156
  }
155
157
 
156
158
  [data-fs-icon] {
157
- @include media(">=notebook") {
159
+ @include utilities.media(">=notebook") {
158
160
  grid-column: span 2;
159
161
  }
160
162
  }
@@ -164,7 +166,7 @@
164
166
  white-space: break-spaces;
165
167
  }
166
168
 
167
- @include media(">=notebook") {
169
+ @include utilities.media(">=notebook") {
168
170
  grid-column: span 6;
169
171
  }
170
172
  }
@@ -181,11 +183,11 @@
181
183
  padding-inline-start: 0;
182
184
  }
183
185
 
184
- @include media(">=notebook") {
186
+ @include utilities.media(">=notebook") {
185
187
  grid-column: span 9;
186
188
  }
187
189
 
188
- @include media(">=desktop") {
190
+ @include utilities.media(">=desktop") {
189
191
  grid-column: span 8;
190
192
  }
191
193
  }
@@ -195,27 +197,27 @@
195
197
  // --------------------------------------------------------
196
198
 
197
199
  &[data-fs-footer-incentives="true"] {
198
- @include media(">=notebook") {
200
+ @include utilities.media(">=notebook") {
199
201
  padding-top: 0;
200
202
  }
201
203
  }
202
204
 
203
205
  &:not([data-fs-footer-social="true"]) {
204
206
  [data-fs-footer-info]::before {
205
- @include media("<notebook") {
207
+ @include utilities.media("<notebook") {
206
208
  border-color: transparent;
207
209
  }
208
210
  }
209
211
 
210
212
  [data-fs-footer-links] {
211
- @include media(">=notebook") {
213
+ @include utilities.media(">=notebook") {
212
214
  grid-column: span 12;
213
215
  }
214
216
  }
215
217
  }
216
218
 
217
219
  &:not([data-fs-footer-payment-methods="true"]) [data-fs-footer-copyright] {
218
- @include media(">=notebook") {
220
+ @include utilities.media(">=notebook") {
219
221
  grid-column: span 10;
220
222
  }
221
223
  }
@@ -1,3 +1,5 @@
1
+ @use "../../../styles/base/utilities";
2
+
1
3
  [data-fs-hero] {
2
4
  // --------------------------------------------------------
3
5
  // Design Tokens for Hero Section
@@ -51,7 +53,7 @@
51
53
  flex-direction: column;
52
54
  width: 100%;
53
55
 
54
- @include media(">=tablet") {
56
+ @include utilities.media(">=tablet") {
55
57
  position: relative;
56
58
  flex-direction: row-reverse;
57
59
  justify-content: flex-end;
@@ -60,7 +62,7 @@
60
62
  [data-fs-hero-image] {
61
63
  border-radius: var(--fs-hero-image-border-radius);
62
64
 
63
- @include media(">=tablet") {
65
+ @include utilities.media(">=tablet") {
64
66
  position: absolute;
65
67
  right: 0;
66
68
  width: 50%;
@@ -85,7 +87,7 @@
85
87
  gap: var(--fs-spacing-3);
86
88
  justify-content: space-between;
87
89
 
88
- @include media(">=tablet") {
90
+ @include utilities.media(">=tablet") {
89
91
  gap: var(--fs-spacing-1);
90
92
  justify-content: flex-start;
91
93
  }
@@ -101,23 +103,24 @@
101
103
  font-size: var(--fs-hero-subtitle-size);
102
104
  line-height: var(--fs-hero-subtitle-line-height);
103
105
 
104
- @include media(">=tablet") {
106
+ @include utilities.media(">=tablet") {
105
107
  margin-top: var(--fs-hero-subtitle-margin-top-tablet);
106
108
  }
107
109
  }
108
110
 
109
111
  [data-fs-button] {
110
112
  margin-top: var(--fs-spacing-6);
113
+
111
114
  [data-fs-button-wrapper] {
112
- min-width: 11.25rem;
113
115
  justify-content: space-between;
116
+ min-width: 11.25rem;
114
117
  }
115
118
  }
116
119
 
117
120
  [data-fs-hero-icon] {
118
- color: var(--fs-hero-text-color);
119
- height: var(--fs-spacing-4);
120
121
  width: var(--fs-spacing-4);
122
+ height: var(--fs-spacing-4);
123
+ color: var(--fs-hero-text-color);
121
124
  }
122
125
 
123
126
  // --------------------------------------------------------
@@ -125,7 +128,7 @@
125
128
  // --------------------------------------------------------
126
129
 
127
130
  &[data-fs-hero-variant="primary"] {
128
- @include media(">=tablet") {
131
+ @include utilities.media(">=tablet") {
129
132
  min-height: var(--fs-hero-primary-image-height-desktop);
130
133
  }
131
134
 
@@ -134,7 +137,7 @@
134
137
  }
135
138
 
136
139
  [data-fs-hero-heading] {
137
- @include media(">=tablet") {
140
+ @include utilities.media(">=tablet") {
138
141
  display: flex;
139
142
  align-items: center;
140
143
  padding: var(--fs-spacing-9) 0;
@@ -142,19 +145,19 @@
142
145
  }
143
146
 
144
147
  [data-fs-button] {
145
- @include media(">=tablet") {
148
+ @include utilities.media(">=tablet") {
146
149
  margin-top: var(--fs-spacing-8);
147
150
  }
148
151
  }
149
152
 
150
153
  [data-fs-hero-image] {
151
- @include media("<tablet") {
154
+ @include utilities.media("<tablet") {
152
155
  height: var(--fs-hero-primary-image-height-mobile);
153
156
  }
154
157
  }
155
158
 
156
159
  [data-fs-hero-info] {
157
- @include media(">=tablet") {
160
+ @include utilities.media(">=tablet") {
158
161
  width: 46%;
159
162
  padding-right: var(--fs-spacing-9);
160
163
  }
@@ -162,7 +165,7 @@
162
165
  }
163
166
 
164
167
  &[data-fs-hero-variant="secondary"] {
165
- @include media(">=tablet") {
168
+ @include utilities.media(">=tablet") {
166
169
  min-height: var(--fs-hero-secondary-image-height-desktop);
167
170
  }
168
171
 
@@ -171,7 +174,7 @@
171
174
  }
172
175
 
173
176
  [data-fs-hero-info] {
174
- @include media(">=tablet") {
177
+ @include utilities.media(">=tablet") {
175
178
  width: 42%;
176
179
  }
177
180
  }
@@ -179,13 +182,13 @@
179
182
  [data-fs-hero-heading] {
180
183
  padding: var(--fs-spacing-4) 0 var(--fs-spacing-5);
181
184
 
182
- @include media(">=tablet") {
185
+ @include utilities.media(">=tablet") {
183
186
  padding: var(--fs-spacing-5) 0;
184
187
  }
185
188
  }
186
189
 
187
190
  [data-fs-hero-image] {
188
- @include media("<tablet") {
191
+ @include utilities.media("<tablet") {
189
192
  height: var(--fs-hero-secondary-image-height-mobile);
190
193
  }
191
194
  }
@@ -1,3 +1,5 @@
1
+ @use "../../../styles/base/utilities.scss";
2
+
1
3
  [data-fs-image-gallery] {
2
4
  // --------------------------------------------------------
3
5
  // Design Tokens for Image Gallery
@@ -53,7 +55,7 @@
53
55
  row-gap: var(--fs-image-gallery-gap-mobile);
54
56
  width: var(--fs-image-gallery-width);
55
57
 
56
- @include media(">=tablet") {
58
+ @include utilities.media(">=tablet") {
57
59
  left: 0;
58
60
  width: 100%;
59
61
 
@@ -63,7 +65,7 @@
63
65
  }
64
66
  }
65
67
 
66
- @include media(">=notebook") {
68
+ @include utilities.media(">=notebook") {
67
69
  >[data-fs-image] {
68
70
  height: var(--fs-image-gallery-current-height);
69
71
  }
@@ -78,9 +80,9 @@
78
80
  justify-content: center;
79
81
  max-height: var(--fs-image-gallery-selector-max-height);
80
82
 
81
- @include media("<notebook") { overflow: hidden; }
83
+ @include utilities.media("<notebook") { overflow: hidden; }
82
84
 
83
- @include media(">=notebook") {
85
+ @include utilities.media(">=notebook") {
84
86
  flex-direction: column;
85
87
  grid-row: 1;
86
88
  justify-content: space-between;
@@ -96,13 +98,13 @@
96
98
 
97
99
  &::-webkit-scrollbar { display: none; }
98
100
 
99
- @include media(">=notebook") {
101
+ @include utilities.media(">=notebook") {
100
102
  flex-direction: column;
101
103
  row-gap: var(--fs-image-gallery-selector-elements-gap-notebook);
102
- overflow-y: hidden;
103
104
  align-items: center;
104
105
  width: 100%;
105
106
  padding: var(--fs-image-gallery-selector-elements-padding-notebook);
107
+ overflow-y: hidden;
106
108
  }
107
109
  }
108
110
 
@@ -114,22 +116,23 @@
114
116
  padding: 0;
115
117
  overflow: hidden;
116
118
  background-color: transparent;
117
- border-radius: var(--fs-image-gallery-selector-thumbnail-border-radius);
118
119
  border: var(--fs-image-gallery-selector-thumbnail-border-width) solid transparent;
120
+ border-radius: var(--fs-image-gallery-selector-thumbnail-border-radius);
119
121
  transition: all var(--fs-image-gallery-transition-timing) var(--fs-image-gallery-transition-function);
122
+
120
123
  img {
124
+ max-width: inherit;
125
+ height: inherit;
121
126
  border-radius: var(--fs-image-gallery-selector-thumbnail-border-radius);
122
127
  object-fit: cover;
123
- height: inherit;
124
- max-width: inherit;
125
128
  }
129
+
126
130
  > span {
127
131
  width: 100%;
128
132
  height: 100%;
129
133
  }
130
134
  }
131
135
 
132
-
133
136
  &:hover:not([data-fs-image-gallery-selector-thumbnail="selected"]) [data-fs-button-wrapper] {
134
137
  border-color: var(--fs-image-gallery-selector-thumbnail-selected-border-color);
135
138
  }
@@ -145,10 +148,10 @@
145
148
  }
146
149
 
147
150
  &:focus-visible [data-fs-button-wrapper] {
148
- @include focus-ring;
151
+ @include utilities.focus-ring;
149
152
  }
150
153
 
151
- @include media(">=notebook") {
154
+ @include utilities.media(">=notebook") {
152
155
  width: var(--fs-image-gallery-selector-thumbnail-width-notebook);
153
156
  height: var(--fs-image-gallery-selector-thumbnail-height-notebook);
154
157
  }
@@ -156,22 +159,23 @@
156
159
 
157
160
  [data-fs-image-gallery-selector-control] {
158
161
  position: absolute;
162
+ z-index: 1;
159
163
  display: flex;
160
164
  align-items: center;
161
- z-index: 1;
162
165
 
163
166
  &::after {
164
- background: linear-gradient(90deg, var(--fs-image-gallery-selector-control-gradient-bkg-color) 55%, transparent);
165
- content: '';
166
- width: 100%;
167
- height: 100%;
168
167
  position: absolute;
169
168
  left: 0;
170
169
  z-index: -1;
171
- @include media(">=notebook") { background: linear-gradient(180deg, var(--fs-image-gallery-selector-control-gradient-bkg-color) 55%, transparent); }
170
+ width: 100%;
171
+ height: 100%;
172
+ content: "";
173
+ background: linear-gradient(90deg, var(--fs-image-gallery-selector-control-gradient-bkg-color) 55%, transparent);
174
+
175
+ @include utilities.media(">=notebook") { background: linear-gradient(180deg, var(--fs-image-gallery-selector-control-gradient-bkg-color) 55%, transparent); }
172
176
  }
173
177
 
174
- @include media("<notebook") {
178
+ @include utilities.media("<notebook") {
175
179
  height: 100%;
176
180
  padding-left: var(--fs-grid-padding);
177
181
 
@@ -185,7 +189,7 @@
185
189
  }
186
190
  }
187
191
 
188
- @include media(">=notebook") {
192
+ @include utilities.media(">=notebook") {
189
193
  justify-content: center;
190
194
  width: 100%;
191
195
 
@@ -196,11 +200,9 @@
196
200
  transform: scaleY(-1);
197
201
  }
198
202
  }
199
-
200
203
  }
201
204
 
202
205
  [data-fs-image-gallery-selector-control-button] {
203
-
204
206
  [data-fs-button-wrapper] {
205
207
  background-color: var(--fs-image-gallery-selector-control-bkg-color);
206
208
  border-radius: var(--fs-image-gallery-selector-control-border-radius);
@@ -209,7 +211,7 @@
209
211
 
210
212
  &:hover [data-fs-button-wrapper] { box-shadow: var(--fs-image-gallery-selector-control-shadow); }
211
213
 
212
- @include media(">=notebook") {
214
+ @include utilities.media(">=notebook") {
213
215
  transform: rotate(90deg);
214
216
  }
215
217
  }
@@ -219,7 +221,7 @@
219
221
  // --------------------------------------------------------
220
222
 
221
223
  &[data-fs-image-gallery="with-selector"] {
222
- @include media(">=notebook") {
224
+ @include utilities.media(">=notebook") {
223
225
  display: grid;
224
226
  grid-template-columns: repeat(8, 1fr);
225
227
  column-gap: var(--fs-image-gallery-gap-notebook);
@@ -1,3 +1,5 @@
1
+ @use "../../../styles/base/utilities";
2
+
1
3
  [data-fs-incentives] {
2
4
  // --------------------------------------------------------
3
5
  // Design Tokens for Incentives
@@ -42,7 +44,7 @@
42
44
  overflow-x: auto;
43
45
  overflow-y: hidden;
44
46
 
45
- @include media(">=notebook") {
47
+ @include utilities.media(">=notebook") {
46
48
  justify-content: center;
47
49
  }
48
50
  }
@@ -53,11 +55,11 @@
53
55
  align-items: center;
54
56
  justify-content: center;
55
57
 
56
- @include media("<notebook") {
58
+ @include utilities.media("<notebook") {
57
59
  row-gap: var(--fs-spacing-0);
58
60
  }
59
61
 
60
- @include media(">=notebook") {
62
+ @include utilities.media(">=notebook") {
61
63
  flex-direction: row;
62
64
 
63
65
  [data-fs-incentive-content] {
@@ -0,0 +1,90 @@
1
+ @use "../../../styles/base/utilities";
2
+
3
+ [data-fs-localization-selector] {
4
+ // Design Tokens for Localization Selector
5
+ --fs-localization-selector-max-width : 288px;
6
+
7
+ // Override Popover design tokens
8
+ --fs-popover-padding : var(--fs-spacing-3) var(--fs-spacing-4);
9
+ --fs-popover-margin : 0;
10
+ --fs-popover-border-radius : var(--fs-border-radius);
11
+ --fs-popover-bkg-color : var(--fs-color-neutral-0);
12
+ --fs-popover-indicator-translate : 0;
13
+ --fs-popover-z-index : var(--fs-z-index-high);
14
+
15
+ display: flex;
16
+ flex-direction: column;
17
+ gap: var(--fs-spacing-2);
18
+ align-items: flex-end;
19
+ border: var(--fs-border-width) solid var(--fs-border-color);
20
+
21
+ @include utilities.media(">=tablet") {
22
+ max-width: var(--fs-localization-selector-max-width);
23
+ }
24
+
25
+ [data-fs-localization-selector-description] {
26
+ margin-bottom: var(--fs-spacing-3);
27
+ font-size: var(--fs-text-size-1);
28
+ font-weight: var(--fs-text-weight-medium);
29
+ color: var(--fs-color-neutral-4);
30
+ }
31
+
32
+ [data-fs-select-field] {
33
+ margin-bottom: var(--fs-spacing-2);
34
+ }
35
+
36
+ [data-fs-popover-indicator],
37
+ [data-fs-modal-header],
38
+ [data-fs-popover-header] {
39
+ display: none;
40
+ }
41
+
42
+ [data-fs-localization-selector-actions] {
43
+ display: flex;
44
+ justify-content: end;
45
+ }
46
+
47
+ [data-fs-localization-selector-error] {
48
+ display: flex;
49
+ gap: var(--fs-spacing-1);
50
+ align-items: flex-start;
51
+ width: 100%;
52
+ font-size: var(--fs-text-size-1);
53
+ color: var(--fs-color-danger-text);
54
+
55
+ [data-fs-icon] {
56
+ flex-shrink: 0;
57
+ color: var(--fs-color-danger-text);
58
+ }
59
+ }
60
+ }
61
+
62
+ [data-fs-localization-selector-mobile] {
63
+ align-items: flex-start;
64
+
65
+ [data-fs-localization-selector-description] {
66
+ width: 100%;
67
+ }
68
+
69
+ [data-fs-slide-over-header] {
70
+ width: 100%;
71
+ }
72
+
73
+ [data-fs-localization-selector-body] {
74
+ padding: 0 var(--fs-spacing-3);
75
+ }
76
+
77
+ [data-fs-localization-selector-title] {
78
+ font-size: var(--fs-text-size-3);
79
+ font-weight: var(--fs-text-weight-semibold);
80
+ }
81
+
82
+ [data-fs-localization-selector-footer] {
83
+ width: 100%;
84
+ padding: var(--fs-spacing-3);
85
+
86
+ [data-fs-button] {
87
+ width: 100%;
88
+ }
89
+ }
90
+ }