pb-sxp-ui 1.2.1 → 1.2.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +132 -83
- package/dist/index.cjs.map +1 -1
- package/dist/index.css +99 -32
- package/dist/index.js +132 -83
- package/dist/index.js.map +1 -1
- package/dist/index.min.cjs +3 -3
- package/dist/index.min.cjs.map +1 -1
- package/dist/index.min.js +3 -3
- package/dist/index.min.js.map +1 -1
- package/dist/pb-ui.js +132 -83
- package/dist/pb-ui.js.map +1 -1
- package/dist/pb-ui.min.js +3 -3
- package/dist/pb-ui.min.js.map +1 -1
- package/es/core/Pagebuilder/type.d.ts +1 -0
- package/es/core/components/SxpPageCore/index.js +1 -1
- package/es/core/components/SxpPageRender/FingerSwipeTip/index.d.ts +1 -0
- package/es/core/components/SxpPageRender/FingerSwipeTip/index.js +3 -3
- package/es/core/components/SxpPageRender/Hashtag/index.js +3 -1
- package/es/core/components/SxpPageRender/Navbar.js +1 -1
- package/es/core/components/SxpPageRender/VideoWidget/index.js +13 -10
- package/es/core/components/SxpPageRender/WaterFall/List.js +1 -1
- package/es/core/components/SxpPageRender/WaterFall/WaterfallList.js +1 -1
- package/es/core/components/SxpPageRender/index.d.ts +3 -0
- package/es/core/components/SxpPageRender/index.js +8 -8
- package/es/core/context/SxpDataSourceProvider.d.ts +1 -0
- package/es/core/context/SxpDataSourceProvider.js +3 -3
- package/es/materials/sxp/HashTag/material.js +2 -1
- package/es/materials/sxp/cta/AniLink/index.js +27 -11
- package/es/materials/sxp/cta/AniLinkPopup/index.js +40 -23
- package/es/materials/sxp/popup/CommodityDetail/index.js +1 -1
- package/es/materials/sxp/popup/CommodityDetailDiroNew/index.js +1 -1
- package/es/materials/sxp/popup/CommodityList/index.js +13 -7
- package/es/materials/sxp/template/Link/index.js +2 -2
- package/es/materials/sxp/template/components/Img.js +1 -1
- package/es/materials/sxp/template/components/settingRender.js +5 -0
- package/lib/core/Pagebuilder/type.d.ts +1 -0
- package/lib/core/components/SxpPageCore/index.js +1 -1
- package/lib/core/components/SxpPageRender/FingerSwipeTip/index.d.ts +1 -0
- package/lib/core/components/SxpPageRender/FingerSwipeTip/index.js +3 -3
- package/lib/core/components/SxpPageRender/Hashtag/index.js +3 -1
- package/lib/core/components/SxpPageRender/Navbar.js +1 -1
- package/lib/core/components/SxpPageRender/VideoWidget/index.js +13 -10
- package/lib/core/components/SxpPageRender/WaterFall/List.js +1 -1
- package/lib/core/components/SxpPageRender/WaterFall/WaterfallList.js +1 -1
- package/lib/core/components/SxpPageRender/index.d.ts +3 -0
- package/lib/core/components/SxpPageRender/index.js +8 -8
- package/lib/core/context/SxpDataSourceProvider.d.ts +1 -0
- package/lib/core/context/SxpDataSourceProvider.js +3 -3
- package/lib/materials/sxp/HashTag/material.js +2 -1
- package/lib/materials/sxp/cta/AniLink/index.js +26 -10
- package/lib/materials/sxp/cta/AniLinkPopup/index.js +39 -22
- package/lib/materials/sxp/popup/CommodityDetail/index.js +1 -1
- package/lib/materials/sxp/popup/CommodityDetailDiroNew/index.js +1 -1
- package/lib/materials/sxp/popup/CommodityList/index.js +13 -7
- package/lib/materials/sxp/template/Link/index.js +2 -2
- package/lib/materials/sxp/template/components/Img.js +1 -1
- package/lib/materials/sxp/template/components/settingRender.js +5 -0
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -554,7 +554,7 @@ var DataSourceType;
|
|
|
554
554
|
DataSourceType[DataSourceType["BFF"] = 5] = "BFF";
|
|
555
555
|
})(DataSourceType || (DataSourceType = {}));
|
|
556
556
|
const DEFAULT_TAG = 'FOR U';
|
|
557
|
-
const SxpDataSourceProvider = ({ render, dataSources, utmVal, enableReportEvent = true, maxSize, defaultSize, isPreview = false, sxpParameter, appDomain, hashTagSize, loadingImage, isOpenHashTag = false, enabledMetaConversionApi = false, consentHeight, consentWidth, isShowTag = true, isOpenConsent = false, globalConfig, isEditor = false }) => {
|
|
557
|
+
const SxpDataSourceProvider = ({ render, dataSources, utmVal, enableReportEvent = true, maxSize, defaultSize, isPreview = false, sxpParameter, appDomain, hashTagSize, loadingImage, isOpenHashTag = false, enabledMetaConversionApi = false, consentHeight, consentWidth, isShowTag = true, isOpenConsent = false, globalConfig, isEditor = false, utmParameter }) => {
|
|
558
558
|
var _a, _b, _c;
|
|
559
559
|
const [rtcList, setRtcList] = React.useState([]);
|
|
560
560
|
const [tagList, setTagList] = React.useState([]);
|
|
@@ -636,7 +636,7 @@ const SxpDataSourceProvider = ({ render, dataSources, utmVal, enableReportEvent
|
|
|
636
636
|
const val = (_h = (_g = (_f = utmVal === null || utmVal === void 0 ? void 0 : utmVal.split('&')) === null || _f === void 0 ? void 0 : _f.filter((val) => {
|
|
637
637
|
var _a, _b;
|
|
638
638
|
const key = val.split('=')[0];
|
|
639
|
-
return (_b = ((_a =
|
|
639
|
+
return (_b = ((_a = utmParameter === null || utmParameter === void 0 ? void 0 : utmParameter.channels) !== null && _a !== void 0 ? _a : [])) === null || _b === void 0 ? void 0 : _b.includes(key);
|
|
640
640
|
})) === null || _g === void 0 ? void 0 : _g.join('&')) !== null && _h !== void 0 ? _h : '';
|
|
641
641
|
query = Object.assign(Object.assign({}, query), { channel: decodeURIComponent(val) });
|
|
642
642
|
}
|
|
@@ -731,7 +731,7 @@ const SxpDataSourceProvider = ({ render, dataSources, utmVal, enableReportEvent
|
|
|
731
731
|
const val = (_o = (_m = (_l = utmVal === null || utmVal === void 0 ? void 0 : utmVal.split('&')) === null || _l === void 0 ? void 0 : _l.filter((val) => {
|
|
732
732
|
var _a, _b;
|
|
733
733
|
const key = val.split('=')[0];
|
|
734
|
-
return (_b = ((_a =
|
|
734
|
+
return (_b = ((_a = utmParameter === null || utmParameter === void 0 ? void 0 : utmParameter.channels) !== null && _a !== void 0 ? _a : [])) === null || _b === void 0 ? void 0 : _b.includes(key);
|
|
735
735
|
})) === null || _m === void 0 ? void 0 : _m.join('&')) !== null && _o !== void 0 ? _o : '';
|
|
736
736
|
const result = yield (bffFetch === null || bffFetch === void 0 ? void 0 : bffFetch('/tag/list', { method: 'GET', query: { channel: decodeURIComponent(val) } }));
|
|
737
737
|
setTagList((_q = (_p = result === null || result === void 0 ? void 0 : result.data) === null || _p === void 0 ? void 0 : _p.tags) !== null && _q !== void 0 ? _q : []);
|
|
@@ -8988,7 +8988,7 @@ const CommodityDetail$1 = (_a) => {
|
|
|
8988
8988
|
width: '100%',
|
|
8989
8989
|
objectFit: 'cover',
|
|
8990
8990
|
display: 'block',
|
|
8991
|
-
objectPosition: `50% ${(swiper === null || swiper === void 0 ? void 0 : swiper.translateY) ?
|
|
8991
|
+
objectPosition: `50% ${(swiper === null || swiper === void 0 ? void 0 : swiper.translateY) ? (swiper === null || swiper === void 0 ? void 0 : swiper.translateY) + 50 : 50}%`
|
|
8992
8992
|
}, src: src }))));
|
|
8993
8993
|
}))))),
|
|
8994
8994
|
!((_j = product === null || product === void 0 ? void 0 : product.homePage) === null || _j === void 0 ? void 0 : _j.length) && (React.createElement("div", { className: css.css({
|
|
@@ -9716,7 +9716,7 @@ Made in Italy` })));
|
|
|
9716
9716
|
width: '100%',
|
|
9717
9717
|
objectFit: 'cover',
|
|
9718
9718
|
display: 'block',
|
|
9719
|
-
objectPosition: `50% ${(swiper === null || swiper === void 0 ? void 0 : swiper.translateY) ?
|
|
9719
|
+
objectPosition: `50% ${(swiper === null || swiper === void 0 ? void 0 : swiper.translateY) ? (swiper === null || swiper === void 0 ? void 0 : swiper.translateY) + 50 : 50}%`
|
|
9720
9720
|
}, src: src }))));
|
|
9721
9721
|
}))),
|
|
9722
9722
|
!((_j = product === null || product === void 0 ? void 0 : product.homePage) === null || _j === void 0 ? void 0 : _j.length) && (React.createElement("div", { className: css.css({
|
|
@@ -10102,7 +10102,7 @@ function useOnScreen(ref) {
|
|
|
10102
10102
|
* @Author: binruan@chatlabs.com
|
|
10103
10103
|
* @Date: 2024-01-16 14:50:13
|
|
10104
10104
|
* @LastEditors: binruan@chatlabs.com
|
|
10105
|
-
* @LastEditTime: 2024-
|
|
10105
|
+
* @LastEditTime: 2024-07-04 18:13:23
|
|
10106
10106
|
* @FilePath: \pb-sxp-ui\src\materials\sxp\template\components\Img.tsx
|
|
10107
10107
|
*
|
|
10108
10108
|
*/
|
|
@@ -10123,7 +10123,7 @@ const Img = ({ src, rec, item, index, style, translateY, imgStyle }) => {
|
|
|
10123
10123
|
}, [src]);
|
|
10124
10124
|
return (React.createElement("div", { className: css.css(Object.assign({ overflow: 'hidden', flexShrink: 0, backgroundColor: '#f2f2f2' }, imgStyle)) },
|
|
10125
10125
|
React.createElement("div", { ref: ref, hidden: !src, className: css.css({ width: '100%', height: '100%' }) },
|
|
10126
|
-
React.createElement(FormatImage$1, { className: css.css(Object.assign({ width: '100%', objectFit: 'cover', height: '100%', display: 'block', objectPosition: `50% ${translateY ?
|
|
10126
|
+
React.createElement(FormatImage$1, { className: css.css(Object.assign({ width: '100%', objectFit: 'cover', height: '100%', display: 'block', objectPosition: `50% ${translateY ? translateY + 50 : 50}%` }, style)), src: src }))));
|
|
10127
10127
|
};
|
|
10128
10128
|
var Img$1 = React.memo(Img);
|
|
10129
10129
|
|
|
@@ -10176,18 +10176,24 @@ const CommodityList$1 = (_a) => {
|
|
|
10176
10176
|
}
|
|
10177
10177
|
}, []);
|
|
10178
10178
|
return (React.createElement("div", { className: css.css(Object.assign(Object.assign({}, style), { display: 'flex', flexDirection: 'column', gap: '10px', padding: '0 20px', marginTop: '50px' })) }, product === null || product === void 0 ? void 0 : product.map((item, index) => {
|
|
10179
|
-
var _a, _b, _c, _d, _e, _f, _g, _h;
|
|
10179
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l;
|
|
10180
10180
|
return (React.createElement(EventProvider$1, Object.assign({ key: index, isExternalLink: isExternalLink, rec: recData, index: index }, props, { className: css.css({
|
|
10181
10181
|
display: 'flex'
|
|
10182
10182
|
}) }),
|
|
10183
10183
|
React.createElement(Img$1, { src: (_d = (_c = (_a = item === null || item === void 0 ? void 0 : item.cover) !== null && _a !== void 0 ? _a : (_b = item === null || item === void 0 ? void 0 : item.homePage) === null || _b === void 0 ? void 0 : _b[0]) !== null && _c !== void 0 ? _c : sxpParameter === null || sxpParameter === void 0 ? void 0 : sxpParameter.bottom_image) !== null && _d !== void 0 ? _d : bottom_image, rec: recData, item: item, index: index, translateY: translateY, imgStyle: commodityPicture }),
|
|
10184
|
-
React.createElement("div", { style: {
|
|
10184
|
+
React.createElement("div", { style: {
|
|
10185
|
+
flex: 1,
|
|
10186
|
+
width: `calc(100% - ${(_e = commodityPicture === null || commodityPicture === void 0 ? void 0 : commodityPicture.width) !== null && _e !== void 0 ? _e : 0}px - ${(_f = commodityPicture === null || commodityPicture === void 0 ? void 0 : commodityPicture.marginRight) !== null && _f !== void 0 ? _f : 0}px - ${(_g = style === null || style === void 0 ? void 0 : style.padding) !== null && _g !== void 0 ? _g : 0}px)`,
|
|
10187
|
+
display: 'flex',
|
|
10188
|
+
flexDirection: 'column',
|
|
10189
|
+
justifyContent: 'space-between'
|
|
10190
|
+
} },
|
|
10185
10191
|
React.createElement("div", null,
|
|
10186
|
-
React.createElement("div", { style: commodityStyles === null || commodityStyles === void 0 ? void 0 : commodityStyles.title, hidden: !!item && !(item === null || item === void 0 ? void 0 : item.title), dangerouslySetInnerHTML: {
|
|
10187
|
-
__html: setFontForText((
|
|
10192
|
+
React.createElement("div", { className: 'one-line-ellipsis', style: commodityStyles === null || commodityStyles === void 0 ? void 0 : commodityStyles.title, hidden: !!item && !(item === null || item === void 0 ? void 0 : item.title), dangerouslySetInnerHTML: {
|
|
10193
|
+
__html: setFontForText((_h = item === null || item === void 0 ? void 0 : item.title) !== null && _h !== void 0 ? _h : 'Pendant in Yellow Gold with Diamonds, Medium', commodityStyles === null || commodityStyles === void 0 ? void 0 : commodityStyles.title)
|
|
10188
10194
|
} }),
|
|
10189
|
-
React.createElement("div", { style: commodityStyles === null || commodityStyles === void 0 ? void 0 : commodityStyles.collection, hidden: !!item && (!(item === null || item === void 0 ? void 0 : item.collection) || (item === null || item === void 0 ? void 0 : item.collection) === ''), dangerouslySetInnerHTML: {
|
|
10190
|
-
__html: setFontForText((
|
|
10195
|
+
React.createElement("div", { className: 'two-line-ellipsis', style: commodityStyles === null || commodityStyles === void 0 ? void 0 : commodityStyles.collection, hidden: !!item && (!(item === null || item === void 0 ? void 0 : item.collection) || (item === null || item === void 0 ? void 0 : item.collection) === ''), dangerouslySetInnerHTML: {
|
|
10196
|
+
__html: setFontForText((_j = item === null || item === void 0 ? void 0 : item.collection) !== null && _j !== void 0 ? _j : 'Tiffany Lock', commodityStyles === null || commodityStyles === void 0 ? void 0 : commodityStyles.collection)
|
|
10191
10197
|
} })),
|
|
10192
10198
|
React.createElement("div", { className: css.css({
|
|
10193
10199
|
display: 'flex',
|
|
@@ -10200,7 +10206,7 @@ const CommodityList$1 = (_a) => {
|
|
|
10200
10206
|
__html: setFontForText(priceText(item), commodityStyles === null || commodityStyles === void 0 ? void 0 : commodityStyles.price)
|
|
10201
10207
|
} }),
|
|
10202
10208
|
React.createElement("div", { className: 'one-line-ellipsis', style: Object.assign(Object.assign({}, buttonStyle), { padding: '0 15px', maxWidth: '100px' }), dangerouslySetInnerHTML: {
|
|
10203
|
-
__html: setFontForText((
|
|
10209
|
+
__html: setFontForText((_l = (_k = item === null || item === void 0 ? void 0 : item.bindCta) === null || _k === void 0 ? void 0 : _k.enTitle) !== null && _l !== void 0 ? _l : 'Shop Now', buttonStyle)
|
|
10204
10210
|
} })))));
|
|
10205
10211
|
})));
|
|
10206
10212
|
};
|
|
@@ -10293,7 +10299,7 @@ const CommodityList = createMaterial(CommodityListComponent, {
|
|
|
10293
10299
|
* @Author: binruan@chatlabs.com
|
|
10294
10300
|
* @Date: 2024-03-26 16:50:25
|
|
10295
10301
|
* @LastEditors: binruan@chatlabs.com
|
|
10296
|
-
* @LastEditTime: 2024-
|
|
10302
|
+
* @LastEditTime: 2024-07-04 17:47:52
|
|
10297
10303
|
* @FilePath: \pb-sxp-ui\src\materials\sxp\template\components\settingRender.tsx
|
|
10298
10304
|
*
|
|
10299
10305
|
*/
|
|
@@ -10538,6 +10544,11 @@ var settingRender$4 = [
|
|
|
10538
10544
|
label: '对齐',
|
|
10539
10545
|
type: 'TextAlign',
|
|
10540
10546
|
name: ['props', 'ctaTempStyles', 'ctaTitle']
|
|
10547
|
+
},
|
|
10548
|
+
{
|
|
10549
|
+
label: '间距',
|
|
10550
|
+
type: 'TextSpace',
|
|
10551
|
+
name: ['props', 'ctaTempStyles', 'ctaTitle']
|
|
10541
10552
|
}
|
|
10542
10553
|
]
|
|
10543
10554
|
}
|
|
@@ -10850,7 +10861,7 @@ const Link$1 = (_a) => {
|
|
|
10850
10861
|
overflow: 'hidden'
|
|
10851
10862
|
}) },
|
|
10852
10863
|
React.createElement("div", null,
|
|
10853
|
-
React.createElement("div", { className:
|
|
10864
|
+
React.createElement("div", { className: styles$7['tow-line-ellipsis'], style: ctaTempStyles === null || ctaTempStyles === void 0 ? void 0 : ctaTempStyles.ctaTitle, dangerouslySetInnerHTML: {
|
|
10854
10865
|
__html: setFontForText((_h = cta === null || cta === void 0 ? void 0 : cta.enTitle) !== null && _h !== void 0 ? _h : 'Product Name', ctaTempStyles === null || ctaTempStyles === void 0 ? void 0 : ctaTempStyles.ctaTitle)
|
|
10855
10866
|
} }),
|
|
10856
10867
|
(customTitle === null || customTitle === void 0 ? void 0 : customTitle.display) && (React.createElement("div", { style: Object.assign(Object.assign({}, customTitle === null || customTitle === void 0 ? void 0 : customTitle.style), { lineHeight: ((_j = customTitle === null || customTitle === void 0 ? void 0 : customTitle.style) === null || _j === void 0 ? void 0 : _j.height) + 'px' }), className: styles$7['one-line-ellipsis'], dangerouslySetInnerHTML: {
|
|
@@ -11678,7 +11689,7 @@ var settingRender$3 = [
|
|
|
11678
11689
|
* @Author: binruan@chatlabs.com
|
|
11679
11690
|
* @Date: 2023-12-26 16:11:34
|
|
11680
11691
|
* @LastEditors: binruan@chatlabs.com
|
|
11681
|
-
* @LastEditTime: 2024-
|
|
11692
|
+
* @LastEditTime: 2024-07-04 18:34:18
|
|
11682
11693
|
* @FilePath: \pb-sxp-ui\src\core\components\SxpPageRender\Navbar.tsx
|
|
11683
11694
|
*
|
|
11684
11695
|
*/
|
|
@@ -11687,7 +11698,7 @@ const Navbar = ({ icon, styles, textStyle, onClose }) => {
|
|
|
11687
11698
|
const { waterFallData, setOpenHashtag } = useSxpDataSource();
|
|
11688
11699
|
return (React.createElement("div", { className: 'clc-sxp-nav', style: styles },
|
|
11689
11700
|
React.createElement("img", { className: 'clc-sxp-nav-left', src: icon, alt: 'back button', onClick: onClose }),
|
|
11690
|
-
React.createElement("div", { className: 'clc-sxp-nav-title', style: textStyle, dangerouslySetInnerHTML: {
|
|
11701
|
+
React.createElement("div", { className: 'clc-sxp-nav-title', style: Object.assign(Object.assign({}, textStyle), { paddingLeft: (textStyle === null || textStyle === void 0 ? void 0 : textStyle.textAlign) === 'left' ? '35px' : 0 }), dangerouslySetInnerHTML: {
|
|
11691
11702
|
__html: setFontForText(`#${(_a = waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.hashTag) !== null && _a !== void 0 ? _a : '标题'}`, textStyle)
|
|
11692
11703
|
} })));
|
|
11693
11704
|
};
|
|
@@ -13282,7 +13293,7 @@ function WaterfallList$1(_a) {
|
|
|
13282
13293
|
var _a, _b;
|
|
13283
13294
|
if ((_a = data === null || data === void 0 ? void 0 : data.tag) === null || _a === void 0 ? void 0 : _a.link) {
|
|
13284
13295
|
reportTagsView();
|
|
13285
|
-
window.location.href = (_b = data === null || data === void 0 ? void 0 : data.tag) === null || _b === void 0 ? void 0 : _b.link;
|
|
13296
|
+
window.location.href = window.getJointUtmLink((_b = data === null || data === void 0 ? void 0 : data.tag) === null || _b === void 0 ? void 0 : _b.link);
|
|
13286
13297
|
}
|
|
13287
13298
|
};
|
|
13288
13299
|
return (React.createElement(React.Fragment, null, isLoadingData ? (React.createElement("div", { style: { height: '100%', width: '100%', display: 'flex', justifyContent: 'center', alignItems: 'center' } },
|
|
@@ -13517,7 +13528,7 @@ function WaterfallList(_a) {
|
|
|
13517
13528
|
var _a, _b;
|
|
13518
13529
|
if ((_a = data === null || data === void 0 ? void 0 : data.tag) === null || _a === void 0 ? void 0 : _a.link) {
|
|
13519
13530
|
reportTagsView();
|
|
13520
|
-
window.location.href = (_b = data === null || data === void 0 ? void 0 : data.tag) === null || _b === void 0 ? void 0 : _b.link;
|
|
13531
|
+
window.location.href = window.getJointUtmLink((_b = data === null || data === void 0 ? void 0 : data.tag) === null || _b === void 0 ? void 0 : _b.link);
|
|
13521
13532
|
}
|
|
13522
13533
|
};
|
|
13523
13534
|
return (React.createElement(React.Fragment, null, isLoadingData ? (React.createElement("div", { style: { height: '100%', width: '100%', display: 'flex', justifyContent: 'center', alignItems: 'center' } },
|
|
@@ -13670,7 +13681,7 @@ var HashTagComponent = React.memo(HashTag$1);
|
|
|
13670
13681
|
* @Author: binruan@chatlabs.com
|
|
13671
13682
|
* @Date: 2023-07-28 18:29:57
|
|
13672
13683
|
* @LastEditors: binruan@chatlabs.com
|
|
13673
|
-
* @LastEditTime: 2024-04
|
|
13684
|
+
* @LastEditTime: 2024-07-04 18:38:10
|
|
13674
13685
|
* @FilePath: \pb-sxp-ui\src\materials\sxp\HashTag\material.tsx
|
|
13675
13686
|
*
|
|
13676
13687
|
*/
|
|
@@ -13690,7 +13701,8 @@ const HashTag = createMaterial(HashTagComponent, {
|
|
|
13690
13701
|
textStyles: {
|
|
13691
13702
|
hashTagTitle: {
|
|
13692
13703
|
fontSize: 16,
|
|
13693
|
-
color: '#000'
|
|
13704
|
+
color: '#000',
|
|
13705
|
+
textAlign: 'center'
|
|
13694
13706
|
},
|
|
13695
13707
|
hashTagDesc: {
|
|
13696
13708
|
fontSize: 12,
|
|
@@ -13927,19 +13939,20 @@ var settingRender$1 = [
|
|
|
13927
13939
|
}
|
|
13928
13940
|
];
|
|
13929
13941
|
|
|
13930
|
-
var styles$1 = {"animated-button":"index-module_animated-button__lqTbg","gradientCover":"index-module_gradientCover__5iUag"};
|
|
13942
|
+
var styles$1 = {"animated-button":"index-module_animated-button__lqTbg","gradientCover":"index-module_gradientCover__5iUag","one-line-ellipsis":"index-module_one-line-ellipsis__HutE0","two-line-ellipsis":"index-module_two-line-ellipsis__c8gRJ"};
|
|
13931
13943
|
|
|
13932
13944
|
const AniLink$1 = (_a) => {
|
|
13933
|
-
var _b, _c, _d, _e, _f, _g, _h, _j, _k;
|
|
13945
|
+
var _b, _c, _d, _e, _f, _g, _h, _j, _k, _l;
|
|
13934
13946
|
var { style, recData, ctaTempStyles, index, event, onClick, isExternalLink = false } = _a, props = __rest(_a, ["style", "recData", "ctaTempStyles", "index", "event", "onClick", "isExternalLink"]);
|
|
13935
13947
|
const { ctaEvent, setPopupDetailData } = useSxpDataSource();
|
|
13936
13948
|
const { jumpToWeb } = useEventReport();
|
|
13949
|
+
const [visible, setVisible] = React.useState(false);
|
|
13937
13950
|
const ref = React.useRef(null);
|
|
13938
13951
|
const isOnScreen = useOnScreen(ref);
|
|
13939
13952
|
const cta = ((_d = (_c = (_b = recData === null || recData === void 0 ? void 0 : recData.video) === null || _b === void 0 ? void 0 : _b.bindProducts) === null || _c === void 0 ? void 0 : _c[0]) === null || _d === void 0 ? void 0 : _d.bindCta) || ((_f = (_e = recData === null || recData === void 0 ? void 0 : recData.video) === null || _e === void 0 ? void 0 : _e.bindProduct) === null || _f === void 0 ? void 0 : _f.bindCta) || ((_g = recData === null || recData === void 0 ? void 0 : recData.video) === null || _g === void 0 ? void 0 : _g.bindCta);
|
|
13940
13953
|
const product = ((_j = (_h = recData === null || recData === void 0 ? void 0 : recData.video) === null || _h === void 0 ? void 0 : _h.bindProducts) === null || _j === void 0 ? void 0 : _j[0]) || ((_k = recData === null || recData === void 0 ? void 0 : recData.video) === null || _k === void 0 ? void 0 : _k.bindProduct);
|
|
13941
13954
|
const handleTo = () => {
|
|
13942
|
-
var _a, _b, _c;
|
|
13955
|
+
var _a, _b, _c, _d;
|
|
13943
13956
|
const item = ((_b = (_a = recData === null || recData === void 0 ? void 0 : recData.video) === null || _a === void 0 ? void 0 : _a.bindProducts) === null || _b === void 0 ? void 0 : _b[0]) || ((_c = recData === null || recData === void 0 ? void 0 : recData.video) === null || _c === void 0 ? void 0 : _c.bindProduct) || (recData === null || recData === void 0 ? void 0 : recData.video);
|
|
13944
13957
|
ctaEvent === null || ctaEvent === void 0 ? void 0 : ctaEvent({
|
|
13945
13958
|
eventSubject: 'clickCta',
|
|
@@ -13947,12 +13960,18 @@ const AniLink$1 = (_a) => {
|
|
|
13947
13960
|
}, recData, item, index);
|
|
13948
13961
|
setPopupDetailData === null || setPopupDetailData === void 0 ? void 0 : setPopupDetailData(Object.assign(Object.assign({}, recData), { index }));
|
|
13949
13962
|
if (isExternalLink) {
|
|
13950
|
-
|
|
13963
|
+
const link = (product === null || product === void 0 ? void 0 : product.link) || ((_d = item === null || item === void 0 ? void 0 : item.bindCta) === null || _d === void 0 ? void 0 : _d.link);
|
|
13964
|
+
if (link) {
|
|
13965
|
+
jumpToWeb(recData, product, cta, index);
|
|
13966
|
+
window.location.href = window.getJointUtmLink(link);
|
|
13967
|
+
}
|
|
13968
|
+
}
|
|
13969
|
+
else {
|
|
13970
|
+
onClick === null || onClick === void 0 ? void 0 : onClick();
|
|
13951
13971
|
}
|
|
13952
|
-
onClick === null || onClick === void 0 ? void 0 : onClick();
|
|
13953
13972
|
};
|
|
13954
|
-
const title = (cta === null || cta === void 0 ? void 0 : cta.
|
|
13955
|
-
const
|
|
13973
|
+
const title = (cta === null || cta === void 0 ? void 0 : cta.enTitle) || '查看详情 >';
|
|
13974
|
+
const aniTimStyle = React.useMemo(() => {
|
|
13956
13975
|
var _a, _b;
|
|
13957
13976
|
const ani = event === null || event === void 0 ? void 0 : event.animation;
|
|
13958
13977
|
if (ani) {
|
|
@@ -13974,10 +13993,19 @@ const AniLink$1 = (_a) => {
|
|
|
13974
13993
|
}, recData, product, index);
|
|
13975
13994
|
}
|
|
13976
13995
|
}, [isOnScreen]);
|
|
13977
|
-
|
|
13978
|
-
|
|
13979
|
-
|
|
13980
|
-
|
|
13996
|
+
React.useEffect(() => {
|
|
13997
|
+
if (isOnScreen) {
|
|
13998
|
+
setVisible(true);
|
|
13999
|
+
}
|
|
14000
|
+
}, [isOnScreen]);
|
|
14001
|
+
const aniNamStyle = React.useMemo(() => {
|
|
14002
|
+
if (!visible)
|
|
14003
|
+
return null;
|
|
14004
|
+
return styles$1['animated-button'];
|
|
14005
|
+
}, [visible]);
|
|
14006
|
+
return (React.createElement("div", Object.assign({ ref: ref, style: Object.assign(Object.assign(Object.assign({}, style), ctaTempStyles === null || ctaTempStyles === void 0 ? void 0 : ctaTempStyles.ctaTitle), { lineHeight: `${(_l = style === null || style === void 0 ? void 0 : style.height) !== null && _l !== void 0 ? _l : 0}px` }) }, props, { className: `${aniNamStyle} ${css.css(aniTimStyle)} ${styles$1['one-line-ellipsis']}`, onClick: handleTo, dangerouslySetInnerHTML: {
|
|
14007
|
+
__html: setFontForText(title, ctaTempStyles === null || ctaTempStyles === void 0 ? void 0 : ctaTempStyles.ctaTitle)
|
|
14008
|
+
} })));
|
|
13981
14009
|
};
|
|
13982
14010
|
var AniLinkComponent = React.memo(AniLink$1);
|
|
13983
14011
|
|
|
@@ -14340,19 +14368,23 @@ var settingRender = [
|
|
|
14340
14368
|
}
|
|
14341
14369
|
];
|
|
14342
14370
|
|
|
14343
|
-
var styles = {"animated-
|
|
14371
|
+
var styles = {"aniLinkPopup":"index-module_aniLinkPopup__YT7kj","animated-fadeIn":"index-module_animated-fadeIn__8ZCbq","fadeIn":"index-module_fadeIn__2E-dk","animated-fadeOut":"index-module_animated-fadeOut__iK4oc","fadeOut":"index-module_fadeOut__MgevT","one-line-ellipsis":"index-module_one-line-ellipsis__NRiVV","two-line-ellipsis":"index-module_two-line-ellipsis__k-YGB","modal-icon-wrapper":"index-module_modal-icon-wrapper__tu3BY","modal-icon-wrapper-img":"index-module_modal-icon-wrapper-img__4b7qZ"};
|
|
14344
14372
|
|
|
14345
14373
|
const closeIcon = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAjhJREFUWEfFlztOw0AQhmeWiJ4CCmpQ5DiRQsIJyAWg5A0lR0AIChDiCJS8ER0cADgBeRSxt4CCDgkaKiq8i+zYeWx2413HEWmiJJv9v535Z2aN8M8vFPT9z3zETD0aAUChUJjwvPFHAJhBhB3Hqd6OAsK2yyucwykAvP38eJX398Z3AJDLlVYR8ToU9Rhj25TWr9KEsKy5dULIGQCMtfZly45TvwsAstm56UwG6wA4FUFwzrdctxZBDcWSy5XWEPG8I84/GcMipdWPtgcsaz5PCHtKG0IuTiqUvjT9U/WYMG2IOPE+AP+LtCB0xKUAAyA2Xbd2o2OG0NQXvTnvhL17D7EPtH9TRCIWwkRcGYGIQgYBABuqPuHXOQBc6pw80lBGwBQiiXhsBHQhkoprA6iM6acjhDQKu5YJZW6XeOI3XJdpvfsdTu52VfXEekD8owQiXGIubpSCbhDbLu8DwKEAd+A41SOdPpE4BS0viFOtvV2iKWqUgn5x/tmS70xR01GuDSCKc86/OCcLgTyyZ0ScDGNhFAktAJV4NFJ9YyaFiAWIE+9uVkkgBgLoig8DMWAa9ro9ynkUdlW5maZDCmB6clmz0k1HH4Cs1Ezbq2p2yEpUuBOKTSZZex00RUWIrltxuuK6EOGDSbGIOPZicpMx6fny650377qNRgBgWeVFQuA+6UjVgREhGIMlSqsPUQqIbZdOOIdZQmCv2axRnU1N1+TzJYsxOEaEV8ep7frPZ7Gd0FTEdP0ft0/kMNdg0eoAAAAASUVORK5CYII=';
|
|
14346
14374
|
const AniLinkPopup$1 = (_a) => {
|
|
14347
|
-
var _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z;
|
|
14375
|
+
var _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0;
|
|
14348
14376
|
var { style, recData, ctaTempStyles, index, event, bottom_image, translateY, isTel, onClick, isExternalLink = false } = _a, props = __rest(_a, ["style", "recData", "ctaTempStyles", "index", "event", "bottom_image", "translateY", "isTel", "onClick", "isExternalLink"]);
|
|
14377
|
+
style === null || style === void 0 ? true : delete style.transform;
|
|
14349
14378
|
const { sxpParameter, globalConfig, ctaEvent, setPopupDetailData } = useSxpDataSource();
|
|
14350
14379
|
const { jumpToWeb } = useEventReport();
|
|
14351
|
-
const
|
|
14380
|
+
const ref = React.useRef(null);
|
|
14381
|
+
const isOnScreen = useOnScreen(ref);
|
|
14382
|
+
const [visible, setVisible] = React.useState(false);
|
|
14383
|
+
const [startAni, setStartAni] = React.useState(true);
|
|
14352
14384
|
const cta = ((_d = (_c = (_b = recData === null || recData === void 0 ? void 0 : recData.video) === null || _b === void 0 ? void 0 : _b.bindProducts) === null || _c === void 0 ? void 0 : _c[0]) === null || _d === void 0 ? void 0 : _d.bindCta) || ((_f = (_e = recData === null || recData === void 0 ? void 0 : recData.video) === null || _e === void 0 ? void 0 : _e.bindProduct) === null || _f === void 0 ? void 0 : _f.bindCta) || ((_g = recData === null || recData === void 0 ? void 0 : recData.video) === null || _g === void 0 ? void 0 : _g.bindCta);
|
|
14353
14385
|
const product = ((_j = (_h = recData === null || recData === void 0 ? void 0 : recData.video) === null || _h === void 0 ? void 0 : _h.bindProducts) === null || _j === void 0 ? void 0 : _j[0]) || ((_k = recData === null || recData === void 0 ? void 0 : recData.video) === null || _k === void 0 ? void 0 : _k.bindProduct);
|
|
14354
14386
|
const handleTo = () => {
|
|
14355
|
-
var _a, _b, _c;
|
|
14387
|
+
var _a, _b, _c, _d;
|
|
14356
14388
|
const item = ((_b = (_a = recData === null || recData === void 0 ? void 0 : recData.video) === null || _a === void 0 ? void 0 : _a.bindProducts) === null || _b === void 0 ? void 0 : _b[0]) || ((_c = recData === null || recData === void 0 ? void 0 : recData.video) === null || _c === void 0 ? void 0 : _c.bindProduct) || (recData === null || recData === void 0 ? void 0 : recData.video);
|
|
14357
14389
|
ctaEvent === null || ctaEvent === void 0 ? void 0 : ctaEvent({
|
|
14358
14390
|
eventSubject: 'clickCta',
|
|
@@ -14360,42 +14392,54 @@ const AniLinkPopup$1 = (_a) => {
|
|
|
14360
14392
|
}, recData, item, index);
|
|
14361
14393
|
setPopupDetailData === null || setPopupDetailData === void 0 ? void 0 : setPopupDetailData(Object.assign(Object.assign({}, recData), { index }));
|
|
14362
14394
|
if (isExternalLink) {
|
|
14363
|
-
|
|
14395
|
+
const link = (product === null || product === void 0 ? void 0 : product.link) || ((_d = item === null || item === void 0 ? void 0 : item.bindCta) === null || _d === void 0 ? void 0 : _d.link);
|
|
14396
|
+
if (link) {
|
|
14397
|
+
jumpToWeb(recData, product, cta, index);
|
|
14398
|
+
window.location.href = window.getJointUtmLink(link);
|
|
14399
|
+
}
|
|
14400
|
+
}
|
|
14401
|
+
else {
|
|
14402
|
+
onClick === null || onClick === void 0 ? void 0 : onClick();
|
|
14364
14403
|
}
|
|
14365
|
-
onClick === null || onClick === void 0 ? void 0 : onClick();
|
|
14366
14404
|
};
|
|
14367
|
-
const title = (cta === null || cta === void 0 ? void 0 : cta.
|
|
14368
|
-
const
|
|
14369
|
-
var _a, _b;
|
|
14405
|
+
const title = (cta === null || cta === void 0 ? void 0 : cta.enTitle) || '查看详情 >';
|
|
14406
|
+
const aniTimStyle = React.useMemo(() => {
|
|
14370
14407
|
const ani = event === null || event === void 0 ? void 0 : event.animation;
|
|
14371
14408
|
if (ani) {
|
|
14372
|
-
const { delay, duration
|
|
14409
|
+
const { delay, duration } = ani;
|
|
14373
14410
|
return {
|
|
14374
|
-
|
|
14375
|
-
|
|
14376
|
-
animationDuration: `${(_b = duration / 1000) !== null && _b !== void 0 ? _b : 0}s`,
|
|
14377
|
-
backgroundColor: `${backgroundColor !== null && backgroundColor !== void 0 ? backgroundColor : 'transparent'}`
|
|
14378
|
-
}
|
|
14411
|
+
animationDelay: `${delay ? delay / 1000 : 0}s`,
|
|
14412
|
+
animationDuration: `${duration ? duration / 1000 : 0}s`
|
|
14379
14413
|
};
|
|
14380
14414
|
}
|
|
14381
14415
|
}, [event === null || event === void 0 ? void 0 : event.animation]);
|
|
14382
14416
|
const src = (_q = (_p = (_o = (_l = product === null || product === void 0 ? void 0 : product.cover) !== null && _l !== void 0 ? _l : (_m = product === null || product === void 0 ? void 0 : product.homePage) === null || _m === void 0 ? void 0 : _m[0]) !== null && _o !== void 0 ? _o : cta === null || cta === void 0 ? void 0 : cta.icon) !== null && _p !== void 0 ? _p : sxpParameter === null || sxpParameter === void 0 ? void 0 : sxpParameter.bottom_image) !== null && _q !== void 0 ? _q : bottom_image;
|
|
14383
14417
|
const onClose = (event) => {
|
|
14384
14418
|
event.stopPropagation();
|
|
14385
|
-
|
|
14419
|
+
setStartAni(false);
|
|
14386
14420
|
};
|
|
14421
|
+
React.useEffect(() => {
|
|
14422
|
+
if (isOnScreen) {
|
|
14423
|
+
setVisible(true);
|
|
14424
|
+
}
|
|
14425
|
+
}, [isOnScreen]);
|
|
14426
|
+
const aniNamStyle = React.useMemo(() => {
|
|
14427
|
+
if (!visible)
|
|
14428
|
+
return null;
|
|
14429
|
+
return startAni ? styles['animated-fadeIn'] : null;
|
|
14430
|
+
}, [visible, startAni]);
|
|
14387
14431
|
return (React.createElement(React.Fragment, null, isTel ? (React.createElement("div", { style: {
|
|
14388
14432
|
height: '40px',
|
|
14389
14433
|
lineHeight: '40px',
|
|
14390
14434
|
paddingLeft: '6px'
|
|
14391
|
-
} }, "Cta Title")) : (React.createElement("div", Object.assign({
|
|
14392
|
-
React.createElement("div", { onClick: onClose, className: styles['modal-icon-wrapper'], style: { padding: (
|
|
14393
|
-
React.createElement("img", { src: (
|
|
14394
|
-
React.createElement(Img$1, { src: src, rec: recData, item: (
|
|
14395
|
-
React.createElement("div", { hidden: !!recData && !(product === null || product === void 0 ? void 0 : product.title), className: styles['
|
|
14396
|
-
__html: setFontForText((
|
|
14435
|
+
} }, "Cta Title")) : (React.createElement("div", Object.assign({ ref: ref }, props, { className: `${css.css(Object.assign(Object.assign({}, style), { '--transY': `translateY(calc(100% + ${(_r = style === null || style === void 0 ? void 0 : style.margin) !== null && _r !== void 0 ? _r : 0}px))` }))} ${styles['aniLinkPopup']} ${aniNamStyle} ${css.css(aniTimStyle)}`, onClick: handleTo }),
|
|
14436
|
+
React.createElement("div", { onClick: onClose, className: styles['modal-icon-wrapper'], style: { padding: (_s = style === null || style === void 0 ? void 0 : style['padding']) !== null && _s !== void 0 ? _s : 0 } },
|
|
14437
|
+
React.createElement("img", { src: (_t = globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.popupCloseIcon) !== null && _t !== void 0 ? _t : closeIcon, alt: 'close', className: styles['modal-icon-wrapper-img'] })),
|
|
14438
|
+
React.createElement(Img$1, { src: src, rec: recData, item: (_y = (_w = (_v = (_u = recData === null || recData === void 0 ? void 0 : recData.video) === null || _u === void 0 ? void 0 : _u.bindProducts) === null || _v === void 0 ? void 0 : _v[0]) !== null && _w !== void 0 ? _w : (_x = recData === null || recData === void 0 ? void 0 : recData.video) === null || _x === void 0 ? void 0 : _x.bindProduct) !== null && _y !== void 0 ? _y : recData === null || recData === void 0 ? void 0 : recData.video, index: index, translateY: translateY, imgStyle: ctaTempStyles === null || ctaTempStyles === void 0 ? void 0 : ctaTempStyles.img }),
|
|
14439
|
+
React.createElement("div", { hidden: !!recData && !(product === null || product === void 0 ? void 0 : product.title), className: styles['two-line-ellipsis'], style: ctaTempStyles === null || ctaTempStyles === void 0 ? void 0 : ctaTempStyles.title, dangerouslySetInnerHTML: {
|
|
14440
|
+
__html: setFontForText((_z = product === null || product === void 0 ? void 0 : product.title) !== null && _z !== void 0 ? _z : 'Product Name', ctaTempStyles === null || ctaTempStyles === void 0 ? void 0 : ctaTempStyles.title)
|
|
14397
14441
|
} }),
|
|
14398
|
-
React.createElement("div", { className: 'one-line-ellipsis', style: Object.assign(Object.assign({}, ctaTempStyles === null || ctaTempStyles === void 0 ? void 0 : ctaTempStyles.ctaTitle), { lineHeight: ((
|
|
14442
|
+
React.createElement("div", { className: styles['one-line-ellipsis'], style: Object.assign(Object.assign({}, ctaTempStyles === null || ctaTempStyles === void 0 ? void 0 : ctaTempStyles.ctaTitle), { lineHeight: ((_0 = ctaTempStyles === null || ctaTempStyles === void 0 ? void 0 : ctaTempStyles.ctaTitle) === null || _0 === void 0 ? void 0 : _0.height) + 'px' }), dangerouslySetInnerHTML: {
|
|
14399
14443
|
__html: setFontForText(title, ctaTempStyles === null || ctaTempStyles === void 0 ? void 0 : ctaTempStyles.ctaTitle)
|
|
14400
14444
|
} })))));
|
|
14401
14445
|
};
|
|
@@ -14841,20 +14885,23 @@ const VideoWidget$2 = ({ rec, index, height, data, muted, activeIndex, videoPost
|
|
|
14841
14885
|
(_j = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _j === void 0 ? void 0 : _j.addEventListener('canplay', handlePlay);
|
|
14842
14886
|
(_k = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _k === void 0 ? void 0 : _k.addEventListener('waiting', handleWaiting);
|
|
14843
14887
|
return () => {
|
|
14844
|
-
var _a, _b, _c, _d, _e, _f, _g, _h;
|
|
14888
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j;
|
|
14889
|
+
const isPause = (_a = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _a === void 0 ? void 0 : _a.paused;
|
|
14890
|
+
if (!isPause)
|
|
14891
|
+
handlePause();
|
|
14845
14892
|
if (hls)
|
|
14846
14893
|
hls === null || hls === void 0 ? void 0 : hls.destroy();
|
|
14847
14894
|
setIsLoadFinish(false);
|
|
14848
|
-
(
|
|
14849
|
-
(
|
|
14850
|
-
(
|
|
14851
|
-
(
|
|
14852
|
-
(
|
|
14853
|
-
(
|
|
14854
|
-
(
|
|
14855
|
-
(
|
|
14895
|
+
(_b = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _b === void 0 ? void 0 : _b.removeEventListener('loadedmetadata', handleLoadedmetadata);
|
|
14896
|
+
(_c = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _c === void 0 ? void 0 : _c.removeEventListener('loadeddata', handLoadeddata);
|
|
14897
|
+
(_d = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _d === void 0 ? void 0 : _d.removeEventListener('play', handleStartPlay);
|
|
14898
|
+
(_e = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _e === void 0 ? void 0 : _e.removeEventListener('playing', handlePlaying);
|
|
14899
|
+
(_f = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _f === void 0 ? void 0 : _f.removeEventListener('pause', handlePause);
|
|
14900
|
+
(_g = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _g === void 0 ? void 0 : _g.removeEventListener('ended', handlePlay);
|
|
14901
|
+
(_h = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _h === void 0 ? void 0 : _h.removeEventListener('canplay', handlePlay);
|
|
14902
|
+
(_j = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _j === void 0 ? void 0 : _j.removeEventListener('waiting', handleWaiting);
|
|
14856
14903
|
};
|
|
14857
|
-
}, [isActive, videoId, rec]);
|
|
14904
|
+
}, [isActive, videoId, rec, handlePause]);
|
|
14858
14905
|
React.useEffect(() => {
|
|
14859
14906
|
var _a, _b;
|
|
14860
14907
|
if (!(videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) || !isLoadFinish)
|
|
@@ -15000,23 +15047,23 @@ var ToggleButton$1 = React.memo(ToggleButton);
|
|
|
15000
15047
|
* @Author: binruan@chatlabs.com
|
|
15001
15048
|
* @Date: 2024-01-15 19:03:09
|
|
15002
15049
|
* @LastEditors: binruan@chatlabs.com
|
|
15003
|
-
* @LastEditTime: 2024-
|
|
15050
|
+
* @LastEditTime: 2024-07-11 18:19:29
|
|
15004
15051
|
* @FilePath: \pb-sxp-ui\src\core\components\SxpPageRender\FingerSwipeTip\index.tsx
|
|
15005
15052
|
*
|
|
15006
15053
|
*/
|
|
15007
|
-
const FingerSwipeTip = ({ imageUrl, style }) => {
|
|
15054
|
+
const FingerSwipeTip = ({ imageUrl, style, duration = 2000 }) => {
|
|
15008
15055
|
const [show, setShow] = React.useState(true);
|
|
15009
15056
|
useEditor();
|
|
15010
15057
|
React.useEffect(() => {
|
|
15011
15058
|
setTimeout(() => {
|
|
15012
15059
|
setShow(false);
|
|
15013
|
-
},
|
|
15060
|
+
}, duration);
|
|
15014
15061
|
}, []);
|
|
15015
15062
|
const FINGER_SWIPE_ICON = useIconLink('/pb_static/finger-swipe-tip.29dc3a48a3c746c906ea..png');
|
|
15016
15063
|
const animationCls = React.useMemo(() => {
|
|
15017
15064
|
return show ? 'pb-fadeIn' : 'pb-fadeOut';
|
|
15018
15065
|
}, [show]);
|
|
15019
|
-
return (React.createElement("div", { hidden: !show, className: `pb-finger-wrap ${animationCls}`, style: style },
|
|
15066
|
+
return (React.createElement("div", { hidden: !show, className: `pb-finger-wrap ${animationCls}`, style: Object.assign(Object.assign({}, style), { animationDuration: `${duration / 1000}s` }) },
|
|
15020
15067
|
React.createElement("img", { src: imageUrl || FINGER_SWIPE_ICON, alt: 'finger swiper' })));
|
|
15021
15068
|
};
|
|
15022
15069
|
|
|
@@ -15120,11 +15167,12 @@ var PictureGroup$3 = React.memo(PictureGroup$2);
|
|
|
15120
15167
|
* @Author: binruan@chatlabs.com
|
|
15121
15168
|
* @Date: 2024-01-15 19:03:09
|
|
15122
15169
|
* @LastEditors: binruan@chatlabs.com
|
|
15123
|
-
* @LastEditTime: 2024-
|
|
15170
|
+
* @LastEditTime: 2024-07-09 18:47:05
|
|
15124
15171
|
* @FilePath: \pb-sxp-ui\src\core\components\SxpPageRender\Hashtag\index.tsx
|
|
15125
15172
|
*
|
|
15126
15173
|
*/
|
|
15127
15174
|
const Hashtag = ({ tags, itemId, itemType, index, rec, hashTagStyle }) => {
|
|
15175
|
+
var _a;
|
|
15128
15176
|
const [isShowMore, setIsShowMore] = React.useState(false);
|
|
15129
15177
|
const { setWaterFallData, setOpenHashtag, setCacheActiveIndex, waterFallData, setIsFromHashtag } = useSxpDataSource();
|
|
15130
15178
|
const handleClickTag = (data) => {
|
|
@@ -15156,7 +15204,8 @@ const Hashtag = ({ tags, itemId, itemType, index, rec, hashTagStyle }) => {
|
|
|
15156
15204
|
}
|
|
15157
15205
|
return (React.createElement("span", { style: { textDecoration: 'underline', cursor: 'pointer', color: '#fff' }, onClick: () => setIsShowMore(!isShowMore) }, isShowMore ? 'show less' : 'show more'));
|
|
15158
15206
|
}, [isShowMore, tags]);
|
|
15159
|
-
|
|
15207
|
+
console.log(hashTagStyle, '111');
|
|
15208
|
+
return (React.createElement("div", { className: 'clc-sxp-bottom-hashtag', style: { marginTop: `${(_a = hashTagStyle === null || hashTagStyle === void 0 ? void 0 : hashTagStyle.marginTop) !== null && _a !== void 0 ? _a : 16}px` } },
|
|
15160
15209
|
React.createElement(Scroll$1, null, tags === null || tags === void 0 ? void 0 : tags.map((item, index) => (React.createElement(SwiperSlide, { key: index, hidden: !isShowMore ? index >= 6 : false, className: 'clc-sxp-bottom-hashtag-item', style: hashTagStyle, onClick: () => handleClickTag(item) },
|
|
15161
15210
|
React.createElement("div", { dangerouslySetInnerHTML: { __html: setFontForText(`#${item}`, hashTagStyle) } })))))));
|
|
15162
15211
|
};
|
|
@@ -15360,7 +15409,7 @@ var Tagbar$1 = React.memo(Tagbar);
|
|
|
15360
15409
|
* @Author: binruan@chatlabs.com
|
|
15361
15410
|
* @Date: 2024-01-15 19:03:09
|
|
15362
15411
|
* @LastEditors: binruan@chatlabs.com
|
|
15363
|
-
* @LastEditTime: 2024-07-
|
|
15412
|
+
* @LastEditTime: 2024-07-24 14:59:23
|
|
15364
15413
|
* @FilePath: \pb-sxp-ui\src\core\components\SxpPageRender\index.tsx
|
|
15365
15414
|
*
|
|
15366
15415
|
*/
|
|
@@ -15566,18 +15615,18 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight = window.inner
|
|
|
15566
15615
|
};
|
|
15567
15616
|
}, [isShowMore]);
|
|
15568
15617
|
const renderBottom = React.useCallback((rec, index) => {
|
|
15569
|
-
var _a, _b, _c, _d, _e, _f, _g;
|
|
15618
|
+
var _a, _b, _c, _d, _e, _f, _g, _h;
|
|
15570
15619
|
if (rec === null || rec === void 0 ? void 0 : rec.video) {
|
|
15571
15620
|
return (React.createElement(React.Fragment, null,
|
|
15572
15621
|
((_a = rec === null || rec === void 0 ? void 0 : rec.video) === null || _a === void 0 ? void 0 : _a.title) && !isShowMore && React.createElement("div", { className: 'clc-sxp-bottom-shadow' }),
|
|
15573
|
-
React.createElement("div", { className: 'clc-sxp-bottom' },
|
|
15622
|
+
React.createElement("div", { className: 'clc-sxp-bottom', style: { paddingBottom: `${(_b = globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.bottomInfoDist) !== null && _b !== void 0 ? _b : 40}px` } },
|
|
15574
15623
|
React.createElement(Nudge, { nudge: nudge }),
|
|
15575
15624
|
(globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.isShowCTA) === undefined || (globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.isShowCTA) ? (React.createElement("div", { className: 'clc-sxp-bottom-card' },
|
|
15576
15625
|
React.createElement(RenderCard$1, { rec: rec, index: index, tempMap: tempMap, resolver: resolver }))) : null,
|
|
15577
15626
|
React.createElement("div", null,
|
|
15578
|
-
React.createElement(ExpandableText$1, { className: 'clc-sxp-bottom-text', isPost: true, foldText: tipText === null || tipText === void 0 ? void 0 : tipText.foldText, unfoldText: tipText === null || tipText === void 0 ? void 0 : tipText.unfoldText, text: (
|
|
15627
|
+
React.createElement(ExpandableText$1, { className: 'clc-sxp-bottom-text', isPost: true, foldText: tipText === null || tipText === void 0 ? void 0 : tipText.foldText, unfoldText: tipText === null || tipText === void 0 ? void 0 : tipText.unfoldText, text: (_d = (_c = rec === null || rec === void 0 ? void 0 : rec.video) === null || _c === void 0 ? void 0 : _c.title) !== null && _d !== void 0 ? _d : '', style: Object.assign(Object.assign({}, descStyle), { textShadow: (globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.isOpenTextShadow) ? '2px 2px 4px rgba(0, 0, 0, 0.5)' : 'none' }), onChange: onExpandableChange }),
|
|
15579
15628
|
React.createElement(RenderCard$1, { rec: rec, index: index, tempMap: tempMap, resolver: resolver, includesCtaType: ['AniLink'] }),
|
|
15580
|
-
React.createElement(Hashtag$1, { index: activeIndex, tags: (
|
|
15629
|
+
React.createElement(Hashtag$1, { index: activeIndex, tags: (_f = (_e = rec === null || rec === void 0 ? void 0 : rec.video) === null || _e === void 0 ? void 0 : _e.hashTags) !== null && _f !== void 0 ? _f : [], itemId: (_g = rec === null || rec === void 0 ? void 0 : rec.video) === null || _g === void 0 ? void 0 : _g.itemId, itemType: ((_h = rec === null || rec === void 0 ? void 0 : rec.video) === null || _h === void 0 ? void 0 : _h.itemId) ? 'VIDEO' : null, rec: rec, hashTagStyle: hashTagStyle }))),
|
|
15581
15630
|
React.createElement(RenderCard$1, { rec: rec, index: index, tempMap: tempMap, resolver: resolver, includesCtaType: ['AniLinkPopup'] })));
|
|
15582
15631
|
}
|
|
15583
15632
|
return null;
|
|
@@ -15759,7 +15808,7 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight = window.inner
|
|
|
15759
15808
|
React.createElement("img", { width: 64, height: 64, src: loadingImage, alt: 'loading...', style: { objectFit: 'contain' } })));
|
|
15760
15809
|
}
|
|
15761
15810
|
return visList === null || visList === void 0 ? void 0 : visList.map((rec, index) => {
|
|
15762
|
-
return (React.createElement(SwiperSlide, { key: index, virtualIndex: index }, rec && (React.createElement(React.Fragment, null, (rec === null || rec === void 0 ? void 0 : rec.loading) ? (React.createElement("div", { style: {
|
|
15811
|
+
return (React.createElement(SwiperSlide, { key: index, virtualIndex: index, style: { overflow: 'hidden' } }, rec && (React.createElement(React.Fragment, null, (rec === null || rec === void 0 ? void 0 : rec.loading) ? (React.createElement("div", { style: {
|
|
15763
15812
|
height,
|
|
15764
15813
|
width: containerWidth,
|
|
15765
15814
|
display: 'flex',
|
|
@@ -15782,7 +15831,7 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight = window.inner
|
|
|
15782
15831
|
React.createElement(Tagbar$1, { tagList: tagList, setActiveIndex: setActiveIndex, style: {
|
|
15783
15832
|
top: minusHeight
|
|
15784
15833
|
} }),
|
|
15785
|
-
isShowFingerTip ? (React.createElement(FingerSwipeTip, { imageUrl: globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.swipeTipIcon, style: { top: `${50
|
|
15834
|
+
isShowFingerTip ? (React.createElement(FingerSwipeTip, { imageUrl: globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.swipeTipIcon, style: { top: `${50 - ((_a = globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.swipeTipOffset) !== null && _a !== void 0 ? _a : 0)}%` }, duration: globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.swiperTipAniDur })) : null,
|
|
15786
15835
|
React.createElement(Swiper, { style: {
|
|
15787
15836
|
marginTop: tagHeight
|
|
15788
15837
|
}, ref: swiperRef, onSlideChange: () => {
|
|
@@ -15807,13 +15856,13 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight = window.inner
|
|
|
15807
15856
|
}
|
|
15808
15857
|
}
|
|
15809
15858
|
}, direction: 'vertical', height: height },
|
|
15810
|
-
React.createElement(ToggleButton$1, { style: {
|
|
15859
|
+
((globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.isShowMute) === undefined || (globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.isShowMute) === true) && (React.createElement(ToggleButton$1, { style: {
|
|
15811
15860
|
position: 'fixed',
|
|
15812
15861
|
visibility: ((_c = (_b = data === null || data === void 0 ? void 0 : data[activeIndex]) === null || _b === void 0 ? void 0 : _b.video) === null || _c === void 0 ? void 0 : _c.url) ? 'visible' : 'hidden',
|
|
15813
15862
|
zIndex: 999,
|
|
15814
15863
|
[(_d = globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.muteIconXPosit) !== null && _d !== void 0 ? _d : 'right']: (_e = globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.muteIconX) !== null && _e !== void 0 ? _e : 0,
|
|
15815
15864
|
[(_f = globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.muteIconYPosit) !== null && _f !== void 0 ? _f : 'bottom']: (_g = globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.muteIconY) !== null && _g !== void 0 ? _g : 23
|
|
15816
|
-
}, defaultValue: isMuted, activeIcon: (globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.unMuteIcon) ? globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.unMuteIcon : mutedIcon, unactiveIcon: (globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.muteIcon) ? globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.muteIcon : unmutedIcon, onChange: setIsMuted }),
|
|
15865
|
+
}, defaultValue: isMuted, activeIcon: (globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.unMuteIcon) ? globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.unMuteIcon : mutedIcon, unactiveIcon: (globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.muteIcon) ? globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.muteIcon : unmutedIcon, onChange: setIsMuted })),
|
|
15817
15866
|
renderView),
|
|
15818
15867
|
React.createElement(WaterFall$1, Object.assign({}, (_k = (_j = (_h = globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.hashTag) === null || _h === void 0 ? void 0 : _h[0]) === null || _j === void 0 ? void 0 : _j.item) === null || _k === void 0 ? void 0 : _k.props))));
|
|
15819
15868
|
};
|
|
@@ -16249,7 +16298,7 @@ const Popup = () => {
|
|
|
16249
16298
|
* @Author: binruan@chatlabs.com
|
|
16250
16299
|
* @Date: 2024-01-15 19:03:09
|
|
16251
16300
|
* @LastEditors: binruan@chatlabs.com
|
|
16252
|
-
* @LastEditTime: 2024-
|
|
16301
|
+
* @LastEditTime: 2024-07-24 16:35:44
|
|
16253
16302
|
* @FilePath: \pb-sxp-ui\src\core\components\SxpPageCore\index.tsx
|
|
16254
16303
|
*
|
|
16255
16304
|
*/
|
|
@@ -16273,7 +16322,7 @@ const SxpPageCore = ({ data, maxSize = 10, defaultSize = 10, hashTagSize = 20, l
|
|
|
16273
16322
|
return searchParams;
|
|
16274
16323
|
}, []);
|
|
16275
16324
|
return (React.createElement(EditorCore, { resolver: RESOLVER, enableDataSource: false, schema: data === null || data === void 0 ? void 0 : data.data, utmVal: utmVal },
|
|
16276
|
-
React.createElement(SxpDataSourceProvider$1, { utmVal: utmVal, dataSources: data === null || data === void 0 ? void 0 : data.data_sources, sxpParameter: data === null || data === void 0 ? void 0 : data.sxp_parameter, maxSize: (_b = (_a = data === null || data === void 0 ? void 0 : data.sxp_parameter) === null || _a === void 0 ? void 0 : _a.personalized_recommend) !== null && _b !== void 0 ? _b : maxSize, defaultSize: (_d = (_c = data === null || data === void 0 ? void 0 : data.sxp_parameter) === null || _c === void 0 ? void 0 : _c.default_recommend) !== null && _d !== void 0 ? _d : defaultSize, hashTagSize: (_f = (_e = data === null || data === void 0 ? void 0 : data.sxp_parameter) === null || _e === void 0 ? void 0 : _e.hash_tag_size) !== null && _f !== void 0 ? _f : hashTagSize, loadingImage: loadingImage, appDomain: appDomain, enabledMetaConversionApi: enabledMetaConversionApi, isShowTag: (_j = (_h = (_g = data === null || data === void 0 ? void 0 : data.data) === null || _g === void 0 ? void 0 : _g.sxpPageConf) === null || _h === void 0 ? void 0 : _h.globalConfig) === null || _j === void 0 ? void 0 : _j.isShowTag, globalConfig: (_l = (_k = data === null || data === void 0 ? void 0 : data.data) === null || _k === void 0 ? void 0 : _k.sxpPageConf) === null || _l === void 0 ? void 0 : _l.globalConfig, render: ({ rtcList, tagList }) => {
|
|
16325
|
+
React.createElement(SxpDataSourceProvider$1, { utmVal: utmVal, dataSources: data === null || data === void 0 ? void 0 : data.data_sources, sxpParameter: data === null || data === void 0 ? void 0 : data.sxp_parameter, maxSize: (_b = (_a = data === null || data === void 0 ? void 0 : data.sxp_parameter) === null || _a === void 0 ? void 0 : _a.personalized_recommend) !== null && _b !== void 0 ? _b : maxSize, defaultSize: (_d = (_c = data === null || data === void 0 ? void 0 : data.sxp_parameter) === null || _c === void 0 ? void 0 : _c.default_recommend) !== null && _d !== void 0 ? _d : defaultSize, hashTagSize: (_f = (_e = data === null || data === void 0 ? void 0 : data.sxp_parameter) === null || _e === void 0 ? void 0 : _e.hash_tag_size) !== null && _f !== void 0 ? _f : hashTagSize, loadingImage: loadingImage, appDomain: appDomain, enabledMetaConversionApi: enabledMetaConversionApi, isShowTag: (_j = (_h = (_g = data === null || data === void 0 ? void 0 : data.data) === null || _g === void 0 ? void 0 : _g.sxpPageConf) === null || _h === void 0 ? void 0 : _h.globalConfig) === null || _j === void 0 ? void 0 : _j.isShowTag, globalConfig: (_l = (_k = data === null || data === void 0 ? void 0 : data.data) === null || _k === void 0 ? void 0 : _k.sxpPageConf) === null || _l === void 0 ? void 0 : _l.globalConfig, utmParameter: data === null || data === void 0 ? void 0 : data.utm_parameter, render: ({ rtcList, tagList }) => {
|
|
16277
16326
|
var _a;
|
|
16278
16327
|
return (React.createElement(React.Fragment, null,
|
|
16279
16328
|
React.createElement(SxpPageRender, Object.assign({}, (_a = data === null || data === void 0 ? void 0 : data.data) === null || _a === void 0 ? void 0 : _a.sxpPageConf, { tagList: tagList, data: rtcList, resolver: RESOLVER, licenseUrl: licenseUrl })),
|