@paypal/checkout-components 5.0.412-alpha-84b7728.0 → 5.0.413
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.
- package/dist/button.js +1 -1
- package/dist/saved-payment-methods.js +1 -0
- package/dist/test/button.js +1 -1
- package/package.json +2 -2
- package/src/constants/button.js +6 -0
- package/src/funding/common.jsx +0 -6
- package/src/funding/itau/config.jsx +5 -15
- package/src/funding/paypal/monogramMark.jsx +10 -0
- package/src/funding/paypal/monogramMark.test.jsx +24 -0
- package/src/funding/sepa/config.jsx +1 -29
- package/src/lib/appSwitchResume.js +4 -1
- package/src/lib/appSwithResume.test.js +19 -0
- package/src/marks/component.jsx +4 -1
- package/src/marks/templateRebrand.jsx +32 -2
- package/src/marks/templateRebrand.test.jsx +101 -0
- package/src/ui/buttons/config.js +26 -50
- package/src/ui/buttons/poweredBy.jsx +3 -8
- package/src/ui/buttons/props.js +29 -2
- package/src/ui/buttons/props.test.js +42 -0
- package/src/ui/buttons/styles/button.js +3 -21
- package/src/ui/buttons/styles/color.js +41 -59
- package/src/ui/buttons/styles/labels.js +0 -1
- package/src/ui/buttons/styles/responsive.js +39 -69
- package/src/ui/buttons/styles/styleUtils.js +5 -9
- package/src/ui/buttons/styles/styleUtils.test.js +54 -18
- package/src/ui/buttons/tagline.jsx +3 -1
- package/src/ui/saved-payment-methods/index.js +3 -0
- package/src/ui/saved-payment-methods/template.jsx +255 -0
- package/src/ui/saved-payment-methods/template.test.jsx +23 -0
- package/src/zoid/saved-payment-methods/container.jsx +0 -1
- package/src/zoid/saved-payment-methods/prerender.jsx +9 -19
- package/src/ui/buttons/styles/disableMaxHeightConfig.test.js +0 -71
|
@@ -11,6 +11,7 @@ import {
|
|
|
11
11
|
getColorForABTest,
|
|
12
12
|
getDefaultColorForFundingSource,
|
|
13
13
|
throwErrorForInvalidButtonColor,
|
|
14
|
+
hasInvalidScriptOptionsForFullRedesign,
|
|
14
15
|
determineRandomButtonColor,
|
|
15
16
|
getColorABTestFromStorage,
|
|
16
17
|
} from "./props";
|
|
@@ -127,6 +128,47 @@ describe("determineRandomButtonColor", () => {
|
|
|
127
128
|
});
|
|
128
129
|
});
|
|
129
130
|
|
|
131
|
+
describe("hasInvalidScriptOptionsForFullRedesign", () => {
|
|
132
|
+
const validFundingSources = [
|
|
133
|
+
FUNDING.PAYPAL,
|
|
134
|
+
FUNDING.PAYLATER,
|
|
135
|
+
FUNDING.CREDIT,
|
|
136
|
+
FUNDING.CARD,
|
|
137
|
+
FUNDING.VENMO,
|
|
138
|
+
];
|
|
139
|
+
const invalidFundingSources = [FUNDING.APPLEPAY, FUNDING.IDEAL];
|
|
140
|
+
|
|
141
|
+
// Test valid funding sources
|
|
142
|
+
validFundingSources.forEach((fundingSource) => {
|
|
143
|
+
it(`should return false for fundingSource: ${fundingSource}`, () => {
|
|
144
|
+
const result = hasInvalidScriptOptionsForFullRedesign({
|
|
145
|
+
fundingSource,
|
|
146
|
+
});
|
|
147
|
+
|
|
148
|
+
expect(result).toBe(false);
|
|
149
|
+
});
|
|
150
|
+
});
|
|
151
|
+
|
|
152
|
+
// Test invalid funding sources
|
|
153
|
+
invalidFundingSources.forEach((fundingSource) => {
|
|
154
|
+
it(`should return true for fundingSource: ${fundingSource}`, () => {
|
|
155
|
+
const result = hasInvalidScriptOptionsForFullRedesign({
|
|
156
|
+
fundingSource,
|
|
157
|
+
});
|
|
158
|
+
|
|
159
|
+
expect(result).toBe(true);
|
|
160
|
+
});
|
|
161
|
+
});
|
|
162
|
+
|
|
163
|
+
it("should return true when funding source is null", () => {
|
|
164
|
+
const result = hasInvalidScriptOptionsForFullRedesign({
|
|
165
|
+
fundingSource: null,
|
|
166
|
+
});
|
|
167
|
+
|
|
168
|
+
expect(result).toBe(true);
|
|
169
|
+
});
|
|
170
|
+
});
|
|
171
|
+
|
|
130
172
|
describe("throwErrorForInvalidButtonColor", () => {
|
|
131
173
|
it("should throw error with appropriate message for invalid color", () => {
|
|
132
174
|
expect(() => {
|
|
@@ -4,10 +4,6 @@ import { ENV } from "@paypal/sdk-constants/src";
|
|
|
4
4
|
import { LOGO_CLASS } from "@paypal/sdk-logos/src";
|
|
5
5
|
|
|
6
6
|
import { CLASS } from "../../../constants";
|
|
7
|
-
import {
|
|
8
|
-
REBRAND_LABEL_HEIGHT_RATIO,
|
|
9
|
-
REBRAND_LOGO_TRANSLATE_Y,
|
|
10
|
-
} from "../config";
|
|
11
7
|
|
|
12
8
|
const MIN_VAULT_BUTTON_WIDTH = 250;
|
|
13
9
|
|
|
@@ -108,8 +104,8 @@ export const buttonStyle = `
|
|
|
108
104
|
|
|
109
105
|
.${CLASS.BUTTON} .${CLASS.SPINNER} {
|
|
110
106
|
position: absolute;
|
|
111
|
-
height:
|
|
112
|
-
|
|
107
|
+
height: 40px;
|
|
108
|
+
width: 40px;
|
|
113
109
|
top: 50%;
|
|
114
110
|
left: 50%;
|
|
115
111
|
transform: translateX(-50%) translateY(-50%);
|
|
@@ -175,7 +171,7 @@ export const buttonRebrandStyle = `
|
|
|
175
171
|
align-items: center;
|
|
176
172
|
justify-content: center;
|
|
177
173
|
flex-wrap: nowrap;
|
|
178
|
-
height:
|
|
174
|
+
height: 76%;
|
|
179
175
|
min-width: 0px;
|
|
180
176
|
position: relative;
|
|
181
177
|
}
|
|
@@ -204,19 +200,6 @@ export const buttonRebrandStyle = `
|
|
|
204
200
|
height: 100%;
|
|
205
201
|
}
|
|
206
202
|
|
|
207
|
-
.${CLASS.BUTTON_REBRAND} .${CLASS.BUTTON_LABEL} > .${CLASS.LOGO_REBRAND} {
|
|
208
|
-
// transform: translateY(${REBRAND_LOGO_TRANSLATE_Y}%);
|
|
209
|
-
transform: translateY(10%); //update me!!
|
|
210
|
-
}
|
|
211
|
-
|
|
212
|
-
.${CLASS.BUTTON_REBRAND}[data-funding-source=wechatpay] .${CLASS.TEXT},
|
|
213
|
-
.${CLASS.BUTTON_REBRAND}[data-funding-source=satispay] .${CLASS.TEXT},
|
|
214
|
-
.${CLASS.BUTTON_REBRAND}[data-funding-source=giropay] .${CLASS.TEXT},
|
|
215
|
-
.${CLASS.BUTTON_REBRAND}[data-funding-source=paidy] .${CLASS.TEXT},
|
|
216
|
-
.${CLASS.BUTTON_REBRAND}[data-funding-source=trustly] .${CLASS.TEXT} {
|
|
217
|
-
transform: translateY(-1px);
|
|
218
|
-
}
|
|
219
|
-
|
|
220
203
|
.${CLASS.BUTTON_REBRAND} .${CLASS.TAGLINE} {
|
|
221
204
|
max-width: 100%;
|
|
222
205
|
font-size: initial;
|
|
@@ -224,6 +207,5 @@ export const buttonRebrandStyle = `
|
|
|
224
207
|
display: block;
|
|
225
208
|
text-align: center;
|
|
226
209
|
width: auto;
|
|
227
|
-
margin-top: 8px;
|
|
228
210
|
}
|
|
229
211
|
`;
|
|
@@ -151,7 +151,7 @@ export const buttonColorStyle = `
|
|
|
151
151
|
.${CLASS.BUTTON_REBRAND}:focus {
|
|
152
152
|
outline: none;
|
|
153
153
|
}
|
|
154
|
-
|
|
154
|
+
|
|
155
155
|
.${CLASS.BUTTON_REBRAND}:focus::after {
|
|
156
156
|
content: '';
|
|
157
157
|
position: absolute;
|
|
@@ -160,7 +160,7 @@ export const buttonColorStyle = `
|
|
|
160
160
|
bottom: 3px;
|
|
161
161
|
left: 3px;
|
|
162
162
|
border: 0.125rem solid #FFFFFF;
|
|
163
|
-
border-radius:
|
|
163
|
+
border-radius: inherit;
|
|
164
164
|
box-shadow: 0 0 0 0.2rem #0066F5;
|
|
165
165
|
pointer-events: none;
|
|
166
166
|
}
|
|
@@ -249,14 +249,6 @@ export const buttonColorStyle = `
|
|
|
249
249
|
background: #E62601;
|
|
250
250
|
}
|
|
251
251
|
|
|
252
|
-
.${CLASS.BUTTON}[${ATTRIBUTE.FUNDING_SOURCE}=${FUNDING.ITAU}].${CLASS.COLOR}-${BUTTON_COLOR.DEFAULT} {
|
|
253
|
-
background: #003087;
|
|
254
|
-
}
|
|
255
|
-
|
|
256
|
-
.${CLASS.BUTTON}[${ATTRIBUTE.FUNDING_SOURCE}=${FUNDING.SEPA}].${CLASS.COLOR}-${BUTTON_COLOR.DEFAULT} {
|
|
257
|
-
background: #eee;
|
|
258
|
-
}
|
|
259
|
-
|
|
260
252
|
/* APM button hover actions */
|
|
261
253
|
.${CLASS.BUTTON}[${ATTRIBUTE.FUNDING_SOURCE}=${FUNDING.BANCONTACT}].${CLASS.COLOR}-${BUTTON_COLOR.DEFAULT}:hover,
|
|
262
254
|
.${CLASS.BUTTON}[${ATTRIBUTE.FUNDING_SOURCE}=${FUNDING.BLIK}].${CLASS.COLOR}-${BUTTON_COLOR.DEFAULT}:hover,
|
|
@@ -275,62 +267,52 @@ export const buttonColorStyle = `
|
|
|
275
267
|
.${CLASS.BUTTON}[${ATTRIBUTE.FUNDING_SOURCE}=${FUNDING.PAYU}].${CLASS.COLOR}-${BUTTON_COLOR.DEFAULT}:hover,
|
|
276
268
|
.${CLASS.BUTTON}[${ATTRIBUTE.FUNDING_SOURCE}=${FUNDING.SATISPAY}].${CLASS.COLOR}-${BUTTON_COLOR.DEFAULT}:hover,
|
|
277
269
|
.${CLASS.BUTTON}[${ATTRIBUTE.FUNDING_SOURCE}=${FUNDING.PAIDY}].${CLASS.COLOR}-${BUTTON_COLOR.DEFAULT}:hover,
|
|
278
|
-
.${CLASS.BUTTON}[${ATTRIBUTE.FUNDING_SOURCE}=${FUNDING.WECHATPAY}].${CLASS.COLOR}-${BUTTON_COLOR.DEFAULT}:hover
|
|
279
|
-
.${CLASS.BUTTON}[${ATTRIBUTE.FUNDING_SOURCE}=${FUNDING.ITAU}].${CLASS.COLOR}-${BUTTON_COLOR.DEFAULT}:hover {
|
|
270
|
+
.${CLASS.BUTTON}[${ATTRIBUTE.FUNDING_SOURCE}=${FUNDING.WECHATPAY}].${CLASS.COLOR}-${BUTTON_COLOR.DEFAULT}:hover {
|
|
280
271
|
filter: brightness(1.2);
|
|
281
272
|
overflow: inherit;
|
|
282
273
|
}
|
|
283
274
|
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
}
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
.${CLASS.BUTTON}
|
|
291
|
-
.${CLASS.BUTTON}
|
|
292
|
-
.${CLASS.BUTTON}
|
|
293
|
-
.${CLASS.BUTTON}
|
|
294
|
-
.${CLASS.BUTTON}
|
|
295
|
-
.${CLASS.BUTTON}
|
|
296
|
-
.${CLASS.BUTTON}
|
|
297
|
-
.${CLASS.BUTTON}
|
|
298
|
-
.${CLASS.BUTTON}
|
|
299
|
-
.${CLASS.BUTTON}
|
|
300
|
-
.${CLASS.BUTTON}
|
|
301
|
-
.${CLASS.BUTTON}
|
|
302
|
-
.${CLASS.BUTTON}
|
|
303
|
-
.${CLASS.BUTTON}:not(.${CLASS.BUTTON_REBRAND})[${ATTRIBUTE.FUNDING_SOURCE}=${FUNDING.TRUSTLY}].${CLASS.COLOR}-${BUTTON_COLOR.DEFAULT}:focus,
|
|
304
|
-
.${CLASS.BUTTON}:not(.${CLASS.BUTTON_REBRAND})[${ATTRIBUTE.FUNDING_SOURCE}=${FUNDING.PAYU}].${CLASS.COLOR}-${BUTTON_COLOR.DEFAULT}:focus,
|
|
305
|
-
.${CLASS.BUTTON}:not(.${CLASS.BUTTON_REBRAND})[${ATTRIBUTE.FUNDING_SOURCE}=${FUNDING.SATISPAY}].${CLASS.COLOR}-${BUTTON_COLOR.DEFAULT}:focus,
|
|
306
|
-
.${CLASS.BUTTON}:not(.${CLASS.BUTTON_REBRAND})[${ATTRIBUTE.FUNDING_SOURCE}=${FUNDING.PAIDY}].${CLASS.COLOR}-${BUTTON_COLOR.DEFAULT}:focus,
|
|
307
|
-
.${CLASS.BUTTON}:not(.${CLASS.BUTTON_REBRAND})[${ATTRIBUTE.FUNDING_SOURCE}=${FUNDING.WECHATPAY}].${CLASS.COLOR}-${BUTTON_COLOR.DEFAULT}:focus,
|
|
308
|
-
.${CLASS.BUTTON}:not(.${CLASS.BUTTON_REBRAND})[${ATTRIBUTE.FUNDING_SOURCE}=${FUNDING.ITAU}].${CLASS.COLOR}-${BUTTON_COLOR.DEFAULT}:focus,
|
|
309
|
-
.${CLASS.BUTTON}:not(.${CLASS.BUTTON_REBRAND})[${ATTRIBUTE.FUNDING_SOURCE}=${FUNDING.SEPA}].${CLASS.COLOR}-${BUTTON_COLOR.DEFAULT}:focus {
|
|
275
|
+
/* APM button on focus actions */
|
|
276
|
+
.${CLASS.BUTTON}[${ATTRIBUTE.FUNDING_SOURCE}=${FUNDING.BLIK}].${CLASS.COLOR}-${BUTTON_COLOR.DEFAULT}:focus,
|
|
277
|
+
.${CLASS.BUTTON}[${ATTRIBUTE.FUNDING_SOURCE}=${FUNDING.BANCONTACT}].${CLASS.COLOR}-${BUTTON_COLOR.DEFAULT}:focus,
|
|
278
|
+
.${CLASS.BUTTON}[${ATTRIBUTE.FUNDING_SOURCE}=${FUNDING.BOLETO}].${CLASS.COLOR}-${BUTTON_COLOR.DEFAULT}:focus,
|
|
279
|
+
.${CLASS.BUTTON}[${ATTRIBUTE.FUNDING_SOURCE}=${FUNDING.BOLETOBANCARIO}].${CLASS.COLOR}-${BUTTON_COLOR.DEFAULT}:focus,
|
|
280
|
+
.${CLASS.BUTTON}[${ATTRIBUTE.FUNDING_SOURCE}=${FUNDING.EPS}].${CLASS.COLOR}-${BUTTON_COLOR.DEFAULT}:focus,
|
|
281
|
+
.${CLASS.BUTTON}[${ATTRIBUTE.FUNDING_SOURCE}=${FUNDING.GIROPAY}].${CLASS.COLOR}-${BUTTON_COLOR.DEFAULT}:focus,
|
|
282
|
+
.${CLASS.BUTTON}[${ATTRIBUTE.FUNDING_SOURCE}=${FUNDING.IDEAL}].${CLASS.COLOR}-${BUTTON_COLOR.DEFAULT}:focus,
|
|
283
|
+
.${CLASS.BUTTON}[${ATTRIBUTE.FUNDING_SOURCE}=${FUNDING.MERCADOPAGO}].${CLASS.COLOR}-${BUTTON_COLOR.DEFAULT}:focus,
|
|
284
|
+
.${CLASS.BUTTON}[${ATTRIBUTE.FUNDING_SOURCE}=${FUNDING.MULTIBANCO}].${CLASS.COLOR}-${BUTTON_COLOR.DEFAULT}:focus,
|
|
285
|
+
.${CLASS.BUTTON}[${ATTRIBUTE.FUNDING_SOURCE}=${FUNDING.MYBANK}].${CLASS.COLOR}-${BUTTON_COLOR.DEFAULT}:focus,
|
|
286
|
+
.${CLASS.BUTTON}[${ATTRIBUTE.FUNDING_SOURCE}=${FUNDING.OXXO}].${CLASS.COLOR}-${BUTTON_COLOR.DEFAULT}:focus,
|
|
287
|
+
.${CLASS.BUTTON}[${ATTRIBUTE.FUNDING_SOURCE}=${FUNDING.P24}].${CLASS.COLOR}-${BUTTON_COLOR.DEFAULT}:focus,
|
|
288
|
+
.${CLASS.BUTTON}[${ATTRIBUTE.FUNDING_SOURCE}=${FUNDING.SOFORT}].${CLASS.COLOR}-${BUTTON_COLOR.DEFAULT}:focus,
|
|
289
|
+
.${CLASS.BUTTON}[${ATTRIBUTE.FUNDING_SOURCE}=${FUNDING.TRUSTLY}].${CLASS.COLOR}-${BUTTON_COLOR.DEFAULT}:focus,
|
|
290
|
+
.${CLASS.BUTTON}[${ATTRIBUTE.FUNDING_SOURCE}=${FUNDING.PAYU}].${CLASS.COLOR}-${BUTTON_COLOR.DEFAULT}:focus,
|
|
291
|
+
.${CLASS.BUTTON}[${ATTRIBUTE.FUNDING_SOURCE}=${FUNDING.SATISPAY}].${CLASS.COLOR}-${BUTTON_COLOR.DEFAULT}:focus,
|
|
292
|
+
.${CLASS.BUTTON}[${ATTRIBUTE.FUNDING_SOURCE}=${FUNDING.PAIDY}].${CLASS.COLOR}-${BUTTON_COLOR.DEFAULT}:focus,
|
|
293
|
+
.${CLASS.BUTTON}[${ATTRIBUTE.FUNDING_SOURCE}=${FUNDING.WECHATPAY}].${CLASS.COLOR}-${BUTTON_COLOR.DEFAULT}:focus {
|
|
310
294
|
outline: none;
|
|
311
295
|
}
|
|
312
296
|
|
|
313
|
-
/* APM button after focus actions
|
|
314
|
-
.${CLASS.BUTTON}
|
|
315
|
-
.${CLASS.BUTTON}
|
|
316
|
-
.${CLASS.BUTTON}
|
|
317
|
-
.${CLASS.BUTTON}
|
|
318
|
-
.${CLASS.BUTTON}
|
|
319
|
-
.${CLASS.BUTTON}
|
|
320
|
-
.${CLASS.BUTTON}
|
|
321
|
-
.${CLASS.BUTTON}
|
|
322
|
-
.${CLASS.BUTTON}
|
|
323
|
-
.${CLASS.BUTTON}
|
|
324
|
-
.${CLASS.BUTTON}
|
|
325
|
-
.${CLASS.BUTTON}
|
|
326
|
-
.${CLASS.BUTTON}
|
|
327
|
-
.${CLASS.BUTTON}
|
|
328
|
-
.${CLASS.BUTTON}
|
|
329
|
-
.${CLASS.BUTTON}
|
|
330
|
-
.${CLASS.BUTTON}
|
|
331
|
-
.${CLASS.BUTTON}
|
|
332
|
-
.${CLASS.BUTTON}:not(.${CLASS.BUTTON_REBRAND})[${ATTRIBUTE.FUNDING_SOURCE}=${FUNDING.ITAU}].${CLASS.COLOR}-${BUTTON_COLOR.DEFAULT}:focus::after,
|
|
333
|
-
.${CLASS.BUTTON}:not(.${CLASS.BUTTON_REBRAND})[${ATTRIBUTE.FUNDING_SOURCE}=${FUNDING.SEPA}].${CLASS.COLOR}-${BUTTON_COLOR.DEFAULT}:focus::after {
|
|
297
|
+
/* APM button after focus actions */
|
|
298
|
+
.${CLASS.BUTTON}[${ATTRIBUTE.FUNDING_SOURCE}=${FUNDING.BLIK}].${CLASS.COLOR}-${BUTTON_COLOR.DEFAULT}:focus::after,
|
|
299
|
+
.${CLASS.BUTTON}[${ATTRIBUTE.FUNDING_SOURCE}=${FUNDING.BANCONTACT}].${CLASS.COLOR}-${BUTTON_COLOR.DEFAULT}:focus::after,
|
|
300
|
+
.${CLASS.BUTTON}[${ATTRIBUTE.FUNDING_SOURCE}=${FUNDING.BOLETO}].${CLASS.COLOR}-${BUTTON_COLOR.DEFAULT}:focus::after,
|
|
301
|
+
.${CLASS.BUTTON}[${ATTRIBUTE.FUNDING_SOURCE}=${FUNDING.BOLETOBANCARIO}].${CLASS.COLOR}-${BUTTON_COLOR.DEFAULT}:focus::after,
|
|
302
|
+
.${CLASS.BUTTON}[${ATTRIBUTE.FUNDING_SOURCE}=${FUNDING.EPS}].${CLASS.COLOR}-${BUTTON_COLOR.DEFAULT}:focus::after,
|
|
303
|
+
.${CLASS.BUTTON}[${ATTRIBUTE.FUNDING_SOURCE}=${FUNDING.GIROPAY}].${CLASS.COLOR}-${BUTTON_COLOR.DEFAULT}:focus::after,
|
|
304
|
+
.${CLASS.BUTTON}[${ATTRIBUTE.FUNDING_SOURCE}=${FUNDING.IDEAL}].${CLASS.COLOR}-${BUTTON_COLOR.DEFAULT}:focus::after,
|
|
305
|
+
.${CLASS.BUTTON}[${ATTRIBUTE.FUNDING_SOURCE}=${FUNDING.MERCADOPAGO}].${CLASS.COLOR}-${BUTTON_COLOR.DEFAULT}:focus::after,
|
|
306
|
+
.${CLASS.BUTTON}[${ATTRIBUTE.FUNDING_SOURCE}=${FUNDING.MULTIBANCO}].${CLASS.COLOR}-${BUTTON_COLOR.DEFAULT}:focus::after,
|
|
307
|
+
.${CLASS.BUTTON}[${ATTRIBUTE.FUNDING_SOURCE}=${FUNDING.MYBANK}].${CLASS.COLOR}-${BUTTON_COLOR.DEFAULT}:focus::after,
|
|
308
|
+
.${CLASS.BUTTON}[${ATTRIBUTE.FUNDING_SOURCE}=${FUNDING.OXXO}].${CLASS.COLOR}-${BUTTON_COLOR.DEFAULT}:focus::after,
|
|
309
|
+
.${CLASS.BUTTON}[${ATTRIBUTE.FUNDING_SOURCE}=${FUNDING.P24}].${CLASS.COLOR}-${BUTTON_COLOR.DEFAULT}:focus::after,
|
|
310
|
+
.${CLASS.BUTTON}[${ATTRIBUTE.FUNDING_SOURCE}=${FUNDING.SOFORT}].${CLASS.COLOR}-${BUTTON_COLOR.DEFAULT}:focus::after,
|
|
311
|
+
.${CLASS.BUTTON}[${ATTRIBUTE.FUNDING_SOURCE}=${FUNDING.TRUSTLY}].${CLASS.COLOR}-${BUTTON_COLOR.DEFAULT}:focus::after,
|
|
312
|
+
.${CLASS.BUTTON}[${ATTRIBUTE.FUNDING_SOURCE}=${FUNDING.PAYU}].${CLASS.COLOR}-${BUTTON_COLOR.DEFAULT}:focus::after,
|
|
313
|
+
.${CLASS.BUTTON}[${ATTRIBUTE.FUNDING_SOURCE}=${FUNDING.SATISPAY}].${CLASS.COLOR}-${BUTTON_COLOR.DEFAULT}:focus::after,
|
|
314
|
+
.${CLASS.BUTTON}[${ATTRIBUTE.FUNDING_SOURCE}=${FUNDING.PAIDY}].${CLASS.COLOR}-${BUTTON_COLOR.DEFAULT}:focus::after,
|
|
315
|
+
.${CLASS.BUTTON}[${ATTRIBUTE.FUNDING_SOURCE}=${FUNDING.WECHATPAY}].${CLASS.COLOR}-${BUTTON_COLOR.DEFAULT}:focus::after {
|
|
334
316
|
content: '';
|
|
335
317
|
position: absolute;
|
|
336
318
|
top: 5px;
|
|
@@ -72,7 +72,6 @@ export const labelStyle = `
|
|
|
72
72
|
CLASS.BUTTON_LABEL
|
|
73
73
|
} {
|
|
74
74
|
font-family: PayPal Pro Book, system-ui, -apple-system, Roboto, "Segoe UI", Helvetica-Neue, Helvetica, Arial, sans-serif;
|
|
75
|
-
font-weight: 500;
|
|
76
75
|
}
|
|
77
76
|
|
|
78
77
|
.${CLASS.BUTTON_REBRAND}[data-funding-source=venmo] .${CLASS.BUTTON_LABEL} {
|
|
@@ -18,8 +18,6 @@ import {
|
|
|
18
18
|
BUTTON_RELATIVE_STYLE,
|
|
19
19
|
BUTTON_DISABLE_MAX_HEIGHT_STYLE,
|
|
20
20
|
BUTTON_REDESIGN_STYLE,
|
|
21
|
-
BUTTON_REDESIGN_DISABLEMAXHEIGHT_STYLE,
|
|
22
|
-
REBRAND_LABEL_HEIGHT_RATIO,
|
|
23
21
|
} from "../config";
|
|
24
22
|
import { isBorderRadiusNumber } from "../util";
|
|
25
23
|
|
|
@@ -181,23 +179,20 @@ const generateButtonSizeStyles = ({
|
|
|
181
179
|
.${CLASS.BUTTON}.${CLASS.BORDER_RADIUS} {
|
|
182
180
|
${
|
|
183
181
|
borderRadius && isBorderRadiusNumber(borderRadius)
|
|
184
|
-
?
|
|
182
|
+
? `border-radius: ${borderRadius}px`
|
|
185
183
|
: ""
|
|
186
184
|
}
|
|
187
185
|
}
|
|
188
186
|
|
|
189
187
|
.${CLASS.BUTTON}.${CLASS.SHAPE}-${BUTTON_SHAPE.SHARP} {
|
|
190
|
-
--btn-radius: 0px;
|
|
191
188
|
border-radius: 0px;
|
|
192
189
|
}
|
|
193
190
|
|
|
194
191
|
.${CLASS.BUTTON}.${CLASS.SHAPE}-${BUTTON_SHAPE.RECT} {
|
|
195
|
-
--btn-radius: 4px;
|
|
196
192
|
border-radius: 4px;
|
|
197
193
|
}
|
|
198
194
|
|
|
199
195
|
.${CLASS.BUTTON}.${CLASS.SHAPE}-${BUTTON_SHAPE.PILL} {
|
|
200
|
-
--btn-radius: ${pillBorderRadius}px;
|
|
201
196
|
border-radius: ${pillBorderRadius}px;
|
|
202
197
|
}
|
|
203
198
|
|
|
@@ -404,7 +399,7 @@ const generateDisableMaxHeightStyles = ({
|
|
|
404
399
|
const { minHeight, maxHeight } = disableHeightStyle;
|
|
405
400
|
|
|
406
401
|
return `
|
|
407
|
-
@
|
|
402
|
+
@media (min-height: ${minHeight}px) and (max-height: ${maxHeight}px) {
|
|
408
403
|
.${CLASS.BUTTON_LABEL} {
|
|
409
404
|
gap: ${gap}px;
|
|
410
405
|
}
|
|
@@ -459,11 +454,10 @@ const generateDisableMaxHeightStyles = ({
|
|
|
459
454
|
}
|
|
460
455
|
|
|
461
456
|
.${CLASS.BUTTON}.${CLASS.SHAPE}-${BUTTON_SHAPE.PILL} {
|
|
462
|
-
--btn-radius: ${pillBorderRadius}px;
|
|
463
457
|
border-radius: ${pillBorderRadius}px;
|
|
464
458
|
}
|
|
465
459
|
|
|
466
|
-
.${CLASS.BUTTON_ROW}.${CLASS.SHAPE}-${BUTTON_SHAPE.PILL}
|
|
460
|
+
.${CLASS.BUTTON_ROW}.${CLASS.SHAPE}-${BUTTON_SHAPE.PILL}
|
|
467
461
|
.menu-button {
|
|
468
462
|
border-top-right-radius: ${pillBorderRadius}px;
|
|
469
463
|
border-bottom-right-radius: ${pillBorderRadius}px;
|
|
@@ -488,26 +482,21 @@ const generateDisableMaxHeightStyles = ({
|
|
|
488
482
|
};
|
|
489
483
|
|
|
490
484
|
const generateRebrandedDisableMaxHeightStyles = (): string => {
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
const maxHeightQuery = isLastSizeBucket
|
|
498
|
-
? ""
|
|
499
|
-
: `and (max-height: ${maxHeight}px)`;
|
|
485
|
+
return Object.keys(BUTTON_REDESIGN_STYLE)
|
|
486
|
+
.map((redesign_size) => {
|
|
487
|
+
const { gap, fontSize, minHeight, maxHeight } =
|
|
488
|
+
getResponsiveRebrandedStyleVariables({
|
|
489
|
+
redesign_size,
|
|
490
|
+
});
|
|
500
491
|
|
|
501
492
|
return `
|
|
502
|
-
@
|
|
493
|
+
@media (min-height: ${minHeight}px) and (max-height: ${maxHeight}px) {
|
|
503
494
|
.${CLASS.BUTTON_REBRAND} > .${CLASS.BUTTON_LABEL} {
|
|
504
495
|
gap: ${gap}px;
|
|
505
496
|
}
|
|
506
|
-
.${CLASS.CONTAINER} .${CLASS.BUTTON_ROW} .${CLASS.
|
|
507
|
-
.${CLASS.CONTAINER} .${CLASS.BUTTON_ROW} .${CLASS.
|
|
497
|
+
.${CLASS.CONTAINER} .${CLASS.BUTTON_ROW} .${CLASS.TEXT},
|
|
498
|
+
.${CLASS.CONTAINER} .${CLASS.BUTTON_ROW} .${CLASS.SPACE} {
|
|
508
499
|
font-size: ${fontSize}px;
|
|
509
|
-
line-height: 1.2;
|
|
510
|
-
margin: 0;
|
|
511
500
|
}
|
|
512
501
|
}
|
|
513
502
|
`;
|
|
@@ -528,10 +517,8 @@ const generateRebrandedButtonSizeStyles = ({
|
|
|
528
517
|
borderRadius?: ?number,
|
|
529
518
|
shouldApplyRebrandedStyles?: boolean,
|
|
530
519
|
|}): string => {
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
.map((redesignSize, sizeIndex) => {
|
|
534
|
-
const isLastSizeBucket = sizeIndex === redesignSizeKeys.length - 1;
|
|
520
|
+
return Object.keys(BUTTON_REDESIGN_STYLE)
|
|
521
|
+
.map((redesign_size) => {
|
|
535
522
|
const {
|
|
536
523
|
buttonHeight,
|
|
537
524
|
pillBorderRadius,
|
|
@@ -545,13 +532,9 @@ const generateRebrandedButtonSizeStyles = ({
|
|
|
545
532
|
minDualWidth,
|
|
546
533
|
} = getResponsiveRebrandedStyleVariables({
|
|
547
534
|
height,
|
|
548
|
-
|
|
535
|
+
redesign_size,
|
|
549
536
|
});
|
|
550
537
|
|
|
551
|
-
const maxWidthQuery = isLastSizeBucket
|
|
552
|
-
? ""
|
|
553
|
-
: `and (max-width: ${maxWidth}px)`;
|
|
554
|
-
|
|
555
538
|
const widthBasedStyles = `
|
|
556
539
|
@media only screen and (min-width: ${minWidth}px) {
|
|
557
540
|
.${CLASS.CONTAINER} {
|
|
@@ -573,9 +556,7 @@ const generateRebrandedButtonSizeStyles = ({
|
|
|
573
556
|
.${CLASS.BUTTON_REBRAND} > .${CLASS.BUTTON_LABEL} {
|
|
574
557
|
margin: 0px 4vw;
|
|
575
558
|
box-sizing: border-box;
|
|
576
|
-
height: ${
|
|
577
|
-
buttonHeight * REBRAND_LABEL_HEIGHT_RATIO
|
|
578
|
-
)}px;
|
|
559
|
+
height: ${buttonHeight * 0.76}px;
|
|
579
560
|
}
|
|
580
561
|
|
|
581
562
|
.${CLASS.BUTTON_REBRAND}.${CLASS.NUMBER}-${BUTTON_NUMBER.MULTIPLE} .${
|
|
@@ -584,8 +565,20 @@ const generateRebrandedButtonSizeStyles = ({
|
|
|
584
565
|
gap: ${gap}px;
|
|
585
566
|
}
|
|
586
567
|
|
|
587
|
-
.${CLASS.
|
|
588
|
-
|
|
568
|
+
.${CLASS.CONTAINER} .${CLASS.BUTTON_ROW}.${CLASS.NUMBER}-${
|
|
569
|
+
BUTTON_NUMBER.MULTIPLE
|
|
570
|
+
} .${CLASS.TEXT},
|
|
571
|
+
.${CLASS.CONTAINER} .${CLASS.BUTTON_ROW}.${CLASS.NUMBER}-${
|
|
572
|
+
BUTTON_NUMBER.MULTIPLE
|
|
573
|
+
} .${CLASS.SPACE} {
|
|
574
|
+
font-size: ${fontSize}px;
|
|
575
|
+
}
|
|
576
|
+
|
|
577
|
+
.${CLASS.BUTTON_ROW}.${CLASS.NUMBER}-${BUTTON_NUMBER.MULTIPLE} .${
|
|
578
|
+
CLASS.BUTTON_REBRAND
|
|
579
|
+
} .${CLASS.TEXT} {
|
|
580
|
+
line-height: 1.2;
|
|
581
|
+
margin: 0;
|
|
589
582
|
}
|
|
590
583
|
|
|
591
584
|
.${CLASS.BUTTON_ROW}.${CLASS.LAYOUT}-${BUTTON_LAYOUT.VERTICAL}.${
|
|
@@ -604,20 +597,7 @@ const generateRebrandedButtonSizeStyles = ({
|
|
|
604
597
|
margin-bottom: 0;
|
|
605
598
|
}
|
|
606
599
|
}
|
|
607
|
-
|
|
608
|
-
@media only screen and (min-width: ${minWidth}px) ${maxWidthQuery} {
|
|
609
|
-
.${CLASS.CONTAINER} .${CLASS.BUTTON_ROW} .${CLASS.BUTTON_REBRAND} .${
|
|
610
|
-
CLASS.TEXT
|
|
611
|
-
},
|
|
612
|
-
.${CLASS.CONTAINER} .${CLASS.BUTTON_ROW} .${CLASS.BUTTON_REBRAND} .${
|
|
613
|
-
CLASS.SPACE
|
|
614
|
-
} {
|
|
615
|
-
font-size: ${fontSize}px;
|
|
616
|
-
line-height: 1.2;
|
|
617
|
-
margin: 0;
|
|
618
|
-
}
|
|
619
|
-
}
|
|
620
|
-
|
|
600
|
+
|
|
621
601
|
@media only screen and (min-width: ${minWidth}px) and (max-width: ${minDualWidth}px) {
|
|
622
602
|
.${CLASS.BUTTON_ROW}.${CLASS.LAYOUT}-${BUTTON_LAYOUT.HORIZONTAL}.${
|
|
623
603
|
CLASS.NUMBER
|
|
@@ -692,18 +672,17 @@ const generateRebrandedButtonSizeStyles = ({
|
|
|
692
672
|
`;
|
|
693
673
|
|
|
694
674
|
const heightBasedStyles = `
|
|
695
|
-
@
|
|
675
|
+
@media only screen and (min-height: ${minHeight}px) and (max-height: ${maxHeight}px) {
|
|
696
676
|
.${CLASS.BUTTON_REBRAND} > .${CLASS.BUTTON_LABEL} {
|
|
697
677
|
gap: ${gap}px;
|
|
698
678
|
}
|
|
699
679
|
|
|
700
|
-
.${CLASS.CONTAINER} .${CLASS.BUTTON_ROW} .${CLASS.
|
|
701
|
-
|
|
702
|
-
} .${CLASS.TEXT},
|
|
703
|
-
.${CLASS.CONTAINER} .${CLASS.BUTTON_ROW} .${CLASS.BUTTON_REBRAND}.${
|
|
704
|
-
CLASS.BUTTON_REBRAND
|
|
705
|
-
} .${CLASS.SPACE} {
|
|
680
|
+
.${CLASS.CONTAINER} .${CLASS.BUTTON_ROW} .${CLASS.TEXT},
|
|
681
|
+
.${CLASS.CONTAINER} .${CLASS.BUTTON_ROW} .${CLASS.SPACE} {
|
|
706
682
|
font-size: ${fontSize}px;
|
|
683
|
+
}
|
|
684
|
+
|
|
685
|
+
.${CLASS.BUTTON_ROW} .${CLASS.BUTTON_REBRAND} .${CLASS.TEXT} {
|
|
707
686
|
line-height: 1.2;
|
|
708
687
|
margin: 0;
|
|
709
688
|
}
|
|
@@ -758,23 +737,20 @@ const generateRebrandedButtonSizeStyles = ({
|
|
|
758
737
|
.${CLASS.BUTTON}.${CLASS.BORDER_RADIUS} {
|
|
759
738
|
${
|
|
760
739
|
borderRadius && isBorderRadiusNumber(borderRadius)
|
|
761
|
-
?
|
|
740
|
+
? `border-radius: ${borderRadius}px`
|
|
762
741
|
: ""
|
|
763
742
|
}
|
|
764
743
|
}
|
|
765
744
|
|
|
766
745
|
.${CLASS.BUTTON}.${CLASS.SHAPE}-${BUTTON_SHAPE.SHARP} {
|
|
767
|
-
--btn-radius: 0px;
|
|
768
746
|
border-radius: 0px;
|
|
769
747
|
}
|
|
770
748
|
|
|
771
749
|
.${CLASS.BUTTON}.${CLASS.SHAPE}-${BUTTON_SHAPE.RECT} {
|
|
772
|
-
--btn-radius: 4px;
|
|
773
750
|
border-radius: 4px;
|
|
774
751
|
}
|
|
775
752
|
|
|
776
753
|
.${CLASS.BUTTON}.${CLASS.SHAPE}-${BUTTON_SHAPE.PILL} {
|
|
777
|
-
--btn-radius: ${pillBorderRadius}px;
|
|
778
754
|
border-radius: ${pillBorderRadius}px;
|
|
779
755
|
}
|
|
780
756
|
|
|
@@ -893,16 +869,14 @@ export function buttonResponsiveStyle({
|
|
|
893
869
|
.${CLASS.BUTTON}.${CLASS.BORDER_RADIUS} {
|
|
894
870
|
${
|
|
895
871
|
borderRadius && isBorderRadiusNumber(borderRadius)
|
|
896
|
-
?
|
|
872
|
+
? `border-radius: ${borderRadius}px`
|
|
897
873
|
: ""
|
|
898
874
|
};
|
|
899
875
|
}
|
|
900
876
|
.${CLASS.BUTTON}.${CLASS.SHAPE}-${BUTTON_SHAPE.SHARP} {
|
|
901
|
-
--btn-radius: 0px;
|
|
902
877
|
border-radius: 0px;
|
|
903
878
|
}
|
|
904
879
|
.${CLASS.BUTTON}.${CLASS.SHAPE}-${BUTTON_SHAPE.RECT} {
|
|
905
|
-
--btn-radius: 4px;
|
|
906
880
|
border-radius: 4px;
|
|
907
881
|
}
|
|
908
882
|
|
|
@@ -928,10 +902,6 @@ export function buttonResponsiveStyle({
|
|
|
928
902
|
.${CLASS.CARD} {
|
|
929
903
|
display: inline-block;
|
|
930
904
|
height: 100%;
|
|
931
|
-
}
|
|
932
|
-
|
|
933
|
-
.${CLASS.BUTTON_ROW} {
|
|
934
|
-
container-type: size;
|
|
935
905
|
}`;
|
|
936
906
|
|
|
937
907
|
const rebrandedStyles = shouldApplyRebrandedStyles
|
|
@@ -7,7 +7,6 @@ import {
|
|
|
7
7
|
BUTTON_DISABLE_MAX_HEIGHT_STYLE,
|
|
8
8
|
BUTTON_SIZE_STYLE,
|
|
9
9
|
BUTTON_REDESIGN_STYLE,
|
|
10
|
-
REBRAND_LABEL_HEIGHT_RATIO,
|
|
11
10
|
} from "../config";
|
|
12
11
|
import {
|
|
13
12
|
BUTTON_SIZE,
|
|
@@ -33,7 +32,7 @@ function getLabelHeight({
|
|
|
33
32
|
let labelHeight = max(roundUp(perc(height, labelPercPercentage) + 5, 2), 12);
|
|
34
33
|
|
|
35
34
|
if (shouldApplyRebrandedStyles) {
|
|
36
|
-
labelHeight = roundUp(perc(height,
|
|
35
|
+
labelHeight = roundUp(perc(height, 76), 1);
|
|
37
36
|
}
|
|
38
37
|
|
|
39
38
|
return parseInt(labelHeight, 10);
|
|
@@ -142,10 +141,7 @@ export function getResponsiveStyleVariables({
|
|
|
142
141
|
const pillBorderRadius = Math.ceil(buttonHeight / 2);
|
|
143
142
|
|
|
144
143
|
if (shouldApplyRebrandedStyles) {
|
|
145
|
-
labelHeight = roundUp(
|
|
146
|
-
perc(buttonHeight, REBRAND_LABEL_HEIGHT_RATIO * 100),
|
|
147
|
-
1
|
|
148
|
-
);
|
|
144
|
+
labelHeight = roundUp(perc(buttonHeight, 76), 1);
|
|
149
145
|
// smallerLabelHeight gets triggered at widths < 320px
|
|
150
146
|
// We will need to investigate why the labels need to get significantly smaller at this breakpoint
|
|
151
147
|
smallerLabelHeight = labelHeight;
|
|
@@ -169,12 +165,12 @@ export function getResponsiveStyleVariables({
|
|
|
169
165
|
|
|
170
166
|
export function getResponsiveRebrandedStyleVariables({
|
|
171
167
|
height,
|
|
172
|
-
|
|
168
|
+
redesign_size,
|
|
173
169
|
}: {|
|
|
174
170
|
height?: ?number,
|
|
175
|
-
|
|
171
|
+
redesign_size: $Values<typeof BUTTON_REDESIGN_SIZE>,
|
|
176
172
|
|}): Object {
|
|
177
|
-
const style = BUTTON_REDESIGN_STYLE[
|
|
173
|
+
const style = BUTTON_REDESIGN_STYLE[redesign_size];
|
|
178
174
|
const {
|
|
179
175
|
minHeight,
|
|
180
176
|
maxHeight,
|