@@ -2,18 +2,16 @@ import { css } from "lit";
2
2
3
3
export default css `
4
4
: host {
5
- - - discount-card-outer-radius : var(--tapsi-radius-4 , 16px );
6
- - - dis count- card- inner- radius: var(- - tapsi- radius-3, 12px);
7
- - - dis count- card- outer- padding: 0 var(- - tapsi- spacing-3, 4px)
8
- var(- - tapsi- spacing-3, 4px);
9
- - - dis count- card- header- padding: var(- - tapsi- spacing-4, 8px);
10
- - - dis count- card- header- title-padding: var(- - tapsi- spacing-1, 8px) 0;
5
+ - - discount-card-outer-radius : var(--tapsi-radius-4 );
6
+ - - dis count- card- inner- radius: var(- - tapsi- radius-3);
7
+ - - dis count- card- outer- padding: 0 var(- - tapsi- spacing-3)
8
+ var(- - tapsi- spacing-3);
9
+ - - dis count- card- header- padding: var(- - tapsi- spacing-4);
10
+ - - dis count- card- header- title-padding: var(- - tapsi- spacing-1)
11
+ var(- - tapsi- spacing-0);
11
12
- - dis count- card- badge-bg- color : transparent;
12
13
- - dis count- card- badge-color : transparent;
13
- - - dis count- card- wrapper- bor der: var(
14
- - - tapsi- color - bor der- primary,
15
- transparent
16
- );
14
+ - - dis count- card- wrapper- bor der- color : var(- - tapsi- color - bor der- primary);
17
15
18
16
/* Variant color mappings */
19
17
- - dis count- card- clay- bg: linear- gradient(
@@ -73,78 +71,71 @@ export default css`
73
71
}
74
72
75
73
.root {
74
+ --discount-card-root-color : transparent;
75
+ --discount-card-root-bg-color : transparent;
76
+ --discount-card-root-padding : var (--discount-card-outer-padding );
76
77
border-radius : var (--discount-card-outer-radius );
77
- padding : var (--discount-card-outer-padding );
78
+ color : var (--discount-card-root-color );
79
+ background : var (--discount-card-root-bg-color );
80
+ padding : var (--discount-card-root-padding );
81
+ }
82
+ .root header {
83
+ color : var (--discount-card-root-color );
78
84
}
79
85
80
86
.root .variant-none {
81
87
--discount-card-badge-bg-color : var (--discount-card-none-badge-bg );
82
88
--discount-card-badge-color : var (--tapsi-color-content-accent );
83
- background-color : var (--discount-card-none-bg );
84
- padding : var (--tapsi-spacing-0 , 0px );
85
-
86
- .header {
87
- display : none;
88
- }
89
+ --discount-card-root-bg-color : var (--discount-card-none-bg );
90
+ --discount-card-root-padding : var (--tapsi-spacing-0 , 0px );
89
91
}
90
92
91
93
.root .variant-clay {
92
94
--discount-card-badge-bg-color : var (--discount-card-clay-badge-bg );
93
95
--discount-card-badge-color : var (--discount-card-clay-badge-color );
94
- background : var (--discount-card-clay-bg );
95
-
96
- .header {
97
- color : var (--discount-card-clay-color );
98
- }
96
+ --discount-card-root-color : var (--discount-card-clay-color );
97
+ --discount-card-root-bg-color : var (--discount-card-clay-bg );
99
98
}
100
99
101
100
.root .variant-whisper {
102
101
--discount-card-badge-bg-color : var (--discount-card-whisper-badge-bg );
103
102
--discount-card-badge-color : var (--tapsi-palette-black );
104
- background : var (--discount-card-whisper-bg );
105
-
106
- .header {
107
- color : var (--discount-card-whisper-color );
108
- }
103
+ --discount-card-root-color : var (--discount-card-whisper-color );
104
+ --discount-card-root-bg-color : var (--discount-card-whisper-bg );
109
105
}
110
106
111
107
.root .variant-azure {
112
108
--discount-card-badge-bg-color : var (--discount-card-azure-badge-bg );
113
109
--discount-card-badge-color : var (--tapsi-palette-black );
114
- background : var (--discount-card-azure-bg );
115
-
116
- .header {
117
- color : var (--discount-card-azure-color );
118
- }
110
+ --discount-card-root-color : var (--discount-card-azure-color );
111
+ --discount-card-root-bg-color : var (--discount-card-azure-bg );
119
112
}
120
113
121
114
.root .variant-flame {
122
115
--discount-card-badge-bg-color : var (--discount-card-flame-badge-bg );
123
116
--discount-card-badge-color : var (--discount-card-flame-badge-color );
124
- background : var (--discount-card-flame-bg );
125
-
126
- .header {
127
- color : var (--discount-card-flame-color );
128
- }
117
+ --discount-card-root-color : var (--discount-card-flame-color );
118
+ --discount-card-root-bg-color : var (--discount-card-flame-bg );
129
119
}
130
120
131
121
.root .variant-grayscale {
132
122
--discount-card-badge-bg-color : var (--discount-card-grayscale-badge-bg );
133
123
--discount-card-badge-color : var (--discount-card-grayscale-badge-color );
134
- background-color : var (--discount-card-grayscale-bg );
135
-
136
- .header {
137
- color : var (--discount-card-grayscale-color );
138
- }
124
+ --discount-card-root-color : var (--discount-card-grayscale-color );
125
+ --discount-card-root-bg-color : var (--discount-card-grayscale-bg );
139
126
}
140
127
141
128
.header {
142
129
padding : var (--discount-card-header-padding );
143
130
display : flex;
144
131
}
132
+
145
133
.header-title {
146
134
padding : var (--discount-card-header-title-padding );
147
135
flex : 1 0 auto;
136
+ font-size : var (--tapsi-typography-label-sm-font );
137
+ font-weight : var (--tapsi-typography-label-sm-weight );
138
+ line-height : var (--tapsi-typography-label-sm-height );
148
139
}
149
140
150
141
.header-icon {
@@ -154,14 +145,16 @@ export default css`
154
145
}
155
146
156
147
.wrapper {
157
- border : none;
148
+ --discount-card-wrapper- border: none;
158
149
border-radius : var (--discount-card-inner-radius );
159
150
background-color : var (--tapsi-palette-white );
160
151
display : flex;
152
+ border : var (--discount-card-wrapper-border );
161
153
}
162
154
163
155
.wrapper .wrapper-border {
164
- border : 1px solid var (--discount-card-wrapper-border );
156
+ --discount-card-wrapper-border : 1px solid
157
+ var (--discount-card-wrapper-border-color );
165
158
}
166
159
167
160
.side {
@@ -170,99 +163,101 @@ export default css`
170
163
display : flex;
171
164
flex-direction : column;
172
165
flex : 0 0 82px ;
166
+ }
167
+ .side .badge-wrapper {
168
+ position : relative;
169
+ margin : 0 calc (var (--tapsi-spacing-3 ) * -1 ) 0 0 ;
173
170
174
- .badge-wrapper {
175
- position : relative;
176
- margin : 0 calc (var (--tapsi-spacing-3 ) * -1 ) 0 0 ;
171
+ display : flex;
172
+ }
177
173
178
- display : flex;
179
- }
174
+ .side .badge-box {
175
+ margin-right : -1px ;
176
+ background-color : var (--discount-card-badge-bg-color );
177
+ border-radius : var (--tapsi-spacing-3 ) 0 0 var (--tapsi-spacing-3 );
178
+ padding : var (--tapsi-spacing-2 ) var (--tapsi-spacing-4 )
179
+ var (--tapsi-spacing-2 ) var (--tapsi-spacing-5 );
180
+ color : var (--discount-card-badge-color );
181
+ font-weight : var (--tapsi-typography-label-xxs-weight );
182
+ font-size : var (--tapsi-typography-label-xxs-size );
183
+ line-height : var (--tapsi-typography-label-xxs-height );
184
+ }
180
185
181
- .badge-box {
182
- background-color : var (--discount-card-badge-bg-color );
183
- border-radius : var (--tapsi-spacing-3 ) 0 0 var (--tapsi-spacing-3 );
184
- padding : var (--tapsi-spacing-2 ) var (--tapsi-spacing-4 )
185
- var (--tapsi-spacing-2 ) var (--tapsi-spacing-5 );
186
- color : var (--discount-card-badge-color );
187
- font-weight : var (--tapsi-typography-label-xxs-weight );
188
- font-size : var (--tapsi-typography-label-xxs-size );
189
- line-height : var (--tapsi-typography-label-xxs-height );
190
- }
186
+ .side .badge-shape {
187
+ position : absolute;
188
+ left : 100% ;
189
+ top : 0 ;
190
+ color : var (--discount-card-badge-bg-color );
191
+ }
191
192
192
- . badge-shape {
193
- position : absolute ;
194
- left : 100 % ;
195
- top : 0 ;
196
- color : var ( --discount-card-badge-bg-color ) ;
197
- }
193
+ . side . thumbnail-box {
194
+ margin : var ( --tapsi-spacing-9 ) auto 0 ;
195
+ color : var ( --tapsi-color-content-primary ) ;
196
+ width : 60 px ;
197
+ height : 60 px ;
198
+ }
198
199
199
- /* border-left: 2px dashed var(--tapsi-color-border-primary); */
200
- .thumbnail-box {
201
- margin : var (--tapsi-spacing-9 ) auto 0 ;
202
- width : 60px ;
203
- height : 60px ;
204
- }
200
+ .side .dashed-line {
201
+ position : absolute;
202
+ top : 0 ;
203
+ height : 100% ;
204
+ left : -1px ;
205
+ width : 2px ;
206
+ overflow : hidden;
207
+ }
205
208
206
- .dashed-line {
207
- position : absolute;
208
- top : 0 ;
209
- height : 100% ;
210
- left : -1 ;
211
- width : 2px ;
212
- overflow : hidden;
213
- & ::after {
214
- content : "" ;
215
- --b : 1px ; /* border thickness */
216
- --s : 16px ; /* size of the dashes */
217
- --c1 : var (--tapsi-color-border-primary );
218
- --c2 : var (--tapsi-palette-white );
219
- top : 0 ;
220
- height : 100% ;
221
- left : -1px ;
222
- padding : var (--b );
223
- position : absolute;
224
- background : repeating-conic-gradient (var (--c1 ) 0 25% , var (--c2 ) 0 50% ) 0
225
- 0 / var (--s ) var (--s ) round;
226
- mask :
227
- linear-gradient (# 000 0 0 ) content-box,
228
- linear-gradient (# 000 0 0 );
229
- mask-composite : exclude;
230
- }
231
- }
209
+ .side .dashed-line ::after {
210
+ content : "" ;
211
+ --b : 2px ; /* border thickness */
212
+ --s : 14px ; /* size of the dashes */
213
+ --c1 : var (--tapsi-color-border-primary );
214
+ --c2 : transparent;
215
+ top : 0 ;
216
+ height : 100% ;
217
+ left : -3px ;
218
+ padding : var (--b );
219
+ position : absolute;
220
+ background : repeating-conic-gradient (var (--c1 ) 0 25% , var (--c2 ) 0 50% ) 0 0 /
221
+ var (--s ) var (--s ) round;
232
222
}
233
223
234
224
.body {
235
225
padding : var (--tapsi-spacing-6 , 16px );
236
226
flex : 1 0 auto;
227
+ }
237
228
238
- .title {
239
- font-weight : var (--tapsi-typography-label-sm-weight );
240
- font-size : var (--tapsi-typography-label-sm-size );
241
- line-height : var (--tapsi-typography-label-sm-height );
242
- color : var (--tapsi-palette-black );
243
- }
229
+ . body .title {
230
+ font-weight : var (--tapsi-typography-label-sm-weight );
231
+ font-size : var (--tapsi-typography-label-sm-size );
232
+ line-height : var (--tapsi-typography-label-sm-height );
233
+ color : var (--tapsi-palette-black );
234
+ }
244
235
245
- .description {
246
- font-weight : var (--tapsi-typography-label-xs-weight );
247
- font-size : var (--tapsi-typography-label-xs-size );
248
- line-height : var (--tapsi-typography-label-xs-height );
249
- color : var (--tapsi-color-content-tertiary );
250
- margin-top : var (--tapsi-spacing-2 );
251
- }
236
+ . body .description {
237
+ font-weight : var (--tapsi-typography-label-xs-weight );
238
+ font-size : var (--tapsi-typography-label-xs-size );
239
+ line-height : var (--tapsi-typography-label-xs-height );
240
+ color : var (--tapsi-color-content-tertiary );
241
+ margin-top : var (--tapsi-spacing-2 );
242
+ }
252
243
253
- .expiry-date-label {
254
- font-weight : var (--tapsi-typography-label-xs-weight );
255
- font-size : var (--tapsi-typography-label-xs-size );
256
- line-height : var (--tapsi-typography-label-xs-height );
257
- color : var (--tapsi-color-content-tertiary ); /* Default color */
258
- }
244
+ .body .expiry-date-label {
245
+ --discount-card-expiring-date-label-color : var (
246
+ --tapsi-color-content-tertiary
247
+ ); /* Default color */
248
+ font-weight : var (--tapsi-typography-label-xs-weight );
249
+ font-size : var (--tapsi-typography-label-xs-size );
250
+ line-height : var (--tapsi-typography-label-xs-height );
251
+ color : var (--discount-card-expiring-date-label-color );
252
+ }
259
253
260
- .expiry-date-label .expiring {
261
- color : var (--tapsi-color-content-negative ); /* Warn color */
262
- }
254
+ .body .expiry-date-label .expiring {
255
+ --discount-card-expiring-date-label-color : var (
256
+ --tapsi-color-content-negative
257
+ );
258
+ }
263
259
264
- .action {
265
- margin-top : var (--tapsi-spacing-4 );
266
- }
260
+ .body .action {
261
+ margin-top : var (--tapsi-spacing-4 );
267
262
}
268
263
` ;
0 commit comments