@capillarytech/creatives-library 9.0.36-alpha.0 → 9.0.36
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/app.js +175 -10
- package/entry.js +1 -67
- package/mfe-exposed-components.js +4 -2
- package/package.json +2 -2
- package/services/api.js +1 -9
- package/styles/containers/layout/_layoutPage.scss +6 -8
- package/utils/gtmTrackers/gtmEvents/creativeDetails.js +1 -2
- package/utils/rcsPayloadUtils.js +2 -5
- package/utils/tests/rcsPayloadUtils.test.js +2 -54
- package/v2Components/CapActionButton/constants.js +0 -1
- package/v2Components/CapActionButton/index.js +9 -77
- package/v2Components/CapActionButton/index.scss +0 -13
- package/v2Components/CapActionButton/messages.js +0 -13
- package/v2Components/CapActionButton/tests/index.test.js +1 -32
- package/v2Components/CommonTestAndPreview/UnifiedPreview/ViberPreviewContent.js +15 -108
- package/v2Components/CommonTestAndPreview/UnifiedPreview/_unifiedPreview.scss +1 -139
- package/v2Components/CommonTestAndPreview/index.js +41 -284
- package/v2Components/CommonTestAndPreview/tests/UnifiedPreview/ViberPreviewContent.test.js +0 -364
- package/v2Components/CommonTestAndPreview/tests/index.test.js +0 -78
- package/v2Components/CommonTestAndPreview/utils.js +0 -34
- package/v2Components/NavigationBar/index.js +7 -9
- package/v2Components/NavigationBar/tests/index.test.js +19 -39
- package/v2Components/SmsFallback/index.js +0 -6
- package/v2Containers/Cap/constants.js +0 -1
- package/v2Containers/Cap/index.js +27 -57
- package/v2Containers/CreativesContainer/index.js +8 -11
- package/v2Containers/CreativesContainer/tests/index.test.js +0 -53
- package/v2Containers/Rcs/carouselUtils.js +73 -46
- package/v2Containers/Rcs/components/CarouselCard.js +9 -11
- package/v2Containers/Rcs/components/CarouselCardButtons.js +0 -20
- package/v2Containers/Rcs/constants.js +7 -2
- package/v2Containers/Rcs/index.js +205 -226
- package/v2Containers/Rcs/rcsLibraryHydrationUtils.js +47 -60
- package/v2Containers/Rcs/tests/CarouselCard.test.js +2 -1
- package/v2Containers/Rcs/tests/__snapshots__/index.test.js.snap +0 -286
- package/v2Containers/Rcs/tests/carouselUtils.test.js +32 -28
- package/v2Containers/Rcs/tests/index.test.js +238 -151
- package/v2Containers/Rcs/tests/rcsLibraryHydrationUtils.test.js +0 -110
- package/v2Containers/Rcs/tests/utils.test.js +17 -36
- package/v2Containers/Rcs/utils.js +55 -28
- package/v2Containers/SmsTrai/Edit/index.js +24 -35
- package/v2Containers/Templates/_templates.scss +1 -115
- package/v2Containers/Templates/index.js +10 -91
- package/v2Containers/Templates/tests/__snapshots__/index.test.js.snap +0 -5
- package/v2Containers/TemplatesV2/TemplatesV2.style.js +3 -8
- package/v2Containers/TemplatesV2/index.js +9 -22
- package/v2Containers/Viber/constants.js +0 -21
- package/v2Containers/Viber/index.js +49 -719
- package/v2Containers/Viber/index.scss +0 -175
- package/v2Containers/Viber/messages.js +0 -121
- package/v2Containers/Viber/tests/index.test.js +0 -80
- package/AppRoot.js +0 -124
- package/app-config.js +0 -61
- package/bootstrap.js +0 -185
- package/utils/getDataLayer.js +0 -15
- package/utils/mfeDetect.js +0 -1
- package/utils/mfeFirstPaintReady.js +0 -29
- package/utils/mfeHistory.js +0 -62
- package/v2Components/CommonTestAndPreview/UnifiedPreview/ViberCarouselPreviewCards.js +0 -132
- package/v2Components/CommonTestAndPreview/UnifiedPreview/_viberCarouselPreviewCards.scss +0 -131
- package/v2Components/NavigationBar/mfeModuleHeader.config.js +0 -16
|
@@ -199,17 +199,4 @@ export default defineMessages({
|
|
|
199
199
|
id: `${prefix}.addLabels`,
|
|
200
200
|
defaultMessage: 'Add Labels',
|
|
201
201
|
},
|
|
202
|
-
ctaDynamicUrlTooltip: {
|
|
203
|
-
id: `${prefix}.ctaDynamicUrlTooltip`,
|
|
204
|
-
defaultMessage:
|
|
205
|
-
'Only one variable can be added to a URL. No need to add {one} to the end of the URL',
|
|
206
|
-
},
|
|
207
|
-
ctaTagListLabel: {
|
|
208
|
-
id: `${prefix}.ctaTagListLabel`,
|
|
209
|
-
defaultMessage: 'Add URL label',
|
|
210
|
-
},
|
|
211
|
-
ctaTagListRevert: {
|
|
212
|
-
id: `${prefix}.ctaTagListRevert`,
|
|
213
|
-
defaultMessage: 'Reset website URL label to default value',
|
|
214
|
-
},
|
|
215
202
|
});
|
|
@@ -4,9 +4,7 @@ import '@testing-library/jest-dom';
|
|
|
4
4
|
import { render, screen, fireEvent } from '../../../utils/test-utils';
|
|
5
5
|
import { waitFor } from '@testing-library/react';
|
|
6
6
|
import { CapActionButton } from '../index';
|
|
7
|
-
import {
|
|
8
|
-
BTN_MAX_LENGTH, PHONE_NUMBER_MAX_LENGTH, URL_MAX_LENGTH, RCS_CTA_URL_TYPE, DYNAMIC_URL_SUFFIX,
|
|
9
|
-
} from '../constants';
|
|
7
|
+
import { BTN_MAX_LENGTH, PHONE_NUMBER_MAX_LENGTH, URL_MAX_LENGTH } from '../constants';
|
|
10
8
|
import { RCS_BUTTON_TYPES, HOST_ICS } from '../../../v2Containers/Rcs/constants';
|
|
11
9
|
|
|
12
10
|
const updateHandler = jest.fn();
|
|
@@ -29,7 +27,6 @@ const initializeComponent = (
|
|
|
29
27
|
text: d.displayText ?? d.text ?? '',
|
|
30
28
|
phoneNumber: d.phoneNumber ?? '',
|
|
31
29
|
url: d.url ?? '',
|
|
32
|
-
urlType: d.urlType,
|
|
33
30
|
postback: d.postback ?? '',
|
|
34
31
|
isSaved: d.isSaved ?? false,
|
|
35
32
|
}));
|
|
@@ -554,34 +551,6 @@ describe('CapActionButton', () => {
|
|
|
554
551
|
expect(screen.getByRole('button', { name: /save/i })).toBeDisabled();
|
|
555
552
|
});
|
|
556
553
|
|
|
557
|
-
it('should disable save for a dynamic-URL CTA still holding the unresolved {{1}} placeholder', () => {
|
|
558
|
-
const initial = {
|
|
559
|
-
index: 0,
|
|
560
|
-
type: RCS_BUTTON_TYPES.CTA,
|
|
561
|
-
text: 'Visit here',
|
|
562
|
-
url: `https://example.com${DYNAMIC_URL_SUFFIX}`,
|
|
563
|
-
urlType: RCS_CTA_URL_TYPE.DYNAMIC,
|
|
564
|
-
postback: 'Visit here',
|
|
565
|
-
isSaved: false,
|
|
566
|
-
};
|
|
567
|
-
initializeComponent([initial]);
|
|
568
|
-
expect(screen.getByRole('button', { name: /save/i })).toBeDisabled();
|
|
569
|
-
});
|
|
570
|
-
|
|
571
|
-
it('should enable save for a dynamic-URL CTA once the placeholder has been replaced with a real tag', () => {
|
|
572
|
-
const initial = {
|
|
573
|
-
index: 0,
|
|
574
|
-
type: RCS_BUTTON_TYPES.CTA,
|
|
575
|
-
text: 'Visit here',
|
|
576
|
-
url: 'https://example.com{{first_name}}',
|
|
577
|
-
urlType: RCS_CTA_URL_TYPE.DYNAMIC,
|
|
578
|
-
postback: 'Visit here',
|
|
579
|
-
isSaved: false,
|
|
580
|
-
};
|
|
581
|
-
initializeComponent([initial]);
|
|
582
|
-
expect(screen.getByRole('button', { name: /save/i })).not.toBeDisabled();
|
|
583
|
-
});
|
|
584
|
-
|
|
585
554
|
it('should render edit and delete icons in edit mode (renderedContent)', () => {
|
|
586
555
|
const button = {
|
|
587
556
|
index: 1,
|
|
@@ -14,25 +14,14 @@ import CapSpin from '@capillarytech/cap-ui-library/CapSpin';
|
|
|
14
14
|
import CapImage from '@capillarytech/cap-ui-library/CapImage';
|
|
15
15
|
import CapTooltip from '@capillarytech/cap-ui-library/CapTooltip';
|
|
16
16
|
import CapRow from '@capillarytech/cap-ui-library/CapRow';
|
|
17
|
-
import {
|
|
18
|
-
ANDROID,
|
|
19
|
-
IOS,
|
|
20
|
-
ANDROID_DEVICE_NAME,
|
|
21
|
-
IOS_DEVICE_NAME,
|
|
22
|
-
VIBER_ACCOUNT_NAME,
|
|
23
|
-
MEDIA_TYPE_CAROUSEL,
|
|
24
|
-
} from '../constants';
|
|
17
|
+
import { ANDROID, IOS, ANDROID_DEVICE_NAME, IOS_DEVICE_NAME, VIBER_ACCOUNT_NAME } from '../constants';
|
|
25
18
|
import messages from '../messages';
|
|
26
19
|
import videoPlay from '../../../assets/videoPlay.svg';
|
|
27
|
-
import ViberCarouselPreviewCards from './ViberCarouselPreviewCards';
|
|
28
20
|
|
|
29
21
|
// Import device mockup images (same as SMS)
|
|
30
22
|
const smsMobileAndroid = require('../../../assets/Android.png');
|
|
31
23
|
const smsMobileIos = require('../../../assets/iOS.png');
|
|
32
24
|
|
|
33
|
-
const getTrimmedText = (value = '') => (value ?? '').trim();
|
|
34
|
-
const hasTrimmedText = (value = '') => Boolean(getTrimmedText(value));
|
|
35
|
-
|
|
36
25
|
const ViberPreviewContent = ({
|
|
37
26
|
content,
|
|
38
27
|
device,
|
|
@@ -54,35 +43,7 @@ const ViberPreviewContent = ({
|
|
|
54
43
|
imageURL = '',
|
|
55
44
|
videoParams = {},
|
|
56
45
|
buttonText = '',
|
|
57
|
-
type = '',
|
|
58
|
-
cards = [],
|
|
59
|
-
showCarouselEditorPreview = false,
|
|
60
46
|
} = viberContent;
|
|
61
|
-
const hasCarouselContent = type === MEDIA_TYPE_CAROUSEL;
|
|
62
|
-
|
|
63
|
-
const cardHasMeaningfulContent = (card) => {
|
|
64
|
-
if (!card || typeof card !== 'object') return false;
|
|
65
|
-
return (
|
|
66
|
-
hasTrimmedText(card?.text) ||
|
|
67
|
-
hasTrimmedText(card?.mediaUrl) ||
|
|
68
|
-
(card.buttons ?? []).some(button => hasTrimmedText(button?.title))
|
|
69
|
-
);
|
|
70
|
-
};
|
|
71
|
-
|
|
72
|
-
const hasMeaningfulCarousel =
|
|
73
|
-
hasCarouselContent &&
|
|
74
|
-
Array.isArray(cards) &&
|
|
75
|
-
cards.length > 0 &&
|
|
76
|
-
cards.some(cardHasMeaningfulContent);
|
|
77
|
-
|
|
78
|
-
const showCarouselInPreview =
|
|
79
|
-
hasCarouselContent && (Boolean(showCarouselEditorPreview) || hasMeaningfulCarousel);
|
|
80
|
-
|
|
81
|
-
const previewCarouselCards =
|
|
82
|
-
hasCarouselContent && Array.isArray(cards) && cards.length ? cards : hasCarouselContent ? [{}] : [];
|
|
83
|
-
|
|
84
|
-
const trimmedMessageContent = getTrimmedText(messageContent);
|
|
85
|
-
const trimmedButtonText = getTrimmedText(buttonText);
|
|
86
47
|
|
|
87
48
|
// Get account name (first letter for icon)
|
|
88
49
|
const accountIcon = (accountName || brandName || 'V')[0]?.toUpperCase();
|
|
@@ -138,15 +99,8 @@ const ViberPreviewContent = ({
|
|
|
138
99
|
);
|
|
139
100
|
}
|
|
140
101
|
|
|
141
|
-
// Check if there's any content to display
|
|
142
|
-
const hasContent =
|
|
143
|
-
trimmedMessageContent
|
|
144
|
-
|| hasTrimmedText(imageURL)
|
|
145
|
-
|| videoParams?.viberVideoSrc
|
|
146
|
-
|| trimmedButtonText
|
|
147
|
-
|| hasMeaningfulCarousel
|
|
148
|
-
|| (hasCarouselContent && showCarouselEditorPreview)
|
|
149
|
-
);
|
|
102
|
+
// Check if there's any content to display
|
|
103
|
+
const hasContent = messageContent || imageURL || videoParams?.viberVideoSrc || buttonText;
|
|
150
104
|
|
|
151
105
|
// Render normal Viber preview
|
|
152
106
|
return (
|
|
@@ -171,34 +125,23 @@ const ViberPreviewContent = ({
|
|
|
171
125
|
|
|
172
126
|
{/* Viber Message Container */}
|
|
173
127
|
{hasContent && (
|
|
174
|
-
<CapRow className={`viber-message-container ${
|
|
128
|
+
<CapRow className={`viber-message-container ${device !== ANDROID ? 'viber-message-container-ios' : ''}`}>
|
|
175
129
|
{/* Brand Name Display (from TemplatePreview line 1136) */}
|
|
176
|
-
<CapRow
|
|
177
|
-
type="flex"
|
|
178
|
-
align="middle"
|
|
179
|
-
fullWidth={showCarouselInPreview}
|
|
180
|
-
className={`msg-container viber-preview ${showCarouselInPreview ? 'viber-preview-carousel' : ''}`}
|
|
181
|
-
>
|
|
130
|
+
<CapRow type="flex" align="middle" className="msg-container viber-preview">
|
|
182
131
|
{/* Account Icon (from TemplatePreview line 1146-1160) */}
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
</CapRow>
|
|
187
|
-
)}
|
|
132
|
+
<CapRow type='flex' className="viber-account-icon">
|
|
133
|
+
{accountIcon}
|
|
134
|
+
</CapRow>
|
|
188
135
|
|
|
189
136
|
{/* Message Bubble (from TemplatePreview line 1161-1223) */}
|
|
190
|
-
<CapRow
|
|
191
|
-
useLegacy
|
|
192
|
-
fullWidth={showCarouselInPreview}
|
|
193
|
-
className={`message-pop align-left viber-message-pop ${showCarouselInPreview ? 'viber-message-pop-carousel' : ''}`}
|
|
194
|
-
>
|
|
137
|
+
<CapRow useLegacy className="message-pop align-left viber-message-pop">
|
|
195
138
|
{/* Text Viber preview */}
|
|
196
|
-
{
|
|
139
|
+
{messageContent && (
|
|
197
140
|
<CapLabel type="label15" className="viber-message-text">{messageContent}</CapLabel>
|
|
198
141
|
)}
|
|
199
142
|
|
|
200
143
|
{/* Image Viber preview */}
|
|
201
|
-
{
|
|
144
|
+
{imageURL && (
|
|
202
145
|
<CapImage
|
|
203
146
|
src={imageURL}
|
|
204
147
|
className="viber-image-preview"
|
|
@@ -228,42 +171,16 @@ const ViberPreviewContent = ({
|
|
|
228
171
|
)}
|
|
229
172
|
|
|
230
173
|
{/* Button Viber preview */}
|
|
231
|
-
{
|
|
174
|
+
{buttonText && (
|
|
232
175
|
<CapLabel className="viber-button-base">
|
|
233
176
|
<p className="viber-button-card-text">
|
|
234
177
|
{buttonText}
|
|
235
178
|
</p>
|
|
236
179
|
</CapLabel>
|
|
237
180
|
)}
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
<CapRow type="flex-column" className="viber-carousel-message-pop">
|
|
242
|
-
{trimmedMessageContent ? (
|
|
243
|
-
<CapLabel
|
|
244
|
-
type="label15"
|
|
245
|
-
className="message-pop-item align-left viber-message-text viber-carousel-message-box-text"
|
|
246
|
-
>
|
|
247
|
-
{messageContent}
|
|
248
|
-
</CapLabel>
|
|
249
|
-
) : (
|
|
250
|
-
<CapRow className="viber-carousel-message-box-placeholder" />
|
|
251
|
-
)}
|
|
252
|
-
<CapLabel type="label1" className="viber-carousel-message-timestamp">
|
|
253
|
-
{timestamp}
|
|
254
|
-
</CapLabel>
|
|
255
|
-
</CapRow>
|
|
256
|
-
|
|
257
|
-
<CapRow type="flex-column" fullWidth className="viber-carousel-cards-pop">
|
|
258
|
-
<ViberCarouselPreviewCards cards={previewCarouselCards} />
|
|
259
|
-
</CapRow>
|
|
260
|
-
</CapRow>
|
|
261
|
-
)}
|
|
262
|
-
{!showCarouselInPreview && (
|
|
263
|
-
<CapLabel type="label1" className="viber-timestamp">
|
|
264
|
-
{timestamp}
|
|
265
|
-
</CapLabel>
|
|
266
|
-
)}
|
|
181
|
+
<CapLabel type="label1" className="viber-timestamp">
|
|
182
|
+
{timestamp}
|
|
183
|
+
</CapLabel>
|
|
267
184
|
<CapRow useLegacy className="empty-placeholder" />
|
|
268
185
|
</CapRow>
|
|
269
186
|
|
|
@@ -297,16 +214,6 @@ ViberPreviewContent.propTypes = {
|
|
|
297
214
|
viberVideoPreviewImg: PropTypes.string,
|
|
298
215
|
}),
|
|
299
216
|
buttonText: PropTypes.string,
|
|
300
|
-
type: PropTypes.string,
|
|
301
|
-
cards: PropTypes.arrayOf(PropTypes.shape({
|
|
302
|
-
text: PropTypes.string,
|
|
303
|
-
mediaUrl: PropTypes.string,
|
|
304
|
-
buttons: PropTypes.arrayOf(PropTypes.shape({
|
|
305
|
-
title: PropTypes.string,
|
|
306
|
-
action: PropTypes.string,
|
|
307
|
-
})),
|
|
308
|
-
})),
|
|
309
|
-
showCarouselEditorPreview: PropTypes.bool,
|
|
310
217
|
}),
|
|
311
218
|
}),
|
|
312
219
|
device: PropTypes.oneOf([ANDROID, IOS]),
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
@import '~@capillarytech/cap-ui-library/styles/_variables';
|
|
2
|
-
@import './_viberCarouselPreviewCards.scss';
|
|
3
2
|
|
|
4
3
|
/**
|
|
5
4
|
* UnifiedPreview Styles
|
|
@@ -783,13 +782,9 @@
|
|
|
783
782
|
|
|
784
783
|
.viber-content-overlay {
|
|
785
784
|
top: 3.2rem;
|
|
786
|
-
|
|
787
|
-
|
|
788
|
-
.sms-navigation-bar.viber-navigation-bar {
|
|
789
|
-
width: calc(100% - #{$CAP_SPACE_06} - #{$CAP_SPACE_08});
|
|
785
|
+
.viber-navigation-bar {
|
|
790
786
|
margin-left: $CAP_SPACE_06;
|
|
791
787
|
margin-right: $CAP_SPACE_08;
|
|
792
|
-
box-sizing: border-box;
|
|
793
788
|
}
|
|
794
789
|
}
|
|
795
790
|
|
|
@@ -2412,21 +2407,12 @@
|
|
|
2412
2407
|
// Body content follows TemplatePreview Viber structure
|
|
2413
2408
|
.sms-content-overlay {
|
|
2414
2409
|
&.viber-preview {
|
|
2415
|
-
overflow: hidden;
|
|
2416
|
-
|
|
2417
2410
|
// Viber message container
|
|
2418
2411
|
.viber-message-container {
|
|
2419
2412
|
position: relative;
|
|
2420
2413
|
flex: 1;
|
|
2421
2414
|
display: flex;
|
|
2422
2415
|
flex-direction: column;
|
|
2423
|
-
overflow-x: hidden;
|
|
2424
|
-
overflow-y: auto;
|
|
2425
|
-
-webkit-overflow-scrolling: touch;
|
|
2426
|
-
min-width: 0;
|
|
2427
|
-
max-width: 100%;
|
|
2428
|
-
box-sizing: border-box;
|
|
2429
|
-
width: calc(100% - #{$CAP_SPACE_06} - #{$CAP_SPACE_08});
|
|
2430
2416
|
padding: 0 $CAP_SPACE_16;
|
|
2431
2417
|
background-color: #ffffff;
|
|
2432
2418
|
margin-left: $CAP_SPACE_06;
|
|
@@ -2434,20 +2420,6 @@
|
|
|
2434
2420
|
border-bottom-left-radius: 2.6rem;
|
|
2435
2421
|
border-bottom-right-radius: 2.6rem;
|
|
2436
2422
|
|
|
2437
|
-
&.viber-message-container-carousel {
|
|
2438
|
-
padding-left: $CAP_SPACE_08;
|
|
2439
|
-
padding-right: $CAP_SPACE_08;
|
|
2440
|
-
width: calc(100% - #{$CAP_SPACE_04} - #{$CAP_SPACE_04});
|
|
2441
|
-
margin-left: $CAP_SPACE_04;
|
|
2442
|
-
margin-right: $CAP_SPACE_04;
|
|
2443
|
-
|
|
2444
|
-
> .ant-row,
|
|
2445
|
-
.ant-row.msg-container.viber-preview-carousel {
|
|
2446
|
-
margin-left: 0;
|
|
2447
|
-
margin-right: 0;
|
|
2448
|
-
}
|
|
2449
|
-
}
|
|
2450
|
-
|
|
2451
2423
|
// Brand name display (from TemplatePreview line 1136)
|
|
2452
2424
|
.viber-brand-name {
|
|
2453
2425
|
position: absolute;
|
|
@@ -2469,16 +2441,6 @@
|
|
|
2469
2441
|
flex-direction: row;
|
|
2470
2442
|
align-items: start;
|
|
2471
2443
|
|
|
2472
|
-
&.viber-preview-carousel {
|
|
2473
|
-
width: 100%;
|
|
2474
|
-
max-width: 100%;
|
|
2475
|
-
margin-left: 0;
|
|
2476
|
-
margin-right: 0;
|
|
2477
|
-
max-height: 100%;
|
|
2478
|
-
min-width: 0;
|
|
2479
|
-
box-sizing: border-box;
|
|
2480
|
-
}
|
|
2481
|
-
|
|
2482
2444
|
// Account icon (from TemplatePreview line 1146-1160)
|
|
2483
2445
|
.viber-account-icon {
|
|
2484
2446
|
width: $CAP_SPACE_20;
|
|
@@ -2503,22 +2465,6 @@
|
|
|
2503
2465
|
border-radius: $CAP_SPACE_04;
|
|
2504
2466
|
padding: $CAP_SPACE_04;
|
|
2505
2467
|
|
|
2506
|
-
&.viber-message-pop-carousel {
|
|
2507
|
-
width: 100%;
|
|
2508
|
-
max-width: 100%;
|
|
2509
|
-
min-width: 0;
|
|
2510
|
-
left: 0;
|
|
2511
|
-
margin-top: 0;
|
|
2512
|
-
padding: 0;
|
|
2513
|
-
background: transparent;
|
|
2514
|
-
display: flex;
|
|
2515
|
-
flex-direction: column;
|
|
2516
|
-
align-items: flex-start;
|
|
2517
|
-
gap: $CAP_SPACE_06;
|
|
2518
|
-
overflow: hidden;
|
|
2519
|
-
box-sizing: border-box;
|
|
2520
|
-
}
|
|
2521
|
-
|
|
2522
2468
|
// Text Viber preview (from TemplatePreview line 1166-1174)
|
|
2523
2469
|
.viber-message-text {
|
|
2524
2470
|
margin: 0.107rem $CAP_SPACE_06 $CAP_SPACE_01 0.5rem;
|
|
@@ -2590,85 +2536,6 @@
|
|
|
2590
2536
|
}
|
|
2591
2537
|
}
|
|
2592
2538
|
|
|
2593
|
-
.viber-carousel-preview {
|
|
2594
|
-
width: 100%;
|
|
2595
|
-
max-width: 100%;
|
|
2596
|
-
min-width: 0;
|
|
2597
|
-
display: flex;
|
|
2598
|
-
flex-direction: column;
|
|
2599
|
-
align-items: flex-start;
|
|
2600
|
-
gap: $CAP_SPACE_06;
|
|
2601
|
-
overflow: hidden;
|
|
2602
|
-
box-sizing: border-box;
|
|
2603
|
-
}
|
|
2604
|
-
|
|
2605
|
-
.viber-carousel-message-pop,
|
|
2606
|
-
.viber-carousel-cards-pop {
|
|
2607
|
-
width: 100%;
|
|
2608
|
-
max-width: 100%;
|
|
2609
|
-
min-width: 0;
|
|
2610
|
-
background: $CAP_G08;
|
|
2611
|
-
border-radius: $CAP_SPACE_06;
|
|
2612
|
-
padding: $CAP_SPACE_08;
|
|
2613
|
-
box-sizing: border-box;
|
|
2614
|
-
}
|
|
2615
|
-
|
|
2616
|
-
.viber-carousel-message-pop {
|
|
2617
|
-
margin-top: 0;
|
|
2618
|
-
width: 85%;
|
|
2619
|
-
border-radius: 0 $CAP_SPACE_06 $CAP_SPACE_06 $CAP_SPACE_06;
|
|
2620
|
-
display: flex;
|
|
2621
|
-
flex-direction: column;
|
|
2622
|
-
overflow: hidden;
|
|
2623
|
-
}
|
|
2624
|
-
|
|
2625
|
-
.viber-carousel-cards-pop {
|
|
2626
|
-
margin-top: 0;
|
|
2627
|
-
width: 100%;
|
|
2628
|
-
background: transparent;
|
|
2629
|
-
border: none;
|
|
2630
|
-
border-radius: 0;
|
|
2631
|
-
padding: 0;
|
|
2632
|
-
overflow: hidden;
|
|
2633
|
-
}
|
|
2634
|
-
|
|
2635
|
-
.viber-carousel-message-box {
|
|
2636
|
-
width: 100%;
|
|
2637
|
-
min-height: 2.25rem;
|
|
2638
|
-
height: auto;
|
|
2639
|
-
border-radius: $CAP_SPACE_04;
|
|
2640
|
-
background: transparent;
|
|
2641
|
-
padding: 0 $CAP_SPACE_08;
|
|
2642
|
-
display: flex;
|
|
2643
|
-
align-items: center;
|
|
2644
|
-
}
|
|
2645
|
-
|
|
2646
|
-
.viber-carousel-message-box-text {
|
|
2647
|
-
color: $CAP_G01;
|
|
2648
|
-
margin: 0.107rem $CAP_SPACE_06 $CAP_SPACE_01 0.5rem;
|
|
2649
|
-
white-space: normal;
|
|
2650
|
-
word-break: break-word;
|
|
2651
|
-
overflow-wrap: break-word;
|
|
2652
|
-
overflow: hidden;
|
|
2653
|
-
max-width: 100%;
|
|
2654
|
-
box-sizing: border-box;
|
|
2655
|
-
}
|
|
2656
|
-
|
|
2657
|
-
.viber-carousel-message-box-placeholder {
|
|
2658
|
-
width: 100%;
|
|
2659
|
-
height: 0.875rem;
|
|
2660
|
-
border-radius: $CAP_SPACE_04;
|
|
2661
|
-
background: $CAP_G07;
|
|
2662
|
-
}
|
|
2663
|
-
|
|
2664
|
-
.viber-carousel-message-timestamp,
|
|
2665
|
-
.viber-carousel-cards-timestamp {
|
|
2666
|
-
display: block;
|
|
2667
|
-
text-align: right;
|
|
2668
|
-
margin-top: $CAP_SPACE_06;
|
|
2669
|
-
color: $CAP_G04;
|
|
2670
|
-
}
|
|
2671
|
-
|
|
2672
2539
|
.empty-placeholder {
|
|
2673
2540
|
height: $CAP_SPACE_08;
|
|
2674
2541
|
}
|
|
@@ -2682,11 +2549,6 @@
|
|
|
2682
2549
|
.viber-message-container-ios {
|
|
2683
2550
|
margin-left: 1rem;
|
|
2684
2551
|
margin-right: 1rem;
|
|
2685
|
-
|
|
2686
|
-
&.viber-message-container-carousel {
|
|
2687
|
-
margin-left: $CAP_SPACE_04;
|
|
2688
|
-
margin-right: $CAP_SPACE_04;
|
|
2689
|
-
}
|
|
2690
2552
|
}
|
|
2691
2553
|
}
|
|
2692
2554
|
}
|