pb-sxp-ui 1.18.1 → 1.19.0-alpha.1
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 +504 -489
- package/dist/index.cjs.map +1 -1
- package/dist/index.css +15 -7
- package/dist/index.js +504 -489
- package/dist/index.js.map +1 -1
- package/dist/index.min.cjs +6 -6
- package/dist/index.min.cjs.map +1 -1
- package/dist/index.min.js +6 -6
- package/dist/index.min.js.map +1 -1
- package/dist/pb-ui.js +504 -489
- package/dist/pb-ui.js.map +1 -1
- package/dist/pb-ui.min.js +6 -6
- package/dist/pb-ui.min.js.map +1 -1
- package/es/core/components/DiyPortalPreview/VideoWidget.js +8 -10
- package/es/core/components/DiyPortalPreview/index.js +5 -3
- package/es/core/components/DiyStoryPreview/index.js +7 -18
- package/es/core/components/SxpPageRender/LikeButton/index.js +16 -18
- package/es/core/components/SxpPageRender/PictureGroup/index.d.ts +0 -5
- package/es/core/components/SxpPageRender/PictureGroup/index.js +13 -39
- package/es/core/components/SxpPageRender/RenderCard.d.ts +0 -1
- package/es/core/components/SxpPageRender/RenderCard.js +14 -2
- package/es/core/components/SxpPageRender/VideoWidget/index.js +45 -32
- package/es/core/components/SxpPageRender/WaterFall/index.js +3 -4
- package/es/core/components/SxpPageRender/index.d.ts +1 -0
- package/es/core/components/SxpPageRender/index.js +102 -115
- package/es/core/context/SxpDataSourceProvider.d.ts +12 -5
- package/es/core/context/SxpDataSourceProvider.js +128 -94
- package/es/core/hooks/useEventReport.js +5 -6
- package/es/core/utils/tool.d.ts +3 -1
- package/es/core/utils/tool.js +29 -1
- package/es/materials/sxp/consentPopup/Display/index.js +1 -1
- package/es/materials/sxp/cta/AniLinkPopup/material.js +2 -3
- package/es/materials/sxp/popup/CommodityDetail/material.js +1 -2
- package/es/materials/sxp/popup/CommodityList/index.js +4 -5
- package/es/materials/sxp/popup/CommodityList/material.js +1 -1
- package/es/materials/sxp/popup/CommodityList/settingRender.js +1 -1
- package/es/materials/sxp/template/Appoint/material.js +1 -2
- package/es/materials/sxp/template/Commodity/material.js +2 -3
- package/es/materials/sxp/template/CommodityDiro/material.js +2 -3
- package/es/materials/sxp/template/CommodityDiroNew/material.js +2 -4
- package/es/materials/sxp/template/Link/material.js +2 -4
- package/es/materials/sxp/template/MultiCommodity/index.js +2 -2
- package/es/materials/sxp/template/MultiCommodity/material.js +1 -2
- package/es/materials/sxp/template/MultiCommodityDiro/index.js +2 -2
- package/es/materials/sxp/template/MultiCommodityDiro/material.js +2 -3
- package/es/materials/sxp/template/MultiCommodityDiroNew/index.js +2 -2
- package/es/materials/sxp/template/MultiCommodityDiroNew/material.js +2 -4
- package/es/materials/sxp/template/NineCommodity/material.js +2 -3
- package/es/materials/sxp/template/components/CommodityGroup.js +1 -1
- package/es/materials/sxp/template/components/settingRender.js +1 -1
- package/lib/core/components/DiyPortalPreview/VideoWidget.js +8 -10
- package/lib/core/components/DiyPortalPreview/index.js +5 -3
- package/lib/core/components/DiyStoryPreview/index.js +7 -18
- package/lib/core/components/SxpPageRender/LikeButton/index.js +16 -18
- package/lib/core/components/SxpPageRender/PictureGroup/index.d.ts +0 -5
- package/lib/core/components/SxpPageRender/PictureGroup/index.js +12 -38
- package/lib/core/components/SxpPageRender/RenderCard.d.ts +0 -1
- package/lib/core/components/SxpPageRender/RenderCard.js +14 -2
- package/lib/core/components/SxpPageRender/VideoWidget/index.js +45 -32
- package/lib/core/components/SxpPageRender/WaterFall/index.js +3 -4
- package/lib/core/components/SxpPageRender/index.d.ts +1 -0
- package/lib/core/components/SxpPageRender/index.js +102 -115
- package/lib/core/context/SxpDataSourceProvider.d.ts +12 -5
- package/lib/core/context/SxpDataSourceProvider.js +127 -93
- package/lib/core/hooks/useEventReport.js +5 -6
- package/lib/core/utils/tool.d.ts +3 -1
- package/lib/core/utils/tool.js +31 -1
- package/lib/materials/sxp/consentPopup/Display/index.js +1 -1
- package/lib/materials/sxp/cta/AniLinkPopup/material.js +1 -2
- package/lib/materials/sxp/popup/CommodityDetail/material.js +1 -2
- package/lib/materials/sxp/popup/CommodityList/index.js +4 -5
- package/lib/materials/sxp/popup/CommodityList/material.js +1 -1
- package/lib/materials/sxp/popup/CommodityList/settingRender.js +1 -1
- package/lib/materials/sxp/template/Appoint/material.js +1 -2
- package/lib/materials/sxp/template/Commodity/material.js +2 -3
- package/lib/materials/sxp/template/CommodityDiro/material.js +2 -3
- package/lib/materials/sxp/template/CommodityDiroNew/material.js +2 -4
- package/lib/materials/sxp/template/Link/material.js +2 -4
- package/lib/materials/sxp/template/MultiCommodity/index.js +2 -2
- package/lib/materials/sxp/template/MultiCommodity/material.js +1 -2
- package/lib/materials/sxp/template/MultiCommodityDiro/index.js +2 -2
- package/lib/materials/sxp/template/MultiCommodityDiro/material.js +2 -3
- package/lib/materials/sxp/template/MultiCommodityDiroNew/index.js +2 -2
- package/lib/materials/sxp/template/MultiCommodityDiroNew/material.js +2 -4
- package/lib/materials/sxp/template/NineCommodity/material.js +2 -3
- package/lib/materials/sxp/template/components/CommodityGroup.js +1 -1
- package/lib/materials/sxp/template/components/settingRender.js +1 -1
- package/package.json +1 -1
package/dist/pb-ui.js
CHANGED
|
@@ -291,6 +291,42 @@
|
|
|
291
291
|
});
|
|
292
292
|
return splitList !== null && splitList !== void 0 ? splitList : [];
|
|
293
293
|
}
|
|
294
|
+
function deleteCookie(name, path = '/', domain = '') {
|
|
295
|
+
// 设置过期时间为过去的时间
|
|
296
|
+
const expiration = 'expires=Thu, 01 Jan 1970 00:00:00 GMT';
|
|
297
|
+
const pathPart = path ? `; path=${path}` : '';
|
|
298
|
+
const domainPart = domain ? `; domain=${domain}` : '';
|
|
299
|
+
// 设置Cookie值为空,过期时间设为过去
|
|
300
|
+
document.cookie = `${name}=; ${expiration}${pathPart}${domainPart}`;
|
|
301
|
+
console.log(`已尝试删除Cookie: ${name}`);
|
|
302
|
+
}
|
|
303
|
+
function setCookie(name, value, days = 0, path = '/', domain = '', secure = false, sameSite = 'Lax') {
|
|
304
|
+
let cookieString = `${encodeURIComponent(name)}=${encodeURIComponent(value)}`;
|
|
305
|
+
// 设置过期时间
|
|
306
|
+
if (days) {
|
|
307
|
+
const date = new Date();
|
|
308
|
+
date.setTime(date.getTime() + days * 24 * 60 * 60 * 1000);
|
|
309
|
+
cookieString += `; expires=${date.toUTCString()}`;
|
|
310
|
+
}
|
|
311
|
+
// 设置路径
|
|
312
|
+
if (path) {
|
|
313
|
+
cookieString += `; path=${path}`;
|
|
314
|
+
}
|
|
315
|
+
// 设置域名
|
|
316
|
+
if (domain) {
|
|
317
|
+
cookieString += `; domain=${domain}`;
|
|
318
|
+
}
|
|
319
|
+
// 设置Secure标志
|
|
320
|
+
if (secure) {
|
|
321
|
+
cookieString += '; secure';
|
|
322
|
+
}
|
|
323
|
+
// 设置SameSite属性
|
|
324
|
+
if (sameSite) {
|
|
325
|
+
cookieString += `; samesite=${sameSite}`;
|
|
326
|
+
}
|
|
327
|
+
// 设置Cookie
|
|
328
|
+
document.cookie = cookieString;
|
|
329
|
+
}
|
|
294
330
|
|
|
295
331
|
function unzip(b64Data) {
|
|
296
332
|
const strData = atob(b64Data);
|
|
@@ -637,7 +673,6 @@
|
|
|
637
673
|
const SxpDataSourceProvider = ({ render, dataSources, utmVal, enableReportEvent = true, maxSize, defaultSize, isPreview = false, sxpParameter, appDomain, hashTagSize, loadingImage, isOpenHashTag = false, enabledMetaConversionApi = false, consentHeight, consentWidth, isOpenConsent = false, isEditor = false, utmParameter, channelQueryList, data, dataList, isDiyH5, onUpdateSchema, onUpdateChannel }) => {
|
|
638
674
|
var _a, _b, _c, _d, _e;
|
|
639
675
|
const [rtcList, setRtcList] = React.useState([]);
|
|
640
|
-
const [firstRtcList, setFirstRtcList] = React.useState([]);
|
|
641
676
|
const [tagList, setTagList] = React.useState([]);
|
|
642
677
|
const [loading, setLoading] = React.useState(true);
|
|
643
678
|
const [curReqInfo, setCurReqInfo] = React.useState({ rtc: '', requestId: '' });
|
|
@@ -669,10 +704,7 @@
|
|
|
669
704
|
const [chatlabsId, setChatlabsId] = React.useState();
|
|
670
705
|
const finalPageData = React.useMemo(() => pageData !== null && pageData !== void 0 ? pageData : data, [pageData, data]);
|
|
671
706
|
const pixelPvStatusRef = React.useRef(false);
|
|
672
|
-
const
|
|
673
|
-
var _a, _b, _c;
|
|
674
|
-
return isDiyH5 && !((_c = (_b = (_a = finalPageData === null || finalPageData === void 0 ? void 0 : finalPageData.data) === null || _a === void 0 ? void 0 : _a.sxpPageConf) === null || _b === void 0 ? void 0 : _b.globalConfig) === null || _c === void 0 ? void 0 : _c.enablePreview);
|
|
675
|
-
}, [isDiyH5, finalPageData]);
|
|
707
|
+
const fbcRef = React.useRef('');
|
|
676
708
|
const isShowConsent = React.useMemo(() => {
|
|
677
709
|
var _a, _b, _c, _d;
|
|
678
710
|
return (((((_d = (_c = (_b = (_a = globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.consent) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.item) === null || _c === void 0 ? void 0 : _c.props) === null || _d === void 0 ? void 0 : _d.privacy_necessity) && !isAgreePolicy && !isEditor) || isOpenConsent) &&
|
|
@@ -733,9 +765,41 @@
|
|
|
733
765
|
var _a;
|
|
734
766
|
return ((_a = bffDataSource === null || bffDataSource === void 0 ? void 0 : bffDataSource.headers) === null || _a === void 0 ? void 0 : _a['x-app-id']) + storeAndLoadFeUserId();
|
|
735
767
|
}, [bffDataSource]);
|
|
768
|
+
React.useEffect(() => {
|
|
769
|
+
if (!(globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.enableCookieSetting))
|
|
770
|
+
return;
|
|
771
|
+
fbcRef.current = getCookie('_fbc');
|
|
772
|
+
window.OptanonWrapper = function () {
|
|
773
|
+
const activeGroups = window === null || window === void 0 ? void 0 : window.OnetrustActiveGroups;
|
|
774
|
+
if (!activeGroups)
|
|
775
|
+
return;
|
|
776
|
+
if (!(activeGroups === null || activeGroups === void 0 ? void 0 : activeGroups.includes('4'))) {
|
|
777
|
+
deleteCookie('_fbc');
|
|
778
|
+
}
|
|
779
|
+
else if (fbcRef.current) {
|
|
780
|
+
setCookie('_fbc', fbcRef.current, 90);
|
|
781
|
+
}
|
|
782
|
+
};
|
|
783
|
+
}, [globalConfig]);
|
|
784
|
+
const isActiveTargetingCookie = React.useMemo(() => {
|
|
785
|
+
var _a;
|
|
786
|
+
function getCookie(name) {
|
|
787
|
+
var _a;
|
|
788
|
+
const value = `; ${document.cookie}`;
|
|
789
|
+
const parts = value.split(`; ${name}=`);
|
|
790
|
+
if (parts.length === 2)
|
|
791
|
+
return (_a = parts.pop()) === null || _a === void 0 ? void 0 : _a.split(';').shift();
|
|
792
|
+
return '';
|
|
793
|
+
}
|
|
794
|
+
decodeURIComponent((_a = getCookie('OptanonConsent')) !== null && _a !== void 0 ? _a : '');
|
|
795
|
+
if (((globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.enableCookieSetting) && (window === null || window === void 0 ? void 0 : window.OnetrustActiveGroups) && !(window === null || window === void 0 ? void 0 : window.OnetrustActiveGroups.includes('4')))) {
|
|
796
|
+
return true;
|
|
797
|
+
}
|
|
798
|
+
return false;
|
|
799
|
+
}, [globalConfig]);
|
|
736
800
|
// bff API 请求方法
|
|
737
801
|
const bffFetch = React.useCallback((path, options, isBota = true) => {
|
|
738
|
-
var _a
|
|
802
|
+
var _a;
|
|
739
803
|
if (!bffDataSource)
|
|
740
804
|
return;
|
|
741
805
|
const url = bffDataSource.url;
|
|
@@ -748,9 +812,8 @@
|
|
|
748
812
|
val.split('=')[0];
|
|
749
813
|
val.split('=')[1];
|
|
750
814
|
});
|
|
751
|
-
options.body = Object.assign(Object.assign({}, options.body), { productUserId: fakeUserId });
|
|
752
815
|
return window
|
|
753
|
-
.fetch(`${url}/api/${path}`, Object.assign({ headers: Object.assign({ 'Content-Type': 'application/json', 'x-user-id': fakeUserId
|
|
816
|
+
.fetch(`${url}/api/${path}`, Object.assign({ headers: Object.assign({ 'Content-Type': 'application/json', 'x-user-id': fakeUserId }, bffDataSource.headers), method: options.method, body: options.type === 'beacon' && isBota
|
|
754
817
|
? JSON.stringify({
|
|
755
818
|
body: btoa(encodeURIComponent(JSON.stringify(Object.assign(Object.assign(Object.assign({}, options.body), bffDataSource.headers), { 'x-user-id': fakeUserId }))))
|
|
756
819
|
})
|
|
@@ -760,6 +823,8 @@
|
|
|
760
823
|
}, [bffDataSource, fakeUserId]);
|
|
761
824
|
const bffCollectEvent = React.useCallback((params) => {
|
|
762
825
|
var _a;
|
|
826
|
+
if (isActiveTargetingCookie)
|
|
827
|
+
return Promise.resolve();
|
|
763
828
|
const body = {
|
|
764
829
|
eventName: params === null || params === void 0 ? void 0 : params.eventName,
|
|
765
830
|
eventSource: params === null || params === void 0 ? void 0 : params.eventSource
|
|
@@ -770,39 +835,42 @@
|
|
|
770
835
|
body,
|
|
771
836
|
type: 'beacon'
|
|
772
837
|
}, false);
|
|
773
|
-
}, [bffFetch, bffDataSource]);
|
|
838
|
+
}, [bffFetch, bffDataSource, isActiveTargetingCookie]);
|
|
774
839
|
React.useEffect(() => {
|
|
775
|
-
if (typeof (window
|
|
776
|
-
|
|
777
|
-
|
|
778
|
-
|
|
779
|
-
|
|
780
|
-
|
|
781
|
-
|
|
782
|
-
|
|
783
|
-
|
|
784
|
-
|
|
785
|
-
// img.onload = function () {
|
|
786
|
-
// 检查是否是目标 URL
|
|
787
|
-
if (value.includes('https://www.facebook.com/privacy_sandbox/pixel/register/trigger/')) {
|
|
788
|
-
// 解析 URL 参数
|
|
789
|
-
const url = new URL(value);
|
|
790
|
-
const params = Object.fromEntries(url.searchParams.entries());
|
|
791
|
-
bffCollectEvent({
|
|
792
|
-
eventName: params === null || params === void 0 ? void 0 : params.ev,
|
|
793
|
-
eventSource: 'Meta Pixel'
|
|
794
|
-
});
|
|
795
|
-
// }
|
|
796
|
-
}
|
|
797
|
-
},
|
|
798
|
-
get() {
|
|
799
|
-
return originalSrcDescriptor.get.call(this);
|
|
840
|
+
// if (typeof (window as any)?.fbq === 'function') {
|
|
841
|
+
const OriginalImage = window.Image;
|
|
842
|
+
window.Image = function () {
|
|
843
|
+
const img = new OriginalImage();
|
|
844
|
+
// 劫持 src 的 setter
|
|
845
|
+
const originalSrcDescriptor = Object.getOwnPropertyDescriptor(HTMLImageElement.prototype, 'src');
|
|
846
|
+
Object.defineProperty(img, 'src', {
|
|
847
|
+
set(value) {
|
|
848
|
+
if (isActiveTargetingCookie && (value.includes('https://www.facebook.com/privacy_sandbox/pixel/register/trigger/') || value.includes('https://www.facebook.com/tr'))) {
|
|
849
|
+
return;
|
|
800
850
|
}
|
|
801
|
-
|
|
802
|
-
|
|
803
|
-
|
|
804
|
-
|
|
805
|
-
|
|
851
|
+
// 继续正常设置 src
|
|
852
|
+
originalSrcDescriptor.set.call(this, value);
|
|
853
|
+
// img.onload = function () {
|
|
854
|
+
// 检查是否是目标 URL
|
|
855
|
+
if (value.includes('https://www.facebook.com/privacy_sandbox/pixel/register/trigger/')) {
|
|
856
|
+
// 解析 URL 参数
|
|
857
|
+
const url = new URL(value);
|
|
858
|
+
const params = Object.fromEntries(url.searchParams.entries());
|
|
859
|
+
bffCollectEvent({
|
|
860
|
+
eventName: params === null || params === void 0 ? void 0 : params.ev,
|
|
861
|
+
eventSource: 'Meta Pixel'
|
|
862
|
+
});
|
|
863
|
+
// }
|
|
864
|
+
}
|
|
865
|
+
},
|
|
866
|
+
get() {
|
|
867
|
+
return originalSrcDescriptor.get.call(this);
|
|
868
|
+
}
|
|
869
|
+
});
|
|
870
|
+
return img;
|
|
871
|
+
};
|
|
872
|
+
// }
|
|
873
|
+
}, [bffCollectEvent, isActiveTargetingCookie]);
|
|
806
874
|
React.useEffect(() => {
|
|
807
875
|
// 类型安全声明
|
|
808
876
|
const navigatorWithBeacon = navigator;
|
|
@@ -815,6 +883,9 @@
|
|
|
815
883
|
// 覆盖方法
|
|
816
884
|
navigatorWithBeacon.sendBeacon = function (url, data) {
|
|
817
885
|
const urlString = url instanceof URL ? url.href : url.toString();
|
|
886
|
+
if (isActiveTargetingCookie && (urlString.includes('https://tr.snapchat.com/p') || urlString.includes('https://analytics.tiktok.com/api/v2/pixel'))) {
|
|
887
|
+
return true;
|
|
888
|
+
}
|
|
818
889
|
const success = originalSendBeacon(url, data);
|
|
819
890
|
function parseBeaconData(data) {
|
|
820
891
|
return __awaiter(this, void 0, void 0, function* () {
|
|
@@ -864,7 +935,7 @@
|
|
|
864
935
|
return () => {
|
|
865
936
|
navigatorWithBeacon.sendBeacon = originalSendBeacon;
|
|
866
937
|
};
|
|
867
|
-
}, [bffCollectEvent]);
|
|
938
|
+
}, [bffCollectEvent, isActiveTargetingCookie]);
|
|
868
939
|
React.useEffect(() => {
|
|
869
940
|
const _originalFetch = window.fetch;
|
|
870
941
|
// 覆盖 fetch 方法
|
|
@@ -886,6 +957,9 @@
|
|
|
886
957
|
return _originalFetch.apply(this, arguments_1);
|
|
887
958
|
}
|
|
888
959
|
try {
|
|
960
|
+
if (isActiveTargetingCookie && (url.includes('https://www.google-analytics.com/g/collect') || url.includes('https://arms-retcode.aliyuncs.com/r.png'))) {
|
|
961
|
+
return Promise.resolve(new Response(''));
|
|
962
|
+
}
|
|
889
963
|
// 1. 先执行原始请求
|
|
890
964
|
const response = _originalFetch.apply(this, arguments_1);
|
|
891
965
|
// 检查是否是 GA4 收集端点
|
|
@@ -929,7 +1003,7 @@
|
|
|
929
1003
|
}
|
|
930
1004
|
});
|
|
931
1005
|
};
|
|
932
|
-
}, [bffCollectEvent]);
|
|
1006
|
+
}, [bffCollectEvent, isActiveTargetingCookie]);
|
|
933
1007
|
React.useEffect(() => {
|
|
934
1008
|
const originalOpen = XMLHttpRequest.prototype.open;
|
|
935
1009
|
const originalSend = XMLHttpRequest.prototype.send;
|
|
@@ -939,6 +1013,9 @@
|
|
|
939
1013
|
};
|
|
940
1014
|
XMLHttpRequest.prototype.send = function (body) {
|
|
941
1015
|
var _a;
|
|
1016
|
+
if (isActiveTargetingCookie && this._url && typeof this._url === 'string' && (this._url.includes('https://rumcollector.uptime.com') || this._url.includes('https://arms-retcode.aliyuncs.com/r.png') || this._url.includes('https://i.giesswein.com/nb-collector'))) {
|
|
1017
|
+
return;
|
|
1018
|
+
}
|
|
942
1019
|
if (this._url && typeof this._url === 'string' && this._url.includes('https://i.giesswein.com/nb-collector')) {
|
|
943
1020
|
if (body && typeof body === 'string') {
|
|
944
1021
|
try {
|
|
@@ -964,7 +1041,7 @@
|
|
|
964
1041
|
XMLHttpRequest.prototype.open = originalOpen;
|
|
965
1042
|
XMLHttpRequest.prototype.send = originalSend;
|
|
966
1043
|
};
|
|
967
|
-
}, [bffCollectEvent]);
|
|
1044
|
+
}, [bffCollectEvent, isActiveTargetingCookie]);
|
|
968
1045
|
React.useEffect(() => {
|
|
969
1046
|
if (typeof (window === null || window === void 0 ? void 0 : window.fbq) === 'function') {
|
|
970
1047
|
window === null || window === void 0 ? void 0 : window.fbq('track', 'PageView');
|
|
@@ -990,8 +1067,8 @@
|
|
|
990
1067
|
}, [bffDataSource]);
|
|
991
1068
|
// 获取推荐视频数据
|
|
992
1069
|
const getRecommendVideos = React.useCallback((query) => __awaiter(void 0, void 0, void 0, function* () {
|
|
993
|
-
var _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u
|
|
994
|
-
query = Object.assign(Object.assign({ maxSize: (_f = query === null || query === void 0 ? void 0 : query.maxSize) !== null && _f !== void 0 ? _f : maxSize, defaultSize: (_g = query === null || query === void 0 ? void 0 : query.defaultSize) !== null && _g !== void 0 ? _g : defaultSize, hashTag: query === null || query === void 0 ? void 0 : query.hashTag, traceInfo: query === null || query === void 0 ? void 0 : query.traceInfo, themeTag: query === null || query === void 0 ? void 0 : query.themeTag, pageNum: query === null || query === void 0 ? void 0 : query.pageNum, contentFilter: query === null || query === void 0 ? void 0 : query.contentFilter, productFilter: query === null || query === void 0 ? void 0 : query.productFilter }, (chatlabsId && { chatlabsId })), (
|
|
1070
|
+
var _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u;
|
|
1071
|
+
query = Object.assign(Object.assign({ maxSize: (_f = query === null || query === void 0 ? void 0 : query.maxSize) !== null && _f !== void 0 ? _f : maxSize, defaultSize: (_g = query === null || query === void 0 ? void 0 : query.defaultSize) !== null && _g !== void 0 ? _g : defaultSize, hashTag: query === null || query === void 0 ? void 0 : query.hashTag, traceInfo: query === null || query === void 0 ? void 0 : query.traceInfo, themeTag: query === null || query === void 0 ? void 0 : query.themeTag, pageNum: query === null || query === void 0 ? void 0 : query.pageNum, contentFilter: query === null || query === void 0 ? void 0 : query.contentFilter, productFilter: query === null || query === void 0 ? void 0 : query.productFilter }, (chatlabsId && { chatlabsId })), (isDiyH5 && { type: 'story' }));
|
|
995
1072
|
if (channel) {
|
|
996
1073
|
query = Object.assign(Object.assign({}, query), { channel: decodeURIComponent(channel) });
|
|
997
1074
|
}
|
|
@@ -1004,10 +1081,9 @@
|
|
|
1004
1081
|
if (val)
|
|
1005
1082
|
query = Object.assign(Object.assign({}, query), { channel: decodeURIComponent(val) });
|
|
1006
1083
|
}
|
|
1007
|
-
const isDiy = isDiyH5 && ((_o = (_m = (_l = finalPageData === null || finalPageData === void 0 ? void 0 : finalPageData.data) === null || _l === void 0 ? void 0 : _l.sxpPageConf) === null || _m === void 0 ? void 0 : _m.globalConfig) === null || _o === void 0 ? void 0 : _o.enablePreview);
|
|
1008
1084
|
if (isEditor) {
|
|
1009
1085
|
let pageNum = 1;
|
|
1010
|
-
query = Object.assign(Object.assign(Object.assign(
|
|
1086
|
+
query = Object.assign(Object.assign(Object.assign({}, query), { directPage: true, level: 1 }), (!utmVal && channelQueryList && (channelQueryList === null || channelQueryList === void 0 ? void 0 : channelQueryList.length) > 0 && { channel: channelQueryList === null || channelQueryList === void 0 ? void 0 : channelQueryList[0] }));
|
|
1011
1087
|
if (!(query === null || query === void 0 ? void 0 : query.channel) || isInit.current) {
|
|
1012
1088
|
return undefined;
|
|
1013
1089
|
}
|
|
@@ -1015,22 +1091,19 @@
|
|
|
1015
1091
|
let list = [];
|
|
1016
1092
|
let result = null;
|
|
1017
1093
|
const recurveRecList = (query) => __awaiter(void 0, void 0, void 0, function* () {
|
|
1018
|
-
var
|
|
1094
|
+
var _v, _w, _x, _y, _z, _0;
|
|
1019
1095
|
query.pageNum = pageNum;
|
|
1020
|
-
result =
|
|
1096
|
+
result = yield (bffFetchAdmin === null || bffFetchAdmin === void 0 ? void 0 : bffFetchAdmin('recommend/direct_page', { method: 'POST', body: query }));
|
|
1021
1097
|
if (!(result === null || result === void 0 ? void 0 : result.success)) {
|
|
1022
1098
|
return undefined;
|
|
1023
1099
|
}
|
|
1024
1100
|
setLoading(false);
|
|
1025
|
-
list = list.concat((
|
|
1101
|
+
list = list.concat((_y = (_x = (_w = (_v = result === null || result === void 0 ? void 0 : result.data) === null || _v === void 0 ? void 0 : _v.recList) === null || _w === void 0 ? void 0 : _w.filter) === null || _x === void 0 ? void 0 : _x.call(_w, (item) => (item === null || item === void 0 ? void 0 : item.product) || (item === null || item === void 0 ? void 0 : item.video))) !== null && _y !== void 0 ? _y : []);
|
|
1026
1102
|
if ((rtcList === null || rtcList === void 0 ? void 0 : rtcList.length) === 0) {
|
|
1027
1103
|
setRtcList(getFilterRecList(Object.assign(Object.assign({}, result === null || result === void 0 ? void 0 : result.data), { recList: list })));
|
|
1028
1104
|
setCacheRtcList(getFilterRecList(Object.assign(Object.assign({}, result === null || result === void 0 ? void 0 : result.data), { recList: list })));
|
|
1029
|
-
if (isDiyPage) {
|
|
1030
|
-
setFirstRtcList(getFilterRecList(Object.assign(Object.assign({}, result === null || result === void 0 ? void 0 : result.data), { recList: list })));
|
|
1031
|
-
}
|
|
1032
1105
|
}
|
|
1033
|
-
const isNotNullList = (
|
|
1106
|
+
const isNotNullList = (_0 = (_z = result === null || result === void 0 ? void 0 : result.data) === null || _z === void 0 ? void 0 : _z.recList) === null || _0 === void 0 ? void 0 : _0.some((item) => (item === null || item === void 0 ? void 0 : item.product) || (item === null || item === void 0 ? void 0 : item.video));
|
|
1034
1107
|
if (isNotNullList) {
|
|
1035
1108
|
pageNum = pageNum + 1;
|
|
1036
1109
|
yield recurveRecList(query);
|
|
@@ -1038,13 +1111,13 @@
|
|
|
1038
1111
|
});
|
|
1039
1112
|
yield recurveRecList(query);
|
|
1040
1113
|
if (!(query === null || query === void 0 ? void 0 : query.hashTag) && result)
|
|
1041
|
-
setCurReqInfo({ rtc: (
|
|
1114
|
+
setCurReqInfo({ rtc: (_l = result === null || result === void 0 ? void 0 : result.data) === null || _l === void 0 ? void 0 : _l.rtc, requestId: (_m = result === null || result === void 0 ? void 0 : result.data) === null || _m === void 0 ? void 0 : _m.requestId });
|
|
1042
1115
|
return Object.assign(Object.assign({}, result === null || result === void 0 ? void 0 : result.data), { recList: list });
|
|
1043
1116
|
}
|
|
1044
1117
|
if (globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.enablePreview) {
|
|
1045
|
-
query = Object.assign(Object.assign(
|
|
1118
|
+
query = Object.assign(Object.assign({}, query), { directPage: true, level: 1, pageNum: (_o = query === null || query === void 0 ? void 0 : query.pageNum) !== null && _o !== void 0 ? _o : 1 });
|
|
1046
1119
|
}
|
|
1047
|
-
const result =
|
|
1120
|
+
const result = yield (bffFetch === null || bffFetch === void 0 ? void 0 : bffFetch('v1/recommend/list', {
|
|
1048
1121
|
method: 'POST',
|
|
1049
1122
|
body: query
|
|
1050
1123
|
}));
|
|
@@ -1054,31 +1127,26 @@
|
|
|
1054
1127
|
if (!(query === null || query === void 0 ? void 0 : query.hashTag))
|
|
1055
1128
|
setCurReqInfo({ rtc: result.data.rtc, requestId: result.data.requestId });
|
|
1056
1129
|
if ((globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.enablePreview) && !isEditor) {
|
|
1057
|
-
const isNotNullList = (
|
|
1130
|
+
const isNotNullList = (_q = (_p = result === null || result === void 0 ? void 0 : result.data) === null || _p === void 0 ? void 0 : _p.recList) === null || _q === void 0 ? void 0 : _q.some((item) => (item === null || item === void 0 ? void 0 : item.product) || (item === null || item === void 0 ? void 0 : item.video));
|
|
1058
1131
|
if (!isNotNullList) {
|
|
1059
1132
|
setIsNoMoreData(true);
|
|
1060
1133
|
}
|
|
1061
1134
|
}
|
|
1062
1135
|
let list = [];
|
|
1063
|
-
list = list.concat((
|
|
1136
|
+
list = list.concat((_u = (_t = (_s = (_r = result === null || result === void 0 ? void 0 : result.data) === null || _r === void 0 ? void 0 : _r.recList) === null || _s === void 0 ? void 0 : _s.filter) === null || _t === void 0 ? void 0 : _t.call(_s, (item) => (item === null || item === void 0 ? void 0 : item.product) || (item === null || item === void 0 ? void 0 : item.video))) !== null && _u !== void 0 ? _u : []);
|
|
1064
1137
|
return Object.assign(Object.assign({}, result.data), { recList: list });
|
|
1065
|
-
}), [bffFetch, utmVal, maxSize, defaultSize, channelQueryList, channel, chatlabsId, bffFetchAdmin
|
|
1138
|
+
}), [bffFetch, utmVal, maxSize, defaultSize, channelQueryList, channel, chatlabsId, bffFetchAdmin]);
|
|
1066
1139
|
const loadVideos = React.useCallback((pageNum) => __awaiter(void 0, void 0, void 0, function* () {
|
|
1067
|
-
var
|
|
1140
|
+
var _1, _2, _3, _4;
|
|
1068
1141
|
if (rtcList.length <= 0) {
|
|
1069
1142
|
return;
|
|
1070
1143
|
}
|
|
1071
|
-
if (isDiyPage && (firstRtcList === null || firstRtcList === void 0 ? void 0 : firstRtcList.length) > 0) {
|
|
1072
|
-
setRtcList(rtcList.concat(firstRtcList));
|
|
1073
|
-
setCacheRtcList(cacheRtcList.concat(firstRtcList));
|
|
1074
|
-
return;
|
|
1075
|
-
}
|
|
1076
1144
|
const lastItem = rtcList === null || rtcList === void 0 ? void 0 : rtcList[(rtcList === null || rtcList === void 0 ? void 0 : rtcList.length) - 1];
|
|
1077
|
-
const data = yield getRecommendVideos(Object.assign(Object.assign(Object.assign(Object.assign({ hashTag: waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.hashTag }, (((
|
|
1145
|
+
const data = yield getRecommendVideos(Object.assign(Object.assign(Object.assign(Object.assign({ hashTag: waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.hashTag }, (((_1 = lastItem === null || lastItem === void 0 ? void 0 : lastItem.product) === null || _1 === void 0 ? void 0 : _1.itemId) && { productFilter: [(_2 = lastItem === null || lastItem === void 0 ? void 0 : lastItem.product) === null || _2 === void 0 ? void 0 : _2.itemId] })), (((_3 = lastItem === null || lastItem === void 0 ? void 0 : lastItem.video) === null || _3 === void 0 ? void 0 : _3.itemId) && { contentFilter: [(_4 = lastItem === null || lastItem === void 0 ? void 0 : lastItem.video) === null || _4 === void 0 ? void 0 : _4.itemId] })), { themeTag: themeTag.current }), ((globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.enablePreview) && !isEditor && { pageNum })));
|
|
1078
1146
|
setRtcList(rtcList.concat(getFilterRecList(data)));
|
|
1079
1147
|
setCacheRtcList(cacheRtcList.concat(getFilterRecList(data)));
|
|
1080
1148
|
return data;
|
|
1081
|
-
}), [getRecommendVideos, rtcList, waterFallData, cacheRtcList
|
|
1149
|
+
}), [getRecommendVideos, rtcList, waterFallData, cacheRtcList]);
|
|
1082
1150
|
const refreshFeSession = React.useCallback((enableReSid, event) => {
|
|
1083
1151
|
var _a, _b, _c, _d, _e;
|
|
1084
1152
|
let expire = false;
|
|
@@ -1103,14 +1171,14 @@
|
|
|
1103
1171
|
const bffEventReport = React.useCallback(({ userInfo, eventInfo, reportLayId = true }) => {
|
|
1104
1172
|
var _a, _b;
|
|
1105
1173
|
// 关闭 BFF 事件上报
|
|
1106
|
-
if (!enableReportEvent || (globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.enablePreview)) {
|
|
1174
|
+
if (!enableReportEvent || (globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.enablePreview) || isActiveTargetingCookie) {
|
|
1107
1175
|
return;
|
|
1108
1176
|
}
|
|
1109
1177
|
// 用户信息都是公共的
|
|
1110
1178
|
if (!userInfo) {
|
|
1111
1179
|
userInfo = {
|
|
1112
|
-
|
|
1113
|
-
|
|
1180
|
+
// productUserId: fakeUserId, // 后端逻辑会从请求头获取,所以不需要传
|
|
1181
|
+
// tpChannelId: 'H5' // 后端处理
|
|
1114
1182
|
};
|
|
1115
1183
|
}
|
|
1116
1184
|
const sessionID = storeAndLoadFeSessionId();
|
|
@@ -1145,7 +1213,7 @@
|
|
|
1145
1213
|
globalConfig,
|
|
1146
1214
|
playbookType,
|
|
1147
1215
|
bffDataSource,
|
|
1148
|
-
|
|
1216
|
+
isActiveTargetingCookie
|
|
1149
1217
|
]);
|
|
1150
1218
|
const getEventParamsByJson = React.useCallback((json, product) => {
|
|
1151
1219
|
var _a, _b, _c;
|
|
@@ -1210,7 +1278,7 @@
|
|
|
1210
1278
|
}, [fakeUserId]);
|
|
1211
1279
|
const bffFbReport = React.useCallback(({ eventName, product }) => {
|
|
1212
1280
|
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
|
|
1213
|
-
if (!enableReportEvent || (globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.enablePreview)) {
|
|
1281
|
+
if (!enableReportEvent || (globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.enablePreview) || isActiveTargetingCookie) {
|
|
1214
1282
|
return;
|
|
1215
1283
|
}
|
|
1216
1284
|
let isPushState = false;
|
|
@@ -1276,42 +1344,40 @@
|
|
|
1276
1344
|
type: 'beacon'
|
|
1277
1345
|
});
|
|
1278
1346
|
}
|
|
1279
|
-
}, [bffFetch, enableReportEvent, enabledMetaConversionApi, globalConfig, bffDataSource, getEventParamsByJson]);
|
|
1347
|
+
}, [bffFetch, enableReportEvent, enabledMetaConversionApi, globalConfig, bffDataSource, getEventParamsByJson, isActiveTargetingCookie]);
|
|
1280
1348
|
const bffMutateLike = React.useCallback((body) => __awaiter(void 0, void 0, void 0, function* () {
|
|
1281
|
-
body = Object.assign(Object.assign({}, body), { productUserId: fakeUserId });
|
|
1282
1349
|
const res = yield (bffFetch === null || bffFetch === void 0 ? void 0 : bffFetch('v1/recommend/like', { method: 'POST', body }));
|
|
1283
1350
|
return res === null || res === void 0 ? void 0 : res.success;
|
|
1284
|
-
}), [bffFetch
|
|
1351
|
+
}), [bffFetch]);
|
|
1285
1352
|
const bffMutateUnlike = React.useCallback((body) => __awaiter(void 0, void 0, void 0, function* () {
|
|
1286
|
-
body = Object.assign(Object.assign({}, body), { productUserId: fakeUserId });
|
|
1287
1353
|
const res = yield (bffFetch === null || bffFetch === void 0 ? void 0 : bffFetch('v1/recommend/unlike', { method: 'POST', body }));
|
|
1288
1354
|
return res === null || res === void 0 ? void 0 : res.success;
|
|
1289
|
-
}), [bffFetch
|
|
1355
|
+
}), [bffFetch]);
|
|
1290
1356
|
const bffSubmitForm = React.useCallback((body) => __awaiter(void 0, void 0, void 0, function* () {
|
|
1291
1357
|
const res = yield (bffFetch === null || bffFetch === void 0 ? void 0 : bffFetch('v1/customform', { method: 'POST', body }));
|
|
1292
1358
|
return res === null || res === void 0 ? void 0 : res.success;
|
|
1293
1359
|
}), [bffFetch]);
|
|
1294
1360
|
// 获取 Tag
|
|
1295
1361
|
const bffGetTagList = React.useCallback((data) => __awaiter(void 0, void 0, void 0, function* () {
|
|
1296
|
-
var
|
|
1297
|
-
const isShowTag = !!((
|
|
1362
|
+
var _5, _6, _7, _8, _9, _10, _11, _12;
|
|
1363
|
+
const isShowTag = !!((_7 = (_6 = (_5 = data === null || data === void 0 ? void 0 : data.data) === null || _5 === void 0 ? void 0 : _5.sxpPageConf) === null || _6 === void 0 ? void 0 : _6.globalConfig) === null || _7 === void 0 ? void 0 : _7.isShowTag);
|
|
1298
1364
|
if (!utmVal || !isShowTag)
|
|
1299
1365
|
return;
|
|
1300
1366
|
try {
|
|
1301
|
-
const val = (
|
|
1367
|
+
const val = (_10 = (_9 = (_8 = splitUrlParams(utmVal)) === null || _8 === void 0 ? void 0 : _8.filter((val) => {
|
|
1302
1368
|
var _a, _b;
|
|
1303
1369
|
const key = val.split('=')[0];
|
|
1304
1370
|
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);
|
|
1305
|
-
})) === null ||
|
|
1371
|
+
})) === null || _9 === void 0 ? void 0 : _9.join('&')) !== null && _10 !== void 0 ? _10 : '';
|
|
1306
1372
|
const result = yield (bffFetch === null || bffFetch === void 0 ? void 0 : bffFetch('v1/tag/list', { method: 'GET', query: { channel: decodeURIComponent(val) } }));
|
|
1307
|
-
setTagList((
|
|
1373
|
+
setTagList((_12 = (_11 = result === null || result === void 0 ? void 0 : result.data) === null || _11 === void 0 ? void 0 : _11.tags) !== null && _12 !== void 0 ? _12 : []);
|
|
1308
1374
|
}
|
|
1309
1375
|
catch (e) {
|
|
1310
1376
|
console.log('e', e);
|
|
1311
1377
|
}
|
|
1312
1378
|
}), [bffFetch, utmVal]);
|
|
1313
1379
|
const ctaEvent = React.useCallback((eventInfo, rec, product, position) => {
|
|
1314
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11
|
|
1380
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11;
|
|
1315
1381
|
const cta = product === null || product === void 0 ? void 0 : product.bindCta;
|
|
1316
1382
|
const isProd = ((_a = rec === null || rec === void 0 ? void 0 : rec.video) === null || _a === void 0 ? void 0 : _a.bindProduct) || (((_b = rec === null || rec === void 0 ? void 0 : rec.video) === null || _b === void 0 ? void 0 : _b.bindProducts) && ((_d = (_c = rec === null || rec === void 0 ? void 0 : rec.video) === null || _c === void 0 ? void 0 : _c.bindProducts) === null || _d === void 0 ? void 0 : _d.length) > 0);
|
|
1317
1383
|
let fromKName = '';
|
|
@@ -1329,7 +1395,7 @@
|
|
|
1329
1395
|
}
|
|
1330
1396
|
const contentTags = (_p = (_m = (_h = product === null || product === void 0 ? void 0 : product.tags) !== null && _h !== void 0 ? _h : (_l = (_k = (_j = rec === null || rec === void 0 ? void 0 : rec.video) === null || _j === void 0 ? void 0 : _j.bindProducts) === null || _k === void 0 ? void 0 : _k[0]) === null || _l === void 0 ? void 0 : _l.tags) !== null && _m !== void 0 ? _m : (_o = rec === null || rec === void 0 ? void 0 : rec.video) === null || _o === void 0 ? void 0 : _o.tags) !== null && _p !== void 0 ? _p : (_q = rec === null || rec === void 0 ? void 0 : rec.product) === null || _q === void 0 ? void 0 : _q.tags;
|
|
1331
1397
|
bffEventReport === null || bffEventReport === void 0 ? void 0 : bffEventReport({
|
|
1332
|
-
eventInfo: Object.assign(Object.assign({}, eventInfo), { ctaId: (_r = cta === null || cta === void 0 ? void 0 : cta.itemId) !== null && _r !== void 0 ? _r : '', ctaName: (_s = cta === null || cta === void 0 ? void 0 : cta.title) !== null && _s !== void 0 ? _s : '', contentTags: contentTags ? JSON.stringify(contentTags) : '', position: position + '', contentId: (_u = (_t = rec === null || rec === void 0 ? void 0 : rec.video) === null || _t === void 0 ? void 0 : _t.itemId) !== null && _u !== void 0 ? _u : '',
|
|
1398
|
+
eventInfo: Object.assign(Object.assign({}, eventInfo), { ctaId: (_r = cta === null || cta === void 0 ? void 0 : cta.itemId) !== null && _r !== void 0 ? _r : '', ctaName: (_s = cta === null || cta === void 0 ? void 0 : cta.title) !== null && _s !== void 0 ? _s : '', contentTags: contentTags ? JSON.stringify(contentTags) : '', position: position + '', contentId: (_u = (_t = rec === null || rec === void 0 ? void 0 : rec.video) === null || _t === void 0 ? void 0 : _t.itemId) !== null && _u !== void 0 ? _u : '', productId: isProd ? product === null || product === void 0 ? void 0 : product.itemId : '', traceInfo: (_10 = (_7 = (_2 = (_y = (_v = cta === null || cta === void 0 ? void 0 : cta.traceInfo) !== null && _v !== void 0 ? _v : (_x = (_w = rec === null || rec === void 0 ? void 0 : rec.video) === null || _w === void 0 ? void 0 : _w.bindCta) === null || _x === void 0 ? void 0 : _x.traceInfo) !== null && _y !== void 0 ? _y : (_1 = (_0 = (_z = rec === null || rec === void 0 ? void 0 : rec.video) === null || _z === void 0 ? void 0 : _z.bindProduct) === null || _0 === void 0 ? void 0 : _0.bindCta) === null || _1 === void 0 ? void 0 : _1.traceInfo) !== null && _2 !== void 0 ? _2 : (_6 = (_5 = (_4 = (_3 = rec === null || rec === void 0 ? void 0 : rec.video) === null || _3 === void 0 ? void 0 : _3.bindProducts) === null || _4 === void 0 ? void 0 : _4[0]) === null || _5 === void 0 ? void 0 : _5.bindCta) === null || _6 === void 0 ? void 0 : _6.traceInfo) !== null && _7 !== void 0 ? _7 : (_9 = (_8 = rec === null || rec === void 0 ? void 0 : rec.product) === null || _8 === void 0 ? void 0 : _8.bindCta) === null || _9 === void 0 ? void 0 : _9.traceInfo) !== null && _10 !== void 0 ? _10 : '', fromKName, fromKPage: (_11 = location === null || location === void 0 ? void 0 : location.href) !== null && _11 !== void 0 ? _11 : '', contentFormat })
|
|
1333
1399
|
});
|
|
1334
1400
|
}, [bffEventReport, isFromHashtag]);
|
|
1335
1401
|
const h5EnterLink = React.useCallback(() => {
|
|
@@ -1364,10 +1430,10 @@
|
|
|
1364
1430
|
});
|
|
1365
1431
|
}, [bffEventReport]);
|
|
1366
1432
|
const getAccount = React.useCallback(() => __awaiter(void 0, void 0, void 0, function* () {
|
|
1367
|
-
var
|
|
1433
|
+
var _13, _14;
|
|
1368
1434
|
const res = yield (bffFetch === null || bffFetch === void 0 ? void 0 : bffFetch('v1/account', { method: 'GET' }));
|
|
1369
|
-
setChatlabsId((
|
|
1370
|
-
return ((
|
|
1435
|
+
setChatlabsId((_13 = res === null || res === void 0 ? void 0 : res.data) === null || _13 === void 0 ? void 0 : _13.chatLabsId);
|
|
1436
|
+
return ((_14 = res === null || res === void 0 ? void 0 : res.data) === null || _14 === void 0 ? void 0 : _14.consentResult) === 'true';
|
|
1371
1437
|
}), [bffFetch]);
|
|
1372
1438
|
const accountSonsent = React.useCallback((consentResult) => __awaiter(void 0, void 0, void 0, function* () {
|
|
1373
1439
|
const res = yield (bffFetch === null || bffFetch === void 0 ? void 0 : bffFetch('v1/account/consent', {
|
|
@@ -1431,9 +1497,6 @@
|
|
|
1431
1497
|
}
|
|
1432
1498
|
setRtcList(list);
|
|
1433
1499
|
setCacheRtcList(list);
|
|
1434
|
-
if (isDiyPage) {
|
|
1435
|
-
setFirstRtcList(list);
|
|
1436
|
-
}
|
|
1437
1500
|
bffGetTagList(curData !== null && curData !== void 0 ? curData : finalPageData);
|
|
1438
1501
|
if (channel) {
|
|
1439
1502
|
const item = list === null || list === void 0 ? void 0 : list[0];
|
|
@@ -1453,7 +1516,7 @@
|
|
|
1453
1516
|
});
|
|
1454
1517
|
setLoading(false);
|
|
1455
1518
|
});
|
|
1456
|
-
}, [isShowConsent, channel
|
|
1519
|
+
}, [isShowConsent, channel]);
|
|
1457
1520
|
// cms预览
|
|
1458
1521
|
React.useEffect(() => {
|
|
1459
1522
|
if (!isPreview)
|
|
@@ -1469,15 +1532,12 @@
|
|
|
1469
1532
|
}
|
|
1470
1533
|
setRtcList(list);
|
|
1471
1534
|
setCacheRtcList(list);
|
|
1472
|
-
if (isDiyPage) {
|
|
1473
|
-
setFirstRtcList(list);
|
|
1474
|
-
}
|
|
1475
1535
|
}
|
|
1476
1536
|
})
|
|
1477
1537
|
.finally(() => {
|
|
1478
1538
|
setLoading(false);
|
|
1479
1539
|
});
|
|
1480
|
-
}, [getRecommendVideos, bffGetTagList, channel
|
|
1540
|
+
}, [getRecommendVideos, bffGetTagList, channel]);
|
|
1481
1541
|
const defaultLoadingImage = useIconLink('/pb_static/a65d23c5893c49d7aaaa81681d3179e2.gif', appDomain);
|
|
1482
1542
|
return (React.createElement(SxpDataSourceContext.Provider, { value: {
|
|
1483
1543
|
rtcList,
|
|
@@ -1535,8 +1595,7 @@
|
|
|
1535
1595
|
refreshFeSession,
|
|
1536
1596
|
getAccount,
|
|
1537
1597
|
accountSonsent,
|
|
1538
|
-
isDiyH5
|
|
1539
|
-
firstRtcList
|
|
1598
|
+
isDiyH5
|
|
1540
1599
|
} }, isShowConsent ? (React.createElement(Consent$4, Object.assign({}, (_e = (_d = (_c = globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.consent) === null || _c === void 0 ? void 0 : _c[0]) === null || _d === void 0 ? void 0 : _d.item) === null || _e === void 0 ? void 0 : _e.props))) : (render({
|
|
1541
1600
|
rtcList,
|
|
1542
1601
|
mutateLike: bffMutateLike,
|
|
@@ -1997,14 +2056,14 @@
|
|
|
1997
2056
|
* @Author: binruan@chatlabs.com
|
|
1998
2057
|
* @Date: 2024-03-12 10:59:06
|
|
1999
2058
|
* @LastEditors: binruan@chatlabs.com
|
|
2000
|
-
* @LastEditTime:
|
|
2059
|
+
* @LastEditTime: 2024-11-28 11:17:16
|
|
2001
2060
|
* @FilePath: \pb-sxp-ui\src\core\hooks\useEventReport.ts
|
|
2002
2061
|
*
|
|
2003
2062
|
*/
|
|
2004
2063
|
function useEventReport() {
|
|
2005
2064
|
const { bffEventReport, popupDetailData, isFromHashtag, eventTimeList, setEventTimeList } = useSxpDataSource();
|
|
2006
2065
|
const jumpToWeb = React.useCallback((e, data, product, cta, position, traceInfo) => {
|
|
2007
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13
|
|
2066
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13;
|
|
2008
2067
|
const i = eventTimeList === null || eventTimeList === void 0 ? void 0 : eventTimeList.findIndex((item) => item.target === (e === null || e === void 0 ? void 0 : e.target));
|
|
2009
2068
|
if (i !== -1) {
|
|
2010
2069
|
return;
|
|
@@ -2037,11 +2096,11 @@
|
|
|
2037
2096
|
contentFormat = 'image';
|
|
2038
2097
|
}
|
|
2039
2098
|
bffEventReport === null || bffEventReport === void 0 ? void 0 : bffEventReport({
|
|
2040
|
-
eventInfo: Object.assign({ eventSubject: 'jumpToWeb', eventDescription: 'User jumped to website', productId: (_v = product === null || product === void 0 ? void 0 : product.itemId) !== null && _v !== void 0 ? _v : '', productName: (_w = product === null || product === void 0 ? void 0 : product.title) !== null && _w !== void 0 ? _w : '', price: (product === null || product === void 0 ? void 0 : product.price) ? (product === null || product === void 0 ? void 0 : product.price) + '' : '0', productCollection: (_x = product === null || product === void 0 ? void 0 : product.collection) !== null && _x !== void 0 ? _x : '', fromKName, fromKPage: location === null || location === void 0 ? void 0 : location.href, contentTags: contentTags ? JSON.stringify(contentTags) : '', position: position + '', contentId: (_z = (_y = data === null || data === void 0 ? void 0 : data.video) === null || _y === void 0 ? void 0 : _y.itemId) !== null && _z !== void 0 ? _z : '',
|
|
2099
|
+
eventInfo: Object.assign({ eventSubject: 'jumpToWeb', eventDescription: 'User jumped to website', productId: (_v = product === null || product === void 0 ? void 0 : product.itemId) !== null && _v !== void 0 ? _v : '', productName: (_w = product === null || product === void 0 ? void 0 : product.title) !== null && _w !== void 0 ? _w : '', price: (product === null || product === void 0 ? void 0 : product.price) ? (product === null || product === void 0 ? void 0 : product.price) + '' : '0', productCollection: (_x = product === null || product === void 0 ? void 0 : product.collection) !== null && _x !== void 0 ? _x : '', fromKName, fromKPage: location === null || location === void 0 ? void 0 : location.href, contentTags: contentTags ? JSON.stringify(contentTags) : '', position: position + '', contentId: (_z = (_y = data === null || data === void 0 ? void 0 : data.video) === null || _y === void 0 ? void 0 : _y.itemId) !== null && _z !== void 0 ? _z : '', ctatId: (_0 = cta === null || cta === void 0 ? void 0 : cta.itemId) !== null && _0 !== void 0 ? _0 : '', traceInfo: (_13 = (_10 = (_8 = (_4 = (_1 = traceInfo !== null && traceInfo !== void 0 ? traceInfo : product === null || product === void 0 ? void 0 : product.traceInfo) !== null && _1 !== void 0 ? _1 : (_3 = (_2 = data === null || data === void 0 ? void 0 : data.video) === null || _2 === void 0 ? void 0 : _2.bindProduct) === null || _3 === void 0 ? void 0 : _3.traceInfo) !== null && _4 !== void 0 ? _4 : (_7 = (_6 = (_5 = data === null || data === void 0 ? void 0 : data.video) === null || _5 === void 0 ? void 0 : _5.bindProducts) === null || _6 === void 0 ? void 0 : _6[0]) === null || _7 === void 0 ? void 0 : _7.traceInfo) !== null && _8 !== void 0 ? _8 : (_9 = data === null || data === void 0 ? void 0 : data.product) === null || _9 === void 0 ? void 0 : _9.traceInfo) !== null && _10 !== void 0 ? _10 : (_12 = (_11 = data === null || data === void 0 ? void 0 : data.video) === null || _11 === void 0 ? void 0 : _11.bindCta) === null || _12 === void 0 ? void 0 : _12.traceInfo) !== null && _13 !== void 0 ? _13 : '' }, (contentFormat && { contentFormat }))
|
|
2041
2100
|
});
|
|
2042
2101
|
}, [bffEventReport, popupDetailData, isFromHashtag, eventTimeList]);
|
|
2043
2102
|
const productView = React.useCallback((data, product, cta, viewTime, position) => {
|
|
2044
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p
|
|
2103
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p;
|
|
2045
2104
|
let fromKName = '';
|
|
2046
2105
|
if (popupDetailData && (((_b = (_a = data === null || data === void 0 ? void 0 : data.video) === null || _a === void 0 ? void 0 : _a.bindProducts) === null || _b === void 0 ? void 0 : _b.length) || ((_c = data === null || data === void 0 ? void 0 : data.video) === null || _c === void 0 ? void 0 : _c.bindProduct))) {
|
|
2047
2106
|
fromKName = 'pdpPage';
|
|
@@ -2060,9 +2119,8 @@
|
|
|
2060
2119
|
contentTags: JSON.stringify(product === null || product === void 0 ? void 0 : product.tags),
|
|
2061
2120
|
position: position + '',
|
|
2062
2121
|
contentId: (_d = data === null || data === void 0 ? void 0 : data.video) === null || _d === void 0 ? void 0 : _d.itemId,
|
|
2063
|
-
sceneId: (_g = (_f = (_e = data === null || data === void 0 ? void 0 : data.video) === null || _e === void 0 ? void 0 : _e.scene) === null || _f === void 0 ? void 0 : _f.sceneId) !== null && _g !== void 0 ? _g : '',
|
|
2064
2122
|
ctatId: cta === null || cta === void 0 ? void 0 : cta.itemId,
|
|
2065
|
-
traceInfo: (
|
|
2123
|
+
traceInfo: (_p = (_m = (_h = (_e = product === null || product === void 0 ? void 0 : product.traceInfo) !== null && _e !== void 0 ? _e : (_g = (_f = data === null || data === void 0 ? void 0 : data.video) === null || _f === void 0 ? void 0 : _f.bindProduct) === null || _g === void 0 ? void 0 : _g.traceInfo) !== null && _h !== void 0 ? _h : (_l = (_k = (_j = data === null || data === void 0 ? void 0 : data.video) === null || _j === void 0 ? void 0 : _j.bindProducts) === null || _k === void 0 ? void 0 : _k[0]) === null || _l === void 0 ? void 0 : _l.traceInfo) !== null && _m !== void 0 ? _m : (_o = data === null || data === void 0 ? void 0 : data.product) === null || _o === void 0 ? void 0 : _o.traceInfo) !== null && _p !== void 0 ? _p : '',
|
|
2066
2124
|
timeOnSite: Math.floor((new Date() - viewTime) / 1000) + '',
|
|
2067
2125
|
eventSubject: 'productView',
|
|
2068
2126
|
eventDescription: 'User browsed the product'
|
|
@@ -2658,6 +2716,35 @@
|
|
|
2658
2716
|
}
|
|
2659
2717
|
];
|
|
2660
2718
|
|
|
2719
|
+
/*
|
|
2720
|
+
* @Author: binruan@chatlabs.com
|
|
2721
|
+
* @Date: 2024-07-09 14:35:10
|
|
2722
|
+
* @LastEditors: binruan@chatlabs.com
|
|
2723
|
+
* @LastEditTime: 2024-07-12 17:53:02
|
|
2724
|
+
* @FilePath: \pb-sxp-ui\src\materials\sxp\popup\CommodityDetail\interactionRender.tsx
|
|
2725
|
+
*
|
|
2726
|
+
*/
|
|
2727
|
+
/*
|
|
2728
|
+
* @Author: binruan@chatlabs.com
|
|
2729
|
+
* @Date: 2024-07-05 14:08:41
|
|
2730
|
+
* @LastEditors: binruan@chatlabs.com
|
|
2731
|
+
* @LastEditTime: 2024-07-09 14:34:49
|
|
2732
|
+
* @FilePath: \pb-sxp-ui\src\materials\sxp\cta\AniLink\interactionRender.tsx
|
|
2733
|
+
*
|
|
2734
|
+
*/
|
|
2735
|
+
var interactionRender$g = [
|
|
2736
|
+
{
|
|
2737
|
+
title: '滑动事件',
|
|
2738
|
+
child: [
|
|
2739
|
+
{
|
|
2740
|
+
type: 'Switch',
|
|
2741
|
+
label: '滑动铺满全屏',
|
|
2742
|
+
name: ['isScrollFullScreen']
|
|
2743
|
+
}
|
|
2744
|
+
]
|
|
2745
|
+
}
|
|
2746
|
+
];
|
|
2747
|
+
|
|
2661
2748
|
/**
|
|
2662
2749
|
* SSR Window 4.0.2
|
|
2663
2750
|
* Better handling for window object in SSR environment
|
|
@@ -10236,7 +10323,7 @@
|
|
|
10236
10323
|
return (React.createElement(React.Fragment, null, (item === null || item === void 0 ? void 0 : item.bindCta) ? (React.createElement(SwiperSlide, { className: css.css({
|
|
10237
10324
|
width: '50px',
|
|
10238
10325
|
height: '50px',
|
|
10239
|
-
|
|
10326
|
+
marginInlineEnd: '10px'
|
|
10240
10327
|
}), onClick: () => {
|
|
10241
10328
|
handleClick(item, index);
|
|
10242
10329
|
}, key: index },
|
|
@@ -10835,35 +10922,6 @@
|
|
|
10835
10922
|
};
|
|
10836
10923
|
var CommodityDetailComponent = React.memo(CommodityDetail$1);
|
|
10837
10924
|
|
|
10838
|
-
/*
|
|
10839
|
-
* @Author: binruan@chatlabs.com
|
|
10840
|
-
* @Date: 2024-07-09 14:35:10
|
|
10841
|
-
* @LastEditors: binruan@chatlabs.com
|
|
10842
|
-
* @LastEditTime: 2024-07-12 17:53:02
|
|
10843
|
-
* @FilePath: \pb-sxp-ui\src\materials\sxp\popup\CommodityDetail\interactionRender.tsx
|
|
10844
|
-
*
|
|
10845
|
-
*/
|
|
10846
|
-
/*
|
|
10847
|
-
* @Author: binruan@chatlabs.com
|
|
10848
|
-
* @Date: 2024-07-05 14:08:41
|
|
10849
|
-
* @LastEditors: binruan@chatlabs.com
|
|
10850
|
-
* @LastEditTime: 2024-07-09 14:34:49
|
|
10851
|
-
* @FilePath: \pb-sxp-ui\src\materials\sxp\cta\AniLink\interactionRender.tsx
|
|
10852
|
-
*
|
|
10853
|
-
*/
|
|
10854
|
-
var interactionRender$g = [
|
|
10855
|
-
{
|
|
10856
|
-
title: '滑动事件',
|
|
10857
|
-
child: [
|
|
10858
|
-
{
|
|
10859
|
-
type: 'Switch',
|
|
10860
|
-
label: '滑动铺满全屏',
|
|
10861
|
-
name: ['isScrollFullScreen']
|
|
10862
|
-
}
|
|
10863
|
-
]
|
|
10864
|
-
}
|
|
10865
|
-
];
|
|
10866
|
-
|
|
10867
10925
|
/*
|
|
10868
10926
|
* @Author: binruan@chatlabs.com
|
|
10869
10927
|
* @Date: 2023-07-28 18:29:57
|
|
@@ -10910,7 +10968,6 @@
|
|
|
10910
10968
|
taxInfo: {
|
|
10911
10969
|
color: '#000',
|
|
10912
10970
|
fontSize: 13,
|
|
10913
|
-
textAlign: 'left',
|
|
10914
10971
|
marginBottom: '10px'
|
|
10915
10972
|
}
|
|
10916
10973
|
},
|
|
@@ -12002,7 +12059,7 @@ Made in Italy` })));
|
|
|
12002
12059
|
type: 'Number',
|
|
12003
12060
|
label: '与右侧边距',
|
|
12004
12061
|
addonAfter: 'px',
|
|
12005
|
-
name: ['props', 'commodityPicture', '
|
|
12062
|
+
name: ['props', 'commodityPicture', 'marginInlineEnd']
|
|
12006
12063
|
},
|
|
12007
12064
|
{
|
|
12008
12065
|
label: '居中垂直偏移',
|
|
@@ -12288,12 +12345,11 @@ Made in Italy` })));
|
|
|
12288
12345
|
React.createElement("button", Object.assign({ role: 'button', "aria-label": item === null || item === void 0 ? void 0 : item.title, tabIndex: 0, className: css.css({
|
|
12289
12346
|
display: 'flex',
|
|
12290
12347
|
alignItems: 'normal',
|
|
12291
|
-
width: '100%'
|
|
12292
|
-
textAlign: 'left'
|
|
12348
|
+
width: '100%'
|
|
12293
12349
|
}) }, props),
|
|
12294
12350
|
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, enableEventReport: false }),
|
|
12295
12351
|
React.createElement("div", { style: {
|
|
12296
|
-
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.
|
|
12352
|
+
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.marginInlineEnd) !== null && _f !== void 0 ? _f : 0}px)`,
|
|
12297
12353
|
display: 'flex',
|
|
12298
12354
|
flexDirection: 'column',
|
|
12299
12355
|
justifyContent: 'space-between'
|
|
@@ -12374,7 +12430,7 @@ Made in Italy` })));
|
|
|
12374
12430
|
commodityPicture: {
|
|
12375
12431
|
width: 100,
|
|
12376
12432
|
height: 100,
|
|
12377
|
-
|
|
12433
|
+
marginInlineEnd: 10
|
|
12378
12434
|
},
|
|
12379
12435
|
commodityStyles: {
|
|
12380
12436
|
price: {
|
|
@@ -12620,7 +12676,7 @@ Made in Italy` })));
|
|
|
12620
12676
|
type: 'Number',
|
|
12621
12677
|
label: '与右侧边距',
|
|
12622
12678
|
addonAfter: 'px',
|
|
12623
|
-
name: ['props', 'ctaTempStyles', 'img', '
|
|
12679
|
+
name: ['props', 'ctaTempStyles', 'img', 'marginInlineEnd']
|
|
12624
12680
|
},
|
|
12625
12681
|
{
|
|
12626
12682
|
label: '居中垂直偏移',
|
|
@@ -12881,12 +12937,11 @@ Made in Italy` })));
|
|
|
12881
12937
|
borderRadius: 3,
|
|
12882
12938
|
width: 60,
|
|
12883
12939
|
height: 60,
|
|
12884
|
-
|
|
12940
|
+
marginInlineEnd: 8
|
|
12885
12941
|
},
|
|
12886
12942
|
title: {
|
|
12887
12943
|
fontSize: 12,
|
|
12888
|
-
color: '#fff'
|
|
12889
|
-
textAlign: 'left'
|
|
12944
|
+
color: '#fff'
|
|
12890
12945
|
},
|
|
12891
12946
|
ctaTitle: {
|
|
12892
12947
|
fontSize: 10,
|
|
@@ -12964,12 +13019,11 @@ Made in Italy` })));
|
|
|
12964
13019
|
borderRadius: 3,
|
|
12965
13020
|
width: 30,
|
|
12966
13021
|
height: 30,
|
|
12967
|
-
|
|
13022
|
+
marginInlineEnd: 8
|
|
12968
13023
|
},
|
|
12969
13024
|
ctaTitle: {
|
|
12970
13025
|
fontSize: 12,
|
|
12971
13026
|
color: '#fff',
|
|
12972
|
-
textAlign: 'left',
|
|
12973
13027
|
width: 130,
|
|
12974
13028
|
height: 20
|
|
12975
13029
|
}
|
|
@@ -13105,6 +13159,27 @@ Made in Italy` })));
|
|
|
13105
13159
|
}
|
|
13106
13160
|
];
|
|
13107
13161
|
|
|
13162
|
+
/*
|
|
13163
|
+
* @Author: binruan@chatlabs.com
|
|
13164
|
+
* @Date: 2024-08-09 16:59:38
|
|
13165
|
+
* @LastEditors: binruan@chatlabs.com
|
|
13166
|
+
* @LastEditTime: 2024-09-09 13:59:50
|
|
13167
|
+
* @FilePath: \pb-sxp-ui\src\materials\sxp\template\Link\interactionRender.tsx
|
|
13168
|
+
*
|
|
13169
|
+
*/
|
|
13170
|
+
var interactionRender$a = [
|
|
13171
|
+
{
|
|
13172
|
+
title: '点击事件',
|
|
13173
|
+
child: [
|
|
13174
|
+
{
|
|
13175
|
+
type: 'link',
|
|
13176
|
+
name: 'onClick',
|
|
13177
|
+
hiddenUrl: true
|
|
13178
|
+
}
|
|
13179
|
+
]
|
|
13180
|
+
}
|
|
13181
|
+
];
|
|
13182
|
+
|
|
13108
13183
|
var styles$8 = {"tow-line-ellipsis":"index-module_tow-line-ellipsis__nkBlU","one-line-ellipsis":"index-module_one-line-ellipsis__buFw1"};
|
|
13109
13184
|
|
|
13110
13185
|
const Link$1 = (_a) => {
|
|
@@ -13132,27 +13207,6 @@ Made in Italy` })));
|
|
|
13132
13207
|
};
|
|
13133
13208
|
var LinkComponent = React.memo(Link$1);
|
|
13134
13209
|
|
|
13135
|
-
/*
|
|
13136
|
-
* @Author: binruan@chatlabs.com
|
|
13137
|
-
* @Date: 2024-08-09 16:59:38
|
|
13138
|
-
* @LastEditors: binruan@chatlabs.com
|
|
13139
|
-
* @LastEditTime: 2024-09-09 13:59:50
|
|
13140
|
-
* @FilePath: \pb-sxp-ui\src\materials\sxp\template\Link\interactionRender.tsx
|
|
13141
|
-
*
|
|
13142
|
-
*/
|
|
13143
|
-
var interactionRender$a = [
|
|
13144
|
-
{
|
|
13145
|
-
title: '点击事件',
|
|
13146
|
-
child: [
|
|
13147
|
-
{
|
|
13148
|
-
type: 'link',
|
|
13149
|
-
name: 'onClick',
|
|
13150
|
-
hiddenUrl: true
|
|
13151
|
-
}
|
|
13152
|
-
]
|
|
13153
|
-
}
|
|
13154
|
-
];
|
|
13155
|
-
|
|
13156
13210
|
var _a;
|
|
13157
13211
|
const Link = createMaterial(LinkComponent, {
|
|
13158
13212
|
displayName: '普通CTA',
|
|
@@ -13171,19 +13225,17 @@ Made in Italy` })));
|
|
|
13171
13225
|
borderRadius: 3,
|
|
13172
13226
|
width: 60,
|
|
13173
13227
|
height: 60,
|
|
13174
|
-
|
|
13228
|
+
marginInlineEnd: 8
|
|
13175
13229
|
},
|
|
13176
13230
|
ctaTitle: {
|
|
13177
13231
|
fontSize: 12,
|
|
13178
13232
|
color: '#fff',
|
|
13179
|
-
textAlign: 'left',
|
|
13180
13233
|
width: 130,
|
|
13181
13234
|
height: 20
|
|
13182
13235
|
}
|
|
13183
13236
|
},
|
|
13184
13237
|
customTitle: {
|
|
13185
13238
|
style: {
|
|
13186
|
-
textAlign: 'left',
|
|
13187
13239
|
textDecoration: 'underline',
|
|
13188
13240
|
fontWeight: 'bold',
|
|
13189
13241
|
width: 130,
|
|
@@ -13273,12 +13325,11 @@ Made in Italy` })));
|
|
|
13273
13325
|
borderRadius: 3,
|
|
13274
13326
|
width: 60,
|
|
13275
13327
|
height: 60,
|
|
13276
|
-
|
|
13328
|
+
marginInlineEnd: 8
|
|
13277
13329
|
},
|
|
13278
13330
|
title: {
|
|
13279
13331
|
fontSize: 12,
|
|
13280
|
-
color: '#000'
|
|
13281
|
-
textAlign: 'left'
|
|
13332
|
+
color: '#000'
|
|
13282
13333
|
},
|
|
13283
13334
|
ctaTitle: {
|
|
13284
13335
|
fontSize: 10,
|
|
@@ -13369,19 +13420,17 @@ Made in Italy` })));
|
|
|
13369
13420
|
borderRadius: 8,
|
|
13370
13421
|
width: 78,
|
|
13371
13422
|
height: 78,
|
|
13372
|
-
|
|
13423
|
+
marginInlineEnd: 16
|
|
13373
13424
|
},
|
|
13374
13425
|
title: {
|
|
13375
13426
|
fontSize: 13,
|
|
13376
|
-
color: '#000'
|
|
13377
|
-
textAlign: 'left'
|
|
13427
|
+
color: '#000'
|
|
13378
13428
|
},
|
|
13379
13429
|
ctaTitle: {
|
|
13380
13430
|
textDecoration: 'underline',
|
|
13381
13431
|
fontSize: 14,
|
|
13382
13432
|
fontWeight: 'bold',
|
|
13383
13433
|
color: '#000',
|
|
13384
|
-
textAlign: 'left',
|
|
13385
13434
|
width: 150,
|
|
13386
13435
|
height: 20
|
|
13387
13436
|
}
|
|
@@ -13423,7 +13472,7 @@ Made in Italy` })));
|
|
|
13423
13472
|
const [products] = React.useState((_c = (_b = recData === null || recData === void 0 ? void 0 : recData.video) === null || _b === void 0 ? void 0 : _b.bindProducts) !== null && _c !== void 0 ? _c : [1, 2]);
|
|
13424
13473
|
return (React.createElement(Scroll$1, { isPadding: !!recData }, products === null || products === void 0 ? void 0 : products.map((item, itemIndex) => {
|
|
13425
13474
|
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
|
|
13426
|
-
return (React.createElement(React.Fragment, null, recData && !(item === null || item === void 0 ? void 0 : item.bindCta) ? null : (React.createElement(SwiperSlide, { key: itemIndex, className: css.css(Object.assign(Object.assign({}, style), { flexShrink: 0,
|
|
13475
|
+
return (React.createElement(React.Fragment, null, recData && !(item === null || item === void 0 ? void 0 : item.bindCta) ? null : (React.createElement(SwiperSlide, { key: itemIndex, className: css.css(Object.assign(Object.assign({}, style), { flexShrink: 0, marginInlineStart: 0, marginInlineEnd: '8px' })), tag: 'li', role: 'listitem' },
|
|
13427
13476
|
React.createElement(EventProvider$1, Object.assign({ rec: recData, multItem: item, multiCheckIndex: itemIndex, index: index }, props),
|
|
13428
13477
|
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: ctaTempStyles === null || ctaTempStyles === void 0 ? void 0 : ctaTempStyles.img, isActive: isActive }),
|
|
13429
13478
|
React.createElement("div", { className: css.css({
|
|
@@ -13469,12 +13518,11 @@ Made in Italy` })));
|
|
|
13469
13518
|
borderRadius: 3,
|
|
13470
13519
|
width: 60,
|
|
13471
13520
|
height: 60,
|
|
13472
|
-
|
|
13521
|
+
marginInlineEnd: 8
|
|
13473
13522
|
},
|
|
13474
13523
|
title: {
|
|
13475
13524
|
fontSize: 12,
|
|
13476
|
-
color: '#000'
|
|
13477
|
-
textAlign: 'left'
|
|
13525
|
+
color: '#000'
|
|
13478
13526
|
},
|
|
13479
13527
|
ctaTitle: {
|
|
13480
13528
|
fontSize: 10,
|
|
@@ -13522,7 +13570,7 @@ Made in Italy` })));
|
|
|
13522
13570
|
const [products] = React.useState((_c = (_b = recData === null || recData === void 0 ? void 0 : recData.video) === null || _b === void 0 ? void 0 : _b.bindProducts) !== null && _c !== void 0 ? _c : [1, 2]);
|
|
13523
13571
|
return (React.createElement(Scroll$1, { isPadding: !!recData }, products === null || products === void 0 ? void 0 : products.map((item, itemIndex) => {
|
|
13524
13572
|
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
|
|
13525
|
-
return (React.createElement(React.Fragment, null, recData && !(item === null || item === void 0 ? void 0 : item.bindCta) ? null : (React.createElement(SwiperSlide, { key: itemIndex, className: css.css(Object.assign(Object.assign({}, style), { flexShrink: 0,
|
|
13573
|
+
return (React.createElement(React.Fragment, null, recData && !(item === null || item === void 0 ? void 0 : item.bindCta) ? null : (React.createElement(SwiperSlide, { key: itemIndex, className: css.css(Object.assign(Object.assign({}, style), { flexShrink: 0, marginInlineStart: 0, marginInlineEnd: '8px' })), tag: 'li', role: 'listitem' },
|
|
13526
13574
|
React.createElement(EventProvider$1, Object.assign({ rec: recData, multItem: item, multiCheckIndex: itemIndex, index: index }, props),
|
|
13527
13575
|
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: ctaTempStyles === null || ctaTempStyles === void 0 ? void 0 : ctaTempStyles.img, isActive: isActive }),
|
|
13528
13576
|
React.createElement("div", { className: css.css({
|
|
@@ -13568,12 +13616,11 @@ Made in Italy` })));
|
|
|
13568
13616
|
borderRadius: 3,
|
|
13569
13617
|
width: 60,
|
|
13570
13618
|
height: 60,
|
|
13571
|
-
|
|
13619
|
+
marginInlineEnd: 8
|
|
13572
13620
|
},
|
|
13573
13621
|
title: {
|
|
13574
13622
|
fontSize: 12,
|
|
13575
13623
|
color: '#fff',
|
|
13576
|
-
textAlign: 'left'
|
|
13577
13624
|
},
|
|
13578
13625
|
ctaTitle: {
|
|
13579
13626
|
fontSize: 10,
|
|
@@ -13629,7 +13676,7 @@ Made in Italy` })));
|
|
|
13629
13676
|
const [products] = React.useState((_c = (_b = recData === null || recData === void 0 ? void 0 : recData.video) === null || _b === void 0 ? void 0 : _b.bindProducts) !== null && _c !== void 0 ? _c : [1, 2]);
|
|
13630
13677
|
return (React.createElement(Scroll$1, { isPadding: !!recData }, products === null || products === void 0 ? void 0 : products.map((item, itemIndex) => {
|
|
13631
13678
|
var _a, _b, _c, _d, _e, _f, _g, _h, _j;
|
|
13632
|
-
return (React.createElement(React.Fragment, null, recData && !(item === null || item === void 0 ? void 0 : item.bindCta) ? null : (React.createElement(SwiperSlide, { key: itemIndex, className: css.css(Object.assign(Object.assign({}, style), { flexShrink: 0,
|
|
13679
|
+
return (React.createElement(React.Fragment, null, recData && !(item === null || item === void 0 ? void 0 : item.bindCta) ? null : (React.createElement(SwiperSlide, { key: itemIndex, className: css.css(Object.assign(Object.assign({}, style), { flexShrink: 0, marginInlineStart: 0, marginInlineEnd: '8px' })), tag: 'li', role: 'listitem' },
|
|
13633
13680
|
React.createElement(EventProvider$1, Object.assign({ rec: recData, multItem: item, multiCheckIndex: itemIndex, index: index }, props),
|
|
13634
13681
|
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: ctaTempStyles === null || ctaTempStyles === void 0 ? void 0 : ctaTempStyles.img, isActive: isActive }),
|
|
13635
13682
|
React.createElement("div", { className: css.css({
|
|
@@ -13676,19 +13723,17 @@ Made in Italy` })));
|
|
|
13676
13723
|
borderRadius: 8,
|
|
13677
13724
|
width: 78,
|
|
13678
13725
|
height: 78,
|
|
13679
|
-
|
|
13726
|
+
marginInlineEnd: 16
|
|
13680
13727
|
},
|
|
13681
13728
|
title: {
|
|
13682
13729
|
fontSize: 12,
|
|
13683
|
-
color: '#000'
|
|
13684
|
-
textAlign: 'left'
|
|
13730
|
+
color: '#000'
|
|
13685
13731
|
},
|
|
13686
13732
|
ctaTitle: {
|
|
13687
13733
|
textDecoration: 'underline',
|
|
13688
13734
|
fontSize: 12,
|
|
13689
13735
|
fontWeight: 'bold',
|
|
13690
13736
|
color: '#000',
|
|
13691
|
-
textAlign: 'left',
|
|
13692
13737
|
width: 150,
|
|
13693
13738
|
height: 20
|
|
13694
13739
|
}
|
|
@@ -13783,12 +13828,11 @@ Made in Italy` })));
|
|
|
13783
13828
|
borderRadius: 3,
|
|
13784
13829
|
width: 60,
|
|
13785
13830
|
height: 60,
|
|
13786
|
-
|
|
13831
|
+
marginInlineEnd: 8
|
|
13787
13832
|
},
|
|
13788
13833
|
title: {
|
|
13789
13834
|
fontSize: 12,
|
|
13790
|
-
color: '#fff'
|
|
13791
|
-
textAlign: 'left'
|
|
13835
|
+
color: '#fff'
|
|
13792
13836
|
},
|
|
13793
13837
|
ctaTitle: {
|
|
13794
13838
|
fontSize: 10,
|
|
@@ -15877,7 +15921,7 @@ Made in Italy` })));
|
|
|
15877
15921
|
* @Author: binruan@chatlabs.com
|
|
15878
15922
|
* @Date: 2024-01-10 10:58:24
|
|
15879
15923
|
* @LastEditors: binruan@chatlabs.com
|
|
15880
|
-
* @LastEditTime: 2025-
|
|
15924
|
+
* @LastEditTime: 2025-02-28 10:00:31
|
|
15881
15925
|
* @FilePath: \pb-sxp-ui\src\core\components\SxpPageRender\WaterFall\index.tsx
|
|
15882
15926
|
*
|
|
15883
15927
|
*/
|
|
@@ -15915,7 +15959,7 @@ Made in Italy` })));
|
|
|
15915
15959
|
}
|
|
15916
15960
|
}, [waterFallData]);
|
|
15917
15961
|
const reportTagsView = React.useCallback(() => {
|
|
15918
|
-
var _a, _b, _c, _d, _e, _f
|
|
15962
|
+
var _a, _b, _c, _d, _e, _f;
|
|
15919
15963
|
const rec = recData === null || recData === void 0 ? void 0 : recData.rec;
|
|
15920
15964
|
if (!rec)
|
|
15921
15965
|
return;
|
|
@@ -15935,10 +15979,9 @@ Made in Italy` })));
|
|
|
15935
15979
|
bffEventReport === null || bffEventReport === void 0 ? void 0 : bffEventReport({
|
|
15936
15980
|
eventInfo: {
|
|
15937
15981
|
contentId: (_d = rec === null || rec === void 0 ? void 0 : rec.video) === null || _d === void 0 ? void 0 : _d.itemId,
|
|
15938
|
-
sceneId: (_g = (_f = (_e = rec === null || rec === void 0 ? void 0 : rec.video) === null || _e === void 0 ? void 0 : _e.scene) === null || _f === void 0 ? void 0 : _f.sceneId) !== null && _g !== void 0 ? _g : '',
|
|
15939
15982
|
position: cacheActiveIndex + '',
|
|
15940
|
-
contentTags: JSON.stringify((
|
|
15941
|
-
traceInfo: (
|
|
15983
|
+
contentTags: JSON.stringify((_e = rec === null || rec === void 0 ? void 0 : rec.video) === null || _e === void 0 ? void 0 : _e.tags),
|
|
15984
|
+
traceInfo: (_f = rec === null || rec === void 0 ? void 0 : rec.video) === null || _f === void 0 ? void 0 : _f.traceInfo,
|
|
15942
15985
|
hashTags: JSON.stringify([recData === null || recData === void 0 ? void 0 : recData.hashTag]),
|
|
15943
15986
|
fromKName,
|
|
15944
15987
|
fromKPage: location === null || location === void 0 ? void 0 : location.href,
|
|
@@ -16709,6 +16752,60 @@ Made in Italy` })));
|
|
|
16709
16752
|
}
|
|
16710
16753
|
];
|
|
16711
16754
|
|
|
16755
|
+
/*
|
|
16756
|
+
* @Author: binruan@chatlabs.com
|
|
16757
|
+
* @Date: 2024-07-24 14:58:40
|
|
16758
|
+
* @LastEditors: binruan@chatlabs.com
|
|
16759
|
+
* @LastEditTime: 2024-09-09 13:54:35
|
|
16760
|
+
* @FilePath: \pb-sxp-ui\src\materials\sxp\cta\AniLinkPopup\interactionRender.tsx
|
|
16761
|
+
*
|
|
16762
|
+
*/
|
|
16763
|
+
var interactionRender$2 = [
|
|
16764
|
+
{
|
|
16765
|
+
title: '点击事件',
|
|
16766
|
+
child: [
|
|
16767
|
+
{
|
|
16768
|
+
type: 'link',
|
|
16769
|
+
name: 'onClick',
|
|
16770
|
+
hiddenUrl: true
|
|
16771
|
+
}
|
|
16772
|
+
]
|
|
16773
|
+
},
|
|
16774
|
+
{
|
|
16775
|
+
title: '动画效果',
|
|
16776
|
+
child: [
|
|
16777
|
+
{
|
|
16778
|
+
type: 'Select',
|
|
16779
|
+
name: ['animation', 'name'],
|
|
16780
|
+
label: '动画',
|
|
16781
|
+
options: [
|
|
16782
|
+
{
|
|
16783
|
+
label: '默认',
|
|
16784
|
+
value: 1
|
|
16785
|
+
}
|
|
16786
|
+
],
|
|
16787
|
+
fieldProps: {
|
|
16788
|
+
style: {
|
|
16789
|
+
width: '100%'
|
|
16790
|
+
}
|
|
16791
|
+
}
|
|
16792
|
+
},
|
|
16793
|
+
{
|
|
16794
|
+
type: 'Number',
|
|
16795
|
+
label: '动画启动时间',
|
|
16796
|
+
name: ['animation', 'delay'],
|
|
16797
|
+
addonAfter: 'ms'
|
|
16798
|
+
},
|
|
16799
|
+
{
|
|
16800
|
+
type: 'Number',
|
|
16801
|
+
label: '动画持续时间',
|
|
16802
|
+
name: ['animation', 'duration'],
|
|
16803
|
+
addonAfter: 'ms'
|
|
16804
|
+
}
|
|
16805
|
+
]
|
|
16806
|
+
}
|
|
16807
|
+
];
|
|
16808
|
+
|
|
16712
16809
|
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"};
|
|
16713
16810
|
|
|
16714
16811
|
const closeIcon = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAjhJREFUWEfFlztOw0AQhmeWiJ4CCmpQ5DiRQsIJyAWg5A0lR0AIChDiCJS8ER0cADgBeRSxt4CCDgkaKiq8i+zYeWx2413HEWmiJJv9v535Z2aN8M8vFPT9z3zETD0aAUChUJjwvPFHAJhBhB3Hqd6OAsK2yyucwykAvP38eJX398Z3AJDLlVYR8ToU9Rhj25TWr9KEsKy5dULIGQCMtfZly45TvwsAstm56UwG6wA4FUFwzrdctxZBDcWSy5XWEPG8I84/GcMipdWPtgcsaz5PCHtKG0IuTiqUvjT9U/WYMG2IOPE+AP+LtCB0xKUAAyA2Xbd2o2OG0NQXvTnvhL17D7EPtH9TRCIWwkRcGYGIQgYBABuqPuHXOQBc6pw80lBGwBQiiXhsBHQhkoprA6iM6acjhDQKu5YJZW6XeOI3XJdpvfsdTu52VfXEekD8owQiXGIubpSCbhDbLu8DwKEAd+A41SOdPpE4BS0viFOtvV2iKWqUgn5x/tmS70xR01GuDSCKc86/OCcLgTyyZ0ScDGNhFAktAJV4NFJ9YyaFiAWIE+9uVkkgBgLoig8DMWAa9ro9ynkUdlW5maZDCmB6clmz0k1HH4Cs1Ezbq2p2yEpUuBOKTSZZex00RUWIrltxuuK6EOGDSbGIOPZicpMx6fny650377qNRgBgWeVFQuA+6UjVgREhGIMlSqsPUQqIbZdOOIdZQmCv2axRnU1N1+TzJYsxOEaEV8ep7frPZ7Gd0FTEdP0ft0/kMNdg0eoAAAAASUVORK5CYII=';
|
|
@@ -16781,60 +16878,6 @@ Made in Italy` })));
|
|
|
16781
16878
|
};
|
|
16782
16879
|
var AniLinkPopupComponent = React.memo(AniLinkPopup$1);
|
|
16783
16880
|
|
|
16784
|
-
/*
|
|
16785
|
-
* @Author: binruan@chatlabs.com
|
|
16786
|
-
* @Date: 2024-07-24 14:58:40
|
|
16787
|
-
* @LastEditors: binruan@chatlabs.com
|
|
16788
|
-
* @LastEditTime: 2024-09-09 13:54:35
|
|
16789
|
-
* @FilePath: \pb-sxp-ui\src\materials\sxp\cta\AniLinkPopup\interactionRender.tsx
|
|
16790
|
-
*
|
|
16791
|
-
*/
|
|
16792
|
-
var interactionRender$2 = [
|
|
16793
|
-
{
|
|
16794
|
-
title: '点击事件',
|
|
16795
|
-
child: [
|
|
16796
|
-
{
|
|
16797
|
-
type: 'link',
|
|
16798
|
-
name: 'onClick',
|
|
16799
|
-
hiddenUrl: true
|
|
16800
|
-
}
|
|
16801
|
-
]
|
|
16802
|
-
},
|
|
16803
|
-
{
|
|
16804
|
-
title: '动画效果',
|
|
16805
|
-
child: [
|
|
16806
|
-
{
|
|
16807
|
-
type: 'Select',
|
|
16808
|
-
name: ['animation', 'name'],
|
|
16809
|
-
label: '动画',
|
|
16810
|
-
options: [
|
|
16811
|
-
{
|
|
16812
|
-
label: '默认',
|
|
16813
|
-
value: 1
|
|
16814
|
-
}
|
|
16815
|
-
],
|
|
16816
|
-
fieldProps: {
|
|
16817
|
-
style: {
|
|
16818
|
-
width: '100%'
|
|
16819
|
-
}
|
|
16820
|
-
}
|
|
16821
|
-
},
|
|
16822
|
-
{
|
|
16823
|
-
type: 'Number',
|
|
16824
|
-
label: '动画启动时间',
|
|
16825
|
-
name: ['animation', 'delay'],
|
|
16826
|
-
addonAfter: 'ms'
|
|
16827
|
-
},
|
|
16828
|
-
{
|
|
16829
|
-
type: 'Number',
|
|
16830
|
-
label: '动画持续时间',
|
|
16831
|
-
name: ['animation', 'duration'],
|
|
16832
|
-
addonAfter: 'ms'
|
|
16833
|
-
}
|
|
16834
|
-
]
|
|
16835
|
-
}
|
|
16836
|
-
];
|
|
16837
|
-
|
|
16838
16881
|
/*
|
|
16839
16882
|
* @Author: binruan@chatlabs.com
|
|
16840
16883
|
* @Date: 2024-07-24 14:58:40
|
|
@@ -16873,7 +16916,6 @@ Made in Italy` })));
|
|
|
16873
16916
|
title: {
|
|
16874
16917
|
fontSize: 14,
|
|
16875
16918
|
color: '#000',
|
|
16876
|
-
textAlign: 'left',
|
|
16877
16919
|
lineHeight: 2.6
|
|
16878
16920
|
},
|
|
16879
16921
|
ctaTitle: {
|
|
@@ -17102,7 +17144,7 @@ Made in Italy` })));
|
|
|
17102
17144
|
React.createElement("span", { style: content === null || content === void 0 ? void 0 : content.style, dangerouslySetInnerHTML: {
|
|
17103
17145
|
__html: setFontForText((_b = content === null || content === void 0 ? void 0 : content.text) === null || _b === void 0 ? void 0 : _b.replace(/\n/g, '</br>'), content === null || content === void 0 ? void 0 : content.style)
|
|
17104
17146
|
} }),
|
|
17105
|
-
React.createElement("span", { style: Object.assign(Object.assign({}, interaction === null || interaction === void 0 ? void 0 : interaction.style), {
|
|
17147
|
+
React.createElement("span", { style: Object.assign(Object.assign({}, interaction === null || interaction === void 0 ? void 0 : interaction.style), { marginInlineStart: '5px' }), dangerouslySetInnerHTML: {
|
|
17106
17148
|
__html: setFontForText((_c = interaction === null || interaction === void 0 ? void 0 : interaction.text) === null || _c === void 0 ? void 0 : _c.replace(/\n/g, '</br>'), interaction === null || interaction === void 0 ? void 0 : interaction.style)
|
|
17107
17149
|
}, onClick: handleClick })),
|
|
17108
17150
|
isShowClose && (React.createElement("button", { "aria-label": 'close', className: 'consentPopupDisplay-close', onClick: handleClickClose },
|
|
@@ -18020,22 +18062,21 @@ Made in Italy` })));
|
|
|
18020
18062
|
const likeIcon = useIconLink(defaultLikeIconPath$2);
|
|
18021
18063
|
const unlikeIcon = useIconLink(defaultUnLikeIconPath$2);
|
|
18022
18064
|
const handleClick = lodash.debounce(() => __awaiter(void 0, void 0, void 0, function* () {
|
|
18023
|
-
var _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z
|
|
18065
|
+
var _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z;
|
|
18024
18066
|
if (state) {
|
|
18025
18067
|
// 先设置状态
|
|
18026
18068
|
setState(false);
|
|
18027
|
-
const result = (_e = (yield (mutateUnlike === null || mutateUnlike === void 0 ? void 0 : mutateUnlike({
|
|
18069
|
+
const result = (_e = (yield (mutateUnlike === null || mutateUnlike === void 0 ? void 0 : mutateUnlike({ videoItemId: (_d = (_c = recData === null || recData === void 0 ? void 0 : recData.video) === null || _c === void 0 ? void 0 : _c.itemId) !== null && _d !== void 0 ? _d : '' })))) !== null && _e !== void 0 ? _e : false;
|
|
18028
18070
|
bffEventReport === null || bffEventReport === void 0 ? void 0 : bffEventReport({
|
|
18029
18071
|
eventInfo: {
|
|
18030
18072
|
eventSubject: 'favoriteContentCanceled',
|
|
18031
18073
|
eventDescription: 'This content was unfavorite by the user',
|
|
18032
18074
|
contentId: (_g = (_f = recData === null || recData === void 0 ? void 0 : recData.video) === null || _f === void 0 ? void 0 : _f.itemId) !== null && _g !== void 0 ? _g : '',
|
|
18033
|
-
|
|
18034
|
-
|
|
18035
|
-
contentTags: JSON.stringify((_p = (_o = recData === null || recData === void 0 ? void 0 : recData.video) === null || _o === void 0 ? void 0 : _o.tags) !== null && _p !== void 0 ? _p : []),
|
|
18075
|
+
contentName: (_j = (_h = recData === null || recData === void 0 ? void 0 : recData.video) === null || _h === void 0 ? void 0 : _h.title) !== null && _j !== void 0 ? _j : '',
|
|
18076
|
+
contentTags: JSON.stringify((_l = (_k = recData === null || recData === void 0 ? void 0 : recData.video) === null || _k === void 0 ? void 0 : _k.tags) !== null && _l !== void 0 ? _l : []),
|
|
18036
18077
|
position: position + '',
|
|
18037
|
-
contentFormat: ((
|
|
18038
|
-
traceInfo: (
|
|
18078
|
+
contentFormat: ((_m = recData === null || recData === void 0 ? void 0 : recData.video) === null || _m === void 0 ? void 0 : _m.url) ? 'video' : 'image',
|
|
18079
|
+
traceInfo: (_o = recData === null || recData === void 0 ? void 0 : recData.video) === null || _o === void 0 ? void 0 : _o.traceInfo
|
|
18039
18080
|
}
|
|
18040
18081
|
});
|
|
18041
18082
|
// 如果接口调用失败,则回滚状态
|
|
@@ -18043,41 +18084,40 @@ Made in Italy` })));
|
|
|
18043
18084
|
setState(true);
|
|
18044
18085
|
}
|
|
18045
18086
|
else {
|
|
18046
|
-
const nRtcList = (
|
|
18087
|
+
const nRtcList = (_p = cacheRtcList === null || cacheRtcList === void 0 ? void 0 : cacheRtcList.map((item, index) => {
|
|
18047
18088
|
if (index === position) {
|
|
18048
18089
|
item.isCollected = false;
|
|
18049
18090
|
}
|
|
18050
18091
|
return item;
|
|
18051
|
-
})) !== null &&
|
|
18092
|
+
})) !== null && _p !== void 0 ? _p : [];
|
|
18052
18093
|
setCacheRtcList === null || setCacheRtcList === void 0 ? void 0 : setCacheRtcList(nRtcList);
|
|
18053
18094
|
}
|
|
18054
18095
|
}
|
|
18055
18096
|
else {
|
|
18056
18097
|
setState(true);
|
|
18057
|
-
const result = (
|
|
18098
|
+
const result = (_q = (yield (mutateLike === null || mutateLike === void 0 ? void 0 : mutateLike({ content: JSON.stringify(recData) })))) !== null && _q !== void 0 ? _q : false;
|
|
18058
18099
|
bffEventReport === null || bffEventReport === void 0 ? void 0 : bffEventReport({
|
|
18059
18100
|
eventInfo: {
|
|
18060
18101
|
eventSubject: 'favoriteContent',
|
|
18061
18102
|
eventDescription: 'This content was favorite by the user',
|
|
18062
|
-
contentId: (
|
|
18063
|
-
|
|
18064
|
-
|
|
18065
|
-
contentTags: JSON.stringify((_4 = (_3 = recData === null || recData === void 0 ? void 0 : recData.video) === null || _3 === void 0 ? void 0 : _3.tags) !== null && _4 !== void 0 ? _4 : []),
|
|
18103
|
+
contentId: (_s = (_r = recData === null || recData === void 0 ? void 0 : recData.video) === null || _r === void 0 ? void 0 : _r.itemId) !== null && _s !== void 0 ? _s : '',
|
|
18104
|
+
contentName: (_u = (_t = recData === null || recData === void 0 ? void 0 : recData.video) === null || _t === void 0 ? void 0 : _t.title) !== null && _u !== void 0 ? _u : '',
|
|
18105
|
+
contentTags: JSON.stringify((_w = (_v = recData === null || recData === void 0 ? void 0 : recData.video) === null || _v === void 0 ? void 0 : _v.tags) !== null && _w !== void 0 ? _w : []),
|
|
18066
18106
|
position: position + '',
|
|
18067
|
-
contentFormat: ((
|
|
18068
|
-
traceInfo: (
|
|
18107
|
+
contentFormat: ((_x = recData === null || recData === void 0 ? void 0 : recData.video) === null || _x === void 0 ? void 0 : _x.url) ? 'video' : 'image',
|
|
18108
|
+
traceInfo: (_y = recData === null || recData === void 0 ? void 0 : recData.video) === null || _y === void 0 ? void 0 : _y.traceInfo
|
|
18069
18109
|
}
|
|
18070
18110
|
});
|
|
18071
18111
|
if (!result) {
|
|
18072
18112
|
setState(false);
|
|
18073
18113
|
}
|
|
18074
18114
|
else {
|
|
18075
|
-
const nRtcList = (
|
|
18115
|
+
const nRtcList = (_z = cacheRtcList === null || cacheRtcList === void 0 ? void 0 : cacheRtcList.map((item, index) => {
|
|
18076
18116
|
if (index === position) {
|
|
18077
18117
|
item.isCollected = true;
|
|
18078
18118
|
}
|
|
18079
18119
|
return item;
|
|
18080
|
-
})) !== null &&
|
|
18120
|
+
})) !== null && _z !== void 0 ? _z : [];
|
|
18081
18121
|
setCacheRtcList === null || setCacheRtcList === void 0 ? void 0 : setCacheRtcList(nRtcList);
|
|
18082
18122
|
}
|
|
18083
18123
|
}
|
|
@@ -18114,7 +18154,7 @@ Made in Italy` })));
|
|
|
18114
18154
|
const VideoWidget$4 = React.forwardRef(({ rec, index, height, data, muted, activeIndex, videoPostConfig, videoPlayIcon, loopPlay, swiperRef }, ref) => {
|
|
18115
18155
|
var _a, _b;
|
|
18116
18156
|
const [isPauseVideo, setIsPauseVideo] = React.useState(false);
|
|
18117
|
-
const { bffEventReport, sxpParameter,
|
|
18157
|
+
const { bffEventReport, sxpParameter, waterFallData, openHashtag, bffFbReport, isDiyH5 } = useSxpDataSource();
|
|
18118
18158
|
const videoStartTime = React.useRef(0);
|
|
18119
18159
|
const [isLoadFinish, setIsLoadFinish] = React.useState(false);
|
|
18120
18160
|
const { isActive } = useSwiperSlide();
|
|
@@ -18180,23 +18220,6 @@ Made in Italy` })));
|
|
|
18180
18220
|
return;
|
|
18181
18221
|
(_a = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _a === void 0 ? void 0 : _a.play();
|
|
18182
18222
|
}, [videoRef === null || videoRef === void 0 ? void 0 : videoRef.current]);
|
|
18183
|
-
const handleEnd = () => {
|
|
18184
|
-
var _a, _b, _c, _d, _e, _f;
|
|
18185
|
-
if (!videoRef.current)
|
|
18186
|
-
return;
|
|
18187
|
-
if (isDiyH5) {
|
|
18188
|
-
(_a = videoRef.current) === null || _a === void 0 ? void 0 : _a.pause();
|
|
18189
|
-
if (!loopPlayRef.current)
|
|
18190
|
-
return;
|
|
18191
|
-
if (firstRtcList && index < (firstRtcList === null || firstRtcList === void 0 ? void 0 : firstRtcList.length) - 1) {
|
|
18192
|
-
const i = (_c = (_b = swiperRef === null || swiperRef === void 0 ? void 0 : swiperRef.current) === null || _b === void 0 ? void 0 : _b.swiper) === null || _c === void 0 ? void 0 : _c.activeIndex;
|
|
18193
|
-
(_e = (_d = swiperRef === null || swiperRef === void 0 ? void 0 : swiperRef.current) === null || _d === void 0 ? void 0 : _d.swiper) === null || _e === void 0 ? void 0 : _e.slideTo(i + 1);
|
|
18194
|
-
}
|
|
18195
|
-
}
|
|
18196
|
-
else {
|
|
18197
|
-
(_f = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _f === void 0 ? void 0 : _f.play();
|
|
18198
|
-
}
|
|
18199
|
-
};
|
|
18200
18223
|
const PAUSE_ICON = useIconLink('/pb_static/06f28a2025c74c1cb49be6767316d827.png');
|
|
18201
18224
|
const handlePlaying = React.useCallback(() => {
|
|
18202
18225
|
if (!(videoRef === null || videoRef === void 0 ? void 0 : videoRef.current))
|
|
@@ -18205,7 +18228,7 @@ Made in Italy` })));
|
|
|
18205
18228
|
setIsLoadFinish(true);
|
|
18206
18229
|
}, []);
|
|
18207
18230
|
const handleStartPlay = React.useCallback(() => __awaiter(void 0, void 0, void 0, function* () {
|
|
18208
|
-
var _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q
|
|
18231
|
+
var _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q;
|
|
18209
18232
|
if (!(videoRef === null || videoRef === void 0 ? void 0 : videoRef.current))
|
|
18210
18233
|
return;
|
|
18211
18234
|
setIsPauseVideo(false);
|
|
@@ -18216,11 +18239,16 @@ Made in Italy` })));
|
|
|
18216
18239
|
const videoCurrentTime = ((_h = (_g = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _g === void 0 ? void 0 : _g.currentTime) !== null && _h !== void 0 ? _h : 0).toFixed(2);
|
|
18217
18240
|
const playType = (isFirstPlayRef === null || isFirstPlayRef === void 0 ? void 0 : isFirstPlayRef.current) ? '0' : '1';
|
|
18218
18241
|
bffEventReport === null || bffEventReport === void 0 ? void 0 : bffEventReport({
|
|
18219
|
-
eventInfo: Object.assign({ eventSubject: 'playVideo', eventDescription: 'User played the video', contentId: (_k = (_j = item === null || item === void 0 ? void 0 : item.video) === null || _j === void 0 ? void 0 : _j.itemId) !== null && _k !== void 0 ? _k : '',
|
|
18242
|
+
eventInfo: Object.assign({ eventSubject: 'playVideo', eventDescription: 'User played the video', contentId: (_k = (_j = item === null || item === void 0 ? void 0 : item.video) === null || _j === void 0 ? void 0 : _j.itemId) !== null && _k !== void 0 ? _k : '', contentName: (_m = (_l = item === null || item === void 0 ? void 0 : item.video) === null || _l === void 0 ? void 0 : _l.title) !== null && _m !== void 0 ? _m : '', playType, startTime: videoCurrentTime, videoDuration, contentTags: JSON.stringify((_p = (_o = item === null || item === void 0 ? void 0 : item.video) === null || _o === void 0 ? void 0 : _o.tags) !== null && _p !== void 0 ? _p : []), position: index + '', contentFormat: 'video', traceInfo: (_q = item === null || item === void 0 ? void 0 : item.video) === null || _q === void 0 ? void 0 : _q.traceInfo }, ((isFirstPlayRef === null || isFirstPlayRef === void 0 ? void 0 : isFirstPlayRef.current) && { loadTime: (loadedTimeRef === null || loadedTimeRef === void 0 ? void 0 : loadedTimeRef.current) - (initTimeRef === null || initTimeRef === void 0 ? void 0 : initTimeRef.current) + '' }))
|
|
18220
18243
|
});
|
|
18221
18244
|
isFirstPlayRef.current = false;
|
|
18222
18245
|
}
|
|
18223
18246
|
}), [bffEventReport, data, index, isFirstPlayRef, videoRef === null || videoRef === void 0 ? void 0 : videoRef.current]);
|
|
18247
|
+
const setCurrentTimeByStartTime = React.useCallback(() => {
|
|
18248
|
+
if (isDiyH5) {
|
|
18249
|
+
videoRef.current.currentTime = scene === null || scene === void 0 ? void 0 : scene.startTime;
|
|
18250
|
+
}
|
|
18251
|
+
}, []);
|
|
18224
18252
|
const handLoadeddata = React.useCallback(() => {
|
|
18225
18253
|
if (!(videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) || firstFrameSrc || !blur)
|
|
18226
18254
|
return;
|
|
@@ -18245,12 +18273,13 @@ Made in Italy` })));
|
|
|
18245
18273
|
const handleLoadedmetadata = React.useCallback(() => {
|
|
18246
18274
|
if (!videoRef.current)
|
|
18247
18275
|
return;
|
|
18276
|
+
setCurrentTimeByStartTime();
|
|
18248
18277
|
loadedTimeRef.current = new Date();
|
|
18249
18278
|
handleStartPlay();
|
|
18250
18279
|
handLoadeddata();
|
|
18251
18280
|
}, [videoRef.current, handLoadeddata, handleStartPlay]);
|
|
18252
18281
|
const handleClickVideo = React.useCallback((type) => () => {
|
|
18253
|
-
var _a, _b, _c, _d, _e;
|
|
18282
|
+
var _a, _b, _c, _d, _e, _f;
|
|
18254
18283
|
if (!videoRef.current)
|
|
18255
18284
|
return;
|
|
18256
18285
|
if (!isLoadFinish)
|
|
@@ -18271,17 +18300,20 @@ Made in Italy` })));
|
|
|
18271
18300
|
break;
|
|
18272
18301
|
default:
|
|
18273
18302
|
if (isPause) {
|
|
18274
|
-
(_d = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _d === void 0 ? void 0 : _d.
|
|
18303
|
+
if (isDiyH5 && Math.round((_d = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _d === void 0 ? void 0 : _d.currentTime) >= (scene === null || scene === void 0 ? void 0 : scene.endTime)) {
|
|
18304
|
+
videoRef.current.currentTime = scene === null || scene === void 0 ? void 0 : scene.startTime;
|
|
18305
|
+
}
|
|
18306
|
+
(_e = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _e === void 0 ? void 0 : _e.play();
|
|
18275
18307
|
}
|
|
18276
18308
|
else {
|
|
18277
|
-
(
|
|
18309
|
+
(_f = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _f === void 0 ? void 0 : _f.pause();
|
|
18278
18310
|
}
|
|
18279
18311
|
setIsPauseVideo(!isPause);
|
|
18280
18312
|
break;
|
|
18281
18313
|
}
|
|
18282
18314
|
}, [isLoadFinish, videoRef === null || videoRef === void 0 ? void 0 : videoRef.current]);
|
|
18283
18315
|
const handlePause = React.useCallback(() => {
|
|
18284
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o
|
|
18316
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o;
|
|
18285
18317
|
if (!(videoRef === null || videoRef === void 0 ? void 0 : videoRef.current))
|
|
18286
18318
|
return;
|
|
18287
18319
|
if (activeIndex !== index)
|
|
@@ -18297,15 +18329,14 @@ Made in Italy` })));
|
|
|
18297
18329
|
eventSubject: 'playOverVideo',
|
|
18298
18330
|
eventDescription: 'User finished playing the video',
|
|
18299
18331
|
contentId: (_h = (_g = item === null || item === void 0 ? void 0 : item.video) === null || _g === void 0 ? void 0 : _g.itemId) !== null && _h !== void 0 ? _h : '',
|
|
18300
|
-
|
|
18301
|
-
contentName: (_o = (_m = item === null || item === void 0 ? void 0 : item.video) === null || _m === void 0 ? void 0 : _m.title) !== null && _o !== void 0 ? _o : '',
|
|
18332
|
+
contentName: (_k = (_j = item === null || item === void 0 ? void 0 : item.video) === null || _j === void 0 ? void 0 : _j.title) !== null && _k !== void 0 ? _k : '',
|
|
18302
18333
|
endTime: videoCurrentTime,
|
|
18303
18334
|
videoDuration,
|
|
18304
18335
|
playDuration,
|
|
18305
|
-
contentTags: JSON.stringify((
|
|
18336
|
+
contentTags: JSON.stringify((_m = (_l = item === null || item === void 0 ? void 0 : item.video) === null || _l === void 0 ? void 0 : _l.tags) !== null && _m !== void 0 ? _m : []),
|
|
18306
18337
|
position: index + '',
|
|
18307
18338
|
contentFormat: 'video',
|
|
18308
|
-
traceInfo: (
|
|
18339
|
+
traceInfo: (_o = item === null || item === void 0 ? void 0 : item.video) === null || _o === void 0 ? void 0 : _o.traceInfo
|
|
18309
18340
|
}
|
|
18310
18341
|
});
|
|
18311
18342
|
}
|
|
@@ -18313,8 +18344,27 @@ Made in Italy` })));
|
|
|
18313
18344
|
const handleWaiting = React.useCallback(() => {
|
|
18314
18345
|
setWaiting(true);
|
|
18315
18346
|
}, []);
|
|
18347
|
+
const handleTimeUpload = () => {
|
|
18348
|
+
if (!videoRef.current || !isDiyH5)
|
|
18349
|
+
return;
|
|
18350
|
+
setTimeout(() => {
|
|
18351
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j;
|
|
18352
|
+
if (Math.round((_a = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _a === void 0 ? void 0 : _a.currentTime) >= ((_b = scene === null || scene === void 0 ? void 0 : scene.endTime) !== null && _b !== void 0 ? _b : 0)) {
|
|
18353
|
+
(_c = videoRef.current) === null || _c === void 0 ? void 0 : _c.pause();
|
|
18354
|
+
if (!loopPlayRef.current)
|
|
18355
|
+
return;
|
|
18356
|
+
if (index === (data === null || data === void 0 ? void 0 : data.length) - 1) {
|
|
18357
|
+
(_e = (_d = swiperRef === null || swiperRef === void 0 ? void 0 : swiperRef.current) === null || _d === void 0 ? void 0 : _d.swiper) === null || _e === void 0 ? void 0 : _e.slideTo(0);
|
|
18358
|
+
}
|
|
18359
|
+
else {
|
|
18360
|
+
const i = (_g = (_f = swiperRef === null || swiperRef === void 0 ? void 0 : swiperRef.current) === null || _f === void 0 ? void 0 : _f.swiper) === null || _g === void 0 ? void 0 : _g.activeIndex;
|
|
18361
|
+
(_j = (_h = swiperRef === null || swiperRef === void 0 ? void 0 : swiperRef.current) === null || _h === void 0 ? void 0 : _h.swiper) === null || _j === void 0 ? void 0 : _j.slideTo(i + 1);
|
|
18362
|
+
}
|
|
18363
|
+
}
|
|
18364
|
+
});
|
|
18365
|
+
};
|
|
18316
18366
|
React.useEffect(() => {
|
|
18317
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
|
|
18367
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l;
|
|
18318
18368
|
if (!isActive)
|
|
18319
18369
|
return;
|
|
18320
18370
|
const videoSrc = videoUrl;
|
|
@@ -18335,6 +18385,7 @@ Made in Italy` })));
|
|
|
18335
18385
|
hls === null || hls === void 0 ? void 0 : hls.attachMedia(videoRef === null || videoRef === void 0 ? void 0 : videoRef.current);
|
|
18336
18386
|
hls === null || hls === void 0 ? void 0 : hls.on(Hls.Events.MANIFEST_PARSED, function () {
|
|
18337
18387
|
var _a;
|
|
18388
|
+
setCurrentTimeByStartTime();
|
|
18338
18389
|
(_a = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _a === void 0 ? void 0 : _a.play();
|
|
18339
18390
|
});
|
|
18340
18391
|
}
|
|
@@ -18348,11 +18399,12 @@ Made in Italy` })));
|
|
|
18348
18399
|
(_e = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _e === void 0 ? void 0 : _e.addEventListener('play', handleStartPlay);
|
|
18349
18400
|
(_f = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _f === void 0 ? void 0 : _f.addEventListener('playing', handlePlaying);
|
|
18350
18401
|
(_g = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _g === void 0 ? void 0 : _g.addEventListener('pause', handlePause);
|
|
18351
|
-
(_h = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _h === void 0 ? void 0 : _h.addEventListener('ended',
|
|
18402
|
+
(_h = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _h === void 0 ? void 0 : _h.addEventListener('ended', handlePlay);
|
|
18352
18403
|
(_j = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _j === void 0 ? void 0 : _j.addEventListener('canplay', handlePlay);
|
|
18353
18404
|
(_k = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _k === void 0 ? void 0 : _k.addEventListener('waiting', handleWaiting);
|
|
18405
|
+
(_l = videoRef.current) === null || _l === void 0 ? void 0 : _l.addEventListener('timeupdate', handleTimeUpload);
|
|
18354
18406
|
return () => {
|
|
18355
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
|
|
18407
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l;
|
|
18356
18408
|
const isPause = (_a = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _a === void 0 ? void 0 : _a.paused;
|
|
18357
18409
|
if (!isPause)
|
|
18358
18410
|
handlePause();
|
|
@@ -18364,9 +18416,10 @@ Made in Italy` })));
|
|
|
18364
18416
|
(_e = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _e === void 0 ? void 0 : _e.removeEventListener('play', handleStartPlay);
|
|
18365
18417
|
(_f = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _f === void 0 ? void 0 : _f.removeEventListener('playing', handlePlaying);
|
|
18366
18418
|
(_g = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _g === void 0 ? void 0 : _g.removeEventListener('pause', handlePause);
|
|
18367
|
-
(_h = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _h === void 0 ? void 0 : _h.removeEventListener('ended',
|
|
18419
|
+
(_h = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _h === void 0 ? void 0 : _h.removeEventListener('ended', handlePlay);
|
|
18368
18420
|
(_j = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _j === void 0 ? void 0 : _j.removeEventListener('canplay', handlePlay);
|
|
18369
18421
|
(_k = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _k === void 0 ? void 0 : _k.removeEventListener('waiting', handleWaiting);
|
|
18422
|
+
(_l = videoRef.current) === null || _l === void 0 ? void 0 : _l.removeEventListener('timeupdate', handleTimeUpload);
|
|
18370
18423
|
};
|
|
18371
18424
|
}, [isActive]);
|
|
18372
18425
|
React.useEffect(() => {
|
|
@@ -18577,45 +18630,19 @@ Made in Italy` })));
|
|
|
18577
18630
|
}, onLoad: onShowFirstImage }))));
|
|
18578
18631
|
};
|
|
18579
18632
|
|
|
18580
|
-
const PictureGroup$4 =
|
|
18633
|
+
const PictureGroup$4 = ({ imgUrls, width, height, rec, index, onViewImageEndEvent, onViewImageStartEvent, imgUrlsPostConfig }) => {
|
|
18581
18634
|
var _a, _b;
|
|
18582
18635
|
const { isActive } = useSwiperSlide();
|
|
18583
|
-
const {
|
|
18636
|
+
const { sxpParameter, openHashtag } = useSxpDataSource();
|
|
18584
18637
|
const [isLoad, setIsLoad] = React.useState(false);
|
|
18585
18638
|
const [imgInfo, setImgInfo] = React.useState();
|
|
18586
18639
|
const [swiperActiveIndex, setSwiperActiveIndex] = React.useState(0);
|
|
18587
|
-
const
|
|
18640
|
+
const swiperRef = React.useRef();
|
|
18588
18641
|
const isFirstPlayRef = React.useRef(true);
|
|
18589
|
-
const loopPlayRef = React.useRef(true);
|
|
18590
18642
|
const initTime = new Date();
|
|
18591
|
-
React.useImperativeHandle(ref, () => {
|
|
18592
|
-
return {
|
|
18593
|
-
setLoopPlay(v) {
|
|
18594
|
-
loopPlayRef.current = v;
|
|
18595
|
-
}
|
|
18596
|
-
};
|
|
18597
|
-
});
|
|
18598
|
-
React.useEffect(() => {
|
|
18599
|
-
let timerId;
|
|
18600
|
-
if (isLoad && isActive && isDiyH5) {
|
|
18601
|
-
timerId = setTimeout(() => {
|
|
18602
|
-
var _a, _b, _c, _d;
|
|
18603
|
-
if (!loopPlayRef.current)
|
|
18604
|
-
return;
|
|
18605
|
-
if (firstRtcList && index < (firstRtcList === null || firstRtcList === void 0 ? void 0 : firstRtcList.length) - 1) {
|
|
18606
|
-
const i = (_b = (_a = swiperRef === null || swiperRef === void 0 ? void 0 : swiperRef.current) === null || _a === void 0 ? void 0 : _a.swiper) === null || _b === void 0 ? void 0 : _b.activeIndex;
|
|
18607
|
-
(_d = (_c = swiperRef === null || swiperRef === void 0 ? void 0 : swiperRef.current) === null || _c === void 0 ? void 0 : _c.swiper) === null || _d === void 0 ? void 0 : _d.slideTo(i + 1);
|
|
18608
|
-
}
|
|
18609
|
-
}, 3000);
|
|
18610
|
-
}
|
|
18611
|
-
return () => {
|
|
18612
|
-
if (timerId)
|
|
18613
|
-
clearTimeout(timerId);
|
|
18614
|
-
};
|
|
18615
|
-
}, [isLoad, isActive, isDiyH5, index, swiperRef, firstRtcList]);
|
|
18616
18643
|
React.useEffect(() => {
|
|
18617
18644
|
if (isLoad && isActive) {
|
|
18618
|
-
(
|
|
18645
|
+
(swiperRef === null || swiperRef === void 0 ? void 0 : swiperRef.current) && swiperRef.current.swiper.autoplay.start();
|
|
18619
18646
|
if (openHashtag) {
|
|
18620
18647
|
onViewImageEndEvent(rec);
|
|
18621
18648
|
}
|
|
@@ -18625,7 +18652,7 @@ Made in Italy` })));
|
|
|
18625
18652
|
}
|
|
18626
18653
|
}
|
|
18627
18654
|
else {
|
|
18628
|
-
(
|
|
18655
|
+
(swiperRef === null || swiperRef === void 0 ? void 0 : swiperRef.current) && swiperRef.current.swiper.autoplay.stop();
|
|
18629
18656
|
}
|
|
18630
18657
|
}, [rec, isActive, onViewImageEndEvent, openHashtag, index, onViewImageStartEvent, isLoad, imgInfo]);
|
|
18631
18658
|
const showFirstImageFn = React.useCallback((e) => __awaiter(void 0, void 0, void 0, function* () {
|
|
@@ -18652,13 +18679,13 @@ Made in Italy` })));
|
|
|
18652
18679
|
};
|
|
18653
18680
|
}, [isActive, imgInfo]);
|
|
18654
18681
|
const handleMouseEnter = React.useCallback(() => {
|
|
18655
|
-
if (
|
|
18656
|
-
|
|
18682
|
+
if (swiperRef.current && swiperRef.current.swiper && isAlly) {
|
|
18683
|
+
swiperRef.current.swiper.autoplay.stop();
|
|
18657
18684
|
}
|
|
18658
18685
|
}, []);
|
|
18659
18686
|
const handleMouseLeave = React.useCallback(() => {
|
|
18660
|
-
if (
|
|
18661
|
-
|
|
18687
|
+
if (swiperRef.current && swiperRef.current.swiper && isAlly) {
|
|
18688
|
+
swiperRef.current.swiper.autoplay.start();
|
|
18662
18689
|
}
|
|
18663
18690
|
}, []);
|
|
18664
18691
|
const handleSlideChange = React.useCallback((swiper) => {
|
|
@@ -18679,7 +18706,7 @@ Made in Italy` })));
|
|
|
18679
18706
|
enabled: true
|
|
18680
18707
|
}
|
|
18681
18708
|
}
|
|
18682
|
-
: {}), { loop: true, ref:
|
|
18709
|
+
: {}), { loop: true, ref: swiperRef, onSlideChange: handleSlideChange, className: css.css(Object.assign(Object.assign({ '.swiper-pagination': {
|
|
18683
18710
|
bottom: (_a = imgUrlsPostConfig === null || imgUrlsPostConfig === void 0 ? void 0 : imgUrlsPostConfig.marginBottom) !== null && _a !== void 0 ? _a : 0,
|
|
18684
18711
|
fontSize: '14px'
|
|
18685
18712
|
} }, ((imgUrlsPostConfig === null || imgUrlsPostConfig === void 0 ? void 0 : imgUrlsPostConfig.dotsBgColor) && {
|
|
@@ -18696,7 +18723,7 @@ Made in Italy` })));
|
|
|
18696
18723
|
return (React.createElement(SwiperSlide, { key: srcKey, "aria-hidden": srcKey !== swiperActiveIndex },
|
|
18697
18724
|
React.createElement(Picture, { src: !isLoad && srcKey > 0 ? '' : url, height: height, imgUrlsPostConfig: imgUrlsPostConfig, onShowFirstImage: showFirstImageFn })));
|
|
18698
18725
|
}))));
|
|
18699
|
-
}
|
|
18726
|
+
};
|
|
18700
18727
|
var PictureGroup$5 = React.memo(PictureGroup$4);
|
|
18701
18728
|
|
|
18702
18729
|
/*
|
|
@@ -18817,10 +18844,22 @@ Made in Italy` })));
|
|
|
18817
18844
|
* @FilePath: \pb-sxp-ui\src\core\components\SxpPageRender\RenderCard.tsx
|
|
18818
18845
|
*
|
|
18819
18846
|
*/
|
|
18820
|
-
const RenderCard = ({ rec, index, tempMap, resolver, includesCtaType, isActive,
|
|
18847
|
+
const RenderCard = ({ rec, index, tempMap, resolver, includesCtaType, isActive, isNineProduct }) => {
|
|
18848
|
+
var _a, _b, _c, _d, _e;
|
|
18821
18849
|
const { schema } = useEditor();
|
|
18822
18850
|
if (!(rec === null || rec === void 0 ? void 0 : rec.video))
|
|
18823
18851
|
return null;
|
|
18852
|
+
let cta = null;
|
|
18853
|
+
if ((_b = (_a = rec === null || rec === void 0 ? void 0 : rec.video) === null || _a === void 0 ? void 0 : _a.bindProducts) === null || _b === void 0 ? void 0 : _b.length) {
|
|
18854
|
+
cta = '多商品CTA';
|
|
18855
|
+
}
|
|
18856
|
+
else if ((_c = rec === null || rec === void 0 ? void 0 : rec.video) === null || _c === void 0 ? void 0 : _c.bindProduct) {
|
|
18857
|
+
cta = '商品CTA';
|
|
18858
|
+
}
|
|
18859
|
+
else {
|
|
18860
|
+
cta = (_e = (_d = rec === null || rec === void 0 ? void 0 : rec.video) === null || _d === void 0 ? void 0 : _d.bindCta) === null || _e === void 0 ? void 0 : _e.itemId;
|
|
18861
|
+
}
|
|
18862
|
+
const value = tempMap === null || tempMap === void 0 ? void 0 : tempMap[cta];
|
|
18824
18863
|
const renderComp = React.useMemo(() => {
|
|
18825
18864
|
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2, _3;
|
|
18826
18865
|
// 如果includesCtaType有值,则只渲染includesCtaType包含的cta类型组件,用于在页面某处只显示某一组件
|
|
@@ -18848,7 +18887,7 @@ Made in Italy` })));
|
|
|
18848
18887
|
const sbf = style.backdropFilter;
|
|
18849
18888
|
style.backdropFilter = `blur(${sbf !== null && sbf !== void 0 ? sbf : 0}px)`;
|
|
18850
18889
|
}
|
|
18851
|
-
return (React.createElement(Component, Object.assign({ style: Object.assign(Object.assign(Object.assign({}, defaulSetting === null || defaulSetting === void 0 ? void 0 : defaulSetting.style), style), { zIndex: 50,
|
|
18890
|
+
return (React.createElement(Component, Object.assign({ style: Object.assign(Object.assign(Object.assign({}, defaulSetting === null || defaulSetting === void 0 ? void 0 : defaulSetting.style), style), { zIndex: 50, marginInlineStart: '20px', boxSizing: 'border-box', transform: 'translate3d(0px, 0px, 0px)' }), textStyle: Object.assign(Object.assign({}, defaulSetting === null || defaulSetting === void 0 ? void 0 : defaulSetting.textStyle), (_z = value === null || value === void 0 ? void 0 : value.item) === null || _z === void 0 ? void 0 : _z.textStyle), bindDatas: (_1 = (_0 = value === null || value === void 0 ? void 0 : value.item) === null || _0 === void 0 ? void 0 : _0.bindDatas) !== null && _1 !== void 0 ? _1 : [] }, defaulSetting === null || defaulSetting === void 0 ? void 0 : defaulSetting.props, (_2 = value === null || value === void 0 ? void 0 : value.item) === null || _2 === void 0 ? void 0 : _2.props, { event: ((_3 = value === null || value === void 0 ? void 0 : value.item) === null || _3 === void 0 ? void 0 : _3.event) || {}, schema: schema, id: value === null || value === void 0 ? void 0 : value.id, key: value === null || value === void 0 ? void 0 : value.id, recData: rec, isExternalLink: isExternalLink, index: index, isActive: isActive })));
|
|
18852
18891
|
}
|
|
18853
18892
|
else {
|
|
18854
18893
|
return null;
|
|
@@ -18976,7 +19015,7 @@ Made in Italy` })));
|
|
|
18976
19015
|
* @Author: binruan@chatlabs.com
|
|
18977
19016
|
* @Date: 2024-03-20 10:27:31
|
|
18978
19017
|
* @LastEditors: binruan@chatlabs.com
|
|
18979
|
-
* @LastEditTime: 2025-05-
|
|
19018
|
+
* @LastEditTime: 2025-05-09 15:51:40
|
|
18980
19019
|
* @FilePath: \pb-sxp-ui\src\core\components\SxpPageRender\index.tsx
|
|
18981
19020
|
*
|
|
18982
19021
|
*/
|
|
@@ -18996,7 +19035,6 @@ Made in Italy` })));
|
|
|
18996
19035
|
const skipLinkRef = React.useRef(false);
|
|
18997
19036
|
const [pageNum, setPageNum] = React.useState(2);
|
|
18998
19037
|
const videoWidgetRef = React.useRef(null);
|
|
18999
|
-
const pictureGroupRef = React.useRef(null);
|
|
19000
19038
|
const { loadVideos, bffEventReport, loading, setPopupDetailData, ctaEvent, swiperRef, waterFallData, setOpenHashtag, appDomain, openHashtag, loadingImage, isFromHashtag, popupDetailData, bffFbReport, curTime, h5EnterLink, isShowConsent, selectTag, isPreview, isEditor, cacheRtcList, setRtcList, cacheActiveIndex, rtcList, isNoMoreData, channel, refreshFeSession, isDiyH5 } = useSxpDataSource();
|
|
19001
19039
|
const { backMainFeed, productView, jumpToWeb } = useEventReport();
|
|
19002
19040
|
const isShowFingerTip = React.useMemo(() => {
|
|
@@ -19044,7 +19082,7 @@ Made in Italy` })));
|
|
|
19044
19082
|
(_a = swiperRef === null || swiperRef === void 0 ? void 0 : swiperRef.current) === null || _a === void 0 ? void 0 : _a.swiper.slideTo(index);
|
|
19045
19083
|
}, [data, ctaType, swiperRef]);
|
|
19046
19084
|
const handleSessionCompleted = React.useCallback((fk) => {
|
|
19047
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v
|
|
19085
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v;
|
|
19048
19086
|
const item = data === null || data === void 0 ? void 0 : data[activeIndex];
|
|
19049
19087
|
let fromKName = '';
|
|
19050
19088
|
if (popupDetailData && (((_b = (_a = item === null || item === void 0 ? void 0 : item.video) === null || _a === void 0 ? void 0 : _a.bindProducts) === null || _b === void 0 ? void 0 : _b.length) || ((_c = item === null || item === void 0 ? void 0 : item.video) === null || _c === void 0 ? void 0 : _c.bindProduct))) {
|
|
@@ -19071,13 +19109,12 @@ Made in Italy` })));
|
|
|
19071
19109
|
eventSubject: 'sessionCompleted',
|
|
19072
19110
|
eventDescription: 'Session completed',
|
|
19073
19111
|
contentId: (_m = item === null || item === void 0 ? void 0 : item.video) === null || _m === void 0 ? void 0 : _m.itemId,
|
|
19074
|
-
|
|
19075
|
-
productId: (_r = item === null || item === void 0 ? void 0 : item.product) === null || _r === void 0 ? void 0 : _r.itemId,
|
|
19112
|
+
productId: (_o = item === null || item === void 0 ? void 0 : item.product) === null || _o === void 0 ? void 0 : _o.itemId,
|
|
19076
19113
|
position: activeIndex + '',
|
|
19077
19114
|
fromKName: fk || fromKName,
|
|
19078
19115
|
fromKPage: location === null || location === void 0 ? void 0 : location.href,
|
|
19079
|
-
ctatId: (
|
|
19080
|
-
traceInfo: (
|
|
19116
|
+
ctatId: (_r = (_q = (_p = item === null || item === void 0 ? void 0 : item.video) === null || _p === void 0 ? void 0 : _p.bindCta) === null || _q === void 0 ? void 0 : _q.itemId) !== null && _r !== void 0 ? _r : '',
|
|
19117
|
+
traceInfo: (_v = (_t = (_s = item === null || item === void 0 ? void 0 : item.video) === null || _s === void 0 ? void 0 : _s.traceInfo) !== null && _t !== void 0 ? _t : (_u = item === null || item === void 0 ? void 0 : item.product) === null || _u === void 0 ? void 0 : _u.traceInfo) !== null && _v !== void 0 ? _v : ''
|
|
19081
19118
|
}
|
|
19082
19119
|
});
|
|
19083
19120
|
}, [data, bffEventReport, activeIndex, popupDetailData, tempMap, isFromHashtag, curTime]);
|
|
@@ -19136,9 +19173,8 @@ Made in Italy` })));
|
|
|
19136
19173
|
refreshFeSession
|
|
19137
19174
|
]);
|
|
19138
19175
|
const handleSessionExpire = React.useCallback(lodash.debounce(() => {
|
|
19139
|
-
var _a
|
|
19176
|
+
var _a;
|
|
19140
19177
|
(_a = videoWidgetRef.current) === null || _a === void 0 ? void 0 : _a.setLoopPlay(false);
|
|
19141
|
-
(_b = pictureGroupRef.current) === null || _b === void 0 ? void 0 : _b.setLoopPlay(false);
|
|
19142
19178
|
refreshFeSession === null || refreshFeSession === void 0 ? void 0 : refreshFeSession(false, handleSessionCompleted);
|
|
19143
19179
|
}, 1000), [handleSessionCompleted, refreshFeSession]);
|
|
19144
19180
|
React.useEffect(() => {
|
|
@@ -19208,18 +19244,18 @@ Made in Italy` })));
|
|
|
19208
19244
|
return null;
|
|
19209
19245
|
}, [globalConfig, activeIndex, visList]);
|
|
19210
19246
|
const renderContent = React.useCallback((rec, index) => {
|
|
19211
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k
|
|
19247
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
|
|
19212
19248
|
if (rec === 'organic menu') {
|
|
19213
19249
|
return (React.createElement(MultiPosts$2, Object.assign({ recData: data === null || data === void 0 ? void 0 : data[1] }, (_c = (_b = (_a = globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.multiPosts) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.item) === null || _c === void 0 ? void 0 : _c.props, (_f = (_e = (_d = globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.multiPosts) === null || _d === void 0 ? void 0 : _d[0]) === null || _e === void 0 ? void 0 : _e.item) === null || _f === void 0 ? void 0 : _f.event)));
|
|
19214
19250
|
}
|
|
19215
|
-
if ((
|
|
19251
|
+
if ((_g = rec === null || rec === void 0 ? void 0 : rec.video) === null || _g === void 0 ? void 0 : _g.url) {
|
|
19216
19252
|
return (React.createElement(VideoWidget$5, Object.assign({ key: isReload }, (activeIndex === index && { ref: videoWidgetRef }), { rec: rec, index: index, muted: isMuted, data: data, height: height, activeIndex: activeIndex, videoPostConfig: globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.videoPost, videoPlayIcon: globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.videoPlayIcon, loopPlay: true, swiperRef: swiperRef })));
|
|
19217
19253
|
}
|
|
19218
|
-
if ((
|
|
19219
|
-
return (React.createElement(PictureGroup$5,
|
|
19254
|
+
if ((_h = rec === null || rec === void 0 ? void 0 : rec.video) === null || _h === void 0 ? void 0 : _h.imgUrls) {
|
|
19255
|
+
return (React.createElement(PictureGroup$5, { key: rec === null || rec === void 0 ? void 0 : rec.video.itemId, imgUrls: rec === null || rec === void 0 ? void 0 : rec.video.imgUrls, width: containerWidth, height: height, rec: rec, index: index, onViewImageEndEvent: handleViewImageStartEnd, onViewImageStartEvent: handleViewImageStartEvent, imgUrlsPostConfig: globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.imgUrlsPost }));
|
|
19220
19256
|
}
|
|
19221
|
-
if (rec.product && Array.isArray(globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.productPost) && ((
|
|
19222
|
-
return (
|
|
19257
|
+
if (rec.product && Array.isArray(globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.productPost) && ((_j = globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.productPost) === null || _j === void 0 ? void 0 : _j.length) > 0) {
|
|
19258
|
+
return (_k = globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.productPost) === null || _k === void 0 ? void 0 : _k.map((value, idx) => {
|
|
19223
19259
|
var _a, _b, _c, _d, _e, _f, _g, _h;
|
|
19224
19260
|
const t = resolver[(_a = value === null || value === void 0 ? void 0 : value.item) === null || _a === void 0 ? void 0 : _a.type];
|
|
19225
19261
|
const Component = withBindDataSource(t);
|
|
@@ -19257,7 +19293,7 @@ Made in Italy` })));
|
|
|
19257
19293
|
};
|
|
19258
19294
|
}, [isShowMore]);
|
|
19259
19295
|
const renderBottom = React.useCallback((rec, index) => {
|
|
19260
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q
|
|
19296
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q;
|
|
19261
19297
|
if (rec === null || rec === void 0 ? void 0 : rec.video) {
|
|
19262
19298
|
let cta = null;
|
|
19263
19299
|
if ((_b = (_a = rec === null || rec === void 0 ? void 0 : rec.video) === null || _a === void 0 ? void 0 : _a.bindProducts) === null || _b === void 0 ? void 0 : _b.length) {
|
|
@@ -19266,28 +19302,25 @@ Made in Italy` })));
|
|
|
19266
19302
|
else if ((_c = rec === null || rec === void 0 ? void 0 : rec.video) === null || _c === void 0 ? void 0 : _c.bindProduct) {
|
|
19267
19303
|
cta = '商品CTA';
|
|
19268
19304
|
}
|
|
19269
|
-
else if (tempMap && ((_d = Object.keys(tempMap)) === null || _d === void 0 ? void 0 : _d.includes('服务CTA')) && ((_f = (_e = rec === null || rec === void 0 ? void 0 : rec.video) === null || _e === void 0 ? void 0 : _e.bindCta) === null || _f === void 0 ? void 0 : _f.itemId)) {
|
|
19270
|
-
cta = '服务CTA';
|
|
19271
|
-
}
|
|
19272
19305
|
else {
|
|
19273
|
-
cta = (
|
|
19306
|
+
cta = (_e = (_d = rec === null || rec === void 0 ? void 0 : rec.video) === null || _d === void 0 ? void 0 : _d.bindCta) === null || _e === void 0 ? void 0 : _e.itemId;
|
|
19274
19307
|
}
|
|
19275
19308
|
const value = tempMap === null || tempMap === void 0 ? void 0 : tempMap[cta];
|
|
19276
19309
|
const isNineProduct = (globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.nineProductEnable) &&
|
|
19277
19310
|
index === ((rtcList === null || rtcList === void 0 ? void 0 : rtcList[0]) === 'organic menu' ? 2 : 1) &&
|
|
19278
|
-
((
|
|
19311
|
+
((_f = ['MultiCommodity', 'MultiCommodityDiro', 'MultiCommodityDiroNew']) === null || _f === void 0 ? void 0 : _f.includes((_g = value === null || value === void 0 ? void 0 : value.item) === null || _g === void 0 ? void 0 : _g.type));
|
|
19279
19312
|
return (React.createElement(React.Fragment, null,
|
|
19280
|
-
isNineProduct && (React.createElement(RenderCard$1, { rec: rec, index: index, tempMap: tempMap, resolver: resolver, isActive: index === activeIndex,
|
|
19281
|
-
((
|
|
19282
|
-
React.createElement("div", { className: 'clc-sxp-bottom', style: { marginBottom: `${(
|
|
19313
|
+
isNineProduct && (React.createElement(RenderCard$1, { rec: rec, index: index, tempMap: tempMap, resolver: resolver, isActive: index === activeIndex, isNineProduct: isNineProduct })),
|
|
19314
|
+
((_h = rec === null || rec === void 0 ? void 0 : rec.video) === null || _h === void 0 ? void 0 : _h.title) && !isShowMore && React.createElement("div", { className: 'clc-sxp-bottom-shadow' }),
|
|
19315
|
+
React.createElement("div", { className: 'clc-sxp-bottom', style: { marginBottom: `${(_j = globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.bottomInfoDist) !== null && _j !== void 0 ? _j : 40}px` } },
|
|
19283
19316
|
React.createElement(Nudge, { nudge: nudge }),
|
|
19284
19317
|
((globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.isShowCTA) === undefined || (globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.isShowCTA)) && !isNineProduct ? (React.createElement("div", { className: 'clc-sxp-bottom-card' },
|
|
19285
|
-
React.createElement(RenderCard$1, { rec: rec, index: index, tempMap: tempMap, resolver: resolver, isActive: index === activeIndex
|
|
19286
|
-
React.createElement("div",
|
|
19287
|
-
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: (
|
|
19288
|
-
React.createElement(RenderCard$1, { rec: rec, index: index, tempMap: tempMap, resolver: resolver, includesCtaType: ['AniLink'], isActive: index === activeIndex
|
|
19289
|
-
React.createElement(Hashtag$1, { index: activeIndex, tags: (
|
|
19290
|
-
React.createElement(RenderCard$1, { rec: rec, index: index, tempMap: tempMap, resolver: resolver, includesCtaType: ['AniLinkPopup'], isActive: index === activeIndex
|
|
19318
|
+
React.createElement(RenderCard$1, { rec: rec, index: index, tempMap: tempMap, resolver: resolver, isActive: index === activeIndex }))) : null,
|
|
19319
|
+
React.createElement("div", { style: { display: 'flex', flexDirection: 'column' } },
|
|
19320
|
+
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: (_l = (_k = rec === null || rec === void 0 ? void 0 : rec.video) === null || _k === void 0 ? void 0 : _k.title) !== null && _l !== void 0 ? _l : '', 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 }),
|
|
19321
|
+
React.createElement(RenderCard$1, { rec: rec, index: index, tempMap: tempMap, resolver: resolver, includesCtaType: ['AniLink'], isActive: index === activeIndex }),
|
|
19322
|
+
React.createElement(Hashtag$1, { index: activeIndex, tags: (_o = (_m = rec === null || rec === void 0 ? void 0 : rec.video) === null || _m === void 0 ? void 0 : _m.hashTags) !== null && _o !== void 0 ? _o : [], itemId: (_p = rec === null || rec === void 0 ? void 0 : rec.video) === null || _p === void 0 ? void 0 : _p.itemId, itemType: ((_q = rec === null || rec === void 0 ? void 0 : rec.video) === null || _q === void 0 ? void 0 : _q.itemId) ? 'VIDEO' : null, rec: rec, hashTagStyle: hashTagStyle, hashTagRightMargin: containerWidth - (hashTagRightMargin !== null && hashTagRightMargin !== void 0 ? hashTagRightMargin : 0) }))),
|
|
19323
|
+
React.createElement(RenderCard$1, { rec: rec, index: index, tempMap: tempMap, resolver: resolver, includesCtaType: ['AniLinkPopup'], isActive: index === activeIndex })));
|
|
19291
19324
|
}
|
|
19292
19325
|
return null;
|
|
19293
19326
|
}, [
|
|
@@ -19325,7 +19358,7 @@ Made in Italy` })));
|
|
|
19325
19358
|
return null;
|
|
19326
19359
|
}, [globalConfig, waterFallData]);
|
|
19327
19360
|
const handleViewImageStartEnd = (item) => {
|
|
19328
|
-
var _a, _b, _c, _d, _e, _f
|
|
19361
|
+
var _a, _b, _c, _d, _e, _f;
|
|
19329
19362
|
if (!((_a = item === null || item === void 0 ? void 0 : item.video) === null || _a === void 0 ? void 0 : _a.url) && ((_b = item === null || item === void 0 ? void 0 : item.video) === null || _b === void 0 ? void 0 : _b.imgUrls)) {
|
|
19330
19363
|
const endTime = Date.now();
|
|
19331
19364
|
const duration = viewImageStartTime.current === 0 ? 0 : (endTime - viewImageStartTime.current) / 1000;
|
|
@@ -19334,11 +19367,10 @@ Made in Italy` })));
|
|
|
19334
19367
|
eventSubject: 'viewImageCarouselEnd',
|
|
19335
19368
|
eventDescription: 'User end view the image carousel',
|
|
19336
19369
|
contentId: (_d = (_c = item === null || item === void 0 ? void 0 : item.video) === null || _c === void 0 ? void 0 : _c.itemId) !== null && _d !== void 0 ? _d : '',
|
|
19337
|
-
|
|
19338
|
-
contentName: (_h = item === null || item === void 0 ? void 0 : item.video.title) !== null && _h !== void 0 ? _h : '',
|
|
19370
|
+
contentName: (_e = item === null || item === void 0 ? void 0 : item.video.title) !== null && _e !== void 0 ? _e : '',
|
|
19339
19371
|
imageEndTime: `${endTime}`,
|
|
19340
19372
|
playDuration: `${duration}`,
|
|
19341
|
-
contentTags: JSON.stringify((
|
|
19373
|
+
contentTags: JSON.stringify((_f = item === null || item === void 0 ? void 0 : item.video.tags) !== null && _f !== void 0 ? _f : []),
|
|
19342
19374
|
position: activeIndex + '',
|
|
19343
19375
|
contentFormat: 'image',
|
|
19344
19376
|
traceInfo: item === null || item === void 0 ? void 0 : item.video.traceInfo
|
|
@@ -19347,7 +19379,7 @@ Made in Italy` })));
|
|
|
19347
19379
|
}
|
|
19348
19380
|
};
|
|
19349
19381
|
const handleSlideSkip = (item, position) => {
|
|
19350
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x
|
|
19382
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x;
|
|
19351
19383
|
if (isPreview || waterFallData)
|
|
19352
19384
|
return;
|
|
19353
19385
|
const t = new Date() - curTime.current;
|
|
@@ -19373,8 +19405,7 @@ Made in Italy` })));
|
|
|
19373
19405
|
contentTags: (product === null || product === void 0 ? void 0 : product.tags) ? JSON.stringify(product === null || product === void 0 ? void 0 : product.tags) : '',
|
|
19374
19406
|
position: position + '',
|
|
19375
19407
|
contentId: (_t = (_s = item === null || item === void 0 ? void 0 : item.video) === null || _s === void 0 ? void 0 : _s.itemId) !== null && _t !== void 0 ? _t : '',
|
|
19376
|
-
|
|
19377
|
-
traceInfo: (_0 = (_y = (_x = item === null || item === void 0 ? void 0 : item.video) === null || _x === void 0 ? void 0 : _x.traceInfo) !== null && _y !== void 0 ? _y : (_z = item === null || item === void 0 ? void 0 : item.product) === null || _z === void 0 ? void 0 : _z.traceInfo) !== null && _0 !== void 0 ? _0 : '',
|
|
19408
|
+
traceInfo: (_x = (_v = (_u = item === null || item === void 0 ? void 0 : item.video) === null || _u === void 0 ? void 0 : _u.traceInfo) !== null && _v !== void 0 ? _v : (_w = item === null || item === void 0 ? void 0 : item.product) === null || _w === void 0 ? void 0 : _w.traceInfo) !== null && _x !== void 0 ? _x : '',
|
|
19378
19409
|
contentFormat
|
|
19379
19410
|
}
|
|
19380
19411
|
});
|
|
@@ -19384,7 +19415,7 @@ Made in Italy` })));
|
|
|
19384
19415
|
}
|
|
19385
19416
|
};
|
|
19386
19417
|
const handleScrollEvent = (swiper) => {
|
|
19387
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w
|
|
19418
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w;
|
|
19388
19419
|
const item = data[swiper.previousIndex];
|
|
19389
19420
|
if (!item)
|
|
19390
19421
|
return;
|
|
@@ -19401,12 +19432,11 @@ Made in Italy` })));
|
|
|
19401
19432
|
eventSubject: 'scrollDown',
|
|
19402
19433
|
eventDescription: 'User scroll down',
|
|
19403
19434
|
contentId: (_e = (_d = item === null || item === void 0 ? void 0 : item.video) === null || _d === void 0 ? void 0 : _d.itemId) !== null && _e !== void 0 ? _e : '',
|
|
19404
|
-
|
|
19405
|
-
productId: (_k = (_j = item === null || item === void 0 ? void 0 : item.product) === null || _j === void 0 ? void 0 : _j.itemId) !== null && _k !== void 0 ? _k : '',
|
|
19435
|
+
productId: (_g = (_f = item === null || item === void 0 ? void 0 : item.product) === null || _f === void 0 ? void 0 : _f.itemId) !== null && _g !== void 0 ? _g : '',
|
|
19406
19436
|
requestId: null,
|
|
19407
|
-
traceInfo: (
|
|
19437
|
+
traceInfo: (_l = (_j = (_h = item === null || item === void 0 ? void 0 : item.video) === null || _h === void 0 ? void 0 : _h.traceInfo) !== null && _j !== void 0 ? _j : (_k = item === null || item === void 0 ? void 0 : item.product) === null || _k === void 0 ? void 0 : _k.traceInfo) !== null && _l !== void 0 ? _l : '',
|
|
19408
19438
|
contentFormat,
|
|
19409
|
-
position: ((
|
|
19439
|
+
position: ((_m = swiper.previousIndex) !== null && _m !== void 0 ? _m : 0) + ''
|
|
19410
19440
|
}
|
|
19411
19441
|
});
|
|
19412
19442
|
// 如果上一个商品是图片集,需上报 浏览图片集结结束 事件
|
|
@@ -19418,13 +19448,12 @@ Made in Italy` })));
|
|
|
19418
19448
|
eventInfo: {
|
|
19419
19449
|
eventSubject: 'scrollUp',
|
|
19420
19450
|
eventDescription: 'User scroll up',
|
|
19421
|
-
contentId: (
|
|
19422
|
-
|
|
19423
|
-
productId: (_x = (_w = item.product) === null || _w === void 0 ? void 0 : _w.itemId) !== null && _x !== void 0 ? _x : '',
|
|
19451
|
+
contentId: (_p = (_o = item === null || item === void 0 ? void 0 : item.video) === null || _o === void 0 ? void 0 : _o.itemId) !== null && _p !== void 0 ? _p : '',
|
|
19452
|
+
productId: (_r = (_q = item.product) === null || _q === void 0 ? void 0 : _q.itemId) !== null && _r !== void 0 ? _r : '',
|
|
19424
19453
|
requestId: null,
|
|
19425
|
-
traceInfo: (
|
|
19454
|
+
traceInfo: (_v = (_t = (_s = item === null || item === void 0 ? void 0 : item.video) === null || _s === void 0 ? void 0 : _s.traceInfo) !== null && _t !== void 0 ? _t : (_u = item === null || item === void 0 ? void 0 : item.product) === null || _u === void 0 ? void 0 : _u.traceInfo) !== null && _v !== void 0 ? _v : '',
|
|
19426
19455
|
contentFormat,
|
|
19427
|
-
position: ((
|
|
19456
|
+
position: ((_w = swiper.previousIndex) !== null && _w !== void 0 ? _w : 0) + ''
|
|
19428
19457
|
}
|
|
19429
19458
|
});
|
|
19430
19459
|
// 如果上一个商品是图片集,需上报 浏览图片集结结束 事件
|
|
@@ -19450,7 +19479,7 @@ Made in Italy` })));
|
|
|
19450
19479
|
}
|
|
19451
19480
|
}, [openHashtag, data, activeIndex]);
|
|
19452
19481
|
const handleViewImageStartEvent = (activeIndex, imgInfo, enableCapi) => {
|
|
19453
|
-
var _a, _b, _c, _d, _e, _f, _g, _h
|
|
19482
|
+
var _a, _b, _c, _d, _e, _f, _g, _h;
|
|
19454
19483
|
const item = data[activeIndex];
|
|
19455
19484
|
// 如果是图片集则上报事件
|
|
19456
19485
|
if (!((_a = item === null || item === void 0 ? void 0 : item.video) === null || _a === void 0 ? void 0 : _a.url) && ((_b = item === null || item === void 0 ? void 0 : item.video) === null || _b === void 0 ? void 0 : _b.imgUrls)) {
|
|
@@ -19461,10 +19490,9 @@ Made in Italy` })));
|
|
|
19461
19490
|
eventSubject: 'viewImageCarouselStart',
|
|
19462
19491
|
eventDescription: 'User start view the image carousel',
|
|
19463
19492
|
contentId: (_d = (_c = item === null || item === void 0 ? void 0 : item.video) === null || _c === void 0 ? void 0 : _c.itemId) !== null && _d !== void 0 ? _d : '',
|
|
19464
|
-
|
|
19465
|
-
contentName: (_h = item === null || item === void 0 ? void 0 : item.video.title) !== null && _h !== void 0 ? _h : '',
|
|
19493
|
+
contentName: (_e = item === null || item === void 0 ? void 0 : item.video.title) !== null && _e !== void 0 ? _e : '',
|
|
19466
19494
|
imageStartTime: `${startTime}`,
|
|
19467
|
-
contentTags: JSON.stringify((
|
|
19495
|
+
contentTags: JSON.stringify((_f = item === null || item === void 0 ? void 0 : item.video.tags) !== null && _f !== void 0 ? _f : []),
|
|
19468
19496
|
position: activeIndex + '',
|
|
19469
19497
|
contentFormat: 'image',
|
|
19470
19498
|
traceInfo: item === null || item === void 0 ? void 0 : item.video.traceInfo,
|
|
@@ -19474,11 +19502,11 @@ Made in Italy` })));
|
|
|
19474
19502
|
if (enableCapi) {
|
|
19475
19503
|
bffFbReport === null || bffFbReport === void 0 ? void 0 : bffFbReport({
|
|
19476
19504
|
eventName: 'ViewContent',
|
|
19477
|
-
product: (
|
|
19505
|
+
product: (_g = item === null || item === void 0 ? void 0 : item.video) === null || _g === void 0 ? void 0 : _g.bindProduct
|
|
19478
19506
|
});
|
|
19479
19507
|
bffFbReport === null || bffFbReport === void 0 ? void 0 : bffFbReport({
|
|
19480
19508
|
eventName: 'PageView',
|
|
19481
|
-
product: (
|
|
19509
|
+
product: (_h = item === null || item === void 0 ? void 0 : item.video) === null || _h === void 0 ? void 0 : _h.bindProduct
|
|
19482
19510
|
});
|
|
19483
19511
|
}
|
|
19484
19512
|
}
|
|
@@ -19534,73 +19562,71 @@ Made in Italy` })));
|
|
|
19534
19562
|
isReload,
|
|
19535
19563
|
renderToggleButton
|
|
19536
19564
|
]);
|
|
19537
|
-
return (React.createElement("div", { id: 'sxp-render', className: 'clc-sxp-container' },
|
|
19538
|
-
|
|
19539
|
-
|
|
19540
|
-
|
|
19541
|
-
|
|
19542
|
-
|
|
19543
|
-
|
|
19544
|
-
setOpenHashtag === null || setOpenHashtag === void 0 ? void 0 : setOpenHashtag(true);
|
|
19545
|
-
} })),
|
|
19546
|
-
renderLogo,
|
|
19547
|
-
React.createElement(Tagbar$1, { tagList: tagList, setActiveIndex: setActiveIndex, style: {
|
|
19548
|
-
top: minusHeight
|
|
19549
|
-
} }),
|
|
19550
|
-
((_f = globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.backButton) === null || _f === void 0 ? void 0 : _f.enable) && !channel && !openMultiPosts && !waterFallData && (React.createElement(NavBack$1, { data: globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.backButton, minusHeight: minusHeight, tagHeight: tagHeight, onClick: () => history === null || history === void 0 ? void 0 : history.back() })),
|
|
19551
|
-
((((_l = (_k = (_j = (_h = (_g = globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.multiPosts) === null || _g === void 0 ? void 0 : _g[0]) === null || _h === void 0 ? void 0 : _h.item) === null || _j === void 0 ? void 0 : _j.props) === null || _k === void 0 ? void 0 : _k.backButton) === null || _l === void 0 ? void 0 : _l.enable) && channel) || openMultiPosts) &&
|
|
19552
|
-
!waterFallData && (React.createElement(NavBack$1, { data: (_q = (_p = (_o = (_m = globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.multiPosts) === null || _m === void 0 ? void 0 : _m[0]) === null || _o === void 0 ? void 0 : _o.item) === null || _p === void 0 ? void 0 : _p.props) === null || _q === void 0 ? void 0 : _q.backButton, minusHeight: minusHeight, tagHeight: tagHeight, onClick: () => {
|
|
19553
|
-
var _a, _b;
|
|
19554
|
-
const item = visList === null || visList === void 0 ? void 0 : visList[activeIndex];
|
|
19555
|
-
bffEventReport === null || bffEventReport === void 0 ? void 0 : bffEventReport({
|
|
19556
|
-
eventInfo: {
|
|
19557
|
-
eventSubject: 'backMultiPostClick',
|
|
19558
|
-
eventDescription: 'backMultiPostClick',
|
|
19559
|
-
traceInfo: ((_a = item === null || item === void 0 ? void 0 : item.video) === null || _a === void 0 ? void 0 : _a.traceInfo) || ((_b = item === null || item === void 0 ? void 0 : item.product) === null || _b === void 0 ? void 0 : _b.traceInfo) || ''
|
|
19565
|
+
return (React.createElement("div", { id: 'sxp-render', className: 'clc-sxp-container' },
|
|
19566
|
+
(data === null || data === void 0 ? void 0 : data.length) < 1 && loading ? (React.createElement("div", { style: { height, width: containerWidth, display: 'flex', justifyContent: 'center', alignItems: 'center' } },
|
|
19567
|
+
React.createElement("img", { width: 64, height: 64, src: loadingImage, alt: 'loading...', style: { objectFit: 'contain' } }))) : (React.createElement("div", { style: Object.assign({}, ((globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.textUnderlineOffset) && { textUnderlineOffset: `${globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.textUnderlineOffset}px` })) },
|
|
19568
|
+
waterFallData && (React.createElement(Navbar$1, { icon: img, styles: { background: 'rgba(0,0,0,.3)', color: '#fff', top: `${minusHeight}px` }, textStyle: Object.assign(Object.assign({}, (_e = (_d = (_c = (_b = (_a = globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.hashTag) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.item) === null || _c === void 0 ? void 0 : _c.props) === null || _d === void 0 ? void 0 : _d.textStyles) === null || _e === void 0 ? void 0 : _e.hashTagTitle), { color: '#fff' }), onClose: () => {
|
|
19569
|
+
const isEq = lodash.isEqual(rtcList, cacheRtcList);
|
|
19570
|
+
if (!isEq && cacheRtcList && (cacheRtcList === null || cacheRtcList === void 0 ? void 0 : cacheRtcList.length)) {
|
|
19571
|
+
setRtcList === null || setRtcList === void 0 ? void 0 : setRtcList(cacheRtcList);
|
|
19560
19572
|
}
|
|
19561
|
-
|
|
19562
|
-
|
|
19563
|
-
|
|
19564
|
-
|
|
19565
|
-
|
|
19566
|
-
|
|
19567
|
-
|
|
19568
|
-
|
|
19569
|
-
|
|
19570
|
-
|
|
19571
|
-
|
|
19572
|
-
|
|
19573
|
-
|
|
19574
|
-
|
|
19575
|
-
|
|
19576
|
-
|
|
19577
|
-
|
|
19578
|
-
|
|
19579
|
-
|
|
19580
|
-
|
|
19581
|
-
|
|
19582
|
-
|
|
19583
|
-
|
|
19584
|
-
|
|
19585
|
-
|
|
19573
|
+
setOpenHashtag === null || setOpenHashtag === void 0 ? void 0 : setOpenHashtag(true);
|
|
19574
|
+
} })),
|
|
19575
|
+
renderLogo,
|
|
19576
|
+
React.createElement(Tagbar$1, { tagList: tagList, setActiveIndex: setActiveIndex, style: {
|
|
19577
|
+
top: minusHeight
|
|
19578
|
+
} }),
|
|
19579
|
+
((_f = globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.backButton) === null || _f === void 0 ? void 0 : _f.enable) && !channel && !openMultiPosts && !waterFallData && (React.createElement(NavBack$1, { data: globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.backButton, minusHeight: minusHeight, tagHeight: tagHeight, onClick: () => history === null || history === void 0 ? void 0 : history.back() })),
|
|
19580
|
+
((((_l = (_k = (_j = (_h = (_g = globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.multiPosts) === null || _g === void 0 ? void 0 : _g[0]) === null || _h === void 0 ? void 0 : _h.item) === null || _j === void 0 ? void 0 : _j.props) === null || _k === void 0 ? void 0 : _k.backButton) === null || _l === void 0 ? void 0 : _l.enable) && channel) || openMultiPosts) &&
|
|
19581
|
+
!waterFallData && (React.createElement(NavBack$1, { data: (_q = (_p = (_o = (_m = globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.multiPosts) === null || _m === void 0 ? void 0 : _m[0]) === null || _o === void 0 ? void 0 : _o.item) === null || _p === void 0 ? void 0 : _p.props) === null || _q === void 0 ? void 0 : _q.backButton, minusHeight: minusHeight, tagHeight: tagHeight, onClick: () => {
|
|
19582
|
+
var _a, _b;
|
|
19583
|
+
const item = visList === null || visList === void 0 ? void 0 : visList[activeIndex];
|
|
19584
|
+
bffEventReport === null || bffEventReport === void 0 ? void 0 : bffEventReport({
|
|
19585
|
+
eventInfo: {
|
|
19586
|
+
eventSubject: 'backMultiPostClick',
|
|
19587
|
+
eventDescription: 'backMultiPostClick',
|
|
19588
|
+
traceInfo: ((_a = item === null || item === void 0 ? void 0 : item.video) === null || _a === void 0 ? void 0 : _a.traceInfo) || ((_b = item === null || item === void 0 ? void 0 : item.product) === null || _b === void 0 ? void 0 : _b.traceInfo) || ''
|
|
19589
|
+
}
|
|
19590
|
+
});
|
|
19591
|
+
location === null || location === void 0 ? void 0 : location.reload();
|
|
19592
|
+
} })),
|
|
19593
|
+
isShowFingerTip ? (React.createElement(FingerSwipeTip, { imageUrl: globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.swipeTipIcon, style: { top: `${50 - ((_r = globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.swipeTipOffset) !== null && _r !== void 0 ? _r : 0)}%` }, duration: globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.swiperTipAniDur })) : null,
|
|
19594
|
+
React.createElement(Swiper, { style: {
|
|
19595
|
+
marginTop: tagHeight
|
|
19596
|
+
}, ref: swiperRef, onSlideChange: () => {
|
|
19597
|
+
swiperRef.current.swiper.allowTouchMove = false;
|
|
19598
|
+
setTimeout(() => {
|
|
19599
|
+
swiperRef.current.swiper.allowTouchMove = true;
|
|
19600
|
+
}, 500);
|
|
19601
|
+
}, onActiveIndexChange: (swiper) => {
|
|
19602
|
+
setActiveIndex(swiper.activeIndex);
|
|
19603
|
+
if (openHashtag)
|
|
19604
|
+
return;
|
|
19605
|
+
// 处理上滑下滑事件
|
|
19606
|
+
handleScrollEvent(swiper);
|
|
19607
|
+
if (waterFallData || isEditor || isDiyH5)
|
|
19608
|
+
return;
|
|
19609
|
+
if ((swiper === null || swiper === void 0 ? void 0 : swiper.activeIndex) + 1 >= (data === null || data === void 0 ? void 0 : data.length)) {
|
|
19610
|
+
if (!isLoadMore) {
|
|
19611
|
+
setIsLoadMore(true);
|
|
19612
|
+
loadVideos === null || loadVideos === void 0 ? void 0 : loadVideos(pageNum).then((res) => {
|
|
19613
|
+
var _a;
|
|
19614
|
+
setIsLoadMore(false);
|
|
19615
|
+
if (res && ((_a = res === null || res === void 0 ? void 0 : res.recList) === null || _a === void 0 ? void 0 : _a.length) > 0) {
|
|
19616
|
+
setPageNum(pageNum + 1);
|
|
19617
|
+
}
|
|
19618
|
+
});
|
|
19586
19619
|
}
|
|
19587
|
-
setIsLoadMore(true);
|
|
19588
|
-
loadVideos === null || loadVideos === void 0 ? void 0 : loadVideos(pageNum).then((res) => {
|
|
19589
|
-
var _a;
|
|
19590
|
-
setIsLoadMore(false);
|
|
19591
|
-
if (res && ((_a = res === null || res === void 0 ? void 0 : res.recList) === null || _a === void 0 ? void 0 : _a.length) > 0) {
|
|
19592
|
-
setPageNum(pageNum + 1);
|
|
19593
|
-
}
|
|
19594
|
-
});
|
|
19595
19620
|
}
|
|
19596
|
-
}
|
|
19597
|
-
|
|
19598
|
-
|
|
19599
|
-
|
|
19600
|
-
|
|
19601
|
-
|
|
19602
|
-
|
|
19603
|
-
|
|
19621
|
+
}, direction: 'vertical', height: height },
|
|
19622
|
+
renderView,
|
|
19623
|
+
renderLikeButton(visList[activeIndex], activeIndex, !!(globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.likeIconFixed)),
|
|
19624
|
+
renderToggleButton(!!(globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.muteIconFixed))),
|
|
19625
|
+
React.createElement(WaterFall$1, Object.assign({}, (_u = (_t = (_s = globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.hashTag) === null || _s === void 0 ? void 0 : _s[0]) === null || _t === void 0 ? void 0 : _t.item) === null || _u === void 0 ? void 0 : _u.props)),
|
|
19626
|
+
React.createElement(ConsentPopup, { resolver: resolver, globalConfig: globalConfig }),
|
|
19627
|
+
openMultiPosts && (React.createElement(MultiPosts$2, Object.assign({}, (_x = (_w = (_v = globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.multiPosts) === null || _v === void 0 ? void 0 : _v[0]) === null || _w === void 0 ? void 0 : _w.item) === null || _x === void 0 ? void 0 : _x.props, (_0 = (_z = (_y = globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.multiPosts) === null || _y === void 0 ? void 0 : _y[0]) === null || _z === void 0 ? void 0 : _z.item) === null || _0 === void 0 ? void 0 : _0.event, { style: { position: 'fixed', top: 0, left: 0, right: 0 } }))))),
|
|
19628
|
+
(window === null || window === void 0 ? void 0 : window.OnetrustActiveGroups) && (globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.enableCookieSetting) && (React.createElement("div", { style: { position: 'fixed', bottom: 0, left: 0, right: 0, width: '100%', zIndex: 10, backgroundColor: '#000', fontSize: 0 } },
|
|
19629
|
+
React.createElement("button", { id: 'ot-sdk-btn', className: 'ot-sdk-show-settings', style: { textDecoration: 'underline', width: 'fit-content', border: 'none', lineHeight: '24px', fontSize: '10px', color: '#fff', padding: '0 20px' } }, "Cookie settings")))));
|
|
19604
19630
|
};
|
|
19605
19631
|
var SxpPageRender$1 = React.memo(SxpPageRender);
|
|
19606
19632
|
|
|
@@ -19636,7 +19662,7 @@ Made in Italy` })));
|
|
|
19636
19662
|
}, []);
|
|
19637
19663
|
const PAUSE_ICON = useIconLink('/pb_static/06f28a2025c74c1cb49be6767316d827.png');
|
|
19638
19664
|
const handlePlaying = React.useCallback(() => {
|
|
19639
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o
|
|
19665
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o;
|
|
19640
19666
|
setIsPauseVideo(false);
|
|
19641
19667
|
const item = data[index];
|
|
19642
19668
|
if (item && ((_a = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _a === void 0 ? void 0 : _a.duration)) {
|
|
@@ -19649,15 +19675,14 @@ Made in Italy` })));
|
|
|
19649
19675
|
eventSubject: 'playVideo',
|
|
19650
19676
|
eventDescription: 'User played the video',
|
|
19651
19677
|
contentId: (_h = (_g = item === null || item === void 0 ? void 0 : item.video) === null || _g === void 0 ? void 0 : _g.itemId) !== null && _h !== void 0 ? _h : '',
|
|
19652
|
-
|
|
19653
|
-
contentName: (_o = (_m = item === null || item === void 0 ? void 0 : item.video) === null || _m === void 0 ? void 0 : _m.title) !== null && _o !== void 0 ? _o : '',
|
|
19678
|
+
contentName: (_k = (_j = item === null || item === void 0 ? void 0 : item.video) === null || _j === void 0 ? void 0 : _j.title) !== null && _k !== void 0 ? _k : '',
|
|
19654
19679
|
playType,
|
|
19655
19680
|
startTime: videoCurrentTime,
|
|
19656
19681
|
videoDuration,
|
|
19657
|
-
contentTags: JSON.stringify((
|
|
19682
|
+
contentTags: JSON.stringify((_m = (_l = item === null || item === void 0 ? void 0 : item.video) === null || _l === void 0 ? void 0 : _l.tags) !== null && _m !== void 0 ? _m : []),
|
|
19658
19683
|
position: index + '',
|
|
19659
19684
|
contentFormat: 'video',
|
|
19660
|
-
traceInfo: (
|
|
19685
|
+
traceInfo: (_o = item === null || item === void 0 ? void 0 : item.video) === null || _o === void 0 ? void 0 : _o.traceInfo
|
|
19661
19686
|
}
|
|
19662
19687
|
});
|
|
19663
19688
|
setIsFirstPlay(false);
|
|
@@ -19696,7 +19721,7 @@ Made in Italy` })));
|
|
|
19696
19721
|
}
|
|
19697
19722
|
}, [isLoadFinish]);
|
|
19698
19723
|
const onPause = React.useCallback(() => {
|
|
19699
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o
|
|
19724
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o;
|
|
19700
19725
|
const item = data[index];
|
|
19701
19726
|
const videoDuration = ((_b = (_a = videoRef.current) === null || _a === void 0 ? void 0 : _a.duration) !== null && _b !== void 0 ? _b : 0).toFixed(2);
|
|
19702
19727
|
const videoCurrentTime = ((_d = (_c = videoRef.current) === null || _c === void 0 ? void 0 : _c.currentTime) !== null && _d !== void 0 ? _d : 0).toFixed(2);
|
|
@@ -19707,15 +19732,14 @@ Made in Italy` })));
|
|
|
19707
19732
|
eventSubject: 'playOverVideo',
|
|
19708
19733
|
eventDescription: 'User finished playing the video',
|
|
19709
19734
|
contentId: (_h = (_g = item === null || item === void 0 ? void 0 : item.video) === null || _g === void 0 ? void 0 : _g.itemId) !== null && _h !== void 0 ? _h : '',
|
|
19710
|
-
|
|
19711
|
-
contentName: (_o = (_m = item === null || item === void 0 ? void 0 : item.video) === null || _m === void 0 ? void 0 : _m.title) !== null && _o !== void 0 ? _o : '',
|
|
19735
|
+
contentName: (_k = (_j = item === null || item === void 0 ? void 0 : item.video) === null || _j === void 0 ? void 0 : _j.title) !== null && _k !== void 0 ? _k : '',
|
|
19712
19736
|
endTime: videoCurrentTime,
|
|
19713
19737
|
videoDuration,
|
|
19714
19738
|
playDuration,
|
|
19715
|
-
contentTags: JSON.stringify((
|
|
19739
|
+
contentTags: JSON.stringify((_m = (_l = item === null || item === void 0 ? void 0 : item.video) === null || _l === void 0 ? void 0 : _l.tags) !== null && _m !== void 0 ? _m : []),
|
|
19716
19740
|
position: index + '',
|
|
19717
19741
|
contentFormat: 'video',
|
|
19718
|
-
traceInfo: (
|
|
19742
|
+
traceInfo: (_o = item === null || item === void 0 ? void 0 : item.video) === null || _o === void 0 ? void 0 : _o.traceInfo
|
|
19719
19743
|
}
|
|
19720
19744
|
});
|
|
19721
19745
|
}
|
|
@@ -19901,7 +19925,7 @@ Made in Italy` })));
|
|
|
19901
19925
|
const CTA = (rec, index) => {
|
|
19902
19926
|
if ((globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.isShowCTA) === undefined || (globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.isShowCTA)) {
|
|
19903
19927
|
return (React.createElement("div", { className: 'clc-sxp-bottom-card' },
|
|
19904
|
-
React.createElement(RenderCard$1, { rec: rec, index: index, tempMap: tempMap, resolver: RESOLVER$2 })));
|
|
19928
|
+
React.createElement(RenderCard$1, { rec: rec, index: index, tempMap: tempMap, resolver: RESOLVER$2, isActive: true })));
|
|
19905
19929
|
}
|
|
19906
19930
|
return null;
|
|
19907
19931
|
};
|
|
@@ -19914,8 +19938,10 @@ Made in Italy` })));
|
|
|
19914
19938
|
React.createElement(Nudge, { nudge: nudge }),
|
|
19915
19939
|
CTA(rec, index),
|
|
19916
19940
|
React.createElement("div", null,
|
|
19917
|
-
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: (_c = (_b = rec === null || rec === void 0 ? void 0 : rec.video) === null || _b === void 0 ? void 0 : _b.title) !== null && _c !== void 0 ? _c : '', 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' }) })
|
|
19918
|
-
|
|
19941
|
+
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: (_c = (_b = rec === null || rec === void 0 ? void 0 : rec.video) === null || _b === void 0 ? void 0 : _b.title) !== null && _c !== void 0 ? _c : '', 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' }) }),
|
|
19942
|
+
React.createElement(RenderCard$1, { rec: rec, index: index, tempMap: tempMap, resolver: RESOLVER$2, includesCtaType: ['AniLink'], isActive: true })),
|
|
19943
|
+
React.createElement(Hashtag$1, { index: index, tags: (_e = (_d = rec === null || rec === void 0 ? void 0 : rec.video) === null || _d === void 0 ? void 0 : _d.hashTags) !== null && _e !== void 0 ? _e : [], itemId: (_f = rec === null || rec === void 0 ? void 0 : rec.video) === null || _f === void 0 ? void 0 : _f.itemId, itemType: ((_g = rec === null || rec === void 0 ? void 0 : rec.video) === null || _g === void 0 ? void 0 : _g.itemId) ? 'VIDEO' : null, rec: rec, hashTagStyle: hashTagStyle })),
|
|
19944
|
+
React.createElement(RenderCard$1, { rec: rec, index: index, tempMap: tempMap, resolver: RESOLVER$2, includesCtaType: ['AniLinkPopup'], isActive: true })));
|
|
19919
19945
|
}
|
|
19920
19946
|
return null;
|
|
19921
19947
|
};
|
|
@@ -20305,21 +20331,10 @@ Made in Italy` })));
|
|
|
20305
20331
|
return null;
|
|
20306
20332
|
}, [globalConfig]);
|
|
20307
20333
|
const renderBottom = (rec, index) => {
|
|
20308
|
-
var _a, _b, _c, _d
|
|
20334
|
+
var _a, _b, _c, _d;
|
|
20309
20335
|
if (rec === null || rec === void 0 ? void 0 : rec.video) {
|
|
20310
|
-
let cta = null;
|
|
20311
|
-
if ((_b = (_a = rec === null || rec === void 0 ? void 0 : rec.video) === null || _a === void 0 ? void 0 : _a.bindProducts) === null || _b === void 0 ? void 0 : _b.length) {
|
|
20312
|
-
cta = '多商品CTA';
|
|
20313
|
-
}
|
|
20314
|
-
else if ((_c = rec === null || rec === void 0 ? void 0 : rec.video) === null || _c === void 0 ? void 0 : _c.bindProduct) {
|
|
20315
|
-
cta = '商品CTA';
|
|
20316
|
-
}
|
|
20317
|
-
else {
|
|
20318
|
-
cta = (_e = (_d = rec === null || rec === void 0 ? void 0 : rec.video) === null || _d === void 0 ? void 0 : _d.bindCta) === null || _e === void 0 ? void 0 : _e.itemId;
|
|
20319
|
-
}
|
|
20320
|
-
const value = tempMap === null || tempMap === void 0 ? void 0 : tempMap[cta];
|
|
20321
20336
|
return (React.createElement(React.Fragment, null,
|
|
20322
|
-
((
|
|
20337
|
+
((_a = rec === null || rec === void 0 ? void 0 : rec.video) === null || _a === void 0 ? void 0 : _a.title) && (React.createElement("div", { style: {
|
|
20323
20338
|
background: 'repeating-linear-gradient(0deg, rgba(26, 26, 25, 0.7), hsla(0, 0%, 100%, 0))',
|
|
20324
20339
|
height: '130px',
|
|
20325
20340
|
position: 'absolute',
|
|
@@ -20330,7 +20345,7 @@ Made in Italy` })));
|
|
|
20330
20345
|
pointerEvents
|
|
20331
20346
|
} })),
|
|
20332
20347
|
React.createElement("div", { style: {
|
|
20333
|
-
marginBottom: `${(
|
|
20348
|
+
marginBottom: `${(_b = globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.bottomInfoDist) !== null && _b !== void 0 ? _b : 40}px`,
|
|
20334
20349
|
zIndex: 999,
|
|
20335
20350
|
position: 'absolute',
|
|
20336
20351
|
bottom: 0,
|
|
@@ -20339,15 +20354,15 @@ Made in Italy` })));
|
|
|
20339
20354
|
paddingTop: '20px'
|
|
20340
20355
|
} },
|
|
20341
20356
|
(globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.isShowCTA) === undefined || (globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.isShowCTA) ? (React.createElement("div", { style: {} },
|
|
20342
|
-
React.createElement(RenderCard$1, { rec: rec, index: index, tempMap: tempMap, resolver: RESOLVER$1, isActive: index === activeIndex
|
|
20357
|
+
React.createElement(RenderCard$1, { rec: rec, index: index, tempMap: tempMap, resolver: RESOLVER$1, isActive: index === activeIndex }))) : null,
|
|
20343
20358
|
React.createElement("div", null,
|
|
20344
20359
|
React.createElement(ExpandableText$1
|
|
20345
20360
|
// className='clc-sxp-bottom-text'
|
|
20346
20361
|
, {
|
|
20347
20362
|
// className='clc-sxp-bottom-text'
|
|
20348
|
-
isPost: true, foldText: tipText === null || tipText === void 0 ? void 0 : tipText.foldText, unfoldText: tipText === null || tipText === void 0 ? void 0 : tipText.unfoldText, text: (
|
|
20349
|
-
React.createElement(RenderCard$1, { rec: rec, index: index, tempMap: tempMap, resolver: RESOLVER$1, includesCtaType: ['AniLink'], isActive: index === activeIndex
|
|
20350
|
-
React.createElement(RenderCard$1, { rec: rec, index: index, tempMap: tempMap, resolver: RESOLVER$1, includesCtaType: ['AniLinkPopup'], isActive: index === activeIndex
|
|
20363
|
+
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', padding: '0 20px', fontSize: '12px' }) }),
|
|
20364
|
+
React.createElement(RenderCard$1, { rec: rec, index: index, tempMap: tempMap, resolver: RESOLVER$1, includesCtaType: ['AniLink'], isActive: index === activeIndex }))),
|
|
20365
|
+
React.createElement(RenderCard$1, { rec: rec, index: index, tempMap: tempMap, resolver: RESOLVER$1, includesCtaType: ['AniLinkPopup'], isActive: index === activeIndex })));
|
|
20351
20366
|
}
|
|
20352
20367
|
return null;
|
|
20353
20368
|
};
|