@capillarytech/creatives-library 9.0.15-alpha.3 → 9.0.16-beta.0
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/AppRoot.js +80 -0
- package/app.js +5 -3
- package/constants/unified.js +0 -29
- package/entry.js +67 -1
- package/global-styles.js +1 -1
- package/mfe-exposed-components.js +2 -4
- package/package.json +2 -2
- package/services/api.js +1 -1
- package/services/tests/api.test.js +20 -35
- package/styles/containers/layout/_layoutPage.scss +8 -6
- package/utils/commonUtils.js +1 -19
- package/utils/getDataLayer.js +15 -0
- package/utils/gtmTrackers/gtmEvents/creativeDetails.js +2 -1
- package/utils/mfeDetect.js +1 -0
- package/v2Components/CapActionButton/constants.js +1 -8
- package/v2Components/CapActionButton/index.js +144 -202
- package/v2Components/CapActionButton/index.scss +14 -232
- package/v2Components/CapActionButton/messages.js +3 -19
- package/v2Components/CapActionButton/tests/index.test.js +18 -42
- package/v2Components/CapImageUpload/index.js +2 -2
- package/v2Components/CapTagList/index.js +0 -10
- package/v2Components/CommonTestAndPreview/CustomValuesEditor.js +48 -70
- package/v2Components/CommonTestAndPreview/DeliverySettings/DeliverySettings.scss +2 -8
- package/v2Components/CommonTestAndPreview/DeliverySettings/ModifyDeliverySettings.js +21 -214
- package/v2Components/CommonTestAndPreview/DeliverySettings/constants.js +0 -16
- package/v2Components/CommonTestAndPreview/DeliverySettings/index.js +9 -83
- package/v2Components/CommonTestAndPreview/DeliverySettings/messages.js +0 -30
- package/v2Components/CommonTestAndPreview/DeliverySettings/utils/parseSenderDetailsResponse.js +11 -60
- package/v2Components/CommonTestAndPreview/SendTestMessage.js +5 -10
- package/v2Components/CommonTestAndPreview/UnifiedPreview/RcsPreviewContent.js +22 -202
- package/v2Components/CommonTestAndPreview/UnifiedPreview/_unifiedPreview.scss +80 -381
- package/v2Components/CommonTestAndPreview/UnifiedPreview/index.js +8 -155
- package/v2Components/CommonTestAndPreview/_commonTestAndPreview.scss +0 -11
- package/v2Components/CommonTestAndPreview/constants.js +2 -38
- package/v2Components/CommonTestAndPreview/index.js +222 -761
- package/v2Components/CommonTestAndPreview/messages.js +3 -45
- package/v2Components/CommonTestAndPreview/sagas.js +6 -25
- package/v2Components/CommonTestAndPreview/tests/CommonTestAndPreview.addTestCustomer.test.js +0 -1
- package/v2Components/CommonTestAndPreview/tests/CustomValuesEditor.test.js +267 -284
- package/v2Components/CommonTestAndPreview/tests/DeliverySettings/ModifyDeliverySettings.test.js +65 -231
- package/v2Components/CommonTestAndPreview/tests/DeliverySettings/index.test.js +5 -118
- package/v2Components/CommonTestAndPreview/tests/DeliverySettings/utils/parseSenderDetailsResponse.test.js +0 -341
- package/v2Components/CommonTestAndPreview/tests/PreviewSection.test.js +1 -8
- package/v2Components/CommonTestAndPreview/tests/SendTestMessage.test.js +13 -34
- package/v2Components/CommonTestAndPreview/tests/UnifiedPreview/RcsPreviewContent.test.js +283 -281
- package/v2Components/CommonTestAndPreview/tests/UnifiedPreview/index.test.js +1 -199
- package/v2Components/CommonTestAndPreview/tests/index.test.js +4 -133
- package/v2Components/CommonTestAndPreview/tests/sagas.test.js +24 -31
- package/v2Components/NavigationBar/index.js +9 -7
- package/v2Components/NavigationBar/mfeModuleHeader.config.js +16 -0
- package/v2Components/Pagination/_pagination.scss +2 -0
- package/v2Components/TemplatePreview/_templatePreview.scss +25 -45
- package/v2Components/TemplatePreview/index.js +32 -147
- package/v2Components/TemplatePreview/tests/index.test.js +0 -142
- package/v2Components/TestAndPreviewSlidebox/CustomValuesEditor.js +6 -6
- package/v2Components/TestAndPreviewSlidebox/index.js +1 -13
- package/v2Components/TestAndPreviewSlidebox/sagas.js +4 -11
- package/v2Components/TestAndPreviewSlidebox/tests/saga.test.js +1 -3
- package/v2Containers/Cap/constants.js +1 -0
- package/v2Containers/Cap/index.js +47 -21
- package/v2Containers/Cap/sagas.js +19 -0
- package/v2Containers/CommunicationFlow/Tests/CommunicationFlow.test.js +1 -4
- package/v2Containers/CommunicationFlow/steps/DeliverySettingsStep/Tests/DeliverySettingsSection.test.js +0 -4
- package/v2Containers/CommunicationFlow/steps/DeliverySettingsStep/Tests/SenderDetails.test.js +20 -20
- package/v2Containers/CreativesContainer/SlideBoxContent.js +7 -37
- package/v2Containers/CreativesContainer/SlideBoxFooter.js +5 -14
- package/v2Containers/CreativesContainer/SlideBoxHeader.js +5 -36
- package/v2Containers/CreativesContainer/constants.js +0 -11
- package/v2Containers/CreativesContainer/index.js +104 -323
- package/v2Containers/CreativesContainer/index.scss +1 -83
- package/v2Containers/CreativesContainer/tests/SlideBoxFooter.test.js +34 -79
- package/v2Containers/CreativesContainer/tests/SlideBoxHeader.test.js +16 -79
- package/v2Containers/CreativesContainer/tests/__snapshots__/SlideBoxContent.test.js.snap +0 -8
- package/v2Containers/CreativesContainer/tests/__snapshots__/SlideBoxHeader.test.js.snap +90 -333
- package/v2Containers/CreativesContainer/tests/__snapshots__/index.test.js.snap +15 -20
- package/v2Containers/CreativesContainer/tests/index.test.js +9 -71
- package/v2Containers/MobilePush/Create/test/saga.test.js +2 -2
- package/v2Containers/Rcs/constants.js +11 -131
- package/v2Containers/Rcs/index.js +829 -2682
- package/v2Containers/Rcs/index.scss +8 -443
- package/v2Containers/Rcs/messages.js +6 -45
- package/v2Containers/Rcs/tests/__snapshots__/index.test.js.snap +39409 -74176
- package/v2Containers/Rcs/tests/__snapshots__/utils.test.js.snap +74 -10
- package/v2Containers/Rcs/tests/index.test.js +40 -151
- package/v2Containers/Rcs/tests/mockData.js +0 -38
- package/v2Containers/Rcs/tests/utils.test.js +30 -643
- package/v2Containers/Rcs/utils.js +12 -466
- package/v2Containers/Sms/Create/index.js +48 -115
- package/v2Containers/SmsTrai/Create/index.js +4 -9
- package/v2Containers/SmsTrai/Edit/constants.js +0 -2
- package/v2Containers/SmsTrai/Edit/index.js +169 -678
- package/v2Containers/SmsTrai/Edit/messages.js +4 -14
- package/v2Containers/SmsTrai/Edit/tests/__snapshots__/index.test.js.snap +2854 -5455
- package/v2Containers/SmsWrapper/index.js +8 -37
- package/v2Containers/TagList/index.js +0 -6
- package/v2Containers/Templates/_templates.scss +11 -196
- package/v2Containers/Templates/actions.js +0 -11
- package/v2Containers/Templates/constants.js +0 -2
- package/v2Containers/Templates/index.js +60 -131
- package/v2Containers/Templates/sagas.js +13 -57
- package/v2Containers/Templates/tests/__snapshots__/index.test.js.snap +1015 -1060
- package/v2Containers/Templates/tests/sagas.test.js +16 -199
- package/v2Containers/TemplatesV2/TemplatesV2.style.js +10 -75
- package/v2Containers/TemplatesV2/index.js +43 -86
- package/v2Containers/WeChat/MapTemplates/test/saga.test.js +9 -9
- package/v2Containers/Whatsapp/index.js +25 -4
- package/v2Containers/Whatsapp/tests/__snapshots__/index.test.js.snap +34 -578
- package/utils/rcsPayloadUtils.js +0 -92
- package/utils/templateVarUtils.js +0 -201
- package/utils/tests/rcsPayloadUtils.test.js +0 -226
- package/utils/tests/templateVarUtils.test.js +0 -204
- package/v2Components/CommonTestAndPreview/previewApiUtils.js +0 -59
- package/v2Components/CommonTestAndPreview/tests/previewApiUtils.test.js +0 -67
- package/v2Components/CommonTestAndPreview/utils.js +0 -84
- package/v2Components/SmsFallback/SmsFallbackLocalSelector.js +0 -91
- package/v2Components/SmsFallback/constants.js +0 -94
- package/v2Components/SmsFallback/index.js +0 -958
- package/v2Components/SmsFallback/index.scss +0 -266
- package/v2Components/SmsFallback/messages.js +0 -78
- package/v2Components/SmsFallback/smsFallbackUtils.js +0 -120
- package/v2Components/SmsFallback/tests/SmsFallbackLocalSelector.test.js +0 -50
- package/v2Components/SmsFallback/tests/rcsSmsFallback.acceptance.test.js +0 -147
- package/v2Components/SmsFallback/tests/smsFallbackHandlers.test.js +0 -304
- package/v2Components/SmsFallback/tests/smsFallbackUi.test.js +0 -208
- package/v2Components/SmsFallback/tests/smsFallbackUtils.test.js +0 -309
- package/v2Components/SmsFallback/tests/useLocalTemplateList.test.js +0 -422
- package/v2Components/SmsFallback/useLocalTemplateList.js +0 -92
- package/v2Components/TemplatePreview/constants.js +0 -2
- package/v2Components/VarSegmentMessageEditor/constants.js +0 -2
- package/v2Components/VarSegmentMessageEditor/index.js +0 -125
- package/v2Components/VarSegmentMessageEditor/index.scss +0 -46
- package/v2Containers/CreativesContainer/CreativesSlideBoxWrapper.js +0 -17
- package/v2Containers/CreativesContainer/embeddedSlideboxUtils.js +0 -79
- package/v2Containers/CreativesContainer/tests/SlideBoxContent.localTemplates.test.js +0 -90
- package/v2Containers/CreativesContainer/tests/embeddedSlideboxUtils.test.js +0 -258
- package/v2Containers/CreativesContainer/tests/useLocalTemplatesProp.test.js +0 -125
- package/v2Containers/Rcs/rcsLibraryHydrationUtils.js +0 -227
- package/v2Containers/Rcs/tests/rcsLibraryHydrationUtils.test.js +0 -318
- package/v2Containers/Sms/smsFormDataHelpers.js +0 -67
- package/v2Containers/Sms/tests/smsFormDataHelpers.test.js +0 -253
- package/v2Containers/SmsTrai/Edit/index.scss +0 -126
- package/v2Containers/Templates/TemplatesActionBar.js +0 -101
- package/v2Containers/Templates/tests/TemplatesActionBar.test.js +0 -120
- package/v2Containers/Templates/tests/smsTemplatesListApi.test.js +0 -180
- package/v2Containers/Templates/utils/smsTemplatesListApi.js +0 -79
- package/v2Containers/TemplatesV2/tests/TemplatesV2.localTemplates.test.js +0 -131
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
/**
|
|
4
4
|
* UnifiedPreview Styles
|
|
5
|
-
*
|
|
5
|
+
*
|
|
6
6
|
* Consistent styling for preview across all channels
|
|
7
7
|
*/
|
|
8
8
|
|
|
@@ -11,24 +11,25 @@
|
|
|
11
11
|
height: 100%;
|
|
12
12
|
display: flex;
|
|
13
13
|
flex-direction: column;
|
|
14
|
+
background: $CAP_WHITE;
|
|
14
15
|
overflow: hidden;
|
|
15
|
-
|
|
16
|
+
|
|
16
17
|
// Preview Chrome wrapper (matches old TestAndPreviewSlidebox design)
|
|
17
18
|
.preview-chrome {
|
|
18
19
|
background: $CAP_WHITE;
|
|
19
20
|
overflow: hidden;
|
|
20
|
-
|
|
21
|
+
|
|
21
22
|
.preview-divider {
|
|
22
23
|
margin: 0;
|
|
23
24
|
}
|
|
24
|
-
|
|
25
|
+
|
|
25
26
|
.preview-header {
|
|
26
27
|
display: flex;
|
|
27
28
|
justify-content: space-between;
|
|
28
29
|
align-items: center;
|
|
29
30
|
padding: $CAP_SPACE_08 $CAP_SPACE_16 $CAP_SPACE_06 $CAP_SPACE_16;
|
|
30
31
|
background: $CAP_G09;
|
|
31
|
-
|
|
32
|
+
|
|
32
33
|
.preview-for {
|
|
33
34
|
font-size: $FONT_SIZE_M;
|
|
34
35
|
color: #595959;
|
|
@@ -38,20 +39,20 @@
|
|
|
38
39
|
margin-left: $CAP_SPACE_04;
|
|
39
40
|
}
|
|
40
41
|
}
|
|
41
|
-
|
|
42
|
+
|
|
42
43
|
.device-toggle {
|
|
43
44
|
display: flex;
|
|
44
45
|
gap: $CAP_SPACE_08;
|
|
45
46
|
background-color: #e0e0e0;
|
|
46
47
|
padding: $CAP_SPACE_06 $CAP_SPACE_08;
|
|
47
48
|
border-radius: $CAP_SPACE_08;
|
|
48
|
-
|
|
49
|
+
|
|
49
50
|
.anticon {
|
|
50
51
|
padding: $CAP_SPACE_04;
|
|
51
52
|
border-radius: $CAP_SPACE_04;
|
|
52
53
|
cursor: pointer;
|
|
53
54
|
color: #595959;
|
|
54
|
-
|
|
55
|
+
|
|
55
56
|
&.active {
|
|
56
57
|
background-color: $CAP_WHITE;
|
|
57
58
|
color: #262626;
|
|
@@ -61,27 +62,7 @@
|
|
|
61
62
|
}
|
|
62
63
|
}
|
|
63
64
|
}
|
|
64
|
-
|
|
65
|
-
&.unified-preview-rcs-tabs {
|
|
66
|
-
.ant-tabs-nav {
|
|
67
|
-
margin: 0;
|
|
68
|
-
padding: 0 $CAP_SPACE_16;
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
// Prevent white hover/active backgrounds from default antd styles
|
|
72
|
-
.ant-tabs-tab,
|
|
73
|
-
.ant-tabs-tab:hover,
|
|
74
|
-
.ant-tabs-tab-active {
|
|
75
|
-
background: transparent;
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
.ant-tabs-tab-btn,
|
|
79
|
-
.ant-tabs-tab-btn:hover,
|
|
80
|
-
.ant-tabs-tab-btn:active {
|
|
81
|
-
background: transparent;
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
|
|
65
|
+
|
|
85
66
|
// Preview Content Container
|
|
86
67
|
.preview-content-container {
|
|
87
68
|
flex: 1;
|
|
@@ -94,33 +75,25 @@
|
|
|
94
75
|
.preview-content-container-no-header {
|
|
95
76
|
background-color: $CAP_WHITE;
|
|
96
77
|
}
|
|
97
|
-
|
|
78
|
+
|
|
98
79
|
// Device Frames
|
|
99
80
|
.unified-preview-frame {
|
|
100
81
|
width: 100%;
|
|
101
82
|
display: flex;
|
|
102
83
|
justify-content: center;
|
|
103
|
-
|
|
84
|
+
|
|
104
85
|
.device-frame {
|
|
105
86
|
background: $CAP_WHITE;
|
|
106
87
|
border-radius: $CAP_SPACE_08;
|
|
107
88
|
box-shadow: 0 $CAP_SPACE_04 $CAP_SPACE_12 rgba(0, 0, 0, 0.15);
|
|
108
89
|
overflow: hidden;
|
|
109
90
|
transition: all 0.3s ease;
|
|
110
|
-
|
|
111
|
-
// uses translateX(-50%) to center itself) to this ancestor's border-radius —
|
|
112
|
-
// its white background bleeds past the rounded edge on real devices, even
|
|
113
|
-
// though overflow:hidden clips it correctly everywhere else. Forcing Safari
|
|
114
|
-
// onto its masking render path (instead of the buggy transform+overflow-clip
|
|
115
|
-
// path) fixes this; no-op on every other browser.
|
|
116
|
-
-webkit-mask-image: -webkit-radial-gradient(white, black);
|
|
117
|
-
mask-image: radial-gradient(white, black);
|
|
118
|
-
|
|
91
|
+
|
|
119
92
|
// Desktop Frame
|
|
120
93
|
&.device-frame-desktop {
|
|
121
94
|
width: 100%;
|
|
122
95
|
min-height: 42.857rem;
|
|
123
|
-
|
|
96
|
+
|
|
124
97
|
.desktop-chrome {
|
|
125
98
|
height: $CAP_SPACE_40;
|
|
126
99
|
background: $CAP_G12;
|
|
@@ -129,30 +102,30 @@
|
|
|
129
102
|
align-items: center;
|
|
130
103
|
padding: 0 $CAP_SPACE_12;
|
|
131
104
|
gap: $CAP_SPACE_12;
|
|
132
|
-
|
|
105
|
+
|
|
133
106
|
.chrome-dots {
|
|
134
107
|
display: flex;
|
|
135
108
|
gap: $CAP_SPACE_06;
|
|
136
|
-
|
|
109
|
+
|
|
137
110
|
.dot {
|
|
138
111
|
width: $CAP_SPACE_12;
|
|
139
112
|
height: $CAP_SPACE_12;
|
|
140
113
|
border-radius: 50%;
|
|
141
|
-
|
|
114
|
+
|
|
142
115
|
&.dot-close {
|
|
143
116
|
background: #ff5f56;
|
|
144
117
|
}
|
|
145
|
-
|
|
118
|
+
|
|
146
119
|
&.dot-minimize {
|
|
147
120
|
background: #ffbd2e;
|
|
148
121
|
}
|
|
149
|
-
|
|
122
|
+
|
|
150
123
|
&.dot-maximize {
|
|
151
124
|
background: #27c93f;
|
|
152
125
|
}
|
|
153
126
|
}
|
|
154
127
|
}
|
|
155
|
-
|
|
128
|
+
|
|
156
129
|
.chrome-address-bar {
|
|
157
130
|
flex: 1;
|
|
158
131
|
background: $CAP_WHITE;
|
|
@@ -162,25 +135,25 @@
|
|
|
162
135
|
color: #8c8c8c;
|
|
163
136
|
}
|
|
164
137
|
}
|
|
165
|
-
|
|
138
|
+
|
|
166
139
|
.device-content {
|
|
167
140
|
min-height: 40rem;
|
|
168
141
|
background: $CAP_WHITE;
|
|
169
142
|
}
|
|
170
143
|
}
|
|
171
|
-
|
|
144
|
+
|
|
172
145
|
// Tablet Frame
|
|
173
146
|
&.device-frame-tablet {
|
|
174
147
|
width: 54.857rem;
|
|
175
148
|
max-width: 90%;
|
|
176
|
-
|
|
149
|
+
|
|
177
150
|
.tablet-chrome {
|
|
178
151
|
height: $CAP_SPACE_24;
|
|
179
152
|
background: #333333;
|
|
180
153
|
display: flex;
|
|
181
154
|
align-items: center;
|
|
182
155
|
justify-content: center;
|
|
183
|
-
|
|
156
|
+
|
|
184
157
|
.tablet-camera {
|
|
185
158
|
width: $CAP_SPACE_08;
|
|
186
159
|
height: $CAP_SPACE_08;
|
|
@@ -189,19 +162,19 @@
|
|
|
189
162
|
border: $CAP_SPACE_01 solid #666666;
|
|
190
163
|
}
|
|
191
164
|
}
|
|
192
|
-
|
|
165
|
+
|
|
193
166
|
.device-content {
|
|
194
167
|
min-height: 73.143rem;
|
|
195
168
|
background: $CAP_WHITE;
|
|
196
169
|
}
|
|
197
|
-
|
|
170
|
+
|
|
198
171
|
.tablet-footer {
|
|
199
172
|
height: 3.571rem;
|
|
200
173
|
background: #333333;
|
|
201
174
|
display: flex;
|
|
202
175
|
align-items: center;
|
|
203
176
|
justify-content: center;
|
|
204
|
-
|
|
177
|
+
|
|
205
178
|
.home-button {
|
|
206
179
|
width: $CAP_SPACE_40;
|
|
207
180
|
height: $CAP_SPACE_40;
|
|
@@ -211,19 +184,19 @@
|
|
|
211
184
|
}
|
|
212
185
|
}
|
|
213
186
|
}
|
|
214
|
-
|
|
187
|
+
|
|
215
188
|
// Mobile Frame
|
|
216
189
|
&.device-frame-mobile {
|
|
217
190
|
width: 26.786rem;
|
|
218
191
|
max-width: 90%;
|
|
219
|
-
|
|
192
|
+
|
|
220
193
|
.mobile-chrome {
|
|
221
194
|
height: $CAP_SPACE_24;
|
|
222
195
|
background: #000000;
|
|
223
196
|
display: flex;
|
|
224
197
|
align-items: center;
|
|
225
198
|
justify-content: center;
|
|
226
|
-
|
|
199
|
+
|
|
227
200
|
.mobile-notch {
|
|
228
201
|
width: 10.714rem;
|
|
229
202
|
height: 1.571rem;
|
|
@@ -231,19 +204,19 @@
|
|
|
231
204
|
border-radius: 0 0 $CAP_SPACE_12 $CAP_SPACE_12;
|
|
232
205
|
}
|
|
233
206
|
}
|
|
234
|
-
|
|
207
|
+
|
|
235
208
|
.device-content {
|
|
236
209
|
min-height: 47.643rem;
|
|
237
210
|
background: $CAP_WHITE;
|
|
238
211
|
}
|
|
239
|
-
|
|
212
|
+
|
|
240
213
|
.mobile-footer {
|
|
241
214
|
height: $CAP_SPACE_24;
|
|
242
215
|
background: #000000;
|
|
243
216
|
display: flex;
|
|
244
217
|
align-items: center;
|
|
245
218
|
justify-content: center;
|
|
246
|
-
|
|
219
|
+
|
|
247
220
|
.home-indicator {
|
|
248
221
|
width: $CAP_SPACE_80;
|
|
249
222
|
height: $CAP_SPACE_04;
|
|
@@ -255,7 +228,7 @@
|
|
|
255
228
|
}
|
|
256
229
|
}
|
|
257
230
|
}
|
|
258
|
-
|
|
231
|
+
|
|
259
232
|
// Channel Preview Placeholders (Phase 5)
|
|
260
233
|
.channel-preview-placeholder {
|
|
261
234
|
display: flex;
|
|
@@ -265,7 +238,7 @@
|
|
|
265
238
|
padding: $CAP_SPACE_60 $CAP_SPACE_24;
|
|
266
239
|
text-align: center;
|
|
267
240
|
min-height: 28.571rem;
|
|
268
|
-
|
|
241
|
+
|
|
269
242
|
.question-circle {
|
|
270
243
|
font-size: $CAP_SPACE_48;
|
|
271
244
|
color: $CAP_COLOR_16;
|
|
@@ -276,13 +249,13 @@
|
|
|
276
249
|
font-weight: 600;
|
|
277
250
|
color: #262626;
|
|
278
251
|
}
|
|
279
|
-
|
|
252
|
+
|
|
280
253
|
p {
|
|
281
254
|
margin-top: $CAP_SPACE_08;
|
|
282
255
|
font-size: $FONT_SIZE_M;
|
|
283
256
|
color: #8c8c8c;
|
|
284
257
|
}
|
|
285
|
-
|
|
258
|
+
|
|
286
259
|
.preview-subject {
|
|
287
260
|
margin-top: $CAP_SPACE_24;
|
|
288
261
|
padding: $CAP_SPACE_12 $CAP_SPACE_16;
|
|
@@ -291,26 +264,26 @@
|
|
|
291
264
|
text-align: left;
|
|
292
265
|
width: 100%;
|
|
293
266
|
max-width: 35.714rem;
|
|
294
|
-
|
|
267
|
+
|
|
295
268
|
strong {
|
|
296
269
|
color: #595959;
|
|
297
270
|
margin-right: $CAP_SPACE_08;
|
|
298
271
|
}
|
|
299
272
|
}
|
|
300
|
-
|
|
273
|
+
|
|
301
274
|
.preview-body-placeholder {
|
|
302
275
|
margin-top: $CAP_SPACE_12;
|
|
303
276
|
padding: $CAP_SPACE_08 $CAP_SPACE_12;
|
|
304
277
|
background: #fafafa;
|
|
305
278
|
border: $CAP_SPACE_01 dashed $CAP_COLOR_16;
|
|
306
279
|
border-radius: $CAP_SPACE_04;
|
|
307
|
-
|
|
280
|
+
|
|
308
281
|
small {
|
|
309
282
|
color: #8c8c8c;
|
|
310
283
|
}
|
|
311
284
|
}
|
|
312
285
|
}
|
|
313
|
-
|
|
286
|
+
|
|
314
287
|
// Loading State
|
|
315
288
|
&.unified-preview-loading {
|
|
316
289
|
.preview-loading-container {
|
|
@@ -320,14 +293,14 @@
|
|
|
320
293
|
justify-content: center;
|
|
321
294
|
gap: $CAP_SPACE_16;
|
|
322
295
|
min-height: 28.571rem;
|
|
323
|
-
|
|
296
|
+
|
|
324
297
|
.loading-text {
|
|
325
298
|
font-size: $FONT_SIZE_M;
|
|
326
299
|
color: #8c8c8c;
|
|
327
300
|
}
|
|
328
301
|
}
|
|
329
302
|
}
|
|
330
|
-
|
|
303
|
+
|
|
331
304
|
// Error State
|
|
332
305
|
&.unified-preview-error {
|
|
333
306
|
.preview-error-container {
|
|
@@ -338,7 +311,7 @@
|
|
|
338
311
|
justify-content: center;
|
|
339
312
|
gap: $CAP_SPACE_16;
|
|
340
313
|
min-height: 28.571rem;
|
|
341
|
-
|
|
314
|
+
|
|
342
315
|
.exclamation-circle {
|
|
343
316
|
font-size: $CAP_SPACE_48;
|
|
344
317
|
color: #ff4d4f;
|
|
@@ -348,7 +321,7 @@
|
|
|
348
321
|
font-weight: 600;
|
|
349
322
|
color: #262626;
|
|
350
323
|
}
|
|
351
|
-
|
|
324
|
+
|
|
352
325
|
.error-message {
|
|
353
326
|
font-size: $FONT_SIZE_M;
|
|
354
327
|
color: #ff4d4f;
|
|
@@ -357,7 +330,7 @@
|
|
|
357
330
|
}
|
|
358
331
|
}
|
|
359
332
|
}
|
|
360
|
-
|
|
333
|
+
|
|
361
334
|
// Preview Metadata
|
|
362
335
|
.preview-metadata {
|
|
363
336
|
padding: $CAP_SPACE_12 $CAP_SPACE_24;
|
|
@@ -367,7 +340,7 @@
|
|
|
367
340
|
color: #8c8c8c;
|
|
368
341
|
display: flex;
|
|
369
342
|
gap: $CAP_SPACE_16;
|
|
370
|
-
|
|
343
|
+
|
|
371
344
|
.metadata-item {
|
|
372
345
|
display: flex;
|
|
373
346
|
gap: $CAP_SPACE_04;
|
|
@@ -559,7 +532,7 @@
|
|
|
559
532
|
font-weight: 600;
|
|
560
533
|
color: #262626;
|
|
561
534
|
}
|
|
562
|
-
|
|
535
|
+
|
|
563
536
|
.error-message {
|
|
564
537
|
font-size: $FONT_SIZE_M;
|
|
565
538
|
color: #ff4d4f;
|
|
@@ -598,12 +571,9 @@
|
|
|
598
571
|
transform: translateX(-50%);
|
|
599
572
|
width: 100%;
|
|
600
573
|
max-width: 26.786rem;
|
|
601
|
-
min-width: 0; // flex descendant overflow: allow shrink inside narrow screen
|
|
602
574
|
height: calc(100% - 4.5rem);
|
|
603
575
|
display: flex;
|
|
604
576
|
flex-direction: column;
|
|
605
|
-
overflow-x: hidden;
|
|
606
|
-
box-sizing: border-box;
|
|
607
577
|
|
|
608
578
|
&.sms-content-overlay-android {
|
|
609
579
|
height: calc(100% - 3.8rem);
|
|
@@ -771,7 +741,7 @@
|
|
|
771
741
|
font-weight: 600;
|
|
772
742
|
color: #262626;
|
|
773
743
|
}
|
|
774
|
-
|
|
744
|
+
|
|
775
745
|
.sms-error-message {
|
|
776
746
|
font-size: $FONT_SIZE_M;
|
|
777
747
|
color: #ff4d4f;
|
|
@@ -793,280 +763,13 @@
|
|
|
793
763
|
}
|
|
794
764
|
}
|
|
795
765
|
|
|
796
|
-
// RCS Carousel card styles — scoped to .rcs-carousel-panel (which lives outside the
|
|
797
|
-
// overflow-x:hidden overlay so horizontal scroll events reach .scroll-container freely).
|
|
798
|
-
.rcs-device-container {
|
|
799
|
-
.rcs-carousel-panel {
|
|
800
|
-
position: absolute;
|
|
801
|
-
// Centered via left/right auto-margins instead of left:50% + translateX(-50%) —
|
|
802
|
-
// a `transform` on this element put every rounded+overflow:hidden box nested
|
|
803
|
-
// inside it (this panel's own corners, the card corners, the image corners...)
|
|
804
|
-
// in a transformed stacking context that iOS Safari fails to clip correctly,
|
|
805
|
-
// letting their square corners/backgrounds bleed past the rounded edges. Plain
|
|
806
|
-
// auto-margin centering has no such bug.
|
|
807
|
-
left: 0;
|
|
808
|
-
right: 0;
|
|
809
|
-
margin-left: auto;
|
|
810
|
-
margin-right: auto;
|
|
811
|
-
width: 100%;
|
|
812
|
-
max-width: 26.786rem;
|
|
813
|
-
box-sizing: border-box;
|
|
814
|
-
top: 4.143rem;
|
|
815
|
-
height: calc(100% - 2.5rem);
|
|
816
|
-
display: flex;
|
|
817
|
-
flex-direction: column;
|
|
818
|
-
padding-top: 5.857rem; // nav (3.428rem) + date separator (~2.429rem)
|
|
819
|
-
padding-bottom: $CAP_SPACE_16;
|
|
820
|
-
padding-left: 0.4rem;
|
|
821
|
-
padding-right: 0.4rem;
|
|
822
|
-
background-color: $CAP_WHITE;
|
|
823
|
-
background-clip: content-box;
|
|
824
|
-
border-bottom-left-radius: 2.429rem;
|
|
825
|
-
border-bottom-right-radius: 2.429rem;
|
|
826
|
-
// background-clip only clips the background fill to these rounded corners —
|
|
827
|
-
// it does NOT clip child content, so message/card boxes could render past the
|
|
828
|
-
// rounded edge regardless of browser. This doesn't affect the horizontal touch
|
|
829
|
-
// scroll .scroll-container needs: that workaround was about not nesting inside
|
|
830
|
-
// the *other* sibling overlay (.sms-content-overlay's overflow-x:hidden), not
|
|
831
|
-
// about this element's own overflow.
|
|
832
|
-
overflow: hidden;
|
|
833
|
-
|
|
834
|
-
&.rcs-carousel-panel-android {
|
|
835
|
-
top: 3.1rem;
|
|
836
|
-
border-radius: 4rem;
|
|
837
|
-
}
|
|
838
|
-
|
|
839
|
-
&.rcs-carousel-panel-ios {
|
|
840
|
-
height: calc(100% - 4.2rem);
|
|
841
|
-
}
|
|
842
|
-
|
|
843
|
-
.rcs-carousel-timestamp {
|
|
844
|
-
font-size: $FONT_SIZE_S;
|
|
845
|
-
color: #8c8c8c;
|
|
846
|
-
align-self: flex-end;
|
|
847
|
-
padding-right: $CAP_SPACE_04;
|
|
848
|
-
padding-top: $CAP_SPACE_04;
|
|
849
|
-
}
|
|
850
|
-
|
|
851
|
-
.msg-container-carousel {
|
|
852
|
-
display: flex;
|
|
853
|
-
flex-direction: column;
|
|
854
|
-
width: 100%;
|
|
855
|
-
padding: 0 $CAP_SPACE_16;
|
|
856
|
-
|
|
857
|
-
.scroll-container {
|
|
858
|
-
display: flex;
|
|
859
|
-
flex-wrap: nowrap;
|
|
860
|
-
gap: 0.75rem;
|
|
861
|
-
overflow-x: auto;
|
|
862
|
-
overflow-y: hidden;
|
|
863
|
-
width: 100%;
|
|
864
|
-
scrollbar-width: none;
|
|
865
|
-
|
|
866
|
-
&::-webkit-scrollbar {
|
|
867
|
-
display: none;
|
|
868
|
-
}
|
|
869
|
-
}
|
|
870
|
-
}
|
|
871
|
-
|
|
872
|
-
// Wraps the card + its CTA bar so both scroll horizontally together as one unit,
|
|
873
|
-
// while remaining two visually distinct, separately-rounded elements (Figma reference —
|
|
874
|
-
// the CTA bar is its own floating pill below the card, not part of it).
|
|
875
|
-
.rcs-carousel-item {
|
|
876
|
-
display: flex;
|
|
877
|
-
flex-direction: column;
|
|
878
|
-
gap: $CAP_SPACE_04;
|
|
879
|
-
// Ensure item width is stable and does not shrink to text width
|
|
880
|
-
flex: 0 0 15.375rem; // ~246px; fills container leaving ~50% of next card peeking
|
|
881
|
-
margin-right: 0; // spacing handled by scroll-container gap
|
|
882
|
-
}
|
|
883
|
-
|
|
884
|
-
.message-pop-carousel {
|
|
885
|
-
// Match TemplatePreview carousel card look (big card + subtle shadow)
|
|
886
|
-
background-color: $CAP_WHITE;
|
|
887
|
-
border: 1px solid $CAP_G07; // #dfe2e7 — keeps the card visible against the
|
|
888
|
-
// chat background when there's no photo yet to provide contrast (Figma empty state)
|
|
889
|
-
border-radius: $CAP_SPACE_04; // 4px (Figma RCS carousel card corner)
|
|
890
|
-
width: 100%;
|
|
891
|
-
padding: 0;
|
|
892
|
-
color: $CAP_G01;
|
|
893
|
-
overflow: hidden;
|
|
894
|
-
box-shadow: 0 0 0.625rem 0 rgba(0, 0, 0, 0.08);
|
|
895
|
-
position: relative;
|
|
896
|
-
}
|
|
897
|
-
|
|
898
|
-
.whatsapp-content {
|
|
899
|
-
font-family: Roboto, 'Open Sans', sans-serif;
|
|
900
|
-
margin: 0;
|
|
901
|
-
width: 100%;
|
|
902
|
-
}
|
|
903
|
-
|
|
904
|
-
// Height follows width × aspect-ratio; inline style from carouselPreviewDimensions overrides fallback.
|
|
905
|
-
.whatsapp-image.rcs-carousel-media-wrap {
|
|
906
|
-
width: 100%;
|
|
907
|
-
height: auto;
|
|
908
|
-
aspect-ratio: 1280 / 720; // MEDIUM_MEDIUM image fallback when dimensions not passed
|
|
909
|
-
display: block;
|
|
910
|
-
overflow: hidden;
|
|
911
|
-
border-radius: $CAP_SPACE_04 $CAP_SPACE_04 0 0; // 4px (Figma)
|
|
912
|
-
margin-bottom: 0;
|
|
913
|
-
|
|
914
|
-
// CapImage (antd Image) applies className on wrapper; ensure inner img is constrained too.
|
|
915
|
-
img,
|
|
916
|
-
.ant-image-img {
|
|
917
|
-
width: 100%;
|
|
918
|
-
height: 100%;
|
|
919
|
-
object-fit: cover;
|
|
920
|
-
border-radius: inherit;
|
|
921
|
-
display: block;
|
|
922
|
-
}
|
|
923
|
-
|
|
924
|
-
// Plain <img> in RCS carousel preview (not CapImage)
|
|
925
|
-
.rcs-carousel-img {
|
|
926
|
-
width: 100%;
|
|
927
|
-
height: 100%;
|
|
928
|
-
object-fit: cover;
|
|
929
|
-
border-radius: inherit;
|
|
930
|
-
display: block;
|
|
931
|
-
}
|
|
932
|
-
}
|
|
933
|
-
|
|
934
|
-
.video-preview {
|
|
935
|
-
position: relative;
|
|
936
|
-
width: 100%;
|
|
937
|
-
margin-bottom: 0;
|
|
938
|
-
|
|
939
|
-
.whatsapp-image.rcs-carousel-media-wrap {
|
|
940
|
-
width: 100%;
|
|
941
|
-
height: auto;
|
|
942
|
-
aspect-ratio: 796 / 448; // MEDIUM_MEDIUM video thumbnail fallback
|
|
943
|
-
margin-bottom: 0;
|
|
944
|
-
|
|
945
|
-
img,
|
|
946
|
-
.ant-image-img,
|
|
947
|
-
.rcs-carousel-img {
|
|
948
|
-
width: 100%;
|
|
949
|
-
height: 100%;
|
|
950
|
-
object-fit: cover;
|
|
951
|
-
border-radius: inherit;
|
|
952
|
-
display: block;
|
|
953
|
-
}
|
|
954
|
-
}
|
|
955
|
-
|
|
956
|
-
.icon-position {
|
|
957
|
-
position: absolute;
|
|
958
|
-
top: 50%;
|
|
959
|
-
left: 50%;
|
|
960
|
-
transform: translate(-50%, -50%);
|
|
961
|
-
display: flex;
|
|
962
|
-
align-items: center;
|
|
963
|
-
justify-content: center;
|
|
964
|
-
|
|
965
|
-
.video-icon {
|
|
966
|
-
width: $CAP_SPACE_48;
|
|
967
|
-
height: $CAP_SPACE_48;
|
|
968
|
-
}
|
|
969
|
-
}
|
|
970
|
-
}
|
|
971
|
-
|
|
972
|
-
// CapTooltip shrink-wraps its wrapper/trigger by default and forces `display: inline-block`
|
|
973
|
-
// inline on the trigger span, so .video-preview's width:100% collapses to content width
|
|
974
|
-
// unless these are stretched to fill the card (inline style needs !important to override).
|
|
975
|
-
.rcs-carousel-video-tooltip-wrapper {
|
|
976
|
-
display: block;
|
|
977
|
-
width: 100%;
|
|
978
|
-
}
|
|
979
|
-
|
|
980
|
-
.rcs-carousel-video-tooltip-trigger {
|
|
981
|
-
display: block !important;
|
|
982
|
-
width: 100%;
|
|
983
|
-
}
|
|
984
|
-
|
|
985
|
-
.carousel-content {
|
|
986
|
-
padding: 0.625rem 0.75rem; // 10px 12px
|
|
987
|
-
width: 100%;
|
|
988
|
-
background-color: $CAP_G08; // #ebecf0 (Figma: grey info panel, not white)
|
|
989
|
-
white-space: normal; // override scroll-container's nowrap so text can wrap
|
|
990
|
-
display: flex;
|
|
991
|
-
flex-direction: column;
|
|
992
|
-
border-bottom-left-radius: 0.25rem; // 4px — this is the card's own bottom edge;
|
|
993
|
-
border-bottom-right-radius: 0.25rem; // the CTA bar below is a separate element (Figma)
|
|
994
|
-
|
|
995
|
-
// Title/body typography via CapLabel type (label1 / label2, etc.)
|
|
996
|
-
.carousel-title {
|
|
997
|
-
margin-bottom: 0.25rem; // 4px
|
|
998
|
-
display: block;
|
|
999
|
-
overflow: visible;
|
|
1000
|
-
white-space: normal;
|
|
1001
|
-
overflow-wrap: anywhere;
|
|
1002
|
-
color: $CAP_G04; // #5e6c84 (Figma)
|
|
1003
|
-
font-weight: $FONT_WEIGHT_BOLD;
|
|
1004
|
-
}
|
|
1005
|
-
|
|
1006
|
-
.carousel-message {
|
|
1007
|
-
display: block;
|
|
1008
|
-
overflow: visible;
|
|
1009
|
-
white-space: normal;
|
|
1010
|
-
overflow-wrap: anywhere;
|
|
1011
|
-
color: $FONT_COLOR_03; // #97a0af (Figma)
|
|
1012
|
-
font-weight: $FONT_WEIGHT_REGULAR;
|
|
1013
|
-
}
|
|
1014
|
-
|
|
1015
|
-
.rcs-carousel-field-placeholder {
|
|
1016
|
-
color: $CAP_G05;
|
|
1017
|
-
font-weight: $FONT_WEIGHT_REGULAR;
|
|
1018
|
-
}
|
|
1019
|
-
}
|
|
1020
|
-
|
|
1021
|
-
// Divider between message body and suggestions — subtle gray on the gray bubble
|
|
1022
|
-
.whatsapp-divider {
|
|
1023
|
-
margin: 0;
|
|
1024
|
-
border-top: 1px solid $CAP_G07;
|
|
1025
|
-
}
|
|
1026
|
-
|
|
1027
|
-
// Inside a carousel card (white bg) dividers should stay white
|
|
1028
|
-
.message-pop-carousel .whatsapp-divider {
|
|
1029
|
-
border-top: 1px solid $CAP_WHITE;
|
|
1030
|
-
}
|
|
1031
|
-
|
|
1032
|
-
// Own floating pill(s) below the card (NOT part of .message-pop-carousel) — sits in
|
|
1033
|
-
// .rcs-carousel-item, separated from the card by that wrapper's `gap` (Figma reference).
|
|
1034
|
-
.rcs-carousel-cta-stack.cap-row-v2 {
|
|
1035
|
-
display: flex;
|
|
1036
|
-
flex-direction: column;
|
|
1037
|
-
flex-wrap: nowrap;
|
|
1038
|
-
width: 100%;
|
|
1039
|
-
gap: 0.25rem;
|
|
1040
|
-
box-sizing: border-box;
|
|
1041
|
-
align-items: stretch;
|
|
1042
|
-
}
|
|
1043
|
-
|
|
1044
|
-
.rcs-cta-preview--carousel-bar {
|
|
1045
|
-
display: flex;
|
|
1046
|
-
align-items: center;
|
|
1047
|
-
justify-content: center;
|
|
1048
|
-
gap: 0.375rem;
|
|
1049
|
-
width: 100%;
|
|
1050
|
-
margin: 0;
|
|
1051
|
-
padding: 0.625rem 0.75rem;
|
|
1052
|
-
box-sizing: border-box;
|
|
1053
|
-
background-color: $CAP_G08; // #ebecf0 (Figma: grey "Call Now" pill, not white)
|
|
1054
|
-
border-radius: 0.25rem;
|
|
1055
|
-
font-size: $FONT_SIZE_M;
|
|
1056
|
-
font-weight: $FONT_WEIGHT_MEDIUM;
|
|
1057
|
-
color: $CAP_G04; // #5e6c84 (Figma)
|
|
1058
|
-
text-align: center;
|
|
1059
|
-
}
|
|
1060
|
-
}
|
|
1061
|
-
}
|
|
1062
|
-
|
|
1063
766
|
// WhatsApp Preview Content Styles (Phase 8)
|
|
1064
767
|
// All WhatsApp styles wrapped in parent class for increased specificity
|
|
1065
768
|
// This prevents other CSS (like CapLabel) from overriding WhatsApp-specific styles
|
|
1066
769
|
.whatsapp-preview-wrapper {
|
|
1067
770
|
// Using same CSS classes as TemplatePreview for consistency
|
|
1068
771
|
// Styles are copied from TemplatePreview/_templatePreview.scss to ensure they work
|
|
1069
|
-
|
|
772
|
+
|
|
1070
773
|
.shell-v2-whatsapp {
|
|
1071
774
|
position: relative;
|
|
1072
775
|
-webkit-transform: translate(-50%);
|
|
@@ -1141,23 +844,23 @@
|
|
|
1141
844
|
}
|
|
1142
845
|
|
|
1143
846
|
// WhatsApp message pop styles (matching TemplatePreview)
|
|
1144
|
-
&.whatsapp-message-pop
|
|
1145
|
-
&.whatsapp-message-pop-carousel {
|
|
847
|
+
&.whatsapp-message-pop {
|
|
1146
848
|
padding: $CAP_SPACE_04 0 $CAP_SPACE_08;
|
|
1147
849
|
border-radius: $CAP_SPACE_06;
|
|
1148
850
|
background-color: $CAP_WHITE;
|
|
1149
|
-
left: 0;
|
|
1150
|
-
}
|
|
1151
|
-
|
|
1152
|
-
&.whatsapp-message-pop {
|
|
1153
851
|
width: 88%;
|
|
852
|
+
left: 0;
|
|
1154
853
|
}
|
|
1155
854
|
|
|
1156
855
|
// WhatsApp carousel message pop styles
|
|
1157
856
|
&.whatsapp-message-pop-carousel {
|
|
857
|
+
padding: $CAP_SPACE_04 0 $CAP_SPACE_08;
|
|
858
|
+
border-radius: $CAP_SPACE_06;
|
|
859
|
+
background-color: $CAP_WHITE;
|
|
1158
860
|
width: 10.4rem;
|
|
1159
861
|
cursor: pointer;
|
|
1160
862
|
flex-shrink: 0;
|
|
863
|
+
left: 0;
|
|
1161
864
|
}
|
|
1162
865
|
}
|
|
1163
866
|
}
|
|
@@ -1222,7 +925,7 @@
|
|
|
1222
925
|
line-height: 1rem;
|
|
1223
926
|
font-family: Roboto, 'Open Sans', sans-serif;
|
|
1224
927
|
}
|
|
1225
|
-
|
|
928
|
+
|
|
1226
929
|
.whatsapp-template-footer-preview {
|
|
1227
930
|
// From WhatsApp/index.scss: color: $CAP_G04, but use white for preview
|
|
1228
931
|
color: $CAP_G01;
|
|
@@ -1304,19 +1007,19 @@
|
|
|
1304
1007
|
color: #8c8c8c;
|
|
1305
1008
|
font-size: $FONT_SIZE_M;
|
|
1306
1009
|
}
|
|
1307
|
-
|
|
1010
|
+
|
|
1308
1011
|
.whatsapp-error-text {
|
|
1309
1012
|
font-size: $FONT_SIZE_L;
|
|
1310
1013
|
font-weight: 600;
|
|
1311
1014
|
color: #262626;
|
|
1312
1015
|
}
|
|
1313
|
-
|
|
1016
|
+
|
|
1314
1017
|
.whatsapp-error-message {
|
|
1315
1018
|
font-size: $FONT_SIZE_M;
|
|
1316
1019
|
color: #ff4d4f;
|
|
1317
1020
|
text-align: center;
|
|
1318
1021
|
}
|
|
1319
|
-
|
|
1022
|
+
|
|
1320
1023
|
.whatsapp-no-content {
|
|
1321
1024
|
color: #8c8c8c;
|
|
1322
1025
|
font-size: $FONT_SIZE_M;
|
|
@@ -1368,14 +1071,14 @@
|
|
|
1368
1071
|
color: #8c8c8c;
|
|
1369
1072
|
margin-top: $CAP_SPACE_04;
|
|
1370
1073
|
}
|
|
1371
|
-
|
|
1074
|
+
|
|
1372
1075
|
.url-preview {
|
|
1373
1076
|
font-size: $FONT_SIZE_S;
|
|
1374
1077
|
color: #1890ff;
|
|
1375
1078
|
word-break: break-all;
|
|
1376
1079
|
}
|
|
1377
1080
|
}
|
|
1378
|
-
|
|
1081
|
+
|
|
1379
1082
|
// InApp Preview Content Styles (Phase 10)
|
|
1380
1083
|
// Styles copied from TemplatePreview/_templatePreview.scss to ensure consistency
|
|
1381
1084
|
// These styles work within the SMS device container structure
|
|
@@ -1436,11 +1139,11 @@
|
|
|
1436
1139
|
.inapp-message-container-FULLSCREEN {
|
|
1437
1140
|
position: relative;
|
|
1438
1141
|
background-color: $CAP_WHITE;
|
|
1439
|
-
width: 100%;
|
|
1142
|
+
width: 100%;
|
|
1440
1143
|
height: 100%;
|
|
1441
1144
|
align-items: center;
|
|
1442
1145
|
padding: 0 $CAP_SPACE_16;
|
|
1443
|
-
border-bottom-left-radius: 2.6rem;
|
|
1146
|
+
border-bottom-left-radius: 2.6rem;
|
|
1444
1147
|
border-bottom-right-radius: 2.6rem;
|
|
1445
1148
|
.inapp-title-FULLSCREEN {
|
|
1446
1149
|
align-items: center;
|
|
@@ -2270,7 +1973,7 @@
|
|
|
2270
1973
|
max-height: 7.5rem;
|
|
2271
1974
|
margin-left: $CAP_SPACE_24;
|
|
2272
1975
|
}
|
|
2273
|
-
|
|
1976
|
+
|
|
2274
1977
|
.mpush-gif-preview {
|
|
2275
1978
|
max-width: 100%;
|
|
2276
1979
|
max-height: 7.5rem;
|
|
@@ -2528,7 +2231,6 @@
|
|
|
2528
2231
|
font-weight: 500;
|
|
2529
2232
|
display: -webkit-box;
|
|
2530
2233
|
-webkit-line-clamp: 1;
|
|
2531
|
-
line-clamp: 1;
|
|
2532
2234
|
-webkit-box-orient: vertical;
|
|
2533
2235
|
overflow: hidden;
|
|
2534
2236
|
color: $CAP_WHITE;
|
|
@@ -2580,7 +2282,7 @@
|
|
|
2580
2282
|
color: $FONT_COLOR_01;
|
|
2581
2283
|
margin-bottom: $CAP_SPACE_12;
|
|
2582
2284
|
}
|
|
2583
|
-
|
|
2285
|
+
|
|
2584
2286
|
.preview-text {
|
|
2585
2287
|
font-weight: 400;
|
|
2586
2288
|
font-size: $FONT_SIZE_S;
|
|
@@ -2615,13 +2317,13 @@
|
|
|
2615
2317
|
justify-content: center;
|
|
2616
2318
|
padding: $CAP_SPACE_60 $CAP_SPACE_24;
|
|
2617
2319
|
gap: $CAP_SPACE_16;
|
|
2618
|
-
|
|
2320
|
+
|
|
2619
2321
|
.zalo-loading-text {
|
|
2620
2322
|
color: #8c8c8c;
|
|
2621
2323
|
font-size: $FONT_SIZE_M;
|
|
2622
2324
|
}
|
|
2623
2325
|
}
|
|
2624
|
-
|
|
2326
|
+
|
|
2625
2327
|
// Error state
|
|
2626
2328
|
.zalo-error-container {
|
|
2627
2329
|
display: flex;
|
|
@@ -2630,13 +2332,13 @@
|
|
|
2630
2332
|
justify-content: center;
|
|
2631
2333
|
padding: $CAP_SPACE_60 $CAP_SPACE_24;
|
|
2632
2334
|
gap: $CAP_SPACE_16;
|
|
2633
|
-
|
|
2335
|
+
|
|
2634
2336
|
.zalo-error-text {
|
|
2635
2337
|
font-size: $FONT_SIZE_L;
|
|
2636
2338
|
font-weight: 600;
|
|
2637
2339
|
color: #262626;
|
|
2638
2340
|
}
|
|
2639
|
-
|
|
2341
|
+
|
|
2640
2342
|
.zalo-error-message {
|
|
2641
2343
|
font-size: $FONT_SIZE_M;
|
|
2642
2344
|
color: #ff4d4f;
|
|
@@ -2708,39 +2410,36 @@
|
|
|
2708
2410
|
}
|
|
2709
2411
|
}
|
|
2710
2412
|
}
|
|
2711
|
-
|
|
2413
|
+
|
|
2712
2414
|
@media (max-width: 54.857rem) {
|
|
2713
2415
|
.unified-preview {
|
|
2714
2416
|
.preview-header {
|
|
2715
2417
|
flex-direction: column;
|
|
2716
2418
|
align-items: flex-start;
|
|
2717
2419
|
gap: $CAP_SPACE_12;
|
|
2718
|
-
|
|
2420
|
+
|
|
2719
2421
|
.preview-header-right {
|
|
2720
2422
|
width: 100%;
|
|
2721
2423
|
justify-content: flex-start;
|
|
2722
2424
|
}
|
|
2723
2425
|
}
|
|
2724
|
-
|
|
2426
|
+
|
|
2725
2427
|
.preview-content-container {
|
|
2726
2428
|
padding: $CAP_SPACE_16;
|
|
2727
2429
|
}
|
|
2728
|
-
|
|
2430
|
+
|
|
2729
2431
|
.device-frame {
|
|
2730
2432
|
&.device-frame-desktop,
|
|
2731
2433
|
&.device-frame-tablet {
|
|
2732
2434
|
width: 100% !important;
|
|
2733
2435
|
max-width: 100% !important;
|
|
2734
2436
|
}
|
|
2735
|
-
|
|
2736
|
-
|
|
2737
|
-
|
|
2738
|
-
|
|
2739
|
-
|
|
2740
|
-
// background render far wider than the phone silhouette, visibly eating
|
|
2741
|
-
// into the grey backdrop around it, while the carousel content inside
|
|
2742
|
-
// stayed capped at its normal phone width — a width mismatch, not a
|
|
2743
|
-
// clipping bug.
|
|
2437
|
+
|
|
2438
|
+
&.device-frame-mobile {
|
|
2439
|
+
width: 100% !important;
|
|
2440
|
+
max-width: 100% !important;
|
|
2441
|
+
}
|
|
2744
2442
|
}
|
|
2745
2443
|
}
|
|
2746
2444
|
}
|
|
2445
|
+
|