pb-sxp-ui 1.20.10 → 1.20.11
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 +248 -172
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +248 -172
- package/dist/index.js.map +1 -1
- package/dist/index.min.cjs +7 -7
- package/dist/index.min.cjs.map +1 -1
- package/dist/index.min.js +7 -7
- package/dist/index.min.js.map +1 -1
- package/dist/pb-ui.js +248 -172
- package/dist/pb-ui.js.map +1 -1
- package/dist/pb-ui.min.js +7 -7
- package/dist/pb-ui.min.js.map +1 -1
- package/es/core/components/DiyPortalPreview/VideoWidget.js +10 -8
- package/es/core/components/SxpPageRender/LikeButton/index.js +20 -18
- 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/VideoWidget/index.js +33 -46
- package/es/core/components/SxpPageRender/WaterFall/index.js +4 -3
- package/es/core/components/SxpPageRender/index.js +56 -40
- package/es/core/context/SxpDataSourceProvider.d.ts +5 -12
- package/es/core/context/SxpDataSourceProvider.js +81 -38
- package/es/core/hooks/useEventReport.js +6 -5
- package/lib/core/components/DiyPortalPreview/VideoWidget.js +10 -8
- package/lib/core/components/SxpPageRender/LikeButton/index.js +20 -18
- 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/VideoWidget/index.js +33 -46
- package/lib/core/components/SxpPageRender/WaterFall/index.js +4 -3
- package/lib/core/components/SxpPageRender/index.js +56 -40
- package/lib/core/context/SxpDataSourceProvider.d.ts +5 -12
- package/lib/core/context/SxpDataSourceProvider.js +81 -38
- package/lib/core/hooks/useEventReport.js +6 -5
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -667,6 +667,7 @@ const DEFAULT_TAG = 'FOR U';
|
|
|
667
667
|
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 }) => {
|
|
668
668
|
var _a, _b, _c, _d, _e;
|
|
669
669
|
const [rtcList, setRtcList] = React.useState([]);
|
|
670
|
+
const [firstRtcList, setFirstRtcList] = React.useState([]);
|
|
670
671
|
const [tagList, setTagList] = React.useState([]);
|
|
671
672
|
const [loading, setLoading] = React.useState(true);
|
|
672
673
|
const [curReqInfo, setCurReqInfo] = React.useState({ rtc: '', requestId: '' });
|
|
@@ -698,6 +699,10 @@ const SxpDataSourceProvider = ({ render, dataSources, utmVal, enableReportEvent
|
|
|
698
699
|
const [chatlabsId, setChatlabsId] = React.useState();
|
|
699
700
|
const finalPageData = React.useMemo(() => pageData !== null && pageData !== void 0 ? pageData : data, [pageData, data]);
|
|
700
701
|
const pixelPvStatusRef = React.useRef(false);
|
|
702
|
+
const isDiyPage = React.useMemo(() => {
|
|
703
|
+
var _a, _b, _c;
|
|
704
|
+
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);
|
|
705
|
+
}, [isDiyH5, finalPageData]);
|
|
701
706
|
React.useEffect(() => {
|
|
702
707
|
var _a, _b;
|
|
703
708
|
setGlobalConfig((_b = (_a = data === null || data === void 0 ? void 0 : data.data) === null || _a === void 0 ? void 0 : _a.sxpPageConf) === null || _b === void 0 ? void 0 : _b.globalConfig);
|
|
@@ -803,7 +808,7 @@ const SxpDataSourceProvider = ({ render, dataSources, utmVal, enableReportEvent
|
|
|
803
808
|
};
|
|
804
809
|
// bff API 请求方法
|
|
805
810
|
const bffFetch = React.useCallback((path, options, isBota = true) => {
|
|
806
|
-
var _a;
|
|
811
|
+
var _a, _b;
|
|
807
812
|
if (!bffDataSource)
|
|
808
813
|
return;
|
|
809
814
|
const url = bffDataSource.url;
|
|
@@ -816,8 +821,9 @@ const SxpDataSourceProvider = ({ render, dataSources, utmVal, enableReportEvent
|
|
|
816
821
|
val.split('=')[0];
|
|
817
822
|
val.split('=')[1];
|
|
818
823
|
});
|
|
824
|
+
options.body = Object.assign(Object.assign({}, options.body), { productUserId: fakeUserId });
|
|
819
825
|
return window
|
|
820
|
-
.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
|
|
826
|
+
.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
|
|
821
827
|
? JSON.stringify({
|
|
822
828
|
body: btoa(encodeURIComponent(JSON.stringify(Object.assign(Object.assign(Object.assign({}, options.body), bffDataSource.headers), { 'x-user-id': fakeUserId }))))
|
|
823
829
|
})
|
|
@@ -1102,8 +1108,8 @@ const SxpDataSourceProvider = ({ render, dataSources, utmVal, enableReportEvent
|
|
|
1102
1108
|
}, [bffDataSource]);
|
|
1103
1109
|
// 获取推荐视频数据
|
|
1104
1110
|
const getRecommendVideos = React.useCallback((query) => __awaiter(void 0, void 0, void 0, function* () {
|
|
1105
|
-
var _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u;
|
|
1106
|
-
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 })), (
|
|
1111
|
+
var _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x;
|
|
1112
|
+
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' }));
|
|
1107
1113
|
if (channel) {
|
|
1108
1114
|
query = Object.assign(Object.assign({}, query), { channel: decodeURIComponent(channel) });
|
|
1109
1115
|
}
|
|
@@ -1116,9 +1122,10 @@ const SxpDataSourceProvider = ({ render, dataSources, utmVal, enableReportEvent
|
|
|
1116
1122
|
if (val)
|
|
1117
1123
|
query = Object.assign(Object.assign({}, query), { channel: decodeURIComponent(val) });
|
|
1118
1124
|
}
|
|
1125
|
+
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);
|
|
1119
1126
|
if (isEditor) {
|
|
1120
1127
|
let pageNum = 1;
|
|
1121
|
-
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] }));
|
|
1128
|
+
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 }));
|
|
1122
1129
|
if (!(query === null || query === void 0 ? void 0 : query.channel) || isInit.current) {
|
|
1123
1130
|
return undefined;
|
|
1124
1131
|
}
|
|
@@ -1126,19 +1133,24 @@ const SxpDataSourceProvider = ({ render, dataSources, utmVal, enableReportEvent
|
|
|
1126
1133
|
let list = [];
|
|
1127
1134
|
let result = null;
|
|
1128
1135
|
const recurveRecList = (query) => __awaiter(void 0, void 0, void 0, function* () {
|
|
1129
|
-
var
|
|
1136
|
+
var _y, _z, _0, _1, _2, _3;
|
|
1130
1137
|
query.pageNum = pageNum;
|
|
1131
|
-
result =
|
|
1138
|
+
result = isDiyH5
|
|
1139
|
+
? yield (bffFetch === null || bffFetch === void 0 ? void 0 : bffFetch('v3/recommend/direct/page/view', { method: 'POST', body: query }))
|
|
1140
|
+
: yield (bffFetch === null || bffFetch === void 0 ? void 0 : bffFetch('recommend/direct_page', { method: 'POST', body: query }));
|
|
1132
1141
|
if (!(result === null || result === void 0 ? void 0 : result.success)) {
|
|
1133
1142
|
return undefined;
|
|
1134
1143
|
}
|
|
1135
1144
|
setLoading(false);
|
|
1136
|
-
list = list.concat((
|
|
1145
|
+
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 : []);
|
|
1137
1146
|
if ((rtcList === null || rtcList === void 0 ? void 0 : rtcList.length) === 0) {
|
|
1138
1147
|
setRtcList(getFilterRecList(Object.assign(Object.assign({}, result === null || result === void 0 ? void 0 : result.data), { recList: list })));
|
|
1139
1148
|
setCacheRtcList(getFilterRecList(Object.assign(Object.assign({}, result === null || result === void 0 ? void 0 : result.data), { recList: list })));
|
|
1149
|
+
if (isDiyPage) {
|
|
1150
|
+
setFirstRtcList(getFilterRecList(Object.assign(Object.assign({}, result === null || result === void 0 ? void 0 : result.data), { recList: list })));
|
|
1151
|
+
}
|
|
1140
1152
|
}
|
|
1141
|
-
const isNotNullList = (
|
|
1153
|
+
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));
|
|
1142
1154
|
if (isNotNullList) {
|
|
1143
1155
|
pageNum = pageNum + 1;
|
|
1144
1156
|
yield recurveRecList(query);
|
|
@@ -1146,42 +1158,61 @@ const SxpDataSourceProvider = ({ render, dataSources, utmVal, enableReportEvent
|
|
|
1146
1158
|
});
|
|
1147
1159
|
yield recurveRecList(query);
|
|
1148
1160
|
if (!(query === null || query === void 0 ? void 0 : query.hashTag) && result)
|
|
1149
|
-
setCurReqInfo({ rtc: (
|
|
1161
|
+
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 });
|
|
1150
1162
|
return Object.assign(Object.assign({}, result === null || result === void 0 ? void 0 : result.data), { recList: list });
|
|
1151
1163
|
}
|
|
1152
1164
|
if (globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.enablePreview) {
|
|
1153
|
-
query = Object.assign(Object.assign({}, query), { directPage: true, level: 1, pageNum: (
|
|
1165
|
+
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 }));
|
|
1154
1166
|
}
|
|
1155
|
-
const result =
|
|
1156
|
-
method: 'POST',
|
|
1157
|
-
|
|
1158
|
-
|
|
1167
|
+
const result = isDiy
|
|
1168
|
+
? yield (bffFetch === null || bffFetch === void 0 ? void 0 : bffFetch('v3/recommend/direct/page/view', { method: 'POST', body: query }))
|
|
1169
|
+
: yield (bffFetch === null || bffFetch === void 0 ? void 0 : bffFetch('v1/recommend/list', {
|
|
1170
|
+
method: 'POST',
|
|
1171
|
+
body: query
|
|
1172
|
+
}));
|
|
1159
1173
|
if (!(result === null || result === void 0 ? void 0 : result.success)) {
|
|
1160
1174
|
return undefined;
|
|
1161
1175
|
}
|
|
1162
1176
|
if (!(query === null || query === void 0 ? void 0 : query.hashTag))
|
|
1163
1177
|
setCurReqInfo({ rtc: result.data.rtc, requestId: result.data.requestId });
|
|
1164
1178
|
if ((globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.enablePreview) && !isEditor) {
|
|
1165
|
-
const isNotNullList = (
|
|
1179
|
+
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));
|
|
1166
1180
|
if (!isNotNullList) {
|
|
1167
1181
|
setIsNoMoreData(true);
|
|
1168
1182
|
}
|
|
1169
1183
|
}
|
|
1170
1184
|
let list = [];
|
|
1171
|
-
list = list.concat((
|
|
1185
|
+
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 : []);
|
|
1172
1186
|
return Object.assign(Object.assign({}, result.data), { recList: list });
|
|
1173
|
-
}), [
|
|
1187
|
+
}), [
|
|
1188
|
+
bffFetch,
|
|
1189
|
+
utmVal,
|
|
1190
|
+
maxSize,
|
|
1191
|
+
defaultSize,
|
|
1192
|
+
channelQueryList,
|
|
1193
|
+
channel,
|
|
1194
|
+
chatlabsId,
|
|
1195
|
+
bffFetchAdmin,
|
|
1196
|
+
isDiyPage,
|
|
1197
|
+
finalPageData,
|
|
1198
|
+
isDiyH5
|
|
1199
|
+
]);
|
|
1174
1200
|
const loadVideos = React.useCallback((pageNum) => __awaiter(void 0, void 0, void 0, function* () {
|
|
1175
|
-
var
|
|
1201
|
+
var _4, _5, _6, _7;
|
|
1176
1202
|
if (rtcList.length <= 0) {
|
|
1177
1203
|
return;
|
|
1178
1204
|
}
|
|
1205
|
+
if (isDiyPage && (firstRtcList === null || firstRtcList === void 0 ? void 0 : firstRtcList.length) > 0) {
|
|
1206
|
+
setRtcList(rtcList.concat(firstRtcList));
|
|
1207
|
+
setCacheRtcList(cacheRtcList.concat(firstRtcList));
|
|
1208
|
+
return;
|
|
1209
|
+
}
|
|
1179
1210
|
const lastItem = rtcList === null || rtcList === void 0 ? void 0 : rtcList[(rtcList === null || rtcList === void 0 ? void 0 : rtcList.length) - 1];
|
|
1180
|
-
const data = yield getRecommendVideos(Object.assign(Object.assign(Object.assign(Object.assign({ hashTag: waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.hashTag }, (((
|
|
1211
|
+
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 })));
|
|
1181
1212
|
setRtcList(rtcList.concat(getFilterRecList(data)));
|
|
1182
1213
|
setCacheRtcList(cacheRtcList.concat(getFilterRecList(data)));
|
|
1183
1214
|
return data;
|
|
1184
|
-
}), [getRecommendVideos, rtcList, waterFallData, cacheRtcList]);
|
|
1215
|
+
}), [getRecommendVideos, rtcList, waterFallData, cacheRtcList, isDiyPage, firstRtcList]);
|
|
1185
1216
|
const refreshFeSession = React.useCallback((enableReSid, event) => {
|
|
1186
1217
|
var _a, _b, _c, _d, _e;
|
|
1187
1218
|
let expire = false;
|
|
@@ -1212,8 +1243,8 @@ const SxpDataSourceProvider = ({ render, dataSources, utmVal, enableReportEvent
|
|
|
1212
1243
|
// 用户信息都是公共的
|
|
1213
1244
|
if (!userInfo) {
|
|
1214
1245
|
userInfo = {
|
|
1215
|
-
|
|
1216
|
-
|
|
1246
|
+
productUserId: fakeUserId // 后端逻辑会从请求头获取,所以不需要传
|
|
1247
|
+
// tpChannelId: 'H5' // 后端处理
|
|
1217
1248
|
};
|
|
1218
1249
|
}
|
|
1219
1250
|
const sessionID = storeAndLoadFeSessionId();
|
|
@@ -1247,7 +1278,8 @@ const SxpDataSourceProvider = ({ render, dataSources, utmVal, enableReportEvent
|
|
|
1247
1278
|
layoutVariantId,
|
|
1248
1279
|
globalConfig,
|
|
1249
1280
|
playbookType,
|
|
1250
|
-
bffDataSource
|
|
1281
|
+
bffDataSource,
|
|
1282
|
+
fakeUserId
|
|
1251
1283
|
]);
|
|
1252
1284
|
const getEventParamsByJson = React.useCallback((_a) => {
|
|
1253
1285
|
var _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u;
|
|
@@ -1433,38 +1465,40 @@ const SxpDataSourceProvider = ({ render, dataSources, utmVal, enableReportEvent
|
|
|
1433
1465
|
}
|
|
1434
1466
|
}, [bffFetch, enableReportEvent, enabledMetaConversionApi, globalConfig, bffDataSource, getEventParamsByJson]);
|
|
1435
1467
|
const bffMutateLike = React.useCallback((body) => __awaiter(void 0, void 0, void 0, function* () {
|
|
1468
|
+
body = Object.assign(Object.assign({}, body), { productUserId: fakeUserId });
|
|
1436
1469
|
const res = yield (bffFetch === null || bffFetch === void 0 ? void 0 : bffFetch('v1/recommend/like', { method: 'POST', body }));
|
|
1437
1470
|
return res === null || res === void 0 ? void 0 : res.success;
|
|
1438
|
-
}), [bffFetch]);
|
|
1471
|
+
}), [bffFetch, fakeUserId]);
|
|
1439
1472
|
const bffMutateUnlike = React.useCallback((body) => __awaiter(void 0, void 0, void 0, function* () {
|
|
1473
|
+
body = Object.assign(Object.assign({}, body), { productUserId: fakeUserId });
|
|
1440
1474
|
const res = yield (bffFetch === null || bffFetch === void 0 ? void 0 : bffFetch('v1/recommend/unlike', { method: 'POST', body }));
|
|
1441
1475
|
return res === null || res === void 0 ? void 0 : res.success;
|
|
1442
|
-
}), [bffFetch]);
|
|
1476
|
+
}), [bffFetch, fakeUserId]);
|
|
1443
1477
|
const bffSubmitForm = React.useCallback((body) => __awaiter(void 0, void 0, void 0, function* () {
|
|
1444
1478
|
const res = yield (bffFetch === null || bffFetch === void 0 ? void 0 : bffFetch('v1/customform', { method: 'POST', body }));
|
|
1445
1479
|
return res === null || res === void 0 ? void 0 : res.success;
|
|
1446
1480
|
}), [bffFetch]);
|
|
1447
1481
|
// 获取 Tag
|
|
1448
1482
|
const bffGetTagList = React.useCallback((data) => __awaiter(void 0, void 0, void 0, function* () {
|
|
1449
|
-
var
|
|
1450
|
-
const isShowTag = !!((
|
|
1483
|
+
var _8, _9, _10, _11, _12, _13, _14, _15;
|
|
1484
|
+
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);
|
|
1451
1485
|
if (!utmVal || !isShowTag)
|
|
1452
1486
|
return;
|
|
1453
1487
|
try {
|
|
1454
|
-
const val = (
|
|
1488
|
+
const val = (_13 = (_12 = (_11 = splitUrlParams(utmVal)) === null || _11 === void 0 ? void 0 : _11.filter((val) => {
|
|
1455
1489
|
var _a, _b;
|
|
1456
1490
|
const key = val.split('=')[0];
|
|
1457
1491
|
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);
|
|
1458
|
-
})) === null ||
|
|
1492
|
+
})) === null || _12 === void 0 ? void 0 : _12.join('&')) !== null && _13 !== void 0 ? _13 : '';
|
|
1459
1493
|
const result = yield (bffFetch === null || bffFetch === void 0 ? void 0 : bffFetch('v1/tag/list', { method: 'GET', query: { channel: decodeURIComponent(val) } }));
|
|
1460
|
-
setTagList((
|
|
1494
|
+
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 : []);
|
|
1461
1495
|
}
|
|
1462
1496
|
catch (e) {
|
|
1463
1497
|
console.log('e', e);
|
|
1464
1498
|
}
|
|
1465
1499
|
}), [bffFetch, utmVal]);
|
|
1466
1500
|
const ctaEvent = React.useCallback((eventInfo, rec, product, position, ctaActionType, targetUrl, contentType) => {
|
|
1467
|
-
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;
|
|
1501
|
+
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;
|
|
1468
1502
|
const cta = product === null || product === void 0 ? void 0 : product.bindCta;
|
|
1469
1503
|
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);
|
|
1470
1504
|
let fromKName = '';
|
|
@@ -1482,7 +1516,7 @@ const SxpDataSourceProvider = ({ render, dataSources, utmVal, enableReportEvent
|
|
|
1482
1516
|
}
|
|
1483
1517
|
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;
|
|
1484
1518
|
bffEventReport === null || bffEventReport === void 0 ? void 0 : bffEventReport({
|
|
1485
|
-
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: (
|
|
1519
|
+
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 })
|
|
1486
1520
|
});
|
|
1487
1521
|
}, [bffEventReport, isFromHashtag]);
|
|
1488
1522
|
const h5EnterLink = React.useCallback(() => {
|
|
@@ -1506,10 +1540,10 @@ const SxpDataSourceProvider = ({ render, dataSources, utmVal, enableReportEvent
|
|
|
1506
1540
|
});
|
|
1507
1541
|
}, [bffEventReport]);
|
|
1508
1542
|
const getAccount = React.useCallback(() => __awaiter(void 0, void 0, void 0, function* () {
|
|
1509
|
-
var
|
|
1543
|
+
var _16, _17;
|
|
1510
1544
|
const res = yield (bffFetch === null || bffFetch === void 0 ? void 0 : bffFetch('v1/account', { method: 'GET' }));
|
|
1511
|
-
setChatlabsId((
|
|
1512
|
-
return ((
|
|
1545
|
+
setChatlabsId((_16 = res === null || res === void 0 ? void 0 : res.data) === null || _16 === void 0 ? void 0 : _16.chatLabsId);
|
|
1546
|
+
return ((_17 = res === null || res === void 0 ? void 0 : res.data) === null || _17 === void 0 ? void 0 : _17.consentResult) === 'true';
|
|
1513
1547
|
}), [bffFetch]);
|
|
1514
1548
|
const accountSonsent = React.useCallback((consentResult) => __awaiter(void 0, void 0, void 0, function* () {
|
|
1515
1549
|
const res = yield (bffFetch === null || bffFetch === void 0 ? void 0 : bffFetch('v1/account/consent', {
|
|
@@ -1573,6 +1607,9 @@ const SxpDataSourceProvider = ({ render, dataSources, utmVal, enableReportEvent
|
|
|
1573
1607
|
}
|
|
1574
1608
|
setRtcList(list);
|
|
1575
1609
|
setCacheRtcList(list);
|
|
1610
|
+
if (isDiyPage) {
|
|
1611
|
+
setFirstRtcList(list);
|
|
1612
|
+
}
|
|
1576
1613
|
bffGetTagList(curData !== null && curData !== void 0 ? curData : finalPageData);
|
|
1577
1614
|
if (channel) {
|
|
1578
1615
|
const item = list === null || list === void 0 ? void 0 : list[0];
|
|
@@ -1592,7 +1629,7 @@ const SxpDataSourceProvider = ({ render, dataSources, utmVal, enableReportEvent
|
|
|
1592
1629
|
});
|
|
1593
1630
|
setLoading(false);
|
|
1594
1631
|
});
|
|
1595
|
-
}, [isShowConsent, channel]);
|
|
1632
|
+
}, [isShowConsent, channel, isDiyPage]);
|
|
1596
1633
|
// cms预览
|
|
1597
1634
|
React.useEffect(() => {
|
|
1598
1635
|
if (!isPreview)
|
|
@@ -1608,12 +1645,15 @@ const SxpDataSourceProvider = ({ render, dataSources, utmVal, enableReportEvent
|
|
|
1608
1645
|
}
|
|
1609
1646
|
setRtcList(list);
|
|
1610
1647
|
setCacheRtcList(list);
|
|
1648
|
+
if (isDiyPage) {
|
|
1649
|
+
setFirstRtcList(list);
|
|
1650
|
+
}
|
|
1611
1651
|
}
|
|
1612
1652
|
})
|
|
1613
1653
|
.finally(() => {
|
|
1614
1654
|
setLoading(false);
|
|
1615
1655
|
});
|
|
1616
|
-
}, [getRecommendVideos, bffGetTagList, channel]);
|
|
1656
|
+
}, [getRecommendVideos, bffGetTagList, channel, isDiyPage]);
|
|
1617
1657
|
const defaultLoadingImage = useIconLink('/pb_static/a65d23c5893c49d7aaaa81681d3179e2.gif', appDomain);
|
|
1618
1658
|
return (React.createElement(SxpDataSourceContext.Provider, { value: {
|
|
1619
1659
|
rtcList,
|
|
@@ -1671,7 +1711,8 @@ const SxpDataSourceProvider = ({ render, dataSources, utmVal, enableReportEvent
|
|
|
1671
1711
|
refreshFeSession,
|
|
1672
1712
|
getAccount,
|
|
1673
1713
|
accountSonsent,
|
|
1674
|
-
isDiyH5,
|
|
1714
|
+
isDiyH5: isDiyPage,
|
|
1715
|
+
firstRtcList,
|
|
1675
1716
|
pixelPvStatusRef
|
|
1676
1717
|
} }, 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({
|
|
1677
1718
|
rtcList,
|
|
@@ -2133,14 +2174,14 @@ var settingRender$f = [
|
|
|
2133
2174
|
* @Author: binruan@chatlabs.com
|
|
2134
2175
|
* @Date: 2024-03-12 10:59:06
|
|
2135
2176
|
* @LastEditors: binruan@chatlabs.com
|
|
2136
|
-
* @LastEditTime:
|
|
2177
|
+
* @LastEditTime: 2025-05-09 15:30:59
|
|
2137
2178
|
* @FilePath: \pb-sxp-ui\src\core\hooks\useEventReport.ts
|
|
2138
2179
|
*
|
|
2139
2180
|
*/
|
|
2140
2181
|
function useEventReport() {
|
|
2141
2182
|
const { bffEventReport, popupDetailData, isFromHashtag, eventTimeList, setEventTimeList } = useSxpDataSource();
|
|
2142
2183
|
const jumpToWeb = React.useCallback((e, data, product, cta, position, traceInfo) => {
|
|
2143
|
-
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;
|
|
2184
|
+
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;
|
|
2144
2185
|
const i = eventTimeList === null || eventTimeList === void 0 ? void 0 : eventTimeList.findIndex((item) => item.target === (e === null || e === void 0 ? void 0 : e.target));
|
|
2145
2186
|
if (i !== -1) {
|
|
2146
2187
|
return;
|
|
@@ -2173,11 +2214,11 @@ function useEventReport() {
|
|
|
2173
2214
|
contentFormat = 'image';
|
|
2174
2215
|
}
|
|
2175
2216
|
bffEventReport === null || bffEventReport === void 0 ? void 0 : bffEventReport({
|
|
2176
|
-
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 : '',
|
|
2217
|
+
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 }))
|
|
2177
2218
|
});
|
|
2178
2219
|
}, [bffEventReport, popupDetailData, isFromHashtag, eventTimeList]);
|
|
2179
2220
|
const productView = React.useCallback((data, product, cta, viewTime, position) => {
|
|
2180
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p;
|
|
2221
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s;
|
|
2181
2222
|
let fromKName = '';
|
|
2182
2223
|
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))) {
|
|
2183
2224
|
fromKName = 'pdpPage';
|
|
@@ -2196,8 +2237,9 @@ function useEventReport() {
|
|
|
2196
2237
|
contentTags: JSON.stringify(product === null || product === void 0 ? void 0 : product.tags),
|
|
2197
2238
|
position: position + '',
|
|
2198
2239
|
contentId: (_d = data === null || data === void 0 ? void 0 : data.video) === null || _d === void 0 ? void 0 : _d.itemId,
|
|
2240
|
+
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 : '',
|
|
2199
2241
|
ctatId: cta === null || cta === void 0 ? void 0 : cta.itemId,
|
|
2200
|
-
traceInfo: (
|
|
2242
|
+
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 : '',
|
|
2201
2243
|
timeOnSite: Math.floor((new Date() - viewTime) / 1000) + '',
|
|
2202
2244
|
eventSubject: 'productView',
|
|
2203
2245
|
eventDescription: 'User browsed the product'
|
|
@@ -16241,7 +16283,7 @@ function WaterfallList(_a) {
|
|
|
16241
16283
|
* @Author: binruan@chatlabs.com
|
|
16242
16284
|
* @Date: 2024-01-10 10:58:24
|
|
16243
16285
|
* @LastEditors: binruan@chatlabs.com
|
|
16244
|
-
* @LastEditTime: 2025-
|
|
16286
|
+
* @LastEditTime: 2025-05-09 15:30:41
|
|
16245
16287
|
* @FilePath: \pb-sxp-ui\src\core\components\SxpPageRender\WaterFall\index.tsx
|
|
16246
16288
|
*
|
|
16247
16289
|
*/
|
|
@@ -16279,7 +16321,7 @@ const WaterFall = (props) => {
|
|
|
16279
16321
|
}
|
|
16280
16322
|
}, [waterFallData]);
|
|
16281
16323
|
const reportTagsView = React.useCallback(() => {
|
|
16282
|
-
var _a, _b, _c, _d, _e, _f;
|
|
16324
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j;
|
|
16283
16325
|
const rec = recData === null || recData === void 0 ? void 0 : recData.rec;
|
|
16284
16326
|
if (!rec)
|
|
16285
16327
|
return;
|
|
@@ -16299,9 +16341,10 @@ const WaterFall = (props) => {
|
|
|
16299
16341
|
bffEventReport === null || bffEventReport === void 0 ? void 0 : bffEventReport({
|
|
16300
16342
|
eventInfo: {
|
|
16301
16343
|
contentId: (_d = rec === null || rec === void 0 ? void 0 : rec.video) === null || _d === void 0 ? void 0 : _d.itemId,
|
|
16344
|
+
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 : '',
|
|
16302
16345
|
position: cacheActiveIndex + '',
|
|
16303
|
-
contentTags: JSON.stringify((
|
|
16304
|
-
traceInfo: (
|
|
16346
|
+
contentTags: JSON.stringify((_h = rec === null || rec === void 0 ? void 0 : rec.video) === null || _h === void 0 ? void 0 : _h.tags),
|
|
16347
|
+
traceInfo: (_j = rec === null || rec === void 0 ? void 0 : rec.video) === null || _j === void 0 ? void 0 : _j.traceInfo,
|
|
16305
16348
|
hashTags: JSON.stringify([recData === null || recData === void 0 ? void 0 : recData.hashTag]),
|
|
16306
16349
|
fromKName,
|
|
16307
16350
|
fromKPage: location === null || location === void 0 ? void 0 : location.href,
|
|
@@ -18408,21 +18451,22 @@ const LikeButton = (_a) => {
|
|
|
18408
18451
|
const likeIcon = useIconLink(defaultLikeIconPath$2);
|
|
18409
18452
|
const unlikeIcon = useIconLink(defaultUnLikeIconPath$2);
|
|
18410
18453
|
const handleClick = lodash.debounce(() => __awaiter(void 0, void 0, void 0, function* () {
|
|
18411
|
-
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;
|
|
18454
|
+
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, _8, _9, _10;
|
|
18412
18455
|
if (state) {
|
|
18413
18456
|
// 先设置状态
|
|
18414
18457
|
setState(false);
|
|
18415
|
-
const result = (_e = (yield (mutateUnlike === null || mutateUnlike === void 0 ? void 0 : mutateUnlike({
|
|
18458
|
+
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;
|
|
18416
18459
|
bffEventReport === null || bffEventReport === void 0 ? void 0 : bffEventReport({
|
|
18417
18460
|
eventInfo: {
|
|
18418
18461
|
eventSubject: 'favoriteContentCanceled',
|
|
18419
18462
|
eventDescription: 'This content was unfavorite by the user',
|
|
18420
18463
|
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 : '',
|
|
18421
|
-
|
|
18422
|
-
|
|
18464
|
+
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 : '',
|
|
18465
|
+
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 : '',
|
|
18466
|
+
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 : []),
|
|
18423
18467
|
position: position + '',
|
|
18424
|
-
contentFormat: ((
|
|
18425
|
-
traceInfo: (
|
|
18468
|
+
contentFormat: ((_q = recData === null || recData === void 0 ? void 0 : recData.video) === null || _q === void 0 ? void 0 : _q.url) ? 'video' : 'image',
|
|
18469
|
+
traceInfo: (_r = recData === null || recData === void 0 ? void 0 : recData.video) === null || _r === void 0 ? void 0 : _r.traceInfo
|
|
18426
18470
|
}
|
|
18427
18471
|
});
|
|
18428
18472
|
// 如果接口调用失败,则回滚状态
|
|
@@ -18430,48 +18474,49 @@ const LikeButton = (_a) => {
|
|
|
18430
18474
|
setState(true);
|
|
18431
18475
|
}
|
|
18432
18476
|
else {
|
|
18433
|
-
const nRtcList = (
|
|
18477
|
+
const nRtcList = (_s = cacheRtcList === null || cacheRtcList === void 0 ? void 0 : cacheRtcList.map((item, index) => {
|
|
18434
18478
|
if (index === position) {
|
|
18435
18479
|
item.isCollected = false;
|
|
18436
18480
|
}
|
|
18437
18481
|
return item;
|
|
18438
|
-
})) !== null &&
|
|
18482
|
+
})) !== null && _s !== void 0 ? _s : [];
|
|
18439
18483
|
setCacheRtcList === null || setCacheRtcList === void 0 ? void 0 : setCacheRtcList(nRtcList);
|
|
18440
18484
|
}
|
|
18441
18485
|
}
|
|
18442
18486
|
else {
|
|
18443
18487
|
setState(true);
|
|
18444
|
-
const result = (
|
|
18488
|
+
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;
|
|
18445
18489
|
bffEventReport === null || bffEventReport === void 0 ? void 0 : bffEventReport({
|
|
18446
18490
|
eventInfo: {
|
|
18447
18491
|
eventSubject: 'favoriteContent',
|
|
18448
18492
|
eventDescription: 'This content was favorite by the user',
|
|
18449
|
-
contentId: (
|
|
18450
|
-
|
|
18451
|
-
|
|
18493
|
+
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 : '',
|
|
18494
|
+
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 : '',
|
|
18495
|
+
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 : '',
|
|
18496
|
+
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 : []),
|
|
18452
18497
|
position: position + '',
|
|
18453
|
-
contentFormat: ((
|
|
18454
|
-
traceInfo: (
|
|
18498
|
+
contentFormat: ((_5 = recData === null || recData === void 0 ? void 0 : recData.video) === null || _5 === void 0 ? void 0 : _5.url) ? 'video' : 'image',
|
|
18499
|
+
traceInfo: (_6 = recData === null || recData === void 0 ? void 0 : recData.video) === null || _6 === void 0 ? void 0 : _6.traceInfo
|
|
18455
18500
|
}
|
|
18456
18501
|
});
|
|
18457
18502
|
bffFbReport === null || bffFbReport === void 0 ? void 0 : bffFbReport({
|
|
18458
18503
|
eventName: 'Engagement',
|
|
18459
|
-
product: (
|
|
18504
|
+
product: (_7 = recData === null || recData === void 0 ? void 0 : recData.video) === null || _7 === void 0 ? void 0 : _7.bindProducts,
|
|
18460
18505
|
rec: recData,
|
|
18461
18506
|
position,
|
|
18462
|
-
content_id: (
|
|
18507
|
+
content_id: (_9 = (_8 = recData === null || recData === void 0 ? void 0 : recData.video) === null || _8 === void 0 ? void 0 : _8.itemId) !== null && _9 !== void 0 ? _9 : '',
|
|
18463
18508
|
engagement_type: 'like'
|
|
18464
18509
|
});
|
|
18465
18510
|
if (!result) {
|
|
18466
18511
|
setState(false);
|
|
18467
18512
|
}
|
|
18468
18513
|
else {
|
|
18469
|
-
const nRtcList = (
|
|
18514
|
+
const nRtcList = (_10 = cacheRtcList === null || cacheRtcList === void 0 ? void 0 : cacheRtcList.map((item, index) => {
|
|
18470
18515
|
if (index === position) {
|
|
18471
18516
|
item.isCollected = true;
|
|
18472
18517
|
}
|
|
18473
18518
|
return item;
|
|
18474
|
-
})) !== null &&
|
|
18519
|
+
})) !== null && _10 !== void 0 ? _10 : [];
|
|
18475
18520
|
setCacheRtcList === null || setCacheRtcList === void 0 ? void 0 : setCacheRtcList(nRtcList);
|
|
18476
18521
|
}
|
|
18477
18522
|
}
|
|
@@ -18508,7 +18553,7 @@ const mountVideoPlayerAtNode = (() => {
|
|
|
18508
18553
|
const VideoWidget$4 = React.forwardRef(({ rec, index, height, data, muted, activeIndex, videoPostConfig, videoPlayIcon, loopPlay, swiperRef, visibleHeight }, ref) => {
|
|
18509
18554
|
var _a, _b;
|
|
18510
18555
|
const [isPauseVideo, setIsPauseVideo] = React.useState(false);
|
|
18511
|
-
const { bffEventReport, sxpParameter,
|
|
18556
|
+
const { bffEventReport, sxpParameter, firstRtcList, openHashtag, bffFbReport, isDiyH5 } = useSxpDataSource();
|
|
18512
18557
|
const videoStartTime = React.useRef(0);
|
|
18513
18558
|
const [isLoadFinish, setIsLoadFinish] = React.useState(false);
|
|
18514
18559
|
const { isActive } = useSwiperSlide();
|
|
@@ -18525,7 +18570,7 @@ const VideoWidget$4 = React.forwardRef(({ rec, index, height, data, muted, activ
|
|
|
18525
18570
|
const loopPlayRef = React.useRef(loopPlay);
|
|
18526
18571
|
const scene = rec.video.scene;
|
|
18527
18572
|
const videoUrl = (scene === null || scene === void 0 ? void 0 : scene.mediaUrl) || ((_a = rec === null || rec === void 0 ? void 0 : rec.video) === null || _a === void 0 ? void 0 : _a.url);
|
|
18528
|
-
const videoCover = (
|
|
18573
|
+
const videoCover = (_b = rec === null || rec === void 0 ? void 0 : rec.video) === null || _b === void 0 ? void 0 : _b.cover;
|
|
18529
18574
|
const videoPoster = videoCover || (sxpParameter === null || sxpParameter === void 0 ? void 0 : sxpParameter.placeholder_image);
|
|
18530
18575
|
React.useImperativeHandle(ref, () => {
|
|
18531
18576
|
return {
|
|
@@ -18574,6 +18619,23 @@ const VideoWidget$4 = React.forwardRef(({ rec, index, height, data, muted, activ
|
|
|
18574
18619
|
return;
|
|
18575
18620
|
(_a = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _a === void 0 ? void 0 : _a.play();
|
|
18576
18621
|
}, [videoRef === null || videoRef === void 0 ? void 0 : videoRef.current]);
|
|
18622
|
+
const handleEnd = () => {
|
|
18623
|
+
var _a, _b, _c, _d, _e, _f;
|
|
18624
|
+
if (!videoRef.current)
|
|
18625
|
+
return;
|
|
18626
|
+
if (isDiyH5) {
|
|
18627
|
+
(_a = videoRef.current) === null || _a === void 0 ? void 0 : _a.pause();
|
|
18628
|
+
if (!loopPlayRef.current)
|
|
18629
|
+
return;
|
|
18630
|
+
if (firstRtcList && index < (firstRtcList === null || firstRtcList === void 0 ? void 0 : firstRtcList.length) - 1) {
|
|
18631
|
+
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;
|
|
18632
|
+
(_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);
|
|
18633
|
+
}
|
|
18634
|
+
}
|
|
18635
|
+
else {
|
|
18636
|
+
(_f = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _f === void 0 ? void 0 : _f.play();
|
|
18637
|
+
}
|
|
18638
|
+
};
|
|
18577
18639
|
const PAUSE_ICON = useIconLink('/pb_static/06f28a2025c74c1cb49be6767316d827.png');
|
|
18578
18640
|
const handlePlaying = React.useCallback(() => {
|
|
18579
18641
|
if (!(videoRef === null || videoRef === void 0 ? void 0 : videoRef.current))
|
|
@@ -18582,7 +18644,7 @@ const VideoWidget$4 = React.forwardRef(({ rec, index, height, data, muted, activ
|
|
|
18582
18644
|
setIsLoadFinish(true);
|
|
18583
18645
|
}, []);
|
|
18584
18646
|
const handleStartPlay = React.useCallback(() => __awaiter(void 0, void 0, void 0, function* () {
|
|
18585
|
-
var _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q;
|
|
18647
|
+
var _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t;
|
|
18586
18648
|
if (!(videoRef === null || videoRef === void 0 ? void 0 : videoRef.current))
|
|
18587
18649
|
return;
|
|
18588
18650
|
setIsPauseVideo(false);
|
|
@@ -18593,16 +18655,11 @@ const VideoWidget$4 = React.forwardRef(({ rec, index, height, data, muted, activ
|
|
|
18593
18655
|
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);
|
|
18594
18656
|
const playType = (isFirstPlayRef === null || isFirstPlayRef === void 0 ? void 0 : isFirstPlayRef.current) ? '0' : '1';
|
|
18595
18657
|
bffEventReport === null || bffEventReport === void 0 ? void 0 : bffEventReport({
|
|
18596
|
-
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 : '',
|
|
18658
|
+
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) + '' }))
|
|
18597
18659
|
});
|
|
18598
18660
|
isFirstPlayRef.current = false;
|
|
18599
18661
|
}
|
|
18600
18662
|
}), [bffEventReport, data, index, isFirstPlayRef, videoRef === null || videoRef === void 0 ? void 0 : videoRef.current]);
|
|
18601
|
-
const setCurrentTimeByStartTime = React.useCallback(() => {
|
|
18602
|
-
if (isDiyH5) {
|
|
18603
|
-
videoRef.current.currentTime = scene === null || scene === void 0 ? void 0 : scene.startTime;
|
|
18604
|
-
}
|
|
18605
|
-
}, []);
|
|
18606
18663
|
const handLoadeddata = React.useCallback(() => {
|
|
18607
18664
|
if (!(videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) || firstFrameSrc || !blur)
|
|
18608
18665
|
return;
|
|
@@ -18627,13 +18684,12 @@ const VideoWidget$4 = React.forwardRef(({ rec, index, height, data, muted, activ
|
|
|
18627
18684
|
const handleLoadedmetadata = React.useCallback(() => {
|
|
18628
18685
|
if (!videoRef.current)
|
|
18629
18686
|
return;
|
|
18630
|
-
setCurrentTimeByStartTime();
|
|
18631
18687
|
loadedTimeRef.current = new Date();
|
|
18632
18688
|
handleStartPlay();
|
|
18633
18689
|
handLoadeddata();
|
|
18634
18690
|
}, [videoRef.current, handLoadeddata, handleStartPlay]);
|
|
18635
18691
|
const handleClickVideo = React.useCallback((type) => () => {
|
|
18636
|
-
var _a, _b, _c, _d, _e
|
|
18692
|
+
var _a, _b, _c, _d, _e;
|
|
18637
18693
|
if (!videoRef.current)
|
|
18638
18694
|
return;
|
|
18639
18695
|
if (!isLoadFinish)
|
|
@@ -18654,20 +18710,17 @@ const VideoWidget$4 = React.forwardRef(({ rec, index, height, data, muted, activ
|
|
|
18654
18710
|
break;
|
|
18655
18711
|
default:
|
|
18656
18712
|
if (isPause) {
|
|
18657
|
-
|
|
18658
|
-
videoRef.current.currentTime = scene === null || scene === void 0 ? void 0 : scene.startTime;
|
|
18659
|
-
}
|
|
18660
|
-
(_e = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _e === void 0 ? void 0 : _e.play();
|
|
18713
|
+
(_d = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _d === void 0 ? void 0 : _d.play();
|
|
18661
18714
|
}
|
|
18662
18715
|
else {
|
|
18663
|
-
(
|
|
18716
|
+
(_e = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _e === void 0 ? void 0 : _e.pause();
|
|
18664
18717
|
}
|
|
18665
18718
|
setIsPauseVideo(!isPause);
|
|
18666
18719
|
break;
|
|
18667
18720
|
}
|
|
18668
18721
|
}, [isLoadFinish, videoRef === null || videoRef === void 0 ? void 0 : videoRef.current]);
|
|
18669
18722
|
const handlePause = React.useCallback(() => {
|
|
18670
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o;
|
|
18723
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r;
|
|
18671
18724
|
if (!(videoRef === null || videoRef === void 0 ? void 0 : videoRef.current))
|
|
18672
18725
|
return;
|
|
18673
18726
|
if (activeIndex !== index)
|
|
@@ -18683,14 +18736,15 @@ const VideoWidget$4 = React.forwardRef(({ rec, index, height, data, muted, activ
|
|
|
18683
18736
|
eventSubject: 'playOverVideo',
|
|
18684
18737
|
eventDescription: 'User finished playing the video',
|
|
18685
18738
|
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 : '',
|
|
18686
|
-
|
|
18739
|
+
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 : '',
|
|
18740
|
+
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 : '',
|
|
18687
18741
|
endTime: videoCurrentTime,
|
|
18688
18742
|
videoDuration,
|
|
18689
18743
|
playDuration,
|
|
18690
|
-
contentTags: JSON.stringify((
|
|
18744
|
+
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 : []),
|
|
18691
18745
|
position: index + '',
|
|
18692
18746
|
contentFormat: 'video',
|
|
18693
|
-
traceInfo: (
|
|
18747
|
+
traceInfo: (_r = item === null || item === void 0 ? void 0 : item.video) === null || _r === void 0 ? void 0 : _r.traceInfo
|
|
18694
18748
|
}
|
|
18695
18749
|
});
|
|
18696
18750
|
}
|
|
@@ -18698,27 +18752,8 @@ const VideoWidget$4 = React.forwardRef(({ rec, index, height, data, muted, activ
|
|
|
18698
18752
|
const handleWaiting = React.useCallback(() => {
|
|
18699
18753
|
setWaiting(true);
|
|
18700
18754
|
}, []);
|
|
18701
|
-
const handleTimeUpload = () => {
|
|
18702
|
-
if (!videoRef.current || !isDiyH5)
|
|
18703
|
-
return;
|
|
18704
|
-
setTimeout(() => {
|
|
18705
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j;
|
|
18706
|
-
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)) {
|
|
18707
|
-
(_c = videoRef.current) === null || _c === void 0 ? void 0 : _c.pause();
|
|
18708
|
-
if (!loopPlayRef.current)
|
|
18709
|
-
return;
|
|
18710
|
-
if (index === (data === null || data === void 0 ? void 0 : data.length) - 1) {
|
|
18711
|
-
(_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);
|
|
18712
|
-
}
|
|
18713
|
-
else {
|
|
18714
|
-
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;
|
|
18715
|
-
(_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);
|
|
18716
|
-
}
|
|
18717
|
-
}
|
|
18718
|
-
});
|
|
18719
|
-
};
|
|
18720
18755
|
React.useEffect(() => {
|
|
18721
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k
|
|
18756
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
|
|
18722
18757
|
if (!isActive)
|
|
18723
18758
|
return;
|
|
18724
18759
|
const videoSrc = videoUrl;
|
|
@@ -18739,7 +18774,6 @@ const VideoWidget$4 = React.forwardRef(({ rec, index, height, data, muted, activ
|
|
|
18739
18774
|
hls === null || hls === void 0 ? void 0 : hls.attachMedia(videoRef === null || videoRef === void 0 ? void 0 : videoRef.current);
|
|
18740
18775
|
hls === null || hls === void 0 ? void 0 : hls.on(Hls.Events.MANIFEST_PARSED, function () {
|
|
18741
18776
|
var _a;
|
|
18742
|
-
setCurrentTimeByStartTime();
|
|
18743
18777
|
(_a = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _a === void 0 ? void 0 : _a.play();
|
|
18744
18778
|
});
|
|
18745
18779
|
}
|
|
@@ -18753,12 +18787,11 @@ const VideoWidget$4 = React.forwardRef(({ rec, index, height, data, muted, activ
|
|
|
18753
18787
|
(_e = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _e === void 0 ? void 0 : _e.addEventListener('play', handleStartPlay);
|
|
18754
18788
|
(_f = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _f === void 0 ? void 0 : _f.addEventListener('playing', handlePlaying);
|
|
18755
18789
|
(_g = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _g === void 0 ? void 0 : _g.addEventListener('pause', handlePause);
|
|
18756
|
-
(_h = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _h === void 0 ? void 0 : _h.addEventListener('ended',
|
|
18790
|
+
(_h = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _h === void 0 ? void 0 : _h.addEventListener('ended', handleEnd);
|
|
18757
18791
|
(_j = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _j === void 0 ? void 0 : _j.addEventListener('canplay', handlePlay);
|
|
18758
18792
|
(_k = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _k === void 0 ? void 0 : _k.addEventListener('waiting', handleWaiting);
|
|
18759
|
-
(_l = videoRef.current) === null || _l === void 0 ? void 0 : _l.addEventListener('timeupdate', handleTimeUpload);
|
|
18760
18793
|
return () => {
|
|
18761
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k
|
|
18794
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
|
|
18762
18795
|
const isPause = (_a = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _a === void 0 ? void 0 : _a.paused;
|
|
18763
18796
|
if (!isPause)
|
|
18764
18797
|
handlePause();
|
|
@@ -18770,10 +18803,9 @@ const VideoWidget$4 = React.forwardRef(({ rec, index, height, data, muted, activ
|
|
|
18770
18803
|
(_e = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _e === void 0 ? void 0 : _e.removeEventListener('play', handleStartPlay);
|
|
18771
18804
|
(_f = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _f === void 0 ? void 0 : _f.removeEventListener('playing', handlePlaying);
|
|
18772
18805
|
(_g = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _g === void 0 ? void 0 : _g.removeEventListener('pause', handlePause);
|
|
18773
|
-
(_h = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _h === void 0 ? void 0 : _h.removeEventListener('ended',
|
|
18806
|
+
(_h = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _h === void 0 ? void 0 : _h.removeEventListener('ended', handleEnd);
|
|
18774
18807
|
(_j = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _j === void 0 ? void 0 : _j.removeEventListener('canplay', handlePlay);
|
|
18775
18808
|
(_k = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _k === void 0 ? void 0 : _k.removeEventListener('waiting', handleWaiting);
|
|
18776
|
-
(_l = videoRef.current) === null || _l === void 0 ? void 0 : _l.removeEventListener('timeupdate', handleTimeUpload);
|
|
18777
18809
|
};
|
|
18778
18810
|
}, [isActive]);
|
|
18779
18811
|
React.useEffect(() => {
|
|
@@ -18988,19 +19020,45 @@ const Picture = (props) => {
|
|
|
18988
19020
|
}, onLoad: onShowFirstImage }))));
|
|
18989
19021
|
};
|
|
18990
19022
|
|
|
18991
|
-
const PictureGroup$4 = ({ imgUrls,
|
|
19023
|
+
const PictureGroup$4 = React.forwardRef(({ imgUrls, data, height, rec, index, onViewImageEndEvent, onViewImageStartEvent, imgUrlsPostConfig, swiperRef }, ref) => {
|
|
18992
19024
|
var _a, _b;
|
|
18993
19025
|
const { isActive } = useSwiperSlide();
|
|
18994
|
-
const {
|
|
19026
|
+
const { firstRtcList, openHashtag, isDiyH5 } = useSxpDataSource();
|
|
18995
19027
|
const [isLoad, setIsLoad] = React.useState(false);
|
|
18996
19028
|
const [imgInfo, setImgInfo] = React.useState();
|
|
18997
19029
|
const [swiperActiveIndex, setSwiperActiveIndex] = React.useState(0);
|
|
18998
|
-
const
|
|
19030
|
+
const imgsSwiperRef = React.useRef();
|
|
18999
19031
|
const isFirstPlayRef = React.useRef(true);
|
|
19032
|
+
const loopPlayRef = React.useRef(true);
|
|
19000
19033
|
const initTime = new Date();
|
|
19034
|
+
React.useImperativeHandle(ref, () => {
|
|
19035
|
+
return {
|
|
19036
|
+
setLoopPlay(v) {
|
|
19037
|
+
loopPlayRef.current = v;
|
|
19038
|
+
}
|
|
19039
|
+
};
|
|
19040
|
+
});
|
|
19041
|
+
React.useEffect(() => {
|
|
19042
|
+
let timerId;
|
|
19043
|
+
if (isLoad && isActive && isDiyH5) {
|
|
19044
|
+
timerId = setTimeout(() => {
|
|
19045
|
+
var _a, _b, _c, _d;
|
|
19046
|
+
if (!loopPlayRef.current)
|
|
19047
|
+
return;
|
|
19048
|
+
if (firstRtcList && index < (firstRtcList === null || firstRtcList === void 0 ? void 0 : firstRtcList.length) - 1) {
|
|
19049
|
+
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;
|
|
19050
|
+
(_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);
|
|
19051
|
+
}
|
|
19052
|
+
}, 3000);
|
|
19053
|
+
}
|
|
19054
|
+
return () => {
|
|
19055
|
+
if (timerId)
|
|
19056
|
+
clearTimeout(timerId);
|
|
19057
|
+
};
|
|
19058
|
+
}, [isLoad, isActive, isDiyH5, index, swiperRef, firstRtcList]);
|
|
19001
19059
|
React.useEffect(() => {
|
|
19002
19060
|
if (isLoad && isActive) {
|
|
19003
|
-
(
|
|
19061
|
+
(imgsSwiperRef === null || imgsSwiperRef === void 0 ? void 0 : imgsSwiperRef.current) && imgsSwiperRef.current.swiper.autoplay.start();
|
|
19004
19062
|
if (openHashtag) {
|
|
19005
19063
|
onViewImageEndEvent(rec);
|
|
19006
19064
|
}
|
|
@@ -19010,7 +19068,7 @@ const PictureGroup$4 = ({ imgUrls, width, height, rec, index, onViewImageEndEven
|
|
|
19010
19068
|
}
|
|
19011
19069
|
}
|
|
19012
19070
|
else {
|
|
19013
|
-
(
|
|
19071
|
+
(imgsSwiperRef === null || imgsSwiperRef === void 0 ? void 0 : imgsSwiperRef.current) && imgsSwiperRef.current.swiper.autoplay.stop();
|
|
19014
19072
|
}
|
|
19015
19073
|
}, [rec, isActive, onViewImageEndEvent, openHashtag, index, onViewImageStartEvent, isLoad, imgInfo]);
|
|
19016
19074
|
const showFirstImageFn = React.useCallback((e) => __awaiter(void 0, void 0, void 0, function* () {
|
|
@@ -19037,13 +19095,13 @@ const PictureGroup$4 = ({ imgUrls, width, height, rec, index, onViewImageEndEven
|
|
|
19037
19095
|
};
|
|
19038
19096
|
}, [isActive, imgInfo]);
|
|
19039
19097
|
const handleMouseEnter = React.useCallback(() => {
|
|
19040
|
-
if (
|
|
19041
|
-
|
|
19098
|
+
if (imgsSwiperRef.current && imgsSwiperRef.current.swiper && isAlly) {
|
|
19099
|
+
imgsSwiperRef.current.swiper.autoplay.stop();
|
|
19042
19100
|
}
|
|
19043
19101
|
}, []);
|
|
19044
19102
|
const handleMouseLeave = React.useCallback(() => {
|
|
19045
|
-
if (
|
|
19046
|
-
|
|
19103
|
+
if (imgsSwiperRef.current && imgsSwiperRef.current.swiper && isAlly) {
|
|
19104
|
+
imgsSwiperRef.current.swiper.autoplay.start();
|
|
19047
19105
|
}
|
|
19048
19106
|
}, []);
|
|
19049
19107
|
const handleSlideChange = React.useCallback((swiper) => {
|
|
@@ -19064,7 +19122,7 @@ const PictureGroup$4 = ({ imgUrls, width, height, rec, index, onViewImageEndEven
|
|
|
19064
19122
|
enabled: true
|
|
19065
19123
|
}
|
|
19066
19124
|
}
|
|
19067
|
-
: {}), { loop: true, ref:
|
|
19125
|
+
: {}), { loop: true, ref: imgsSwiperRef, onSlideChange: handleSlideChange, className: css.css(Object.assign(Object.assign({ '.swiper-pagination': {
|
|
19068
19126
|
bottom: (_a = imgUrlsPostConfig === null || imgUrlsPostConfig === void 0 ? void 0 : imgUrlsPostConfig.marginBottom) !== null && _a !== void 0 ? _a : 0,
|
|
19069
19127
|
fontSize: '14px'
|
|
19070
19128
|
} }, ((imgUrlsPostConfig === null || imgUrlsPostConfig === void 0 ? void 0 : imgUrlsPostConfig.dotsBgColor) && {
|
|
@@ -19081,7 +19139,7 @@ const PictureGroup$4 = ({ imgUrls, width, height, rec, index, onViewImageEndEven
|
|
|
19081
19139
|
return (React.createElement(SwiperSlide, { key: srcKey, "aria-hidden": srcKey !== swiperActiveIndex },
|
|
19082
19140
|
React.createElement(Picture, { src: !isLoad && srcKey > 0 ? '' : url, height: height, imgUrlsPostConfig: imgUrlsPostConfig, onShowFirstImage: showFirstImageFn })));
|
|
19083
19141
|
}))));
|
|
19084
|
-
};
|
|
19142
|
+
});
|
|
19085
19143
|
var PictureGroup$5 = React.memo(PictureGroup$4);
|
|
19086
19144
|
|
|
19087
19145
|
/*
|
|
@@ -19373,7 +19431,7 @@ var NavBack$1 = React.memo(NavBack);
|
|
|
19373
19431
|
* @Author: binruan@chatlabs.com
|
|
19374
19432
|
* @Date: 2024-03-20 10:27:31
|
|
19375
19433
|
* @LastEditors: binruan@chatlabs.com
|
|
19376
|
-
* @LastEditTime: 2025-05-
|
|
19434
|
+
* @LastEditTime: 2025-05-12 14:26:15
|
|
19377
19435
|
* @FilePath: \pb-sxp-ui\src\core\components\SxpPageRender\index.tsx
|
|
19378
19436
|
*
|
|
19379
19437
|
*/
|
|
@@ -19394,6 +19452,7 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight, containerWidt
|
|
|
19394
19452
|
const [pageNum, setPageNum] = React.useState(2);
|
|
19395
19453
|
React.useState(false);
|
|
19396
19454
|
const videoWidgetRef = React.useRef(null);
|
|
19455
|
+
const pictureGroupRef = React.useRef(null);
|
|
19397
19456
|
const fbcRef = React.useRef('');
|
|
19398
19457
|
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, pixelPvStatusRef } = useSxpDataSource();
|
|
19399
19458
|
const { backMainFeed, productView, jumpToWeb } = useEventReport();
|
|
@@ -19443,7 +19502,7 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight, containerWidt
|
|
|
19443
19502
|
(_a = swiperRef === null || swiperRef === void 0 ? void 0 : swiperRef.current) === null || _a === void 0 ? void 0 : _a.swiper.slideTo(index);
|
|
19444
19503
|
}, [data, ctaType, swiperRef]);
|
|
19445
19504
|
const handleSessionCompleted = React.useCallback((fk) => {
|
|
19446
|
-
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;
|
|
19505
|
+
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;
|
|
19447
19506
|
const item = data === null || data === void 0 ? void 0 : data[activeIndex];
|
|
19448
19507
|
let fromKName = '';
|
|
19449
19508
|
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))) {
|
|
@@ -19470,22 +19529,23 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight, containerWidt
|
|
|
19470
19529
|
eventSubject: 'sessionCompleted',
|
|
19471
19530
|
eventDescription: 'Session completed',
|
|
19472
19531
|
contentId: (_m = item === null || item === void 0 ? void 0 : item.video) === null || _m === void 0 ? void 0 : _m.itemId,
|
|
19473
|
-
|
|
19532
|
+
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 : '',
|
|
19533
|
+
productId: (_r = item === null || item === void 0 ? void 0 : item.product) === null || _r === void 0 ? void 0 : _r.itemId,
|
|
19474
19534
|
position: activeIndex + '',
|
|
19475
19535
|
fromKName: fk || fromKName,
|
|
19476
19536
|
fromKPage: location === null || location === void 0 ? void 0 : location.href,
|
|
19477
|
-
ctatId: (
|
|
19478
|
-
traceInfo: (
|
|
19537
|
+
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 : '',
|
|
19538
|
+
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 : ''
|
|
19479
19539
|
}
|
|
19480
19540
|
});
|
|
19481
|
-
const isPostType = ((
|
|
19541
|
+
const isPostType = ((_z = item === null || item === void 0 ? void 0 : item.video) === null || _z === void 0 ? void 0 : _z.url) || ((_1 = (_0 = item === null || item === void 0 ? void 0 : item.video) === null || _0 === void 0 ? void 0 : _0.imgUrls) === null || _1 === void 0 ? void 0 : _1.length);
|
|
19482
19542
|
if (!popupDetailData) {
|
|
19483
19543
|
bffFbReport === null || bffFbReport === void 0 ? void 0 : bffFbReport({
|
|
19484
19544
|
eventName: 'ExitFeed',
|
|
19485
|
-
product: isPostType ? (
|
|
19545
|
+
product: isPostType ? (_2 = item === null || item === void 0 ? void 0 : item.video) === null || _2 === void 0 ? void 0 : _2.bindProducts : (item === null || item === void 0 ? void 0 : item.product) ? [item === null || item === void 0 ? void 0 : item.product] : [],
|
|
19486
19546
|
rec: item,
|
|
19487
19547
|
position: activeIndex,
|
|
19488
|
-
content_id: isPostType ? (
|
|
19548
|
+
content_id: isPostType ? (_4 = (_3 = item === null || item === void 0 ? void 0 : item.video) === null || _3 === void 0 ? void 0 : _3.itemId) !== null && _4 !== void 0 ? _4 : '' : (_6 = (_5 = item === null || item === void 0 ? void 0 : item.product) === null || _5 === void 0 ? void 0 : _5.itemId) !== null && _6 !== void 0 ? _6 : '',
|
|
19489
19549
|
view_time: new Date() - viewTime.current
|
|
19490
19550
|
});
|
|
19491
19551
|
}
|
|
@@ -19545,8 +19605,9 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight, containerWidt
|
|
|
19545
19605
|
refreshFeSession
|
|
19546
19606
|
]);
|
|
19547
19607
|
const handleSessionExpire = React.useCallback(lodash.debounce(() => {
|
|
19548
|
-
var _a;
|
|
19608
|
+
var _a, _b;
|
|
19549
19609
|
(_a = videoWidgetRef.current) === null || _a === void 0 ? void 0 : _a.setLoopPlay(false);
|
|
19610
|
+
(_b = pictureGroupRef.current) === null || _b === void 0 ? void 0 : _b.setLoopPlay(false);
|
|
19550
19611
|
refreshFeSession === null || refreshFeSession === void 0 ? void 0 : refreshFeSession(false, handleSessionCompleted);
|
|
19551
19612
|
}, 1000), [handleSessionCompleted, refreshFeSession]);
|
|
19552
19613
|
React.useEffect(() => {
|
|
@@ -19617,18 +19678,18 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight, containerWidt
|
|
|
19617
19678
|
return null;
|
|
19618
19679
|
}, [globalConfig, activeIndex, visList]);
|
|
19619
19680
|
const renderContent = React.useCallback((rec, index) => {
|
|
19620
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
|
|
19681
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
|
|
19621
19682
|
if (rec === 'organic menu') {
|
|
19622
19683
|
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)));
|
|
19623
19684
|
}
|
|
19624
|
-
if ((_g = rec === null || rec === void 0 ? void 0 : rec.video) === null ||
|
|
19685
|
+
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)) {
|
|
19625
19686
|
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, visibleHeight: visibleHeight })));
|
|
19626
19687
|
}
|
|
19627
|
-
if ((
|
|
19628
|
-
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 }));
|
|
19688
|
+
if ((_k = rec === null || rec === void 0 ? void 0 : rec.video) === null || _k === void 0 ? void 0 : _k.imgUrls) {
|
|
19689
|
+
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 })));
|
|
19629
19690
|
}
|
|
19630
|
-
if (rec.product && Array.isArray(globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.productPost) && ((
|
|
19631
|
-
return (
|
|
19691
|
+
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) {
|
|
19692
|
+
return (_m = globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.productPost) === null || _m === void 0 ? void 0 : _m.map((value, idx) => {
|
|
19632
19693
|
var _a, _b, _c, _d, _e, _f, _g, _h;
|
|
19633
19694
|
const t = resolver[(_a = value === null || value === void 0 ? void 0 : value.item) === null || _a === void 0 ? void 0 : _a.type];
|
|
19634
19695
|
const Component = withBindDataSource(t);
|
|
@@ -19667,7 +19728,7 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight, containerWidt
|
|
|
19667
19728
|
};
|
|
19668
19729
|
}, [isShowMore]);
|
|
19669
19730
|
const renderBottom = React.useCallback((rec, index) => {
|
|
19670
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q;
|
|
19731
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t;
|
|
19671
19732
|
if (rec === null || rec === void 0 ? void 0 : rec.video) {
|
|
19672
19733
|
let cta = null;
|
|
19673
19734
|
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) {
|
|
@@ -19676,24 +19737,27 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight, containerWidt
|
|
|
19676
19737
|
else if ((_c = rec === null || rec === void 0 ? void 0 : rec.video) === null || _c === void 0 ? void 0 : _c.bindProduct) {
|
|
19677
19738
|
cta = '商品CTA';
|
|
19678
19739
|
}
|
|
19740
|
+
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)) {
|
|
19741
|
+
cta = '服务CTA';
|
|
19742
|
+
}
|
|
19679
19743
|
else {
|
|
19680
|
-
cta = (
|
|
19744
|
+
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;
|
|
19681
19745
|
}
|
|
19682
19746
|
const value = tempMap === null || tempMap === void 0 ? void 0 : tempMap[cta];
|
|
19683
19747
|
const isNineProduct = (globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.nineProductEnable) &&
|
|
19684
19748
|
index === ((rtcList === null || rtcList === void 0 ? void 0 : rtcList[0]) === 'organic menu' ? 1 : 0) &&
|
|
19685
|
-
((
|
|
19749
|
+
((_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));
|
|
19686
19750
|
return (React.createElement(React.Fragment, null,
|
|
19687
19751
|
isNineProduct && (React.createElement(RenderCard$1, { rec: rec, index: index, tempMap: tempMap, resolver: resolver, isActive: index === activeIndex, isNineProduct: isNineProduct })),
|
|
19688
|
-
((
|
|
19689
|
-
React.createElement("div", { className: 'clc-sxp-bottom', style: { marginBottom: `${(
|
|
19752
|
+
((_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' }),
|
|
19753
|
+
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` } },
|
|
19690
19754
|
React.createElement(Nudge, { nudge: nudge }),
|
|
19691
19755
|
((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' },
|
|
19692
19756
|
React.createElement(RenderCard$1, { rec: rec, index: index, tempMap: tempMap, resolver: resolver, isActive: index === activeIndex, includesCtaType: [] }))) : null,
|
|
19693
19757
|
React.createElement("div", { style: { display: 'flex', flexDirection: 'column' } },
|
|
19694
|
-
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: (
|
|
19758
|
+
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 }),
|
|
19695
19759
|
React.createElement(RenderCard$1, { rec: rec, index: index, tempMap: tempMap, resolver: resolver, includesCtaType: ['AniLink'], isActive: index === activeIndex }),
|
|
19696
|
-
React.createElement(Hashtag$1, { index: activeIndex, tags: (
|
|
19760
|
+
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) }))),
|
|
19697
19761
|
React.createElement(RenderCard$1, { rec: rec, index: index, tempMap: tempMap, resolver: resolver, includesCtaType: ['AniLinkPopup'], isActive: index === activeIndex })));
|
|
19698
19762
|
}
|
|
19699
19763
|
return null;
|
|
@@ -19735,7 +19799,7 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight, containerWidt
|
|
|
19735
19799
|
return null;
|
|
19736
19800
|
}, [globalConfig, waterFallData, bottomHeight]);
|
|
19737
19801
|
const handleViewImageStartEnd = (item) => {
|
|
19738
|
-
var _a, _b, _c, _d, _e, _f;
|
|
19802
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j;
|
|
19739
19803
|
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)) {
|
|
19740
19804
|
const endTime = Date.now();
|
|
19741
19805
|
const duration = viewImageStartTime.current === 0 ? 0 : (endTime - viewImageStartTime.current) / 1000;
|
|
@@ -19744,10 +19808,11 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight, containerWidt
|
|
|
19744
19808
|
eventSubject: 'viewImageCarouselEnd',
|
|
19745
19809
|
eventDescription: 'User end view the image carousel',
|
|
19746
19810
|
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 : '',
|
|
19747
|
-
|
|
19811
|
+
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 : '',
|
|
19812
|
+
contentName: (_h = item === null || item === void 0 ? void 0 : item.video.title) !== null && _h !== void 0 ? _h : '',
|
|
19748
19813
|
imageEndTime: `${endTime}`,
|
|
19749
19814
|
playDuration: `${duration}`,
|
|
19750
|
-
contentTags: JSON.stringify((
|
|
19815
|
+
contentTags: JSON.stringify((_j = item === null || item === void 0 ? void 0 : item.video.tags) !== null && _j !== void 0 ? _j : []),
|
|
19751
19816
|
position: activeIndex + '',
|
|
19752
19817
|
contentFormat: 'image',
|
|
19753
19818
|
traceInfo: item === null || item === void 0 ? void 0 : item.video.traceInfo
|
|
@@ -19756,7 +19821,7 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight, containerWidt
|
|
|
19756
19821
|
}
|
|
19757
19822
|
};
|
|
19758
19823
|
const handleSlideSkip = (item, position) => {
|
|
19759
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x;
|
|
19824
|
+
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;
|
|
19760
19825
|
if (isPreview || waterFallData)
|
|
19761
19826
|
return;
|
|
19762
19827
|
const t = new Date() - curTime.current;
|
|
@@ -19782,7 +19847,8 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight, containerWidt
|
|
|
19782
19847
|
contentTags: (product === null || product === void 0 ? void 0 : product.tags) ? JSON.stringify(product === null || product === void 0 ? void 0 : product.tags) : '',
|
|
19783
19848
|
position: position + '',
|
|
19784
19849
|
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 : '',
|
|
19785
|
-
|
|
19850
|
+
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 : '',
|
|
19851
|
+
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 : '',
|
|
19786
19852
|
contentFormat
|
|
19787
19853
|
}
|
|
19788
19854
|
});
|
|
@@ -19792,7 +19858,7 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight, containerWidt
|
|
|
19792
19858
|
}
|
|
19793
19859
|
};
|
|
19794
19860
|
const handleScrollEvent = (swiper) => {
|
|
19795
|
-
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;
|
|
19861
|
+
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;
|
|
19796
19862
|
const item = data[swiper.previousIndex];
|
|
19797
19863
|
const activeItem = data[swiper.activeIndex];
|
|
19798
19864
|
if (!item)
|
|
@@ -19825,11 +19891,12 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight, containerWidt
|
|
|
19825
19891
|
eventSubject: 'scrollDown',
|
|
19826
19892
|
eventDescription: 'User scroll down',
|
|
19827
19893
|
contentId: (_u = (_t = item === null || item === void 0 ? void 0 : item.video) === null || _t === void 0 ? void 0 : _t.itemId) !== null && _u !== void 0 ? _u : '',
|
|
19828
|
-
|
|
19894
|
+
sceneId: (_x = (_w = (_v = item === null || item === void 0 ? void 0 : item.video) === null || _v === void 0 ? void 0 : _v.scene) === null || _w === void 0 ? void 0 : _w.sceneId) !== null && _x !== void 0 ? _x : '',
|
|
19895
|
+
productId: (_z = (_y = item === null || item === void 0 ? void 0 : item.product) === null || _y === void 0 ? void 0 : _y.itemId) !== null && _z !== void 0 ? _z : '',
|
|
19829
19896
|
requestId: null,
|
|
19830
|
-
traceInfo: (
|
|
19897
|
+
traceInfo: (_3 = (_1 = (_0 = item === null || item === void 0 ? void 0 : item.video) === null || _0 === void 0 ? void 0 : _0.traceInfo) !== null && _1 !== void 0 ? _1 : (_2 = item === null || item === void 0 ? void 0 : item.product) === null || _2 === void 0 ? void 0 : _2.traceInfo) !== null && _3 !== void 0 ? _3 : '',
|
|
19831
19898
|
contentFormat,
|
|
19832
|
-
position: ((
|
|
19899
|
+
position: ((_4 = swiper.previousIndex) !== null && _4 !== void 0 ? _4 : 0) + ''
|
|
19833
19900
|
}
|
|
19834
19901
|
});
|
|
19835
19902
|
// 如果上一个商品是图片集,需上报 浏览图片集结结束 事件
|
|
@@ -19842,12 +19909,13 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight, containerWidt
|
|
|
19842
19909
|
eventInfo: {
|
|
19843
19910
|
eventSubject: 'scrollUp',
|
|
19844
19911
|
eventDescription: 'User scroll up',
|
|
19845
|
-
contentId: (
|
|
19846
|
-
|
|
19912
|
+
contentId: (_6 = (_5 = item === null || item === void 0 ? void 0 : item.video) === null || _5 === void 0 ? void 0 : _5.itemId) !== null && _6 !== void 0 ? _6 : '',
|
|
19913
|
+
sceneId: (_9 = (_8 = (_7 = item === null || item === void 0 ? void 0 : item.video) === null || _7 === void 0 ? void 0 : _7.scene) === null || _8 === void 0 ? void 0 : _8.sceneId) !== null && _9 !== void 0 ? _9 : '',
|
|
19914
|
+
productId: (_11 = (_10 = item.product) === null || _10 === void 0 ? void 0 : _10.itemId) !== null && _11 !== void 0 ? _11 : '',
|
|
19847
19915
|
requestId: null,
|
|
19848
|
-
traceInfo: (
|
|
19916
|
+
traceInfo: (_15 = (_13 = (_12 = item === null || item === void 0 ? void 0 : item.video) === null || _12 === void 0 ? void 0 : _12.traceInfo) !== null && _13 !== void 0 ? _13 : (_14 = item === null || item === void 0 ? void 0 : item.product) === null || _14 === void 0 ? void 0 : _14.traceInfo) !== null && _15 !== void 0 ? _15 : '',
|
|
19849
19917
|
contentFormat,
|
|
19850
|
-
position: ((
|
|
19918
|
+
position: ((_16 = swiper.previousIndex) !== null && _16 !== void 0 ? _16 : 0) + ''
|
|
19851
19919
|
}
|
|
19852
19920
|
});
|
|
19853
19921
|
// 如果上一个商品是图片集,需上报 浏览图片集结结束 事件
|
|
@@ -19947,7 +20015,7 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight, containerWidt
|
|
|
19947
20015
|
};
|
|
19948
20016
|
}, [globalConfig, bffEventReport, data, activeIndex]);
|
|
19949
20017
|
const handleViewImageStartEvent = (activeIndex, imgInfo, enableCapi) => {
|
|
19950
|
-
var _a, _b, _c, _d, _e, _f, _g, _h;
|
|
20018
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l;
|
|
19951
20019
|
const item = data[activeIndex];
|
|
19952
20020
|
// 如果是图片集则上报事件
|
|
19953
20021
|
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)) {
|
|
@@ -19958,9 +20026,10 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight, containerWidt
|
|
|
19958
20026
|
eventSubject: 'viewImageCarouselStart',
|
|
19959
20027
|
eventDescription: 'User start view the image carousel',
|
|
19960
20028
|
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 : '',
|
|
19961
|
-
|
|
20029
|
+
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 : '',
|
|
20030
|
+
contentName: (_h = item === null || item === void 0 ? void 0 : item.video.title) !== null && _h !== void 0 ? _h : '',
|
|
19962
20031
|
imageStartTime: `${startTime}`,
|
|
19963
|
-
contentTags: JSON.stringify((
|
|
20032
|
+
contentTags: JSON.stringify((_j = item === null || item === void 0 ? void 0 : item.video.tags) !== null && _j !== void 0 ? _j : []),
|
|
19964
20033
|
position: activeIndex + '',
|
|
19965
20034
|
contentFormat: 'image',
|
|
19966
20035
|
traceInfo: item === null || item === void 0 ? void 0 : item.video.traceInfo,
|
|
@@ -19970,13 +20039,13 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight, containerWidt
|
|
|
19970
20039
|
if (enableCapi) {
|
|
19971
20040
|
bffFbReport === null || bffFbReport === void 0 ? void 0 : bffFbReport({
|
|
19972
20041
|
eventName: 'ViewContent',
|
|
19973
|
-
product: (
|
|
20042
|
+
product: (_k = item === null || item === void 0 ? void 0 : item.video) === null || _k === void 0 ? void 0 : _k.bindProducts,
|
|
19974
20043
|
rec: item,
|
|
19975
20044
|
position: activeIndex
|
|
19976
20045
|
});
|
|
19977
20046
|
bffFbReport === null || bffFbReport === void 0 ? void 0 : bffFbReport({
|
|
19978
20047
|
eventName: 'PageView',
|
|
19979
|
-
product: (
|
|
20048
|
+
product: (_l = item === null || item === void 0 ? void 0 : item.video) === null || _l === void 0 ? void 0 : _l.bindProducts,
|
|
19980
20049
|
rec: item,
|
|
19981
20050
|
position: activeIndex
|
|
19982
20051
|
});
|
|
@@ -20074,15 +20143,20 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight, containerWidt
|
|
|
20074
20143
|
swiperRef.current.swiper.allowTouchMove = true;
|
|
20075
20144
|
}, 500);
|
|
20076
20145
|
}, onActiveIndexChange: (swiper) => {
|
|
20146
|
+
var _a, _b;
|
|
20077
20147
|
setActiveIndex(swiper.activeIndex);
|
|
20078
20148
|
if (openHashtag)
|
|
20079
20149
|
return;
|
|
20080
20150
|
// 处理上滑下滑事件
|
|
20081
20151
|
handleScrollEvent(swiper);
|
|
20082
|
-
if (waterFallData || isEditor
|
|
20152
|
+
if (waterFallData || isEditor)
|
|
20083
20153
|
return;
|
|
20084
20154
|
if ((swiper === null || swiper === void 0 ? void 0 : swiper.activeIndex) + 1 >= (data === null || data === void 0 ? void 0 : data.length)) {
|
|
20085
20155
|
if (!isLoadMore) {
|
|
20156
|
+
if (isDiyH5) {
|
|
20157
|
+
(_a = videoWidgetRef.current) === null || _a === void 0 ? void 0 : _a.setLoopPlay(false);
|
|
20158
|
+
(_b = pictureGroupRef.current) === null || _b === void 0 ? void 0 : _b.setLoopPlay(false);
|
|
20159
|
+
}
|
|
20086
20160
|
setIsLoadMore(true);
|
|
20087
20161
|
loadVideos === null || loadVideos === void 0 ? void 0 : loadVideos(pageNum).then((res) => {
|
|
20088
20162
|
var _a;
|
|
@@ -20155,7 +20229,7 @@ const VideoWidget$2 = ({ rec, index, height, data, muted, activeIndex, videoPost
|
|
|
20155
20229
|
}, []);
|
|
20156
20230
|
const PAUSE_ICON = useIconLink('/pb_static/06f28a2025c74c1cb49be6767316d827.png');
|
|
20157
20231
|
const handlePlaying = React.useCallback(() => {
|
|
20158
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o;
|
|
20232
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r;
|
|
20159
20233
|
setIsPauseVideo(false);
|
|
20160
20234
|
const item = data[index];
|
|
20161
20235
|
if (item && ((_a = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _a === void 0 ? void 0 : _a.duration)) {
|
|
@@ -20168,14 +20242,15 @@ const VideoWidget$2 = ({ rec, index, height, data, muted, activeIndex, videoPost
|
|
|
20168
20242
|
eventSubject: 'playVideo',
|
|
20169
20243
|
eventDescription: 'User played the video',
|
|
20170
20244
|
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 : '',
|
|
20171
|
-
|
|
20245
|
+
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 : '',
|
|
20246
|
+
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 : '',
|
|
20172
20247
|
playType,
|
|
20173
20248
|
startTime: videoCurrentTime,
|
|
20174
20249
|
videoDuration,
|
|
20175
|
-
contentTags: JSON.stringify((
|
|
20250
|
+
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 : []),
|
|
20176
20251
|
position: index + '',
|
|
20177
20252
|
contentFormat: 'video',
|
|
20178
|
-
traceInfo: (
|
|
20253
|
+
traceInfo: (_r = item === null || item === void 0 ? void 0 : item.video) === null || _r === void 0 ? void 0 : _r.traceInfo
|
|
20179
20254
|
}
|
|
20180
20255
|
});
|
|
20181
20256
|
setIsFirstPlay(false);
|
|
@@ -20214,7 +20289,7 @@ const VideoWidget$2 = ({ rec, index, height, data, muted, activeIndex, videoPost
|
|
|
20214
20289
|
}
|
|
20215
20290
|
}, [isLoadFinish]);
|
|
20216
20291
|
const onPause = React.useCallback(() => {
|
|
20217
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o;
|
|
20292
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r;
|
|
20218
20293
|
const item = data[index];
|
|
20219
20294
|
const videoDuration = ((_b = (_a = videoRef.current) === null || _a === void 0 ? void 0 : _a.duration) !== null && _b !== void 0 ? _b : 0).toFixed(2);
|
|
20220
20295
|
const videoCurrentTime = ((_d = (_c = videoRef.current) === null || _c === void 0 ? void 0 : _c.currentTime) !== null && _d !== void 0 ? _d : 0).toFixed(2);
|
|
@@ -20225,14 +20300,15 @@ const VideoWidget$2 = ({ rec, index, height, data, muted, activeIndex, videoPost
|
|
|
20225
20300
|
eventSubject: 'playOverVideo',
|
|
20226
20301
|
eventDescription: 'User finished playing the video',
|
|
20227
20302
|
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 : '',
|
|
20228
|
-
|
|
20303
|
+
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 : '',
|
|
20304
|
+
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 : '',
|
|
20229
20305
|
endTime: videoCurrentTime,
|
|
20230
20306
|
videoDuration,
|
|
20231
20307
|
playDuration,
|
|
20232
|
-
contentTags: JSON.stringify((
|
|
20308
|
+
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 : []),
|
|
20233
20309
|
position: index + '',
|
|
20234
20310
|
contentFormat: 'video',
|
|
20235
|
-
traceInfo: (
|
|
20311
|
+
traceInfo: (_r = item === null || item === void 0 ? void 0 : item.video) === null || _r === void 0 ? void 0 : _r.traceInfo
|
|
20236
20312
|
}
|
|
20237
20313
|
});
|
|
20238
20314
|
}
|