pb-sxp-ui 1.17.0 → 1.18.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +396 -324
- package/dist/index.cjs.map +1 -1
- package/dist/index.css +7 -15
- package/dist/index.js +396 -324
- 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 +396 -324
- 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 +10 -8
- package/es/core/components/DiyPortalPreview/index.js +3 -5
- package/es/core/components/DiyStoryPreview/index.js +18 -7
- package/es/core/components/SxpPageRender/ExpandableText.js +2 -2
- package/es/core/components/SxpPageRender/LikeButton/index.js +18 -16
- package/es/core/components/SxpPageRender/PictureGroup/index.d.ts +5 -0
- package/es/core/components/SxpPageRender/PictureGroup/index.js +39 -13
- package/es/core/components/SxpPageRender/RenderCard.d.ts +1 -0
- package/es/core/components/SxpPageRender/RenderCard.js +2 -14
- package/es/core/components/SxpPageRender/VideoWidget/index.js +32 -45
- package/es/core/components/SxpPageRender/WaterFall/index.js +4 -3
- package/es/core/components/SxpPageRender/index.js +57 -41
- package/es/core/context/SxpDataSourceProvider.d.ts +5 -12
- package/es/core/context/SxpDataSourceProvider.js +62 -35
- package/es/core/hooks/useEventReport.js +6 -5
- package/es/materials/sxp/consentPopup/Display/index.js +1 -1
- package/es/materials/sxp/cta/AniLinkPopup/material.js +3 -2
- package/es/materials/sxp/popup/CommodityDetail/material.js +2 -1
- package/es/materials/sxp/popup/CommodityList/index.js +5 -4
- 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 +2 -1
- package/es/materials/sxp/template/Commodity/material.js +3 -2
- package/es/materials/sxp/template/CommodityDiro/material.js +3 -2
- package/es/materials/sxp/template/CommodityDiroNew/material.js +4 -2
- package/es/materials/sxp/template/Link/material.js +4 -2
- package/es/materials/sxp/template/MultiCommodity/index.js +1 -1
- package/es/materials/sxp/template/MultiCommodity/material.js +2 -1
- package/es/materials/sxp/template/MultiCommodityDiro/index.js +1 -1
- package/es/materials/sxp/template/MultiCommodityDiro/material.js +3 -2
- package/es/materials/sxp/template/MultiCommodityDiroNew/index.js +1 -1
- package/es/materials/sxp/template/MultiCommodityDiroNew/material.js +4 -2
- package/es/materials/sxp/template/NineCommodity/material.js +3 -2
- 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 +10 -8
- package/lib/core/components/DiyPortalPreview/index.js +3 -5
- package/lib/core/components/DiyStoryPreview/index.js +18 -7
- package/lib/core/components/SxpPageRender/ExpandableText.js +2 -2
- package/lib/core/components/SxpPageRender/LikeButton/index.js +18 -16
- package/lib/core/components/SxpPageRender/PictureGroup/index.d.ts +5 -0
- package/lib/core/components/SxpPageRender/PictureGroup/index.js +38 -12
- package/lib/core/components/SxpPageRender/RenderCard.d.ts +1 -0
- package/lib/core/components/SxpPageRender/RenderCard.js +2 -14
- package/lib/core/components/SxpPageRender/VideoWidget/index.js +32 -45
- package/lib/core/components/SxpPageRender/WaterFall/index.js +4 -3
- package/lib/core/components/SxpPageRender/index.js +57 -41
- package/lib/core/context/SxpDataSourceProvider.d.ts +5 -12
- package/lib/core/context/SxpDataSourceProvider.js +62 -35
- package/lib/core/hooks/useEventReport.js +6 -5
- package/lib/materials/sxp/consentPopup/Display/index.js +1 -1
- package/lib/materials/sxp/cta/AniLinkPopup/material.js +2 -1
- package/lib/materials/sxp/popup/CommodityDetail/material.js +2 -1
- package/lib/materials/sxp/popup/CommodityList/index.js +5 -4
- 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 +2 -1
- package/lib/materials/sxp/template/Commodity/material.js +3 -2
- package/lib/materials/sxp/template/CommodityDiro/material.js +3 -2
- package/lib/materials/sxp/template/CommodityDiroNew/material.js +4 -2
- package/lib/materials/sxp/template/Link/material.js +4 -2
- package/lib/materials/sxp/template/MultiCommodity/index.js +1 -1
- package/lib/materials/sxp/template/MultiCommodity/material.js +2 -1
- package/lib/materials/sxp/template/MultiCommodityDiro/index.js +1 -1
- package/lib/materials/sxp/template/MultiCommodityDiro/material.js +3 -2
- package/lib/materials/sxp/template/MultiCommodityDiroNew/index.js +1 -1
- package/lib/materials/sxp/template/MultiCommodityDiroNew/material.js +4 -2
- package/lib/materials/sxp/template/NineCommodity/material.js +3 -2
- 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/index.cjs
CHANGED
@@ -644,6 +644,7 @@ const DEFAULT_TAG = 'FOR U';
|
|
644
644
|
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 }) => {
|
645
645
|
var _a, _b, _c, _d, _e;
|
646
646
|
const [rtcList, setRtcList] = React.useState([]);
|
647
|
+
const [firstRtcList, setFirstRtcList] = React.useState([]);
|
647
648
|
const [tagList, setTagList] = React.useState([]);
|
648
649
|
const [loading, setLoading] = React.useState(true);
|
649
650
|
const [curReqInfo, setCurReqInfo] = React.useState({ rtc: '', requestId: '' });
|
@@ -675,6 +676,10 @@ const SxpDataSourceProvider = ({ render, dataSources, utmVal, enableReportEvent
|
|
675
676
|
const [chatlabsId, setChatlabsId] = React.useState();
|
676
677
|
const finalPageData = React.useMemo(() => pageData !== null && pageData !== void 0 ? pageData : data, [pageData, data]);
|
677
678
|
const pixelPvStatusRef = React.useRef(false);
|
679
|
+
const isDiyPage = React.useMemo(() => {
|
680
|
+
var _a, _b, _c;
|
681
|
+
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);
|
682
|
+
}, [isDiyH5, finalPageData]);
|
678
683
|
const isShowConsent = React.useMemo(() => {
|
679
684
|
var _a, _b, _c, _d;
|
680
685
|
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) &&
|
@@ -737,7 +742,7 @@ const SxpDataSourceProvider = ({ render, dataSources, utmVal, enableReportEvent
|
|
737
742
|
}, [bffDataSource]);
|
738
743
|
// bff API 请求方法
|
739
744
|
const bffFetch = React.useCallback((path, options, isBota = true) => {
|
740
|
-
var _a;
|
745
|
+
var _a, _b;
|
741
746
|
if (!bffDataSource)
|
742
747
|
return;
|
743
748
|
const url = bffDataSource.url;
|
@@ -750,8 +755,9 @@ const SxpDataSourceProvider = ({ render, dataSources, utmVal, enableReportEvent
|
|
750
755
|
val.split('=')[0];
|
751
756
|
val.split('=')[1];
|
752
757
|
});
|
758
|
+
options.body = Object.assign(Object.assign({}, options.body), { productUserId: fakeUserId });
|
753
759
|
return window
|
754
|
-
.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
|
760
|
+
.fetch(`${url}/api/${path}`, Object.assign({ headers: Object.assign({ 'Content-Type': 'application/json', 'x-user-id': fakeUserId, 'tenant-id': (_b = bffDataSource === null || bffDataSource === void 0 ? void 0 : bffDataSource.headers) === null || _b === void 0 ? void 0 : _b['x-app-id'] }, bffDataSource.headers), method: options.method, body: options.type === 'beacon' && isBota
|
755
761
|
? JSON.stringify({
|
756
762
|
body: btoa(encodeURIComponent(JSON.stringify(Object.assign(Object.assign(Object.assign({}, options.body), bffDataSource.headers), { 'x-user-id': fakeUserId }))))
|
757
763
|
})
|
@@ -991,8 +997,8 @@ const SxpDataSourceProvider = ({ render, dataSources, utmVal, enableReportEvent
|
|
991
997
|
}, [bffDataSource]);
|
992
998
|
// 获取推荐视频数据
|
993
999
|
const getRecommendVideos = React.useCallback((query) => __awaiter(void 0, void 0, void 0, function* () {
|
994
|
-
var _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u;
|
995
|
-
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 })), (
|
1000
|
+
var _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x;
|
1001
|
+
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 })), (isDiyPage && { type: 'story' }));
|
996
1002
|
if (channel) {
|
997
1003
|
query = Object.assign(Object.assign({}, query), { channel: decodeURIComponent(channel) });
|
998
1004
|
}
|
@@ -1005,9 +1011,10 @@ const SxpDataSourceProvider = ({ render, dataSources, utmVal, enableReportEvent
|
|
1005
1011
|
if (val)
|
1006
1012
|
query = Object.assign(Object.assign({}, query), { channel: decodeURIComponent(val) });
|
1007
1013
|
}
|
1014
|
+
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
1015
|
if (isEditor) {
|
1009
1016
|
let pageNum = 1;
|
1010
|
-
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] }));
|
1017
|
+
query = Object.assign(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] })), (isDiy && { maxRecs: query === null || query === void 0 ? void 0 : query.maxSize }));
|
1011
1018
|
if (!(query === null || query === void 0 ? void 0 : query.channel) || isInit.current) {
|
1012
1019
|
return undefined;
|
1013
1020
|
}
|
@@ -1015,19 +1022,22 @@ const SxpDataSourceProvider = ({ render, dataSources, utmVal, enableReportEvent
|
|
1015
1022
|
let list = [];
|
1016
1023
|
let result = null;
|
1017
1024
|
const recurveRecList = (query) => __awaiter(void 0, void 0, void 0, function* () {
|
1018
|
-
var
|
1025
|
+
var _y, _z, _0, _1, _2, _3;
|
1019
1026
|
query.pageNum = pageNum;
|
1020
|
-
result = yield (
|
1027
|
+
result = isDiy ? yield (bffFetch === null || bffFetch === void 0 ? void 0 : bffFetch('v3/recommend/direct/page/view', { method: 'POST', body: query })) : yield (bffFetch === null || bffFetch === void 0 ? void 0 : bffFetch('recommend/direct_page', { method: 'POST', body: query }));
|
1021
1028
|
if (!(result === null || result === void 0 ? void 0 : result.success)) {
|
1022
1029
|
return undefined;
|
1023
1030
|
}
|
1024
1031
|
setLoading(false);
|
1025
|
-
list = list.concat((
|
1032
|
+
list = list.concat((_1 = (_0 = (_z = (_y = result === null || result === void 0 ? void 0 : result.data) === null || _y === void 0 ? void 0 : _y.recList) === null || _z === void 0 ? void 0 : _z.filter) === null || _0 === void 0 ? void 0 : _0.call(_z, (item) => (item === null || item === void 0 ? void 0 : item.product) || (item === null || item === void 0 ? void 0 : item.video))) !== null && _1 !== void 0 ? _1 : []);
|
1026
1033
|
if ((rtcList === null || rtcList === void 0 ? void 0 : rtcList.length) === 0) {
|
1027
1034
|
setRtcList(getFilterRecList(Object.assign(Object.assign({}, result === null || result === void 0 ? void 0 : result.data), { recList: list })));
|
1028
1035
|
setCacheRtcList(getFilterRecList(Object.assign(Object.assign({}, result === null || result === void 0 ? void 0 : result.data), { recList: list })));
|
1036
|
+
if (isDiyPage) {
|
1037
|
+
setFirstRtcList(getFilterRecList(Object.assign(Object.assign({}, result === null || result === void 0 ? void 0 : result.data), { recList: list })));
|
1038
|
+
}
|
1029
1039
|
}
|
1030
|
-
const isNotNullList = (
|
1040
|
+
const isNotNullList = (_3 = (_2 = result === null || result === void 0 ? void 0 : result.data) === null || _2 === void 0 ? void 0 : _2.recList) === null || _3 === void 0 ? void 0 : _3.some((item) => (item === null || item === void 0 ? void 0 : item.product) || (item === null || item === void 0 ? void 0 : item.video));
|
1031
1041
|
if (isNotNullList) {
|
1032
1042
|
pageNum = pageNum + 1;
|
1033
1043
|
yield recurveRecList(query);
|
@@ -1035,13 +1045,13 @@ const SxpDataSourceProvider = ({ render, dataSources, utmVal, enableReportEvent
|
|
1035
1045
|
});
|
1036
1046
|
yield recurveRecList(query);
|
1037
1047
|
if (!(query === null || query === void 0 ? void 0 : query.hashTag) && result)
|
1038
|
-
setCurReqInfo({ rtc: (
|
1048
|
+
setCurReqInfo({ rtc: (_p = result === null || result === void 0 ? void 0 : result.data) === null || _p === void 0 ? void 0 : _p.rtc, requestId: (_q = result === null || result === void 0 ? void 0 : result.data) === null || _q === void 0 ? void 0 : _q.requestId });
|
1039
1049
|
return Object.assign(Object.assign({}, result === null || result === void 0 ? void 0 : result.data), { recList: list });
|
1040
1050
|
}
|
1041
1051
|
if (globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.enablePreview) {
|
1042
|
-
query = Object.assign(Object.assign({}, query), { directPage: true, level: 1, pageNum: (
|
1052
|
+
query = Object.assign(Object.assign(Object.assign({}, query), { directPage: true, level: 1, pageNum: (_r = query === null || query === void 0 ? void 0 : query.pageNum) !== null && _r !== void 0 ? _r : 1 }), (isDiy && { maxRecs: query === null || query === void 0 ? void 0 : query.maxSize }));
|
1043
1053
|
}
|
1044
|
-
const result = yield (bffFetch === null || bffFetch === void 0 ? void 0 : bffFetch('v1/recommend/list', {
|
1054
|
+
const result = isDiy ? yield (bffFetch === null || bffFetch === void 0 ? void 0 : bffFetch('v3/recommend/direct/page/view', { method: 'POST', body: query })) : yield (bffFetch === null || bffFetch === void 0 ? void 0 : bffFetch('v1/recommend/list', {
|
1045
1055
|
method: 'POST',
|
1046
1056
|
body: query
|
1047
1057
|
}));
|
@@ -1051,26 +1061,31 @@ const SxpDataSourceProvider = ({ render, dataSources, utmVal, enableReportEvent
|
|
1051
1061
|
if (!(query === null || query === void 0 ? void 0 : query.hashTag))
|
1052
1062
|
setCurReqInfo({ rtc: result.data.rtc, requestId: result.data.requestId });
|
1053
1063
|
if ((globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.enablePreview) && !isEditor) {
|
1054
|
-
const isNotNullList = (
|
1064
|
+
const isNotNullList = (_t = (_s = result === null || result === void 0 ? void 0 : result.data) === null || _s === void 0 ? void 0 : _s.recList) === null || _t === void 0 ? void 0 : _t.some((item) => (item === null || item === void 0 ? void 0 : item.product) || (item === null || item === void 0 ? void 0 : item.video));
|
1055
1065
|
if (!isNotNullList) {
|
1056
1066
|
setIsNoMoreData(true);
|
1057
1067
|
}
|
1058
1068
|
}
|
1059
1069
|
let list = [];
|
1060
|
-
list = list.concat((
|
1070
|
+
list = list.concat((_x = (_w = (_v = (_u = result === null || result === void 0 ? void 0 : result.data) === null || _u === void 0 ? void 0 : _u.recList) === null || _v === void 0 ? void 0 : _v.filter) === null || _w === void 0 ? void 0 : _w.call(_v, (item) => (item === null || item === void 0 ? void 0 : item.product) || (item === null || item === void 0 ? void 0 : item.video))) !== null && _x !== void 0 ? _x : []);
|
1061
1071
|
return Object.assign(Object.assign({}, result.data), { recList: list });
|
1062
|
-
}), [bffFetch, utmVal, maxSize, defaultSize, channelQueryList, channel, chatlabsId, bffFetchAdmin]);
|
1072
|
+
}), [bffFetch, utmVal, maxSize, defaultSize, channelQueryList, channel, chatlabsId, bffFetchAdmin, isDiyPage, finalPageData, isDiyH5]);
|
1063
1073
|
const loadVideos = React.useCallback((pageNum) => __awaiter(void 0, void 0, void 0, function* () {
|
1064
|
-
var
|
1074
|
+
var _4, _5, _6, _7;
|
1065
1075
|
if (rtcList.length <= 0) {
|
1066
1076
|
return;
|
1067
1077
|
}
|
1078
|
+
if (isDiyPage && (firstRtcList === null || firstRtcList === void 0 ? void 0 : firstRtcList.length) > 0) {
|
1079
|
+
setRtcList(rtcList.concat(firstRtcList));
|
1080
|
+
setCacheRtcList(cacheRtcList.concat(firstRtcList));
|
1081
|
+
return;
|
1082
|
+
}
|
1068
1083
|
const lastItem = rtcList === null || rtcList === void 0 ? void 0 : rtcList[(rtcList === null || rtcList === void 0 ? void 0 : rtcList.length) - 1];
|
1069
|
-
const data = yield getRecommendVideos(Object.assign(Object.assign(Object.assign(Object.assign({ hashTag: waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.hashTag }, (((
|
1084
|
+
const data = yield getRecommendVideos(Object.assign(Object.assign(Object.assign(Object.assign({ hashTag: waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.hashTag }, (((_4 = lastItem === null || lastItem === void 0 ? void 0 : lastItem.product) === null || _4 === void 0 ? void 0 : _4.itemId) && { productFilter: [(_5 = lastItem === null || lastItem === void 0 ? void 0 : lastItem.product) === null || _5 === void 0 ? void 0 : _5.itemId] })), (((_6 = lastItem === null || lastItem === void 0 ? void 0 : lastItem.video) === null || _6 === void 0 ? void 0 : _6.itemId) && { contentFilter: [(_7 = lastItem === null || lastItem === void 0 ? void 0 : lastItem.video) === null || _7 === void 0 ? void 0 : _7.itemId] })), { themeTag: themeTag.current }), ((globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.enablePreview) && !isEditor && { pageNum })));
|
1070
1085
|
setRtcList(rtcList.concat(getFilterRecList(data)));
|
1071
1086
|
setCacheRtcList(cacheRtcList.concat(getFilterRecList(data)));
|
1072
1087
|
return data;
|
1073
|
-
}), [getRecommendVideos, rtcList, waterFallData, cacheRtcList]);
|
1088
|
+
}), [getRecommendVideos, rtcList, waterFallData, cacheRtcList, isDiyPage, firstRtcList]);
|
1074
1089
|
const refreshFeSession = React.useCallback((enableReSid, event) => {
|
1075
1090
|
var _a, _b, _c, _d, _e;
|
1076
1091
|
let expire = false;
|
@@ -1101,8 +1116,8 @@ const SxpDataSourceProvider = ({ render, dataSources, utmVal, enableReportEvent
|
|
1101
1116
|
// 用户信息都是公共的
|
1102
1117
|
if (!userInfo) {
|
1103
1118
|
userInfo = {
|
1104
|
-
|
1105
|
-
|
1119
|
+
productUserId: fakeUserId // 后端逻辑会从请求头获取,所以不需要传
|
1120
|
+
// tpChannelId: 'H5' // 后端处理
|
1106
1121
|
};
|
1107
1122
|
}
|
1108
1123
|
const sessionID = storeAndLoadFeSessionId();
|
@@ -1136,7 +1151,8 @@ const SxpDataSourceProvider = ({ render, dataSources, utmVal, enableReportEvent
|
|
1136
1151
|
layoutVariantId,
|
1137
1152
|
globalConfig,
|
1138
1153
|
playbookType,
|
1139
|
-
bffDataSource
|
1154
|
+
bffDataSource,
|
1155
|
+
fakeUserId
|
1140
1156
|
]);
|
1141
1157
|
const getEventParamsByJson = React.useCallback((json, product) => {
|
1142
1158
|
var _a, _b, _c;
|
@@ -1269,38 +1285,40 @@ const SxpDataSourceProvider = ({ render, dataSources, utmVal, enableReportEvent
|
|
1269
1285
|
}
|
1270
1286
|
}, [bffFetch, enableReportEvent, enabledMetaConversionApi, globalConfig, bffDataSource, getEventParamsByJson]);
|
1271
1287
|
const bffMutateLike = React.useCallback((body) => __awaiter(void 0, void 0, void 0, function* () {
|
1288
|
+
body = Object.assign(Object.assign({}, body), { productUserId: fakeUserId });
|
1272
1289
|
const res = yield (bffFetch === null || bffFetch === void 0 ? void 0 : bffFetch('v1/recommend/like', { method: 'POST', body }));
|
1273
1290
|
return res === null || res === void 0 ? void 0 : res.success;
|
1274
|
-
}), [bffFetch]);
|
1291
|
+
}), [bffFetch, fakeUserId]);
|
1275
1292
|
const bffMutateUnlike = React.useCallback((body) => __awaiter(void 0, void 0, void 0, function* () {
|
1293
|
+
body = Object.assign(Object.assign({}, body), { productUserId: fakeUserId });
|
1276
1294
|
const res = yield (bffFetch === null || bffFetch === void 0 ? void 0 : bffFetch('v1/recommend/unlike', { method: 'POST', body }));
|
1277
1295
|
return res === null || res === void 0 ? void 0 : res.success;
|
1278
|
-
}), [bffFetch]);
|
1296
|
+
}), [bffFetch, fakeUserId]);
|
1279
1297
|
const bffSubmitForm = React.useCallback((body) => __awaiter(void 0, void 0, void 0, function* () {
|
1280
1298
|
const res = yield (bffFetch === null || bffFetch === void 0 ? void 0 : bffFetch('v1/customform', { method: 'POST', body }));
|
1281
1299
|
return res === null || res === void 0 ? void 0 : res.success;
|
1282
1300
|
}), [bffFetch]);
|
1283
1301
|
// 获取 Tag
|
1284
1302
|
const bffGetTagList = React.useCallback((data) => __awaiter(void 0, void 0, void 0, function* () {
|
1285
|
-
var
|
1286
|
-
const isShowTag = !!((
|
1303
|
+
var _8, _9, _10, _11, _12, _13, _14, _15;
|
1304
|
+
const isShowTag = !!((_10 = (_9 = (_8 = data === null || data === void 0 ? void 0 : data.data) === null || _8 === void 0 ? void 0 : _8.sxpPageConf) === null || _9 === void 0 ? void 0 : _9.globalConfig) === null || _10 === void 0 ? void 0 : _10.isShowTag);
|
1287
1305
|
if (!utmVal || !isShowTag)
|
1288
1306
|
return;
|
1289
1307
|
try {
|
1290
|
-
const val = (
|
1308
|
+
const val = (_13 = (_12 = (_11 = splitUrlParams(utmVal)) === null || _11 === void 0 ? void 0 : _11.filter((val) => {
|
1291
1309
|
var _a, _b;
|
1292
1310
|
const key = val.split('=')[0];
|
1293
1311
|
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);
|
1294
|
-
})) === null ||
|
1312
|
+
})) === null || _12 === void 0 ? void 0 : _12.join('&')) !== null && _13 !== void 0 ? _13 : '';
|
1295
1313
|
const result = yield (bffFetch === null || bffFetch === void 0 ? void 0 : bffFetch('v1/tag/list', { method: 'GET', query: { channel: decodeURIComponent(val) } }));
|
1296
|
-
setTagList((
|
1314
|
+
setTagList((_15 = (_14 = result === null || result === void 0 ? void 0 : result.data) === null || _14 === void 0 ? void 0 : _14.tags) !== null && _15 !== void 0 ? _15 : []);
|
1297
1315
|
}
|
1298
1316
|
catch (e) {
|
1299
1317
|
console.log('e', e);
|
1300
1318
|
}
|
1301
1319
|
}), [bffFetch, utmVal]);
|
1302
1320
|
const ctaEvent = React.useCallback((eventInfo, rec, product, position) => {
|
1303
|
-
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;
|
1321
|
+
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, _14;
|
1304
1322
|
const cta = product === null || product === void 0 ? void 0 : product.bindCta;
|
1305
1323
|
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);
|
1306
1324
|
let fromKName = '';
|
@@ -1318,7 +1336,7 @@ const SxpDataSourceProvider = ({ render, dataSources, utmVal, enableReportEvent
|
|
1318
1336
|
}
|
1319
1337
|
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;
|
1320
1338
|
bffEventReport === null || bffEventReport === void 0 ? void 0 : bffEventReport({
|
1321
|
-
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: (
|
1339
|
+
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 : '', sceneId: (_x = (_w = (_v = rec === null || rec === void 0 ? void 0 : rec.video) === null || _v === void 0 ? void 0 : _v.scene) === null || _w === void 0 ? void 0 : _w.sceneId) !== null && _x !== void 0 ? _x : '', productId: isProd ? product === null || product === void 0 ? void 0 : product.itemId : '', traceInfo: (_13 = (_10 = (_5 = (_1 = (_y = cta === null || cta === void 0 ? void 0 : cta.traceInfo) !== null && _y !== void 0 ? _y : (_0 = (_z = rec === null || rec === void 0 ? void 0 : rec.video) === null || _z === void 0 ? void 0 : _z.bindCta) === null || _0 === void 0 ? void 0 : _0.traceInfo) !== null && _1 !== void 0 ? _1 : (_4 = (_3 = (_2 = rec === null || rec === void 0 ? void 0 : rec.video) === null || _2 === void 0 ? void 0 : _2.bindProduct) === null || _3 === void 0 ? void 0 : _3.bindCta) === null || _4 === void 0 ? void 0 : _4.traceInfo) !== null && _5 !== void 0 ? _5 : (_9 = (_8 = (_7 = (_6 = rec === null || rec === void 0 ? void 0 : rec.video) === null || _6 === void 0 ? void 0 : _6.bindProducts) === null || _7 === void 0 ? void 0 : _7[0]) === null || _8 === void 0 ? void 0 : _8.bindCta) === null || _9 === void 0 ? void 0 : _9.traceInfo) !== null && _10 !== void 0 ? _10 : (_12 = (_11 = rec === null || rec === void 0 ? void 0 : rec.product) === null || _11 === void 0 ? void 0 : _11.bindCta) === null || _12 === void 0 ? void 0 : _12.traceInfo) !== null && _13 !== void 0 ? _13 : '', fromKName, fromKPage: (_14 = location === null || location === void 0 ? void 0 : location.href) !== null && _14 !== void 0 ? _14 : '', contentFormat })
|
1322
1340
|
});
|
1323
1341
|
}, [bffEventReport, isFromHashtag]);
|
1324
1342
|
const h5EnterLink = React.useCallback(() => {
|
@@ -1353,10 +1371,10 @@ const SxpDataSourceProvider = ({ render, dataSources, utmVal, enableReportEvent
|
|
1353
1371
|
});
|
1354
1372
|
}, [bffEventReport]);
|
1355
1373
|
const getAccount = React.useCallback(() => __awaiter(void 0, void 0, void 0, function* () {
|
1356
|
-
var
|
1374
|
+
var _16, _17;
|
1357
1375
|
const res = yield (bffFetch === null || bffFetch === void 0 ? void 0 : bffFetch('v1/account', { method: 'GET' }));
|
1358
|
-
setChatlabsId((
|
1359
|
-
return ((
|
1376
|
+
setChatlabsId((_16 = res === null || res === void 0 ? void 0 : res.data) === null || _16 === void 0 ? void 0 : _16.chatLabsId);
|
1377
|
+
return ((_17 = res === null || res === void 0 ? void 0 : res.data) === null || _17 === void 0 ? void 0 : _17.consentResult) === 'true';
|
1360
1378
|
}), [bffFetch]);
|
1361
1379
|
const accountSonsent = React.useCallback((consentResult) => __awaiter(void 0, void 0, void 0, function* () {
|
1362
1380
|
const res = yield (bffFetch === null || bffFetch === void 0 ? void 0 : bffFetch('v1/account/consent', {
|
@@ -1420,6 +1438,9 @@ const SxpDataSourceProvider = ({ render, dataSources, utmVal, enableReportEvent
|
|
1420
1438
|
}
|
1421
1439
|
setRtcList(list);
|
1422
1440
|
setCacheRtcList(list);
|
1441
|
+
if (isDiyPage) {
|
1442
|
+
setFirstRtcList(list);
|
1443
|
+
}
|
1423
1444
|
bffGetTagList(curData !== null && curData !== void 0 ? curData : finalPageData);
|
1424
1445
|
if (channel) {
|
1425
1446
|
const item = list === null || list === void 0 ? void 0 : list[0];
|
@@ -1439,7 +1460,7 @@ const SxpDataSourceProvider = ({ render, dataSources, utmVal, enableReportEvent
|
|
1439
1460
|
});
|
1440
1461
|
setLoading(false);
|
1441
1462
|
});
|
1442
|
-
}, [isShowConsent, channel]);
|
1463
|
+
}, [isShowConsent, channel, isDiyPage]);
|
1443
1464
|
// cms预览
|
1444
1465
|
React.useEffect(() => {
|
1445
1466
|
if (!isPreview)
|
@@ -1455,12 +1476,15 @@ const SxpDataSourceProvider = ({ render, dataSources, utmVal, enableReportEvent
|
|
1455
1476
|
}
|
1456
1477
|
setRtcList(list);
|
1457
1478
|
setCacheRtcList(list);
|
1479
|
+
if (isDiyPage) {
|
1480
|
+
setFirstRtcList(list);
|
1481
|
+
}
|
1458
1482
|
}
|
1459
1483
|
})
|
1460
1484
|
.finally(() => {
|
1461
1485
|
setLoading(false);
|
1462
1486
|
});
|
1463
|
-
}, [getRecommendVideos, bffGetTagList, channel]);
|
1487
|
+
}, [getRecommendVideos, bffGetTagList, channel, isDiyPage]);
|
1464
1488
|
const defaultLoadingImage = useIconLink('/pb_static/a65d23c5893c49d7aaaa81681d3179e2.gif', appDomain);
|
1465
1489
|
return (React.createElement(SxpDataSourceContext.Provider, { value: {
|
1466
1490
|
rtcList,
|
@@ -1518,7 +1542,8 @@ const SxpDataSourceProvider = ({ render, dataSources, utmVal, enableReportEvent
|
|
1518
1542
|
refreshFeSession,
|
1519
1543
|
getAccount,
|
1520
1544
|
accountSonsent,
|
1521
|
-
isDiyH5
|
1545
|
+
isDiyH5: isDiyPage,
|
1546
|
+
firstRtcList
|
1522
1547
|
} }, 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({
|
1523
1548
|
rtcList,
|
1524
1549
|
mutateLike: bffMutateLike,
|
@@ -1979,14 +2004,14 @@ var settingRender$f = [
|
|
1979
2004
|
* @Author: binruan@chatlabs.com
|
1980
2005
|
* @Date: 2024-03-12 10:59:06
|
1981
2006
|
* @LastEditors: binruan@chatlabs.com
|
1982
|
-
* @LastEditTime:
|
2007
|
+
* @LastEditTime: 2025-05-09 15:30:59
|
1983
2008
|
* @FilePath: \pb-sxp-ui\src\core\hooks\useEventReport.ts
|
1984
2009
|
*
|
1985
2010
|
*/
|
1986
2011
|
function useEventReport() {
|
1987
2012
|
const { bffEventReport, popupDetailData, isFromHashtag, eventTimeList, setEventTimeList } = useSxpDataSource();
|
1988
2013
|
const jumpToWeb = React.useCallback((e, data, product, cta, position, traceInfo) => {
|
1989
|
-
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;
|
2014
|
+
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, _14, _15, _16;
|
1990
2015
|
const i = eventTimeList === null || eventTimeList === void 0 ? void 0 : eventTimeList.findIndex((item) => item.target === (e === null || e === void 0 ? void 0 : e.target));
|
1991
2016
|
if (i !== -1) {
|
1992
2017
|
return;
|
@@ -2019,11 +2044,11 @@ function useEventReport() {
|
|
2019
2044
|
contentFormat = 'image';
|
2020
2045
|
}
|
2021
2046
|
bffEventReport === null || bffEventReport === void 0 ? void 0 : bffEventReport({
|
2022
|
-
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 : '',
|
2047
|
+
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 : '', sceneId: (_2 = (_1 = (_0 = data === null || data === void 0 ? void 0 : data.video) === null || _0 === void 0 ? void 0 : _0.scene) === null || _1 === void 0 ? void 0 : _1.sceneId) !== null && _2 !== void 0 ? _2 : '', ctatId: (_3 = cta === null || cta === void 0 ? void 0 : cta.itemId) !== null && _3 !== void 0 ? _3 : '', traceInfo: (_16 = (_13 = (_11 = (_7 = (_4 = traceInfo !== null && traceInfo !== void 0 ? traceInfo : product === null || product === void 0 ? void 0 : product.traceInfo) !== null && _4 !== void 0 ? _4 : (_6 = (_5 = data === null || data === void 0 ? void 0 : data.video) === null || _5 === void 0 ? void 0 : _5.bindProduct) === null || _6 === void 0 ? void 0 : _6.traceInfo) !== null && _7 !== void 0 ? _7 : (_10 = (_9 = (_8 = data === null || data === void 0 ? void 0 : data.video) === null || _8 === void 0 ? void 0 : _8.bindProducts) === null || _9 === void 0 ? void 0 : _9[0]) === null || _10 === void 0 ? void 0 : _10.traceInfo) !== null && _11 !== void 0 ? _11 : (_12 = data === null || data === void 0 ? void 0 : data.product) === null || _12 === void 0 ? void 0 : _12.traceInfo) !== null && _13 !== void 0 ? _13 : (_15 = (_14 = data === null || data === void 0 ? void 0 : data.video) === null || _14 === void 0 ? void 0 : _14.bindCta) === null || _15 === void 0 ? void 0 : _15.traceInfo) !== null && _16 !== void 0 ? _16 : '' }, (contentFormat && { contentFormat }))
|
2023
2048
|
});
|
2024
2049
|
}, [bffEventReport, popupDetailData, isFromHashtag, eventTimeList]);
|
2025
2050
|
const productView = React.useCallback((data, product, cta, viewTime, position) => {
|
2026
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p;
|
2051
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s;
|
2027
2052
|
let fromKName = '';
|
2028
2053
|
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))) {
|
2029
2054
|
fromKName = 'pdpPage';
|
@@ -2042,8 +2067,9 @@ function useEventReport() {
|
|
2042
2067
|
contentTags: JSON.stringify(product === null || product === void 0 ? void 0 : product.tags),
|
2043
2068
|
position: position + '',
|
2044
2069
|
contentId: (_d = data === null || data === void 0 ? void 0 : data.video) === null || _d === void 0 ? void 0 : _d.itemId,
|
2070
|
+
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 : '',
|
2045
2071
|
ctatId: cta === null || cta === void 0 ? void 0 : cta.itemId,
|
2046
|
-
traceInfo: (
|
2072
|
+
traceInfo: (_s = (_q = (_l = (_h = product === null || product === void 0 ? void 0 : product.traceInfo) !== null && _h !== void 0 ? _h : (_k = (_j = data === null || data === void 0 ? void 0 : data.video) === null || _j === void 0 ? void 0 : _j.bindProduct) === null || _k === void 0 ? void 0 : _k.traceInfo) !== null && _l !== void 0 ? _l : (_p = (_o = (_m = data === null || data === void 0 ? void 0 : data.video) === null || _m === void 0 ? void 0 : _m.bindProducts) === null || _o === void 0 ? void 0 : _o[0]) === null || _p === void 0 ? void 0 : _p.traceInfo) !== null && _q !== void 0 ? _q : (_r = data === null || data === void 0 ? void 0 : data.product) === null || _r === void 0 ? void 0 : _r.traceInfo) !== null && _s !== void 0 ? _s : '',
|
2047
2073
|
timeOnSite: Math.floor((new Date() - viewTime) / 1000) + '',
|
2048
2074
|
eventSubject: 'productView',
|
2049
2075
|
eventDescription: 'User browsed the product'
|
@@ -2639,35 +2665,6 @@ var settingRender$e = [
|
|
2639
2665
|
}
|
2640
2666
|
];
|
2641
2667
|
|
2642
|
-
/*
|
2643
|
-
* @Author: binruan@chatlabs.com
|
2644
|
-
* @Date: 2024-07-09 14:35:10
|
2645
|
-
* @LastEditors: binruan@chatlabs.com
|
2646
|
-
* @LastEditTime: 2024-07-12 17:53:02
|
2647
|
-
* @FilePath: \pb-sxp-ui\src\materials\sxp\popup\CommodityDetail\interactionRender.tsx
|
2648
|
-
*
|
2649
|
-
*/
|
2650
|
-
/*
|
2651
|
-
* @Author: binruan@chatlabs.com
|
2652
|
-
* @Date: 2024-07-05 14:08:41
|
2653
|
-
* @LastEditors: binruan@chatlabs.com
|
2654
|
-
* @LastEditTime: 2024-07-09 14:34:49
|
2655
|
-
* @FilePath: \pb-sxp-ui\src\materials\sxp\cta\AniLink\interactionRender.tsx
|
2656
|
-
*
|
2657
|
-
*/
|
2658
|
-
var interactionRender$g = [
|
2659
|
-
{
|
2660
|
-
title: '滑动事件',
|
2661
|
-
child: [
|
2662
|
-
{
|
2663
|
-
type: 'Switch',
|
2664
|
-
label: '滑动铺满全屏',
|
2665
|
-
name: ['isScrollFullScreen']
|
2666
|
-
}
|
2667
|
-
]
|
2668
|
-
}
|
2669
|
-
];
|
2670
|
-
|
2671
2668
|
/**
|
2672
2669
|
* SSR Window 4.0.2
|
2673
2670
|
* Better handling for window object in SSR environment
|
@@ -10246,7 +10243,7 @@ const CommodityGroup = ({ products, data, defImg, style, onCLick, popupDetailDat
|
|
10246
10243
|
return (React.createElement(React.Fragment, null, (item === null || item === void 0 ? void 0 : item.bindCta) ? (React.createElement(SwiperSlide, { className: css.css({
|
10247
10244
|
width: '50px',
|
10248
10245
|
height: '50px',
|
10249
|
-
|
10246
|
+
marginRight: '10px'
|
10250
10247
|
}), onClick: () => {
|
10251
10248
|
handleClick(item, index);
|
10252
10249
|
}, key: index },
|
@@ -10500,7 +10497,7 @@ const ExpandableText = ({ text, maxStr = 108, style, className, onClick, foldTex
|
|
10500
10497
|
display: '-webkit-box',
|
10501
10498
|
WebkitBoxOrient: 'vertical'
|
10502
10499
|
})), { wordBreak: 'break-word', textRendering: 'geometricPrecision', fontKerning: 'none', textSizeAdjust: '100%', boxSizing: 'border-box', contain: 'content' }), dangerouslySetInnerHTML: { __html: setFontForText(text === null || text === void 0 ? void 0 : text.replace(/\n/g, '</br>'), textStyle) } }),
|
10503
|
-
React.createElement("div", { ref: realRef, style: {
|
10500
|
+
isPost && (React.createElement("div", { ref: realRef, style: {
|
10504
10501
|
wordBreak: 'break-word',
|
10505
10502
|
textRendering: 'geometricPrecision',
|
10506
10503
|
fontKerning: 'none',
|
@@ -10512,7 +10509,7 @@ const ExpandableText = ({ text, maxStr = 108, style, className, onClick, foldTex
|
|
10512
10509
|
clipPath: 'inset(100%)',
|
10513
10510
|
transform: 'translateX(-9999px)'
|
10514
10511
|
// position: 'absolute'
|
10515
|
-
}, dangerouslySetInnerHTML: { __html: setFontForText(text === null || text === void 0 ? void 0 : text.replace(/\n/g, '</br>'), textStyle) } }),
|
10512
|
+
}, dangerouslySetInnerHTML: { __html: setFontForText(text === null || text === void 0 ? void 0 : text.replace(/\n/g, '</br>'), textStyle) } })),
|
10516
10513
|
text && isPost && isShow && (React.createElement("button", { "aria-label": isShowMore ? unfoldText || 'show less' : foldText || 'show more', style: { textDecoration: 'underline', cursor: 'pointer' }, onClick: onClick !== null && onClick !== void 0 ? onClick : handleClick, dangerouslySetInnerHTML: {
|
10517
10514
|
__html: setFontForText(isShowMore ? unfoldText || 'show less' : foldText || 'show more', textStyle)
|
10518
10515
|
} }))));
|
@@ -10845,6 +10842,35 @@ const CommodityDetail$1 = (_a) => {
|
|
10845
10842
|
};
|
10846
10843
|
var CommodityDetailComponent = React.memo(CommodityDetail$1);
|
10847
10844
|
|
10845
|
+
/*
|
10846
|
+
* @Author: binruan@chatlabs.com
|
10847
|
+
* @Date: 2024-07-09 14:35:10
|
10848
|
+
* @LastEditors: binruan@chatlabs.com
|
10849
|
+
* @LastEditTime: 2024-07-12 17:53:02
|
10850
|
+
* @FilePath: \pb-sxp-ui\src\materials\sxp\popup\CommodityDetail\interactionRender.tsx
|
10851
|
+
*
|
10852
|
+
*/
|
10853
|
+
/*
|
10854
|
+
* @Author: binruan@chatlabs.com
|
10855
|
+
* @Date: 2024-07-05 14:08:41
|
10856
|
+
* @LastEditors: binruan@chatlabs.com
|
10857
|
+
* @LastEditTime: 2024-07-09 14:34:49
|
10858
|
+
* @FilePath: \pb-sxp-ui\src\materials\sxp\cta\AniLink\interactionRender.tsx
|
10859
|
+
*
|
10860
|
+
*/
|
10861
|
+
var interactionRender$g = [
|
10862
|
+
{
|
10863
|
+
title: '滑动事件',
|
10864
|
+
child: [
|
10865
|
+
{
|
10866
|
+
type: 'Switch',
|
10867
|
+
label: '滑动铺满全屏',
|
10868
|
+
name: ['isScrollFullScreen']
|
10869
|
+
}
|
10870
|
+
]
|
10871
|
+
}
|
10872
|
+
];
|
10873
|
+
|
10848
10874
|
/*
|
10849
10875
|
* @Author: binruan@chatlabs.com
|
10850
10876
|
* @Date: 2023-07-28 18:29:57
|
@@ -10891,6 +10917,7 @@ const CommodityDetail = createMaterial(CommodityDetailComponent, {
|
|
10891
10917
|
taxInfo: {
|
10892
10918
|
color: '#000',
|
10893
10919
|
fontSize: 13,
|
10920
|
+
textAlign: 'left',
|
10894
10921
|
marginBottom: '10px'
|
10895
10922
|
}
|
10896
10923
|
},
|
@@ -11982,7 +12009,7 @@ var settingRender$b = [
|
|
11982
12009
|
type: 'Number',
|
11983
12010
|
label: '与右侧边距',
|
11984
12011
|
addonAfter: 'px',
|
11985
|
-
name: ['props', 'commodityPicture', '
|
12012
|
+
name: ['props', 'commodityPicture', 'marginRight']
|
11986
12013
|
},
|
11987
12014
|
{
|
11988
12015
|
label: '居中垂直偏移',
|
@@ -12268,11 +12295,12 @@ const CommodityList$1 = (_a) => {
|
|
12268
12295
|
React.createElement("button", Object.assign({ role: 'button', "aria-label": item === null || item === void 0 ? void 0 : item.title, tabIndex: 0, className: css.css({
|
12269
12296
|
display: 'flex',
|
12270
12297
|
alignItems: 'normal',
|
12271
|
-
width: '100%'
|
12298
|
+
width: '100%',
|
12299
|
+
textAlign: 'left'
|
12272
12300
|
}) }, props),
|
12273
12301
|
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 }),
|
12274
12302
|
React.createElement("div", { style: {
|
12275
|
-
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.
|
12303
|
+
width: `calc(100% - ${(_e = commodityPicture === null || commodityPicture === void 0 ? void 0 : commodityPicture.width) !== null && _e !== void 0 ? _e : 0}px - ${(_f = commodityPicture === null || commodityPicture === void 0 ? void 0 : commodityPicture.marginRight) !== null && _f !== void 0 ? _f : 0}px)`,
|
12276
12304
|
display: 'flex',
|
12277
12305
|
flexDirection: 'column',
|
12278
12306
|
justifyContent: 'space-between'
|
@@ -12353,7 +12381,7 @@ const CommodityList = createMaterial(CommodityListComponent, {
|
|
12353
12381
|
commodityPicture: {
|
12354
12382
|
width: 100,
|
12355
12383
|
height: 100,
|
12356
|
-
|
12384
|
+
marginRight: 10
|
12357
12385
|
},
|
12358
12386
|
commodityStyles: {
|
12359
12387
|
price: {
|
@@ -12599,7 +12627,7 @@ var settingRender$8 = [
|
|
12599
12627
|
type: 'Number',
|
12600
12628
|
label: '与右侧边距',
|
12601
12629
|
addonAfter: 'px',
|
12602
|
-
name: ['props', 'ctaTempStyles', 'img', '
|
12630
|
+
name: ['props', 'ctaTempStyles', 'img', 'marginRight']
|
12603
12631
|
},
|
12604
12632
|
{
|
12605
12633
|
label: '居中垂直偏移',
|
@@ -12860,11 +12888,12 @@ const Commodity = createMaterial(CommodityComponent, {
|
|
12860
12888
|
borderRadius: 3,
|
12861
12889
|
width: 60,
|
12862
12890
|
height: 60,
|
12863
|
-
|
12891
|
+
marginRight: 8
|
12864
12892
|
},
|
12865
12893
|
title: {
|
12866
12894
|
fontSize: 12,
|
12867
|
-
color: '#fff'
|
12895
|
+
color: '#fff',
|
12896
|
+
textAlign: 'left'
|
12868
12897
|
},
|
12869
12898
|
ctaTitle: {
|
12870
12899
|
fontSize: 10,
|
@@ -12942,11 +12971,12 @@ const Appoint = createMaterial(AppointComponent, {
|
|
12942
12971
|
borderRadius: 3,
|
12943
12972
|
width: 30,
|
12944
12973
|
height: 30,
|
12945
|
-
|
12974
|
+
marginRight: 8
|
12946
12975
|
},
|
12947
12976
|
ctaTitle: {
|
12948
12977
|
fontSize: 12,
|
12949
12978
|
color: '#fff',
|
12979
|
+
textAlign: 'left',
|
12950
12980
|
width: 130,
|
12951
12981
|
height: 20
|
12952
12982
|
}
|
@@ -13082,27 +13112,6 @@ var linkSettingRender = [
|
|
13082
13112
|
}
|
13083
13113
|
];
|
13084
13114
|
|
13085
|
-
/*
|
13086
|
-
* @Author: binruan@chatlabs.com
|
13087
|
-
* @Date: 2024-08-09 16:59:38
|
13088
|
-
* @LastEditors: binruan@chatlabs.com
|
13089
|
-
* @LastEditTime: 2024-09-09 13:59:50
|
13090
|
-
* @FilePath: \pb-sxp-ui\src\materials\sxp\template\Link\interactionRender.tsx
|
13091
|
-
*
|
13092
|
-
*/
|
13093
|
-
var interactionRender$a = [
|
13094
|
-
{
|
13095
|
-
title: '点击事件',
|
13096
|
-
child: [
|
13097
|
-
{
|
13098
|
-
type: 'link',
|
13099
|
-
name: 'onClick',
|
13100
|
-
hiddenUrl: true
|
13101
|
-
}
|
13102
|
-
]
|
13103
|
-
}
|
13104
|
-
];
|
13105
|
-
|
13106
13115
|
var styles$8 = {"tow-line-ellipsis":"index-module_tow-line-ellipsis__nkBlU","one-line-ellipsis":"index-module_one-line-ellipsis__buFw1"};
|
13107
13116
|
|
13108
13117
|
const Link$1 = (_a) => {
|
@@ -13130,6 +13139,27 @@ const Link$1 = (_a) => {
|
|
13130
13139
|
};
|
13131
13140
|
var LinkComponent = React.memo(Link$1);
|
13132
13141
|
|
13142
|
+
/*
|
13143
|
+
* @Author: binruan@chatlabs.com
|
13144
|
+
* @Date: 2024-08-09 16:59:38
|
13145
|
+
* @LastEditors: binruan@chatlabs.com
|
13146
|
+
* @LastEditTime: 2024-09-09 13:59:50
|
13147
|
+
* @FilePath: \pb-sxp-ui\src\materials\sxp\template\Link\interactionRender.tsx
|
13148
|
+
*
|
13149
|
+
*/
|
13150
|
+
var interactionRender$a = [
|
13151
|
+
{
|
13152
|
+
title: '点击事件',
|
13153
|
+
child: [
|
13154
|
+
{
|
13155
|
+
type: 'link',
|
13156
|
+
name: 'onClick',
|
13157
|
+
hiddenUrl: true
|
13158
|
+
}
|
13159
|
+
]
|
13160
|
+
}
|
13161
|
+
];
|
13162
|
+
|
13133
13163
|
var _a;
|
13134
13164
|
const Link = createMaterial(LinkComponent, {
|
13135
13165
|
displayName: '普通CTA',
|
@@ -13148,17 +13178,19 @@ const Link = createMaterial(LinkComponent, {
|
|
13148
13178
|
borderRadius: 3,
|
13149
13179
|
width: 60,
|
13150
13180
|
height: 60,
|
13151
|
-
|
13181
|
+
marginRight: 8
|
13152
13182
|
},
|
13153
13183
|
ctaTitle: {
|
13154
13184
|
fontSize: 12,
|
13155
13185
|
color: '#fff',
|
13186
|
+
textAlign: 'left',
|
13156
13187
|
width: 130,
|
13157
13188
|
height: 20
|
13158
13189
|
}
|
13159
13190
|
},
|
13160
13191
|
customTitle: {
|
13161
13192
|
style: {
|
13193
|
+
textAlign: 'left',
|
13162
13194
|
textDecoration: 'underline',
|
13163
13195
|
fontWeight: 'bold',
|
13164
13196
|
width: 130,
|
@@ -13248,11 +13280,12 @@ const CommodityDiro = createMaterial(CommodityDiroComponent, {
|
|
13248
13280
|
borderRadius: 3,
|
13249
13281
|
width: 60,
|
13250
13282
|
height: 60,
|
13251
|
-
|
13283
|
+
marginRight: 8
|
13252
13284
|
},
|
13253
13285
|
title: {
|
13254
13286
|
fontSize: 12,
|
13255
|
-
color: '#000'
|
13287
|
+
color: '#000',
|
13288
|
+
textAlign: 'left'
|
13256
13289
|
},
|
13257
13290
|
ctaTitle: {
|
13258
13291
|
fontSize: 10,
|
@@ -13343,17 +13376,19 @@ const CommodityDiroNew = createMaterial(CommodityDiroNewComponent, {
|
|
13343
13376
|
borderRadius: 8,
|
13344
13377
|
width: 78,
|
13345
13378
|
height: 78,
|
13346
|
-
|
13379
|
+
marginRight: 16
|
13347
13380
|
},
|
13348
13381
|
title: {
|
13349
13382
|
fontSize: 13,
|
13350
|
-
color: '#000'
|
13383
|
+
color: '#000',
|
13384
|
+
textAlign: 'left'
|
13351
13385
|
},
|
13352
13386
|
ctaTitle: {
|
13353
13387
|
textDecoration: 'underline',
|
13354
13388
|
fontSize: 14,
|
13355
13389
|
fontWeight: 'bold',
|
13356
13390
|
color: '#000',
|
13391
|
+
textAlign: 'left',
|
13357
13392
|
width: 150,
|
13358
13393
|
height: 20
|
13359
13394
|
}
|
@@ -13395,7 +13430,7 @@ const MultiCommodityDiro$1 = (_a) => {
|
|
13395
13430
|
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]);
|
13396
13431
|
return (React.createElement(Scroll$1, { isPadding: !!recData }, products === null || products === void 0 ? void 0 : products.map((item, itemIndex) => {
|
13397
13432
|
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
|
13398
|
-
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,
|
13433
|
+
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, marginLeft: 0, marginRight: '8px' })), tag: 'li', role: 'listitem' },
|
13399
13434
|
React.createElement(EventProvider$1, Object.assign({ rec: recData, multItem: item, multiCheckIndex: itemIndex, index: index }, props),
|
13400
13435
|
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 }),
|
13401
13436
|
React.createElement("div", { className: css.css({
|
@@ -13441,11 +13476,12 @@ const MultiCommodityDiro = createMaterial(MultiCommodityDiroComponent, {
|
|
13441
13476
|
borderRadius: 3,
|
13442
13477
|
width: 60,
|
13443
13478
|
height: 60,
|
13444
|
-
|
13479
|
+
marginRight: 8
|
13445
13480
|
},
|
13446
13481
|
title: {
|
13447
13482
|
fontSize: 12,
|
13448
|
-
color: '#000'
|
13483
|
+
color: '#000',
|
13484
|
+
textAlign: 'left'
|
13449
13485
|
},
|
13450
13486
|
ctaTitle: {
|
13451
13487
|
fontSize: 10,
|
@@ -13493,7 +13529,7 @@ const MultiCommodity$1 = (_a) => {
|
|
13493
13529
|
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]);
|
13494
13530
|
return (React.createElement(Scroll$1, { isPadding: !!recData }, products === null || products === void 0 ? void 0 : products.map((item, itemIndex) => {
|
13495
13531
|
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
|
13496
|
-
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,
|
13532
|
+
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, marginLeft: 0, marginRight: '8px' })), tag: 'li', role: 'listitem' },
|
13497
13533
|
React.createElement(EventProvider$1, Object.assign({ rec: recData, multItem: item, multiCheckIndex: itemIndex, index: index }, props),
|
13498
13534
|
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 }),
|
13499
13535
|
React.createElement("div", { className: css.css({
|
@@ -13539,11 +13575,12 @@ const MultiCommodity = createMaterial(MultiCommodityComponent, {
|
|
13539
13575
|
borderRadius: 3,
|
13540
13576
|
width: 60,
|
13541
13577
|
height: 60,
|
13542
|
-
|
13578
|
+
marginRight: 8
|
13543
13579
|
},
|
13544
13580
|
title: {
|
13545
13581
|
fontSize: 12,
|
13546
13582
|
color: '#fff',
|
13583
|
+
textAlign: 'left'
|
13547
13584
|
},
|
13548
13585
|
ctaTitle: {
|
13549
13586
|
fontSize: 10,
|
@@ -13599,7 +13636,7 @@ const MultiCommodityDiroNew$1 = (_a) => {
|
|
13599
13636
|
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]);
|
13600
13637
|
return (React.createElement(Scroll$1, { isPadding: !!recData }, products === null || products === void 0 ? void 0 : products.map((item, itemIndex) => {
|
13601
13638
|
var _a, _b, _c, _d, _e, _f, _g, _h, _j;
|
13602
|
-
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,
|
13639
|
+
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, marginLeft: 0, marginRight: '8px' })), tag: 'li', role: 'listitem' },
|
13603
13640
|
React.createElement(EventProvider$1, Object.assign({ rec: recData, multItem: item, multiCheckIndex: itemIndex, index: index }, props),
|
13604
13641
|
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 }),
|
13605
13642
|
React.createElement("div", { className: css.css({
|
@@ -13646,17 +13683,19 @@ const MultiCommodityDiroNew = createMaterial(MultiCommodityDiroNewComponent, {
|
|
13646
13683
|
borderRadius: 8,
|
13647
13684
|
width: 78,
|
13648
13685
|
height: 78,
|
13649
|
-
|
13686
|
+
marginRight: 16
|
13650
13687
|
},
|
13651
13688
|
title: {
|
13652
13689
|
fontSize: 12,
|
13653
|
-
color: '#000'
|
13690
|
+
color: '#000',
|
13691
|
+
textAlign: 'left'
|
13654
13692
|
},
|
13655
13693
|
ctaTitle: {
|
13656
13694
|
textDecoration: 'underline',
|
13657
13695
|
fontSize: 12,
|
13658
13696
|
fontWeight: 'bold',
|
13659
13697
|
color: '#000',
|
13698
|
+
textAlign: 'left',
|
13660
13699
|
width: 150,
|
13661
13700
|
height: 20
|
13662
13701
|
}
|
@@ -13751,11 +13790,12 @@ const NineCommodity = createMaterial(NineCommodityComponent, {
|
|
13751
13790
|
borderRadius: 3,
|
13752
13791
|
width: 60,
|
13753
13792
|
height: 60,
|
13754
|
-
|
13793
|
+
marginRight: 8
|
13755
13794
|
},
|
13756
13795
|
title: {
|
13757
13796
|
fontSize: 12,
|
13758
|
-
color: '#fff'
|
13797
|
+
color: '#fff',
|
13798
|
+
textAlign: 'left'
|
13759
13799
|
},
|
13760
13800
|
ctaTitle: {
|
13761
13801
|
fontSize: 10,
|
@@ -15844,7 +15884,7 @@ function WaterfallList(_a) {
|
|
15844
15884
|
* @Author: binruan@chatlabs.com
|
15845
15885
|
* @Date: 2024-01-10 10:58:24
|
15846
15886
|
* @LastEditors: binruan@chatlabs.com
|
15847
|
-
* @LastEditTime: 2025-
|
15887
|
+
* @LastEditTime: 2025-05-09 15:30:41
|
15848
15888
|
* @FilePath: \pb-sxp-ui\src\core\components\SxpPageRender\WaterFall\index.tsx
|
15849
15889
|
*
|
15850
15890
|
*/
|
@@ -15882,7 +15922,7 @@ const WaterFall = (props) => {
|
|
15882
15922
|
}
|
15883
15923
|
}, [waterFallData]);
|
15884
15924
|
const reportTagsView = React.useCallback(() => {
|
15885
|
-
var _a, _b, _c, _d, _e, _f;
|
15925
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j;
|
15886
15926
|
const rec = recData === null || recData === void 0 ? void 0 : recData.rec;
|
15887
15927
|
if (!rec)
|
15888
15928
|
return;
|
@@ -15902,9 +15942,10 @@ const WaterFall = (props) => {
|
|
15902
15942
|
bffEventReport === null || bffEventReport === void 0 ? void 0 : bffEventReport({
|
15903
15943
|
eventInfo: {
|
15904
15944
|
contentId: (_d = rec === null || rec === void 0 ? void 0 : rec.video) === null || _d === void 0 ? void 0 : _d.itemId,
|
15945
|
+
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 : '',
|
15905
15946
|
position: cacheActiveIndex + '',
|
15906
|
-
contentTags: JSON.stringify((
|
15907
|
-
traceInfo: (
|
15947
|
+
contentTags: JSON.stringify((_h = rec === null || rec === void 0 ? void 0 : rec.video) === null || _h === void 0 ? void 0 : _h.tags),
|
15948
|
+
traceInfo: (_j = rec === null || rec === void 0 ? void 0 : rec.video) === null || _j === void 0 ? void 0 : _j.traceInfo,
|
15908
15949
|
hashTags: JSON.stringify([recData === null || recData === void 0 ? void 0 : recData.hashTag]),
|
15909
15950
|
fromKName,
|
15910
15951
|
fromKPage: location === null || location === void 0 ? void 0 : location.href,
|
@@ -16675,60 +16716,6 @@ var settingRender$4 = [
|
|
16675
16716
|
}
|
16676
16717
|
];
|
16677
16718
|
|
16678
|
-
/*
|
16679
|
-
* @Author: binruan@chatlabs.com
|
16680
|
-
* @Date: 2024-07-24 14:58:40
|
16681
|
-
* @LastEditors: binruan@chatlabs.com
|
16682
|
-
* @LastEditTime: 2024-09-09 13:54:35
|
16683
|
-
* @FilePath: \pb-sxp-ui\src\materials\sxp\cta\AniLinkPopup\interactionRender.tsx
|
16684
|
-
*
|
16685
|
-
*/
|
16686
|
-
var interactionRender$2 = [
|
16687
|
-
{
|
16688
|
-
title: '点击事件',
|
16689
|
-
child: [
|
16690
|
-
{
|
16691
|
-
type: 'link',
|
16692
|
-
name: 'onClick',
|
16693
|
-
hiddenUrl: true
|
16694
|
-
}
|
16695
|
-
]
|
16696
|
-
},
|
16697
|
-
{
|
16698
|
-
title: '动画效果',
|
16699
|
-
child: [
|
16700
|
-
{
|
16701
|
-
type: 'Select',
|
16702
|
-
name: ['animation', 'name'],
|
16703
|
-
label: '动画',
|
16704
|
-
options: [
|
16705
|
-
{
|
16706
|
-
label: '默认',
|
16707
|
-
value: 1
|
16708
|
-
}
|
16709
|
-
],
|
16710
|
-
fieldProps: {
|
16711
|
-
style: {
|
16712
|
-
width: '100%'
|
16713
|
-
}
|
16714
|
-
}
|
16715
|
-
},
|
16716
|
-
{
|
16717
|
-
type: 'Number',
|
16718
|
-
label: '动画启动时间',
|
16719
|
-
name: ['animation', 'delay'],
|
16720
|
-
addonAfter: 'ms'
|
16721
|
-
},
|
16722
|
-
{
|
16723
|
-
type: 'Number',
|
16724
|
-
label: '动画持续时间',
|
16725
|
-
name: ['animation', 'duration'],
|
16726
|
-
addonAfter: 'ms'
|
16727
|
-
}
|
16728
|
-
]
|
16729
|
-
}
|
16730
|
-
];
|
16731
|
-
|
16732
16719
|
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"};
|
16733
16720
|
|
16734
16721
|
const closeIcon = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAjhJREFUWEfFlztOw0AQhmeWiJ4CCmpQ5DiRQsIJyAWg5A0lR0AIChDiCJS8ER0cADgBeRSxt4CCDgkaKiq8i+zYeWx2413HEWmiJJv9v535Z2aN8M8vFPT9z3zETD0aAUChUJjwvPFHAJhBhB3Hqd6OAsK2yyucwykAvP38eJX398Z3AJDLlVYR8ToU9Rhj25TWr9KEsKy5dULIGQCMtfZly45TvwsAstm56UwG6wA4FUFwzrdctxZBDcWSy5XWEPG8I84/GcMipdWPtgcsaz5PCHtKG0IuTiqUvjT9U/WYMG2IOPE+AP+LtCB0xKUAAyA2Xbd2o2OG0NQXvTnvhL17D7EPtH9TRCIWwkRcGYGIQgYBABuqPuHXOQBc6pw80lBGwBQiiXhsBHQhkoprA6iM6acjhDQKu5YJZW6XeOI3XJdpvfsdTu52VfXEekD8owQiXGIubpSCbhDbLu8DwKEAd+A41SOdPpE4BS0viFOtvV2iKWqUgn5x/tmS70xR01GuDSCKc86/OCcLgTyyZ0ScDGNhFAktAJV4NFJ9YyaFiAWIE+9uVkkgBgLoig8DMWAa9ro9ynkUdlW5maZDCmB6clmz0k1HH4Cs1Ezbq2p2yEpUuBOKTSZZex00RUWIrltxuuK6EOGDSbGIOPZicpMx6fny650377qNRgBgWeVFQuA+6UjVgREhGIMlSqsPUQqIbZdOOIdZQmCv2axRnU1N1+TzJYsxOEaEV8ep7frPZ7Gd0FTEdP0ft0/kMNdg0eoAAAAASUVORK5CYII=';
|
@@ -16801,6 +16788,60 @@ const AniLinkPopup$1 = (_a) => {
|
|
16801
16788
|
};
|
16802
16789
|
var AniLinkPopupComponent = React.memo(AniLinkPopup$1);
|
16803
16790
|
|
16791
|
+
/*
|
16792
|
+
* @Author: binruan@chatlabs.com
|
16793
|
+
* @Date: 2024-07-24 14:58:40
|
16794
|
+
* @LastEditors: binruan@chatlabs.com
|
16795
|
+
* @LastEditTime: 2024-09-09 13:54:35
|
16796
|
+
* @FilePath: \pb-sxp-ui\src\materials\sxp\cta\AniLinkPopup\interactionRender.tsx
|
16797
|
+
*
|
16798
|
+
*/
|
16799
|
+
var interactionRender$2 = [
|
16800
|
+
{
|
16801
|
+
title: '点击事件',
|
16802
|
+
child: [
|
16803
|
+
{
|
16804
|
+
type: 'link',
|
16805
|
+
name: 'onClick',
|
16806
|
+
hiddenUrl: true
|
16807
|
+
}
|
16808
|
+
]
|
16809
|
+
},
|
16810
|
+
{
|
16811
|
+
title: '动画效果',
|
16812
|
+
child: [
|
16813
|
+
{
|
16814
|
+
type: 'Select',
|
16815
|
+
name: ['animation', 'name'],
|
16816
|
+
label: '动画',
|
16817
|
+
options: [
|
16818
|
+
{
|
16819
|
+
label: '默认',
|
16820
|
+
value: 1
|
16821
|
+
}
|
16822
|
+
],
|
16823
|
+
fieldProps: {
|
16824
|
+
style: {
|
16825
|
+
width: '100%'
|
16826
|
+
}
|
16827
|
+
}
|
16828
|
+
},
|
16829
|
+
{
|
16830
|
+
type: 'Number',
|
16831
|
+
label: '动画启动时间',
|
16832
|
+
name: ['animation', 'delay'],
|
16833
|
+
addonAfter: 'ms'
|
16834
|
+
},
|
16835
|
+
{
|
16836
|
+
type: 'Number',
|
16837
|
+
label: '动画持续时间',
|
16838
|
+
name: ['animation', 'duration'],
|
16839
|
+
addonAfter: 'ms'
|
16840
|
+
}
|
16841
|
+
]
|
16842
|
+
}
|
16843
|
+
];
|
16844
|
+
|
16804
16845
|
/*
|
16805
16846
|
* @Author: binruan@chatlabs.com
|
16806
16847
|
* @Date: 2024-07-24 14:58:40
|
@@ -16839,6 +16880,7 @@ const AniLinkPopup = createMaterial(AniLinkPopupComponent, {
|
|
16839
16880
|
title: {
|
16840
16881
|
fontSize: 14,
|
16841
16882
|
color: '#000',
|
16883
|
+
textAlign: 'left',
|
16842
16884
|
lineHeight: 2.6
|
16843
16885
|
},
|
16844
16886
|
ctaTitle: {
|
@@ -17067,7 +17109,7 @@ const Display$1 = (_a) => {
|
|
17067
17109
|
React.createElement("span", { style: content === null || content === void 0 ? void 0 : content.style, dangerouslySetInnerHTML: {
|
17068
17110
|
__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)
|
17069
17111
|
} }),
|
17070
|
-
React.createElement("span", { style: Object.assign(Object.assign({}, interaction === null || interaction === void 0 ? void 0 : interaction.style), {
|
17112
|
+
React.createElement("span", { style: Object.assign(Object.assign({}, interaction === null || interaction === void 0 ? void 0 : interaction.style), { marginLeft: '5px' }), dangerouslySetInnerHTML: {
|
17071
17113
|
__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)
|
17072
17114
|
}, onClick: handleClick })),
|
17073
17115
|
isShowClose && (React.createElement("button", { "aria-label": 'close', className: 'consentPopupDisplay-close', onClick: handleClickClose },
|
@@ -17985,21 +18027,22 @@ const LikeButton = (_a) => {
|
|
17985
18027
|
const likeIcon = useIconLink(defaultLikeIconPath$2);
|
17986
18028
|
const unlikeIcon = useIconLink(defaultUnLikeIconPath$2);
|
17987
18029
|
const handleClick = lodash.debounce(() => __awaiter(void 0, void 0, void 0, function* () {
|
17988
|
-
var _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z;
|
18030
|
+
var _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;
|
17989
18031
|
if (state) {
|
17990
18032
|
// 先设置状态
|
17991
18033
|
setState(false);
|
17992
|
-
const result = (_e = (yield (mutateUnlike === null || mutateUnlike === void 0 ? void 0 : mutateUnlike({
|
18034
|
+
const result = (_e = (yield (mutateUnlike === null || mutateUnlike === void 0 ? void 0 : mutateUnlike({ itemId: (_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;
|
17993
18035
|
bffEventReport === null || bffEventReport === void 0 ? void 0 : bffEventReport({
|
17994
18036
|
eventInfo: {
|
17995
18037
|
eventSubject: 'favoriteContentCanceled',
|
17996
18038
|
eventDescription: 'This content was unfavorite by the user',
|
17997
18039
|
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 : '',
|
17998
|
-
|
17999
|
-
|
18040
|
+
sceneId: (_k = (_j = (_h = recData === null || recData === void 0 ? void 0 : recData.video) === null || _h === void 0 ? void 0 : _h.scene) === null || _j === void 0 ? void 0 : _j.sceneId) !== null && _k !== void 0 ? _k : '',
|
18041
|
+
contentName: (_m = (_l = recData === null || recData === void 0 ? void 0 : recData.video) === null || _l === void 0 ? void 0 : _l.title) !== null && _m !== void 0 ? _m : '',
|
18042
|
+
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 : []),
|
18000
18043
|
position: position + '',
|
18001
|
-
contentFormat: ((
|
18002
|
-
traceInfo: (
|
18044
|
+
contentFormat: ((_q = recData === null || recData === void 0 ? void 0 : recData.video) === null || _q === void 0 ? void 0 : _q.url) ? 'video' : 'image',
|
18045
|
+
traceInfo: (_r = recData === null || recData === void 0 ? void 0 : recData.video) === null || _r === void 0 ? void 0 : _r.traceInfo
|
18003
18046
|
}
|
18004
18047
|
});
|
18005
18048
|
// 如果接口调用失败,则回滚状态
|
@@ -18007,40 +18050,41 @@ const LikeButton = (_a) => {
|
|
18007
18050
|
setState(true);
|
18008
18051
|
}
|
18009
18052
|
else {
|
18010
|
-
const nRtcList = (
|
18053
|
+
const nRtcList = (_s = cacheRtcList === null || cacheRtcList === void 0 ? void 0 : cacheRtcList.map((item, index) => {
|
18011
18054
|
if (index === position) {
|
18012
18055
|
item.isCollected = false;
|
18013
18056
|
}
|
18014
18057
|
return item;
|
18015
|
-
})) !== null &&
|
18058
|
+
})) !== null && _s !== void 0 ? _s : [];
|
18016
18059
|
setCacheRtcList === null || setCacheRtcList === void 0 ? void 0 : setCacheRtcList(nRtcList);
|
18017
18060
|
}
|
18018
18061
|
}
|
18019
18062
|
else {
|
18020
18063
|
setState(true);
|
18021
|
-
const result = (
|
18064
|
+
const result = (_v = (yield (mutateLike === null || mutateLike === void 0 ? void 0 : mutateLike({ content: JSON.stringify(recData), itemId: (_u = (_t = recData === null || recData === void 0 ? void 0 : recData.video) === null || _t === void 0 ? void 0 : _t.itemId) !== null && _u !== void 0 ? _u : '' })))) !== null && _v !== void 0 ? _v : false;
|
18022
18065
|
bffEventReport === null || bffEventReport === void 0 ? void 0 : bffEventReport({
|
18023
18066
|
eventInfo: {
|
18024
18067
|
eventSubject: 'favoriteContent',
|
18025
18068
|
eventDescription: 'This content was favorite by the user',
|
18026
|
-
contentId: (
|
18027
|
-
|
18028
|
-
|
18069
|
+
contentId: (_x = (_w = recData === null || recData === void 0 ? void 0 : recData.video) === null || _w === void 0 ? void 0 : _w.itemId) !== null && _x !== void 0 ? _x : '',
|
18070
|
+
sceneId: (_0 = (_z = (_y = recData === null || recData === void 0 ? void 0 : recData.video) === null || _y === void 0 ? void 0 : _y.scene) === null || _z === void 0 ? void 0 : _z.sceneId) !== null && _0 !== void 0 ? _0 : '',
|
18071
|
+
contentName: (_2 = (_1 = recData === null || recData === void 0 ? void 0 : recData.video) === null || _1 === void 0 ? void 0 : _1.title) !== null && _2 !== void 0 ? _2 : '',
|
18072
|
+
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 : []),
|
18029
18073
|
position: position + '',
|
18030
|
-
contentFormat: ((
|
18031
|
-
traceInfo: (
|
18074
|
+
contentFormat: ((_5 = recData === null || recData === void 0 ? void 0 : recData.video) === null || _5 === void 0 ? void 0 : _5.url) ? 'video' : 'image',
|
18075
|
+
traceInfo: (_6 = recData === null || recData === void 0 ? void 0 : recData.video) === null || _6 === void 0 ? void 0 : _6.traceInfo
|
18032
18076
|
}
|
18033
18077
|
});
|
18034
18078
|
if (!result) {
|
18035
18079
|
setState(false);
|
18036
18080
|
}
|
18037
18081
|
else {
|
18038
|
-
const nRtcList = (
|
18082
|
+
const nRtcList = (_7 = cacheRtcList === null || cacheRtcList === void 0 ? void 0 : cacheRtcList.map((item, index) => {
|
18039
18083
|
if (index === position) {
|
18040
18084
|
item.isCollected = true;
|
18041
18085
|
}
|
18042
18086
|
return item;
|
18043
|
-
})) !== null &&
|
18087
|
+
})) !== null && _7 !== void 0 ? _7 : [];
|
18044
18088
|
setCacheRtcList === null || setCacheRtcList === void 0 ? void 0 : setCacheRtcList(nRtcList);
|
18045
18089
|
}
|
18046
18090
|
}
|
@@ -18077,7 +18121,7 @@ const mountVideoPlayerAtNode = (() => {
|
|
18077
18121
|
const VideoWidget$4 = React.forwardRef(({ rec, index, height, data, muted, activeIndex, videoPostConfig, videoPlayIcon, loopPlay, swiperRef }, ref) => {
|
18078
18122
|
var _a, _b;
|
18079
18123
|
const [isPauseVideo, setIsPauseVideo] = React.useState(false);
|
18080
|
-
const { bffEventReport, sxpParameter,
|
18124
|
+
const { bffEventReport, sxpParameter, firstRtcList, openHashtag, bffFbReport, isDiyH5 } = useSxpDataSource();
|
18081
18125
|
const videoStartTime = React.useRef(0);
|
18082
18126
|
const [isLoadFinish, setIsLoadFinish] = React.useState(false);
|
18083
18127
|
const { isActive } = useSwiperSlide();
|
@@ -18143,6 +18187,23 @@ const VideoWidget$4 = React.forwardRef(({ rec, index, height, data, muted, activ
|
|
18143
18187
|
return;
|
18144
18188
|
(_a = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _a === void 0 ? void 0 : _a.play();
|
18145
18189
|
}, [videoRef === null || videoRef === void 0 ? void 0 : videoRef.current]);
|
18190
|
+
const handleEnd = () => {
|
18191
|
+
var _a, _b, _c, _d, _e, _f;
|
18192
|
+
if (!videoRef.current)
|
18193
|
+
return;
|
18194
|
+
if (isDiyH5) {
|
18195
|
+
(_a = videoRef.current) === null || _a === void 0 ? void 0 : _a.pause();
|
18196
|
+
if (!loopPlayRef.current)
|
18197
|
+
return;
|
18198
|
+
if (firstRtcList && index < (firstRtcList === null || firstRtcList === void 0 ? void 0 : firstRtcList.length) - 1) {
|
18199
|
+
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;
|
18200
|
+
(_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);
|
18201
|
+
}
|
18202
|
+
}
|
18203
|
+
else {
|
18204
|
+
(_f = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _f === void 0 ? void 0 : _f.play();
|
18205
|
+
}
|
18206
|
+
};
|
18146
18207
|
const PAUSE_ICON = useIconLink('/pb_static/06f28a2025c74c1cb49be6767316d827.png');
|
18147
18208
|
const handlePlaying = React.useCallback(() => {
|
18148
18209
|
if (!(videoRef === null || videoRef === void 0 ? void 0 : videoRef.current))
|
@@ -18151,7 +18212,7 @@ const VideoWidget$4 = React.forwardRef(({ rec, index, height, data, muted, activ
|
|
18151
18212
|
setIsLoadFinish(true);
|
18152
18213
|
}, []);
|
18153
18214
|
const handleStartPlay = React.useCallback(() => __awaiter(void 0, void 0, void 0, function* () {
|
18154
|
-
var _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q;
|
18215
|
+
var _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t;
|
18155
18216
|
if (!(videoRef === null || videoRef === void 0 ? void 0 : videoRef.current))
|
18156
18217
|
return;
|
18157
18218
|
setIsPauseVideo(false);
|
@@ -18162,16 +18223,11 @@ const VideoWidget$4 = React.forwardRef(({ rec, index, height, data, muted, activ
|
|
18162
18223
|
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);
|
18163
18224
|
const playType = (isFirstPlayRef === null || isFirstPlayRef === void 0 ? void 0 : isFirstPlayRef.current) ? '0' : '1';
|
18164
18225
|
bffEventReport === null || bffEventReport === void 0 ? void 0 : bffEventReport({
|
18165
|
-
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 : '',
|
18226
|
+
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 : '', sceneId: (_o = (_m = (_l = item === null || item === void 0 ? void 0 : item.video) === null || _l === void 0 ? void 0 : _l.scene) === null || _m === void 0 ? void 0 : _m.sceneId) !== null && _o !== void 0 ? _o : '', contentName: (_q = (_p = item === null || item === void 0 ? void 0 : item.video) === null || _p === void 0 ? void 0 : _p.title) !== null && _q !== void 0 ? _q : '', playType, startTime: videoCurrentTime, videoDuration, contentTags: JSON.stringify((_s = (_r = item === null || item === void 0 ? void 0 : item.video) === null || _r === void 0 ? void 0 : _r.tags) !== null && _s !== void 0 ? _s : []), position: index + '', contentFormat: 'video', traceInfo: (_t = item === null || item === void 0 ? void 0 : item.video) === null || _t === void 0 ? void 0 : _t.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) + '' }))
|
18166
18227
|
});
|
18167
18228
|
isFirstPlayRef.current = false;
|
18168
18229
|
}
|
18169
18230
|
}), [bffEventReport, data, index, isFirstPlayRef, videoRef === null || videoRef === void 0 ? void 0 : videoRef.current]);
|
18170
|
-
const setCurrentTimeByStartTime = React.useCallback(() => {
|
18171
|
-
if (isDiyH5) {
|
18172
|
-
videoRef.current.currentTime = scene === null || scene === void 0 ? void 0 : scene.startTime;
|
18173
|
-
}
|
18174
|
-
}, []);
|
18175
18231
|
const handLoadeddata = React.useCallback(() => {
|
18176
18232
|
if (!(videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) || firstFrameSrc || !blur)
|
18177
18233
|
return;
|
@@ -18196,13 +18252,12 @@ const VideoWidget$4 = React.forwardRef(({ rec, index, height, data, muted, activ
|
|
18196
18252
|
const handleLoadedmetadata = React.useCallback(() => {
|
18197
18253
|
if (!videoRef.current)
|
18198
18254
|
return;
|
18199
|
-
setCurrentTimeByStartTime();
|
18200
18255
|
loadedTimeRef.current = new Date();
|
18201
18256
|
handleStartPlay();
|
18202
18257
|
handLoadeddata();
|
18203
18258
|
}, [videoRef.current, handLoadeddata, handleStartPlay]);
|
18204
18259
|
const handleClickVideo = React.useCallback((type) => () => {
|
18205
|
-
var _a, _b, _c, _d, _e
|
18260
|
+
var _a, _b, _c, _d, _e;
|
18206
18261
|
if (!videoRef.current)
|
18207
18262
|
return;
|
18208
18263
|
if (!isLoadFinish)
|
@@ -18223,20 +18278,17 @@ const VideoWidget$4 = React.forwardRef(({ rec, index, height, data, muted, activ
|
|
18223
18278
|
break;
|
18224
18279
|
default:
|
18225
18280
|
if (isPause) {
|
18226
|
-
|
18227
|
-
videoRef.current.currentTime = scene === null || scene === void 0 ? void 0 : scene.startTime;
|
18228
|
-
}
|
18229
|
-
(_e = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _e === void 0 ? void 0 : _e.play();
|
18281
|
+
(_d = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _d === void 0 ? void 0 : _d.play();
|
18230
18282
|
}
|
18231
18283
|
else {
|
18232
|
-
(
|
18284
|
+
(_e = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _e === void 0 ? void 0 : _e.pause();
|
18233
18285
|
}
|
18234
18286
|
setIsPauseVideo(!isPause);
|
18235
18287
|
break;
|
18236
18288
|
}
|
18237
18289
|
}, [isLoadFinish, videoRef === null || videoRef === void 0 ? void 0 : videoRef.current]);
|
18238
18290
|
const handlePause = React.useCallback(() => {
|
18239
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o;
|
18291
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r;
|
18240
18292
|
if (!(videoRef === null || videoRef === void 0 ? void 0 : videoRef.current))
|
18241
18293
|
return;
|
18242
18294
|
if (activeIndex !== index)
|
@@ -18252,14 +18304,15 @@ const VideoWidget$4 = React.forwardRef(({ rec, index, height, data, muted, activ
|
|
18252
18304
|
eventSubject: 'playOverVideo',
|
18253
18305
|
eventDescription: 'User finished playing the video',
|
18254
18306
|
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 : '',
|
18255
|
-
|
18307
|
+
sceneId: (_l = (_k = (_j = item === null || item === void 0 ? void 0 : item.video) === null || _j === void 0 ? void 0 : _j.scene) === null || _k === void 0 ? void 0 : _k.sceneId) !== null && _l !== void 0 ? _l : '',
|
18308
|
+
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 : '',
|
18256
18309
|
endTime: videoCurrentTime,
|
18257
18310
|
videoDuration,
|
18258
18311
|
playDuration,
|
18259
|
-
contentTags: JSON.stringify((
|
18312
|
+
contentTags: JSON.stringify((_q = (_p = item === null || item === void 0 ? void 0 : item.video) === null || _p === void 0 ? void 0 : _p.tags) !== null && _q !== void 0 ? _q : []),
|
18260
18313
|
position: index + '',
|
18261
18314
|
contentFormat: 'video',
|
18262
|
-
traceInfo: (
|
18315
|
+
traceInfo: (_r = item === null || item === void 0 ? void 0 : item.video) === null || _r === void 0 ? void 0 : _r.traceInfo
|
18263
18316
|
}
|
18264
18317
|
});
|
18265
18318
|
}
|
@@ -18267,27 +18320,8 @@ const VideoWidget$4 = React.forwardRef(({ rec, index, height, data, muted, activ
|
|
18267
18320
|
const handleWaiting = React.useCallback(() => {
|
18268
18321
|
setWaiting(true);
|
18269
18322
|
}, []);
|
18270
|
-
const handleTimeUpload = () => {
|
18271
|
-
if (!videoRef.current || !isDiyH5)
|
18272
|
-
return;
|
18273
|
-
setTimeout(() => {
|
18274
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j;
|
18275
|
-
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)) {
|
18276
|
-
(_c = videoRef.current) === null || _c === void 0 ? void 0 : _c.pause();
|
18277
|
-
if (!loopPlayRef.current)
|
18278
|
-
return;
|
18279
|
-
if (index === (data === null || data === void 0 ? void 0 : data.length) - 1) {
|
18280
|
-
(_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);
|
18281
|
-
}
|
18282
|
-
else {
|
18283
|
-
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;
|
18284
|
-
(_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);
|
18285
|
-
}
|
18286
|
-
}
|
18287
|
-
});
|
18288
|
-
};
|
18289
18323
|
React.useEffect(() => {
|
18290
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k
|
18324
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
|
18291
18325
|
if (!isActive)
|
18292
18326
|
return;
|
18293
18327
|
const videoSrc = videoUrl;
|
@@ -18308,7 +18342,6 @@ const VideoWidget$4 = React.forwardRef(({ rec, index, height, data, muted, activ
|
|
18308
18342
|
hls === null || hls === void 0 ? void 0 : hls.attachMedia(videoRef === null || videoRef === void 0 ? void 0 : videoRef.current);
|
18309
18343
|
hls === null || hls === void 0 ? void 0 : hls.on(Hls.Events.MANIFEST_PARSED, function () {
|
18310
18344
|
var _a;
|
18311
|
-
setCurrentTimeByStartTime();
|
18312
18345
|
(_a = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _a === void 0 ? void 0 : _a.play();
|
18313
18346
|
});
|
18314
18347
|
}
|
@@ -18322,12 +18355,11 @@ const VideoWidget$4 = React.forwardRef(({ rec, index, height, data, muted, activ
|
|
18322
18355
|
(_e = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _e === void 0 ? void 0 : _e.addEventListener('play', handleStartPlay);
|
18323
18356
|
(_f = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _f === void 0 ? void 0 : _f.addEventListener('playing', handlePlaying);
|
18324
18357
|
(_g = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _g === void 0 ? void 0 : _g.addEventListener('pause', handlePause);
|
18325
|
-
(_h = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _h === void 0 ? void 0 : _h.addEventListener('ended',
|
18358
|
+
(_h = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _h === void 0 ? void 0 : _h.addEventListener('ended', handleEnd);
|
18326
18359
|
(_j = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _j === void 0 ? void 0 : _j.addEventListener('canplay', handlePlay);
|
18327
18360
|
(_k = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _k === void 0 ? void 0 : _k.addEventListener('waiting', handleWaiting);
|
18328
|
-
(_l = videoRef.current) === null || _l === void 0 ? void 0 : _l.addEventListener('timeupdate', handleTimeUpload);
|
18329
18361
|
return () => {
|
18330
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k
|
18362
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
|
18331
18363
|
const isPause = (_a = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _a === void 0 ? void 0 : _a.paused;
|
18332
18364
|
if (!isPause)
|
18333
18365
|
handlePause();
|
@@ -18339,10 +18371,9 @@ const VideoWidget$4 = React.forwardRef(({ rec, index, height, data, muted, activ
|
|
18339
18371
|
(_e = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _e === void 0 ? void 0 : _e.removeEventListener('play', handleStartPlay);
|
18340
18372
|
(_f = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _f === void 0 ? void 0 : _f.removeEventListener('playing', handlePlaying);
|
18341
18373
|
(_g = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _g === void 0 ? void 0 : _g.removeEventListener('pause', handlePause);
|
18342
|
-
(_h = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _h === void 0 ? void 0 : _h.removeEventListener('ended',
|
18374
|
+
(_h = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _h === void 0 ? void 0 : _h.removeEventListener('ended', handleEnd);
|
18343
18375
|
(_j = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _j === void 0 ? void 0 : _j.removeEventListener('canplay', handlePlay);
|
18344
18376
|
(_k = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _k === void 0 ? void 0 : _k.removeEventListener('waiting', handleWaiting);
|
18345
|
-
(_l = videoRef.current) === null || _l === void 0 ? void 0 : _l.removeEventListener('timeupdate', handleTimeUpload);
|
18346
18377
|
};
|
18347
18378
|
}, [isActive]);
|
18348
18379
|
React.useEffect(() => {
|
@@ -18553,19 +18584,45 @@ const Picture = (props) => {
|
|
18553
18584
|
}, onLoad: onShowFirstImage }))));
|
18554
18585
|
};
|
18555
18586
|
|
18556
|
-
const PictureGroup$4 = ({ imgUrls,
|
18587
|
+
const PictureGroup$4 = React.forwardRef(({ imgUrls, data, height, rec, index, onViewImageEndEvent, onViewImageStartEvent, imgUrlsPostConfig, swiperRef }, ref) => {
|
18557
18588
|
var _a, _b;
|
18558
18589
|
const { isActive } = useSwiperSlide();
|
18559
|
-
const {
|
18590
|
+
const { firstRtcList, openHashtag, isDiyH5 } = useSxpDataSource();
|
18560
18591
|
const [isLoad, setIsLoad] = React.useState(false);
|
18561
18592
|
const [imgInfo, setImgInfo] = React.useState();
|
18562
18593
|
const [swiperActiveIndex, setSwiperActiveIndex] = React.useState(0);
|
18563
|
-
const
|
18594
|
+
const imgsSwiperRef = React.useRef();
|
18564
18595
|
const isFirstPlayRef = React.useRef(true);
|
18596
|
+
const loopPlayRef = React.useRef(true);
|
18565
18597
|
const initTime = new Date();
|
18598
|
+
React.useImperativeHandle(ref, () => {
|
18599
|
+
return {
|
18600
|
+
setLoopPlay(v) {
|
18601
|
+
loopPlayRef.current = v;
|
18602
|
+
}
|
18603
|
+
};
|
18604
|
+
});
|
18605
|
+
React.useEffect(() => {
|
18606
|
+
let timerId;
|
18607
|
+
if (isLoad && isActive && isDiyH5) {
|
18608
|
+
timerId = setTimeout(() => {
|
18609
|
+
var _a, _b, _c, _d;
|
18610
|
+
if (!loopPlayRef.current)
|
18611
|
+
return;
|
18612
|
+
if (firstRtcList && index < (firstRtcList === null || firstRtcList === void 0 ? void 0 : firstRtcList.length) - 1) {
|
18613
|
+
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;
|
18614
|
+
(_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);
|
18615
|
+
}
|
18616
|
+
}, 3000);
|
18617
|
+
}
|
18618
|
+
return () => {
|
18619
|
+
if (timerId)
|
18620
|
+
clearTimeout(timerId);
|
18621
|
+
};
|
18622
|
+
}, [isLoad, isActive, isDiyH5, index, swiperRef, firstRtcList]);
|
18566
18623
|
React.useEffect(() => {
|
18567
18624
|
if (isLoad && isActive) {
|
18568
|
-
(
|
18625
|
+
(imgsSwiperRef === null || imgsSwiperRef === void 0 ? void 0 : imgsSwiperRef.current) && imgsSwiperRef.current.swiper.autoplay.start();
|
18569
18626
|
if (openHashtag) {
|
18570
18627
|
onViewImageEndEvent(rec);
|
18571
18628
|
}
|
@@ -18575,7 +18632,7 @@ const PictureGroup$4 = ({ imgUrls, width, height, rec, index, onViewImageEndEven
|
|
18575
18632
|
}
|
18576
18633
|
}
|
18577
18634
|
else {
|
18578
|
-
(
|
18635
|
+
(imgsSwiperRef === null || imgsSwiperRef === void 0 ? void 0 : imgsSwiperRef.current) && imgsSwiperRef.current.swiper.autoplay.stop();
|
18579
18636
|
}
|
18580
18637
|
}, [rec, isActive, onViewImageEndEvent, openHashtag, index, onViewImageStartEvent, isLoad, imgInfo]);
|
18581
18638
|
const showFirstImageFn = React.useCallback((e) => __awaiter(void 0, void 0, void 0, function* () {
|
@@ -18602,13 +18659,13 @@ const PictureGroup$4 = ({ imgUrls, width, height, rec, index, onViewImageEndEven
|
|
18602
18659
|
};
|
18603
18660
|
}, [isActive, imgInfo]);
|
18604
18661
|
const handleMouseEnter = React.useCallback(() => {
|
18605
|
-
if (
|
18606
|
-
|
18662
|
+
if (imgsSwiperRef.current && imgsSwiperRef.current.swiper && isAlly) {
|
18663
|
+
imgsSwiperRef.current.swiper.autoplay.stop();
|
18607
18664
|
}
|
18608
18665
|
}, []);
|
18609
18666
|
const handleMouseLeave = React.useCallback(() => {
|
18610
|
-
if (
|
18611
|
-
|
18667
|
+
if (imgsSwiperRef.current && imgsSwiperRef.current.swiper && isAlly) {
|
18668
|
+
imgsSwiperRef.current.swiper.autoplay.start();
|
18612
18669
|
}
|
18613
18670
|
}, []);
|
18614
18671
|
const handleSlideChange = React.useCallback((swiper) => {
|
@@ -18629,7 +18686,7 @@ const PictureGroup$4 = ({ imgUrls, width, height, rec, index, onViewImageEndEven
|
|
18629
18686
|
enabled: true
|
18630
18687
|
}
|
18631
18688
|
}
|
18632
|
-
: {}), { loop: true, ref:
|
18689
|
+
: {}), { loop: true, ref: imgsSwiperRef, onSlideChange: handleSlideChange, className: css.css(Object.assign(Object.assign({ '.swiper-pagination': {
|
18633
18690
|
bottom: (_a = imgUrlsPostConfig === null || imgUrlsPostConfig === void 0 ? void 0 : imgUrlsPostConfig.marginBottom) !== null && _a !== void 0 ? _a : 0,
|
18634
18691
|
fontSize: '14px'
|
18635
18692
|
} }, ((imgUrlsPostConfig === null || imgUrlsPostConfig === void 0 ? void 0 : imgUrlsPostConfig.dotsBgColor) && {
|
@@ -18646,7 +18703,7 @@ const PictureGroup$4 = ({ imgUrls, width, height, rec, index, onViewImageEndEven
|
|
18646
18703
|
return (React.createElement(SwiperSlide, { key: srcKey, "aria-hidden": srcKey !== swiperActiveIndex },
|
18647
18704
|
React.createElement(Picture, { src: !isLoad && srcKey > 0 ? '' : url, height: height, imgUrlsPostConfig: imgUrlsPostConfig, onShowFirstImage: showFirstImageFn })));
|
18648
18705
|
}))));
|
18649
|
-
};
|
18706
|
+
});
|
18650
18707
|
var PictureGroup$5 = React.memo(PictureGroup$4);
|
18651
18708
|
|
18652
18709
|
/*
|
@@ -18767,22 +18824,10 @@ function withBindDataSource(Component) {
|
|
18767
18824
|
* @FilePath: \pb-sxp-ui\src\core\components\SxpPageRender\RenderCard.tsx
|
18768
18825
|
*
|
18769
18826
|
*/
|
18770
|
-
const RenderCard = ({ rec, index, tempMap, resolver, includesCtaType, isActive, isNineProduct }) => {
|
18771
|
-
var _a, _b, _c, _d, _e;
|
18827
|
+
const RenderCard = ({ rec, index, tempMap, resolver, includesCtaType, isActive, value, isNineProduct }) => {
|
18772
18828
|
const { schema } = useEditor();
|
18773
18829
|
if (!(rec === null || rec === void 0 ? void 0 : rec.video))
|
18774
18830
|
return null;
|
18775
|
-
let cta = null;
|
18776
|
-
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) {
|
18777
|
-
cta = '多商品CTA';
|
18778
|
-
}
|
18779
|
-
else if ((_c = rec === null || rec === void 0 ? void 0 : rec.video) === null || _c === void 0 ? void 0 : _c.bindProduct) {
|
18780
|
-
cta = '商品CTA';
|
18781
|
-
}
|
18782
|
-
else {
|
18783
|
-
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;
|
18784
|
-
}
|
18785
|
-
const value = tempMap === null || tempMap === void 0 ? void 0 : tempMap[cta];
|
18786
18831
|
const renderComp = React.useMemo(() => {
|
18787
18832
|
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;
|
18788
18833
|
// 如果includesCtaType有值,则只渲染includesCtaType包含的cta类型组件,用于在页面某处只显示某一组件
|
@@ -18810,7 +18855,7 @@ const RenderCard = ({ rec, index, tempMap, resolver, includesCtaType, isActive,
|
|
18810
18855
|
const sbf = style.backdropFilter;
|
18811
18856
|
style.backdropFilter = `blur(${sbf !== null && sbf !== void 0 ? sbf : 0}px)`;
|
18812
18857
|
}
|
18813
|
-
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,
|
18858
|
+
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, marginLeft: '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 })));
|
18814
18859
|
}
|
18815
18860
|
else {
|
18816
18861
|
return null;
|
@@ -18938,7 +18983,7 @@ var NavBack$1 = React.memo(NavBack);
|
|
18938
18983
|
* @Author: binruan@chatlabs.com
|
18939
18984
|
* @Date: 2024-03-20 10:27:31
|
18940
18985
|
* @LastEditors: binruan@chatlabs.com
|
18941
|
-
* @LastEditTime: 2025-05-
|
18986
|
+
* @LastEditTime: 2025-05-12 14:26:15
|
18942
18987
|
* @FilePath: \pb-sxp-ui\src\core\components\SxpPageRender\index.tsx
|
18943
18988
|
*
|
18944
18989
|
*/
|
@@ -18958,6 +19003,7 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight = window.inner
|
|
18958
19003
|
const skipLinkRef = React.useRef(false);
|
18959
19004
|
const [pageNum, setPageNum] = React.useState(2);
|
18960
19005
|
const videoWidgetRef = React.useRef(null);
|
19006
|
+
const pictureGroupRef = React.useRef(null);
|
18961
19007
|
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();
|
18962
19008
|
const { backMainFeed, productView, jumpToWeb } = useEventReport();
|
18963
19009
|
const isShowFingerTip = React.useMemo(() => {
|
@@ -19005,7 +19051,7 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight = window.inner
|
|
19005
19051
|
(_a = swiperRef === null || swiperRef === void 0 ? void 0 : swiperRef.current) === null || _a === void 0 ? void 0 : _a.swiper.slideTo(index);
|
19006
19052
|
}, [data, ctaType, swiperRef]);
|
19007
19053
|
const handleSessionCompleted = React.useCallback((fk) => {
|
19008
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v;
|
19054
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y;
|
19009
19055
|
const item = data === null || data === void 0 ? void 0 : data[activeIndex];
|
19010
19056
|
let fromKName = '';
|
19011
19057
|
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))) {
|
@@ -19032,12 +19078,13 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight = window.inner
|
|
19032
19078
|
eventSubject: 'sessionCompleted',
|
19033
19079
|
eventDescription: 'Session completed',
|
19034
19080
|
contentId: (_m = item === null || item === void 0 ? void 0 : item.video) === null || _m === void 0 ? void 0 : _m.itemId,
|
19035
|
-
|
19081
|
+
sceneId: (_q = (_p = (_o = item === null || item === void 0 ? void 0 : item.video) === null || _o === void 0 ? void 0 : _o.scene) === null || _p === void 0 ? void 0 : _p.sceneId) !== null && _q !== void 0 ? _q : '',
|
19082
|
+
productId: (_r = item === null || item === void 0 ? void 0 : item.product) === null || _r === void 0 ? void 0 : _r.itemId,
|
19036
19083
|
position: activeIndex + '',
|
19037
19084
|
fromKName: fk || fromKName,
|
19038
19085
|
fromKPage: location === null || location === void 0 ? void 0 : location.href,
|
19039
|
-
ctatId: (
|
19040
|
-
traceInfo: (
|
19086
|
+
ctatId: (_u = (_t = (_s = item === null || item === void 0 ? void 0 : item.video) === null || _s === void 0 ? void 0 : _s.bindCta) === null || _t === void 0 ? void 0 : _t.itemId) !== null && _u !== void 0 ? _u : '',
|
19087
|
+
traceInfo: (_y = (_w = (_v = item === null || item === void 0 ? void 0 : item.video) === null || _v === void 0 ? void 0 : _v.traceInfo) !== null && _w !== void 0 ? _w : (_x = item === null || item === void 0 ? void 0 : item.product) === null || _x === void 0 ? void 0 : _x.traceInfo) !== null && _y !== void 0 ? _y : ''
|
19041
19088
|
}
|
19042
19089
|
});
|
19043
19090
|
}, [data, bffEventReport, activeIndex, popupDetailData, tempMap, isFromHashtag, curTime]);
|
@@ -19096,8 +19143,9 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight = window.inner
|
|
19096
19143
|
refreshFeSession
|
19097
19144
|
]);
|
19098
19145
|
const handleSessionExpire = React.useCallback(lodash.debounce(() => {
|
19099
|
-
var _a;
|
19146
|
+
var _a, _b;
|
19100
19147
|
(_a = videoWidgetRef.current) === null || _a === void 0 ? void 0 : _a.setLoopPlay(false);
|
19148
|
+
(_b = pictureGroupRef.current) === null || _b === void 0 ? void 0 : _b.setLoopPlay(false);
|
19101
19149
|
refreshFeSession === null || refreshFeSession === void 0 ? void 0 : refreshFeSession(false, handleSessionCompleted);
|
19102
19150
|
}, 1000), [handleSessionCompleted, refreshFeSession]);
|
19103
19151
|
React.useEffect(() => {
|
@@ -19167,18 +19215,18 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight = window.inner
|
|
19167
19215
|
return null;
|
19168
19216
|
}, [globalConfig, activeIndex, visList]);
|
19169
19217
|
const renderContent = React.useCallback((rec, index) => {
|
19170
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
|
19218
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
|
19171
19219
|
if (rec === 'organic menu') {
|
19172
19220
|
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)));
|
19173
19221
|
}
|
19174
|
-
if ((_g = rec === null || rec === void 0 ? void 0 : rec.video) === null ||
|
19222
|
+
if (((_h = (_g = rec.video) === null || _g === void 0 ? void 0 : _g.scene) === null || _h === void 0 ? void 0 : _h.mediaUrl) || ((_j = rec === null || rec === void 0 ? void 0 : rec.video) === null || _j === void 0 ? void 0 : _j.url)) {
|
19175
19223
|
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 })));
|
19176
19224
|
}
|
19177
|
-
if ((
|
19178
|
-
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 }));
|
19225
|
+
if ((_k = rec === null || rec === void 0 ? void 0 : rec.video) === null || _k === void 0 ? void 0 : _k.imgUrls) {
|
19226
|
+
return (React.createElement(PictureGroup$5, Object.assign({ data: data }, (activeIndex === index && { ref: pictureGroupRef }), { 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, swiperRef: swiperRef })));
|
19179
19227
|
}
|
19180
|
-
if (rec.product && Array.isArray(globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.productPost) && ((
|
19181
|
-
return (
|
19228
|
+
if (rec.product && Array.isArray(globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.productPost) && ((_l = globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.productPost) === null || _l === void 0 ? void 0 : _l.length) > 0) {
|
19229
|
+
return (_m = globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.productPost) === null || _m === void 0 ? void 0 : _m.map((value, idx) => {
|
19182
19230
|
var _a, _b, _c, _d, _e, _f, _g, _h;
|
19183
19231
|
const t = resolver[(_a = value === null || value === void 0 ? void 0 : value.item) === null || _a === void 0 ? void 0 : _a.type];
|
19184
19232
|
const Component = withBindDataSource(t);
|
@@ -19216,7 +19264,7 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight = window.inner
|
|
19216
19264
|
};
|
19217
19265
|
}, [isShowMore]);
|
19218
19266
|
const renderBottom = React.useCallback((rec, index) => {
|
19219
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q;
|
19267
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t;
|
19220
19268
|
if (rec === null || rec === void 0 ? void 0 : rec.video) {
|
19221
19269
|
let cta = null;
|
19222
19270
|
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) {
|
@@ -19225,25 +19273,28 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight = window.inner
|
|
19225
19273
|
else if ((_c = rec === null || rec === void 0 ? void 0 : rec.video) === null || _c === void 0 ? void 0 : _c.bindProduct) {
|
19226
19274
|
cta = '商品CTA';
|
19227
19275
|
}
|
19276
|
+
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)) {
|
19277
|
+
cta = '服务CTA';
|
19278
|
+
}
|
19228
19279
|
else {
|
19229
|
-
cta = (
|
19280
|
+
cta = (_h = (_g = rec === null || rec === void 0 ? void 0 : rec.video) === null || _g === void 0 ? void 0 : _g.bindCta) === null || _h === void 0 ? void 0 : _h.itemId;
|
19230
19281
|
}
|
19231
19282
|
const value = tempMap === null || tempMap === void 0 ? void 0 : tempMap[cta];
|
19232
19283
|
const isNineProduct = (globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.nineProductEnable) &&
|
19233
19284
|
index === ((rtcList === null || rtcList === void 0 ? void 0 : rtcList[0]) === 'organic menu' ? 2 : 1) &&
|
19234
|
-
((
|
19285
|
+
((_j = ['MultiCommodity', 'MultiCommodityDiro', 'MultiCommodityDiroNew']) === null || _j === void 0 ? void 0 : _j.includes((_k = value === null || value === void 0 ? void 0 : value.item) === null || _k === void 0 ? void 0 : _k.type));
|
19235
19286
|
return (React.createElement(React.Fragment, null,
|
19236
|
-
isNineProduct && (React.createElement(RenderCard$1, { rec: rec, index: index, tempMap: tempMap, resolver: resolver, isActive: index === activeIndex, isNineProduct: isNineProduct })),
|
19237
|
-
((
|
19238
|
-
React.createElement("div", { className: 'clc-sxp-bottom', style: { marginBottom: `${(
|
19287
|
+
isNineProduct && (React.createElement(RenderCard$1, { rec: rec, index: index, tempMap: tempMap, resolver: resolver, isActive: index === activeIndex, value: value, isNineProduct: isNineProduct })),
|
19288
|
+
((_l = rec === null || rec === void 0 ? void 0 : rec.video) === null || _l === void 0 ? void 0 : _l.title) && !isShowMore && React.createElement("div", { className: 'clc-sxp-bottom-shadow' }),
|
19289
|
+
React.createElement("div", { className: 'clc-sxp-bottom', style: { marginBottom: `${(_m = globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.bottomInfoDist) !== null && _m !== void 0 ? _m : 40}px` } },
|
19239
19290
|
React.createElement(Nudge, { nudge: nudge }),
|
19240
19291
|
((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' },
|
19241
|
-
React.createElement(RenderCard$1, { rec: rec, index: index, tempMap: tempMap, resolver: resolver, isActive: index === activeIndex }))) : null,
|
19292
|
+
React.createElement(RenderCard$1, { rec: rec, index: index, tempMap: tempMap, resolver: resolver, isActive: index === activeIndex, value: value }))) : null,
|
19242
19293
|
React.createElement("div", null,
|
19243
|
-
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: (
|
19244
|
-
React.createElement(RenderCard$1, { rec: rec, index: index, tempMap: tempMap, resolver: resolver, includesCtaType: ['AniLink'], isActive: index === activeIndex }),
|
19245
|
-
React.createElement(Hashtag$1, { index: activeIndex, tags: (
|
19246
|
-
React.createElement(RenderCard$1, { rec: rec, index: index, tempMap: tempMap, resolver: resolver, includesCtaType: ['AniLinkPopup'], isActive: index === activeIndex })));
|
19294
|
+
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: (_p = (_o = rec === null || rec === void 0 ? void 0 : rec.video) === null || _o === void 0 ? void 0 : _o.title) !== null && _p !== void 0 ? _p : '', 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 }),
|
19295
|
+
React.createElement(RenderCard$1, { rec: rec, index: index, tempMap: tempMap, resolver: resolver, includesCtaType: ['AniLink'], isActive: index === activeIndex, value: value }),
|
19296
|
+
React.createElement(Hashtag$1, { index: activeIndex, tags: (_r = (_q = rec === null || rec === void 0 ? void 0 : rec.video) === null || _q === void 0 ? void 0 : _q.hashTags) !== null && _r !== void 0 ? _r : [], itemId: (_s = rec === null || rec === void 0 ? void 0 : rec.video) === null || _s === void 0 ? void 0 : _s.itemId, itemType: ((_t = rec === null || rec === void 0 ? void 0 : rec.video) === null || _t === void 0 ? void 0 : _t.itemId) ? 'VIDEO' : null, rec: rec, hashTagStyle: hashTagStyle, hashTagRightMargin: containerWidth - (hashTagRightMargin !== null && hashTagRightMargin !== void 0 ? hashTagRightMargin : 0) }))),
|
19297
|
+
React.createElement(RenderCard$1, { rec: rec, index: index, tempMap: tempMap, resolver: resolver, includesCtaType: ['AniLinkPopup'], isActive: index === activeIndex, value: value })));
|
19247
19298
|
}
|
19248
19299
|
return null;
|
19249
19300
|
}, [
|
@@ -19281,7 +19332,7 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight = window.inner
|
|
19281
19332
|
return null;
|
19282
19333
|
}, [globalConfig, waterFallData]);
|
19283
19334
|
const handleViewImageStartEnd = (item) => {
|
19284
|
-
var _a, _b, _c, _d, _e, _f;
|
19335
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j;
|
19285
19336
|
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)) {
|
19286
19337
|
const endTime = Date.now();
|
19287
19338
|
const duration = viewImageStartTime.current === 0 ? 0 : (endTime - viewImageStartTime.current) / 1000;
|
@@ -19290,10 +19341,11 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight = window.inner
|
|
19290
19341
|
eventSubject: 'viewImageCarouselEnd',
|
19291
19342
|
eventDescription: 'User end view the image carousel',
|
19292
19343
|
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 : '',
|
19293
|
-
|
19344
|
+
sceneId: (_g = (_f = (_e = item === null || item === void 0 ? void 0 : item.video) === null || _e === void 0 ? void 0 : _e.scene) === null || _f === void 0 ? void 0 : _f.sceneId) !== null && _g !== void 0 ? _g : '',
|
19345
|
+
contentName: (_h = item === null || item === void 0 ? void 0 : item.video.title) !== null && _h !== void 0 ? _h : '',
|
19294
19346
|
imageEndTime: `${endTime}`,
|
19295
19347
|
playDuration: `${duration}`,
|
19296
|
-
contentTags: JSON.stringify((
|
19348
|
+
contentTags: JSON.stringify((_j = item === null || item === void 0 ? void 0 : item.video.tags) !== null && _j !== void 0 ? _j : []),
|
19297
19349
|
position: activeIndex + '',
|
19298
19350
|
contentFormat: 'image',
|
19299
19351
|
traceInfo: item === null || item === void 0 ? void 0 : item.video.traceInfo
|
@@ -19302,7 +19354,7 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight = window.inner
|
|
19302
19354
|
}
|
19303
19355
|
};
|
19304
19356
|
const handleSlideSkip = (item, position) => {
|
19305
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x;
|
19357
|
+
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;
|
19306
19358
|
if (isPreview || waterFallData)
|
19307
19359
|
return;
|
19308
19360
|
const t = new Date() - curTime.current;
|
@@ -19328,7 +19380,8 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight = window.inner
|
|
19328
19380
|
contentTags: (product === null || product === void 0 ? void 0 : product.tags) ? JSON.stringify(product === null || product === void 0 ? void 0 : product.tags) : '',
|
19329
19381
|
position: position + '',
|
19330
19382
|
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 : '',
|
19331
|
-
|
19383
|
+
sceneId: (_w = (_v = (_u = item === null || item === void 0 ? void 0 : item.video) === null || _u === void 0 ? void 0 : _u.scene) === null || _v === void 0 ? void 0 : _v.sceneId) !== null && _w !== void 0 ? _w : '',
|
19384
|
+
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 : '',
|
19332
19385
|
contentFormat
|
19333
19386
|
}
|
19334
19387
|
});
|
@@ -19338,7 +19391,7 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight = window.inner
|
|
19338
19391
|
}
|
19339
19392
|
};
|
19340
19393
|
const handleScrollEvent = (swiper) => {
|
19341
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w;
|
19394
|
+
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;
|
19342
19395
|
const item = data[swiper.previousIndex];
|
19343
19396
|
if (!item)
|
19344
19397
|
return;
|
@@ -19355,11 +19408,12 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight = window.inner
|
|
19355
19408
|
eventSubject: 'scrollDown',
|
19356
19409
|
eventDescription: 'User scroll down',
|
19357
19410
|
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 : '',
|
19358
|
-
|
19411
|
+
sceneId: (_h = (_g = (_f = item === null || item === void 0 ? void 0 : item.video) === null || _f === void 0 ? void 0 : _f.scene) === null || _g === void 0 ? void 0 : _g.sceneId) !== null && _h !== void 0 ? _h : '',
|
19412
|
+
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 : '',
|
19359
19413
|
requestId: null,
|
19360
|
-
traceInfo: (
|
19414
|
+
traceInfo: (_p = (_m = (_l = item === null || item === void 0 ? void 0 : item.video) === null || _l === void 0 ? void 0 : _l.traceInfo) !== null && _m !== void 0 ? _m : (_o = item === null || item === void 0 ? void 0 : item.product) === null || _o === void 0 ? void 0 : _o.traceInfo) !== null && _p !== void 0 ? _p : '',
|
19361
19415
|
contentFormat,
|
19362
|
-
position: ((
|
19416
|
+
position: ((_q = swiper.previousIndex) !== null && _q !== void 0 ? _q : 0) + ''
|
19363
19417
|
}
|
19364
19418
|
});
|
19365
19419
|
// 如果上一个商品是图片集,需上报 浏览图片集结结束 事件
|
@@ -19371,12 +19425,13 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight = window.inner
|
|
19371
19425
|
eventInfo: {
|
19372
19426
|
eventSubject: 'scrollUp',
|
19373
19427
|
eventDescription: 'User scroll up',
|
19374
|
-
contentId: (
|
19375
|
-
|
19428
|
+
contentId: (_s = (_r = item === null || item === void 0 ? void 0 : item.video) === null || _r === void 0 ? void 0 : _r.itemId) !== null && _s !== void 0 ? _s : '',
|
19429
|
+
sceneId: (_v = (_u = (_t = item === null || item === void 0 ? void 0 : item.video) === null || _t === void 0 ? void 0 : _t.scene) === null || _u === void 0 ? void 0 : _u.sceneId) !== null && _v !== void 0 ? _v : '',
|
19430
|
+
productId: (_x = (_w = item.product) === null || _w === void 0 ? void 0 : _w.itemId) !== null && _x !== void 0 ? _x : '',
|
19376
19431
|
requestId: null,
|
19377
|
-
traceInfo: (
|
19432
|
+
traceInfo: (_1 = (_z = (_y = item === null || item === void 0 ? void 0 : item.video) === null || _y === void 0 ? void 0 : _y.traceInfo) !== null && _z !== void 0 ? _z : (_0 = item === null || item === void 0 ? void 0 : item.product) === null || _0 === void 0 ? void 0 : _0.traceInfo) !== null && _1 !== void 0 ? _1 : '',
|
19378
19433
|
contentFormat,
|
19379
|
-
position: ((
|
19434
|
+
position: ((_2 = swiper.previousIndex) !== null && _2 !== void 0 ? _2 : 0) + ''
|
19380
19435
|
}
|
19381
19436
|
});
|
19382
19437
|
// 如果上一个商品是图片集,需上报 浏览图片集结结束 事件
|
@@ -19402,7 +19457,7 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight = window.inner
|
|
19402
19457
|
}
|
19403
19458
|
}, [openHashtag, data, activeIndex]);
|
19404
19459
|
const handleViewImageStartEvent = (activeIndex, imgInfo, enableCapi) => {
|
19405
|
-
var _a, _b, _c, _d, _e, _f, _g, _h;
|
19460
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l;
|
19406
19461
|
const item = data[activeIndex];
|
19407
19462
|
// 如果是图片集则上报事件
|
19408
19463
|
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)) {
|
@@ -19413,9 +19468,10 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight = window.inner
|
|
19413
19468
|
eventSubject: 'viewImageCarouselStart',
|
19414
19469
|
eventDescription: 'User start view the image carousel',
|
19415
19470
|
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 : '',
|
19416
|
-
|
19471
|
+
sceneId: (_g = (_f = (_e = item === null || item === void 0 ? void 0 : item.video) === null || _e === void 0 ? void 0 : _e.scene) === null || _f === void 0 ? void 0 : _f.sceneId) !== null && _g !== void 0 ? _g : '',
|
19472
|
+
contentName: (_h = item === null || item === void 0 ? void 0 : item.video.title) !== null && _h !== void 0 ? _h : '',
|
19417
19473
|
imageStartTime: `${startTime}`,
|
19418
|
-
contentTags: JSON.stringify((
|
19474
|
+
contentTags: JSON.stringify((_j = item === null || item === void 0 ? void 0 : item.video.tags) !== null && _j !== void 0 ? _j : []),
|
19419
19475
|
position: activeIndex + '',
|
19420
19476
|
contentFormat: 'image',
|
19421
19477
|
traceInfo: item === null || item === void 0 ? void 0 : item.video.traceInfo,
|
@@ -19425,11 +19481,11 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight = window.inner
|
|
19425
19481
|
if (enableCapi) {
|
19426
19482
|
bffFbReport === null || bffFbReport === void 0 ? void 0 : bffFbReport({
|
19427
19483
|
eventName: 'ViewContent',
|
19428
|
-
product: (
|
19484
|
+
product: (_k = item === null || item === void 0 ? void 0 : item.video) === null || _k === void 0 ? void 0 : _k.bindProduct
|
19429
19485
|
});
|
19430
19486
|
bffFbReport === null || bffFbReport === void 0 ? void 0 : bffFbReport({
|
19431
19487
|
eventName: 'PageView',
|
19432
|
-
product: (
|
19488
|
+
product: (_l = item === null || item === void 0 ? void 0 : item.video) === null || _l === void 0 ? void 0 : _l.bindProduct
|
19433
19489
|
});
|
19434
19490
|
}
|
19435
19491
|
}
|
@@ -19521,15 +19577,20 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight = window.inner
|
|
19521
19577
|
swiperRef.current.swiper.allowTouchMove = true;
|
19522
19578
|
}, 500);
|
19523
19579
|
}, onActiveIndexChange: (swiper) => {
|
19580
|
+
var _a, _b;
|
19524
19581
|
setActiveIndex(swiper.activeIndex);
|
19525
19582
|
if (openHashtag)
|
19526
19583
|
return;
|
19527
19584
|
// 处理上滑下滑事件
|
19528
19585
|
handleScrollEvent(swiper);
|
19529
|
-
if (waterFallData || isEditor
|
19586
|
+
if (waterFallData || isEditor)
|
19530
19587
|
return;
|
19531
19588
|
if ((swiper === null || swiper === void 0 ? void 0 : swiper.activeIndex) + 1 >= (data === null || data === void 0 ? void 0 : data.length)) {
|
19532
19589
|
if (!isLoadMore) {
|
19590
|
+
if (isDiyH5) {
|
19591
|
+
(_a = videoWidgetRef.current) === null || _a === void 0 ? void 0 : _a.setLoopPlay(false);
|
19592
|
+
(_b = pictureGroupRef.current) === null || _b === void 0 ? void 0 : _b.setLoopPlay(false);
|
19593
|
+
}
|
19533
19594
|
setIsLoadMore(true);
|
19534
19595
|
loadVideos === null || loadVideos === void 0 ? void 0 : loadVideos(pageNum).then((res) => {
|
19535
19596
|
var _a;
|
@@ -19582,7 +19643,7 @@ const VideoWidget$2 = ({ rec, index, height, data, muted, activeIndex, videoPost
|
|
19582
19643
|
}, []);
|
19583
19644
|
const PAUSE_ICON = useIconLink('/pb_static/06f28a2025c74c1cb49be6767316d827.png');
|
19584
19645
|
const handlePlaying = React.useCallback(() => {
|
19585
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o;
|
19646
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r;
|
19586
19647
|
setIsPauseVideo(false);
|
19587
19648
|
const item = data[index];
|
19588
19649
|
if (item && ((_a = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _a === void 0 ? void 0 : _a.duration)) {
|
@@ -19595,14 +19656,15 @@ const VideoWidget$2 = ({ rec, index, height, data, muted, activeIndex, videoPost
|
|
19595
19656
|
eventSubject: 'playVideo',
|
19596
19657
|
eventDescription: 'User played the video',
|
19597
19658
|
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 : '',
|
19598
|
-
|
19659
|
+
sceneId: (_l = (_k = (_j = item === null || item === void 0 ? void 0 : item.video) === null || _j === void 0 ? void 0 : _j.scene) === null || _k === void 0 ? void 0 : _k.sceneId) !== null && _l !== void 0 ? _l : '',
|
19660
|
+
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 : '',
|
19599
19661
|
playType,
|
19600
19662
|
startTime: videoCurrentTime,
|
19601
19663
|
videoDuration,
|
19602
|
-
contentTags: JSON.stringify((
|
19664
|
+
contentTags: JSON.stringify((_q = (_p = item === null || item === void 0 ? void 0 : item.video) === null || _p === void 0 ? void 0 : _p.tags) !== null && _q !== void 0 ? _q : []),
|
19603
19665
|
position: index + '',
|
19604
19666
|
contentFormat: 'video',
|
19605
|
-
traceInfo: (
|
19667
|
+
traceInfo: (_r = item === null || item === void 0 ? void 0 : item.video) === null || _r === void 0 ? void 0 : _r.traceInfo
|
19606
19668
|
}
|
19607
19669
|
});
|
19608
19670
|
setIsFirstPlay(false);
|
@@ -19641,7 +19703,7 @@ const VideoWidget$2 = ({ rec, index, height, data, muted, activeIndex, videoPost
|
|
19641
19703
|
}
|
19642
19704
|
}, [isLoadFinish]);
|
19643
19705
|
const onPause = React.useCallback(() => {
|
19644
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o;
|
19706
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r;
|
19645
19707
|
const item = data[index];
|
19646
19708
|
const videoDuration = ((_b = (_a = videoRef.current) === null || _a === void 0 ? void 0 : _a.duration) !== null && _b !== void 0 ? _b : 0).toFixed(2);
|
19647
19709
|
const videoCurrentTime = ((_d = (_c = videoRef.current) === null || _c === void 0 ? void 0 : _c.currentTime) !== null && _d !== void 0 ? _d : 0).toFixed(2);
|
@@ -19652,14 +19714,15 @@ const VideoWidget$2 = ({ rec, index, height, data, muted, activeIndex, videoPost
|
|
19652
19714
|
eventSubject: 'playOverVideo',
|
19653
19715
|
eventDescription: 'User finished playing the video',
|
19654
19716
|
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 : '',
|
19655
|
-
|
19717
|
+
sceneId: (_l = (_k = (_j = item === null || item === void 0 ? void 0 : item.video) === null || _j === void 0 ? void 0 : _j.scene) === null || _k === void 0 ? void 0 : _k.sceneId) !== null && _l !== void 0 ? _l : '',
|
19718
|
+
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 : '',
|
19656
19719
|
endTime: videoCurrentTime,
|
19657
19720
|
videoDuration,
|
19658
19721
|
playDuration,
|
19659
|
-
contentTags: JSON.stringify((
|
19722
|
+
contentTags: JSON.stringify((_q = (_p = item === null || item === void 0 ? void 0 : item.video) === null || _p === void 0 ? void 0 : _p.tags) !== null && _q !== void 0 ? _q : []),
|
19660
19723
|
position: index + '',
|
19661
19724
|
contentFormat: 'video',
|
19662
|
-
traceInfo: (
|
19725
|
+
traceInfo: (_r = item === null || item === void 0 ? void 0 : item.video) === null || _r === void 0 ? void 0 : _r.traceInfo
|
19663
19726
|
}
|
19664
19727
|
});
|
19665
19728
|
}
|
@@ -19845,7 +19908,7 @@ const DiyPortalPreview = ({ data = [], globalConfig, tipText, nudge, tempMap, de
|
|
19845
19908
|
const CTA = (rec, index) => {
|
19846
19909
|
if ((globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.isShowCTA) === undefined || (globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.isShowCTA)) {
|
19847
19910
|
return (React.createElement("div", { className: 'clc-sxp-bottom-card' },
|
19848
|
-
React.createElement(RenderCard$1, { rec: rec, index: index, tempMap: tempMap, resolver: RESOLVER$2
|
19911
|
+
React.createElement(RenderCard$1, { rec: rec, index: index, tempMap: tempMap, resolver: RESOLVER$2 })));
|
19849
19912
|
}
|
19850
19913
|
return null;
|
19851
19914
|
};
|
@@ -19858,10 +19921,8 @@ const DiyPortalPreview = ({ data = [], globalConfig, tipText, nudge, tempMap, de
|
|
19858
19921
|
React.createElement(Nudge, { nudge: nudge }),
|
19859
19922
|
CTA(rec, index),
|
19860
19923
|
React.createElement("div", null,
|
19861
|
-
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' }) }),
|
19862
|
-
|
19863
|
-
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 })),
|
19864
|
-
React.createElement(RenderCard$1, { rec: rec, index: index, tempMap: tempMap, resolver: RESOLVER$2, includesCtaType: ['AniLinkPopup'], isActive: true })));
|
19924
|
+
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' }) })),
|
19925
|
+
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 }))));
|
19865
19926
|
}
|
19866
19927
|
return null;
|
19867
19928
|
};
|
@@ -20251,10 +20312,21 @@ const DiyStoryPreview = React.forwardRef(({ data = [], globalConfig, tipText, nu
|
|
20251
20312
|
return null;
|
20252
20313
|
}, [globalConfig]);
|
20253
20314
|
const renderBottom = (rec, index) => {
|
20254
|
-
var _a, _b, _c, _d;
|
20315
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j;
|
20255
20316
|
if (rec === null || rec === void 0 ? void 0 : rec.video) {
|
20317
|
+
let cta = null;
|
20318
|
+
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) {
|
20319
|
+
cta = '多商品CTA';
|
20320
|
+
}
|
20321
|
+
else if ((_c = rec === null || rec === void 0 ? void 0 : rec.video) === null || _c === void 0 ? void 0 : _c.bindProduct) {
|
20322
|
+
cta = '商品CTA';
|
20323
|
+
}
|
20324
|
+
else {
|
20325
|
+
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;
|
20326
|
+
}
|
20327
|
+
const value = tempMap === null || tempMap === void 0 ? void 0 : tempMap[cta];
|
20256
20328
|
return (React.createElement(React.Fragment, null,
|
20257
|
-
((
|
20329
|
+
((_f = rec === null || rec === void 0 ? void 0 : rec.video) === null || _f === void 0 ? void 0 : _f.title) && (React.createElement("div", { style: {
|
20258
20330
|
background: 'repeating-linear-gradient(0deg, rgba(26, 26, 25, 0.7), hsla(0, 0%, 100%, 0))',
|
20259
20331
|
height: '130px',
|
20260
20332
|
position: 'absolute',
|
@@ -20265,7 +20337,7 @@ const DiyStoryPreview = React.forwardRef(({ data = [], globalConfig, tipText, nu
|
|
20265
20337
|
pointerEvents
|
20266
20338
|
} })),
|
20267
20339
|
React.createElement("div", { style: {
|
20268
|
-
marginBottom: `${(
|
20340
|
+
marginBottom: `${(_g = globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.bottomInfoDist) !== null && _g !== void 0 ? _g : 40}px`,
|
20269
20341
|
zIndex: 999,
|
20270
20342
|
position: 'absolute',
|
20271
20343
|
bottom: 0,
|
@@ -20274,15 +20346,15 @@ const DiyStoryPreview = React.forwardRef(({ data = [], globalConfig, tipText, nu
|
|
20274
20346
|
paddingTop: '20px'
|
20275
20347
|
} },
|
20276
20348
|
(globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.isShowCTA) === undefined || (globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.isShowCTA) ? (React.createElement("div", { style: {} },
|
20277
|
-
React.createElement(RenderCard$1, { rec: rec, index: index, tempMap: tempMap, resolver: RESOLVER$1, isActive: index === activeIndex }))) : null,
|
20349
|
+
React.createElement(RenderCard$1, { rec: rec, index: index, tempMap: tempMap, resolver: RESOLVER$1, isActive: index === activeIndex, value: value }))) : null,
|
20278
20350
|
React.createElement("div", null,
|
20279
20351
|
React.createElement(ExpandableText$1
|
20280
20352
|
// className='clc-sxp-bottom-text'
|
20281
20353
|
, {
|
20282
20354
|
// className='clc-sxp-bottom-text'
|
20283
|
-
isPost: true, foldText: tipText === null || tipText === void 0 ? void 0 : tipText.foldText, unfoldText: tipText === null || tipText === void 0 ? void 0 : tipText.unfoldText, text: (
|
20284
|
-
React.createElement(RenderCard$1, { rec: rec, index: index, tempMap: tempMap, resolver: RESOLVER$1, includesCtaType: ['AniLink'], isActive: index === activeIndex }))),
|
20285
|
-
React.createElement(RenderCard$1, { rec: rec, index: index, tempMap: tempMap, resolver: RESOLVER$1, includesCtaType: ['AniLinkPopup'], isActive: index === activeIndex })));
|
20355
|
+
isPost: true, foldText: tipText === null || tipText === void 0 ? void 0 : tipText.foldText, unfoldText: tipText === null || tipText === void 0 ? void 0 : tipText.unfoldText, text: (_j = (_h = rec === null || rec === void 0 ? void 0 : rec.video) === null || _h === void 0 ? void 0 : _h.title) !== null && _j !== void 0 ? _j : '', 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' }) }),
|
20356
|
+
React.createElement(RenderCard$1, { rec: rec, index: index, tempMap: tempMap, resolver: RESOLVER$1, includesCtaType: ['AniLink'], isActive: index === activeIndex, value: value }))),
|
20357
|
+
React.createElement(RenderCard$1, { rec: rec, index: index, tempMap: tempMap, resolver: RESOLVER$1, includesCtaType: ['AniLinkPopup'], isActive: index === activeIndex, value: value })));
|
20286
20358
|
}
|
20287
20359
|
return null;
|
20288
20360
|
};
|