pb-sxp-ui 1.20.8 → 1.20.10
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 +181 -257
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +181 -257
- 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 +181 -257
- 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 +8 -10
- package/es/core/components/SxpPageRender/LikeButton/index.js +18 -20
- package/es/core/components/SxpPageRender/PictureGroup/index.d.ts +0 -5
- package/es/core/components/SxpPageRender/PictureGroup/index.js +13 -39
- package/es/core/components/SxpPageRender/VideoWidget/index.js +46 -33
- package/es/core/components/SxpPageRender/WaterFall/index.js +3 -4
- package/es/core/components/SxpPageRender/index.js +40 -56
- package/es/core/context/SxpDataSourceProvider.d.ts +12 -5
- package/es/core/context/SxpDataSourceProvider.js +47 -90
- package/es/core/hooks/useEventReport.js +5 -6
- package/lib/core/components/DiyPortalPreview/VideoWidget.js +8 -10
- package/lib/core/components/SxpPageRender/LikeButton/index.js +18 -20
- package/lib/core/components/SxpPageRender/PictureGroup/index.d.ts +0 -5
- package/lib/core/components/SxpPageRender/PictureGroup/index.js +12 -38
- package/lib/core/components/SxpPageRender/VideoWidget/index.js +46 -33
- package/lib/core/components/SxpPageRender/WaterFall/index.js +3 -4
- package/lib/core/components/SxpPageRender/index.js +40 -56
- package/lib/core/context/SxpDataSourceProvider.d.ts +12 -5
- package/lib/core/context/SxpDataSourceProvider.js +47 -90
- package/lib/core/hooks/useEventReport.js +5 -6
- package/package.json +1 -1
package/dist/pb-ui.js
CHANGED
|
@@ -660,7 +660,6 @@
|
|
|
660
660
|
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 }) => {
|
|
661
661
|
var _a, _b, _c, _d, _e;
|
|
662
662
|
const [rtcList, setRtcList] = React.useState([]);
|
|
663
|
-
const [firstRtcList, setFirstRtcList] = React.useState([]);
|
|
664
663
|
const [tagList, setTagList] = React.useState([]);
|
|
665
664
|
const [loading, setLoading] = React.useState(true);
|
|
666
665
|
const [curReqInfo, setCurReqInfo] = React.useState({ rtc: '', requestId: '' });
|
|
@@ -692,10 +691,6 @@
|
|
|
692
691
|
const [chatlabsId, setChatlabsId] = React.useState();
|
|
693
692
|
const finalPageData = React.useMemo(() => pageData !== null && pageData !== void 0 ? pageData : data, [pageData, data]);
|
|
694
693
|
const pixelPvStatusRef = React.useRef(false);
|
|
695
|
-
const isDiyPage = React.useMemo(() => {
|
|
696
|
-
var _a, _b, _c;
|
|
697
|
-
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);
|
|
698
|
-
}, [isDiyH5, finalPageData]);
|
|
699
694
|
React.useEffect(() => {
|
|
700
695
|
var _a, _b;
|
|
701
696
|
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);
|
|
@@ -801,7 +796,7 @@
|
|
|
801
796
|
};
|
|
802
797
|
// bff API 请求方法
|
|
803
798
|
const bffFetch = React.useCallback((path, options, isBota = true) => {
|
|
804
|
-
var _a
|
|
799
|
+
var _a;
|
|
805
800
|
if (!bffDataSource)
|
|
806
801
|
return;
|
|
807
802
|
const url = bffDataSource.url;
|
|
@@ -814,9 +809,8 @@
|
|
|
814
809
|
val.split('=')[0];
|
|
815
810
|
val.split('=')[1];
|
|
816
811
|
});
|
|
817
|
-
options.body = Object.assign(Object.assign({}, options.body), { productUserId: fakeUserId });
|
|
818
812
|
return window
|
|
819
|
-
.fetch(`${url}/api/${path}`, Object.assign({ headers: Object.assign({ 'Content-Type': 'application/json', 'x-user-id': fakeUserId
|
|
813
|
+
.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
|
|
820
814
|
? JSON.stringify({
|
|
821
815
|
body: btoa(encodeURIComponent(JSON.stringify(Object.assign(Object.assign(Object.assign({}, options.body), bffDataSource.headers), { 'x-user-id': fakeUserId }))))
|
|
822
816
|
})
|
|
@@ -1101,8 +1095,8 @@
|
|
|
1101
1095
|
}, [bffDataSource]);
|
|
1102
1096
|
// 获取推荐视频数据
|
|
1103
1097
|
const getRecommendVideos = React.useCallback((query) => __awaiter(void 0, void 0, void 0, function* () {
|
|
1104
|
-
var _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u
|
|
1105
|
-
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 })), (
|
|
1098
|
+
var _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u;
|
|
1099
|
+
query = Object.assign(Object.assign({ maxSize: (_f = query === null || query === void 0 ? void 0 : query.maxSize) !== null && _f !== void 0 ? _f : maxSize, defaultSize: (_g = query === null || query === void 0 ? void 0 : query.defaultSize) !== null && _g !== void 0 ? _g : defaultSize, hashTag: query === null || query === void 0 ? void 0 : query.hashTag, traceInfo: query === null || query === void 0 ? void 0 : query.traceInfo, themeTag: query === null || query === void 0 ? void 0 : query.themeTag, pageNum: query === null || query === void 0 ? void 0 : query.pageNum, contentFilter: query === null || query === void 0 ? void 0 : query.contentFilter, productFilter: query === null || query === void 0 ? void 0 : query.productFilter }, (chatlabsId && { chatlabsId })), (isDiyH5 && { type: 'story' }));
|
|
1106
1100
|
if (channel) {
|
|
1107
1101
|
query = Object.assign(Object.assign({}, query), { channel: decodeURIComponent(channel) });
|
|
1108
1102
|
}
|
|
@@ -1115,10 +1109,9 @@
|
|
|
1115
1109
|
if (val)
|
|
1116
1110
|
query = Object.assign(Object.assign({}, query), { channel: decodeURIComponent(val) });
|
|
1117
1111
|
}
|
|
1118
|
-
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
1112
|
if (isEditor) {
|
|
1120
1113
|
let pageNum = 1;
|
|
1121
|
-
query = Object.assign(Object.assign(Object.assign(
|
|
1114
|
+
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] }));
|
|
1122
1115
|
if (!(query === null || query === void 0 ? void 0 : query.channel) || isInit.current) {
|
|
1123
1116
|
return undefined;
|
|
1124
1117
|
}
|
|
@@ -1126,24 +1119,19 @@
|
|
|
1126
1119
|
let list = [];
|
|
1127
1120
|
let result = null;
|
|
1128
1121
|
const recurveRecList = (query) => __awaiter(void 0, void 0, void 0, function* () {
|
|
1129
|
-
var
|
|
1122
|
+
var _v, _w, _x, _y, _z, _0;
|
|
1130
1123
|
query.pageNum = pageNum;
|
|
1131
|
-
result =
|
|
1132
|
-
? yield (bffFetch === null || bffFetch === void 0 ? void 0 : bffFetch('v3/recommend/direct/page/view', { method: 'POST', body: query }))
|
|
1133
|
-
: yield (bffFetch === null || bffFetch === void 0 ? void 0 : bffFetch('recommend/direct_page', { method: 'POST', body: query }));
|
|
1124
|
+
result = yield (bffFetchAdmin === null || bffFetchAdmin === void 0 ? void 0 : bffFetchAdmin('recommend/direct_page', { method: 'POST', body: query }));
|
|
1134
1125
|
if (!(result === null || result === void 0 ? void 0 : result.success)) {
|
|
1135
1126
|
return undefined;
|
|
1136
1127
|
}
|
|
1137
1128
|
setLoading(false);
|
|
1138
|
-
list = list.concat((
|
|
1129
|
+
list = list.concat((_y = (_x = (_w = (_v = result === null || result === void 0 ? void 0 : result.data) === null || _v === void 0 ? void 0 : _v.recList) === null || _w === void 0 ? void 0 : _w.filter) === null || _x === void 0 ? void 0 : _x.call(_w, (item) => (item === null || item === void 0 ? void 0 : item.product) || (item === null || item === void 0 ? void 0 : item.video))) !== null && _y !== void 0 ? _y : []);
|
|
1139
1130
|
if ((rtcList === null || rtcList === void 0 ? void 0 : rtcList.length) === 0) {
|
|
1140
1131
|
setRtcList(getFilterRecList(Object.assign(Object.assign({}, result === null || result === void 0 ? void 0 : result.data), { recList: list })));
|
|
1141
1132
|
setCacheRtcList(getFilterRecList(Object.assign(Object.assign({}, result === null || result === void 0 ? void 0 : result.data), { recList: list })));
|
|
1142
|
-
if (isDiyPage) {
|
|
1143
|
-
setFirstRtcList(getFilterRecList(Object.assign(Object.assign({}, result === null || result === void 0 ? void 0 : result.data), { recList: list })));
|
|
1144
|
-
}
|
|
1145
1133
|
}
|
|
1146
|
-
const isNotNullList = (
|
|
1134
|
+
const isNotNullList = (_0 = (_z = result === null || result === void 0 ? void 0 : result.data) === null || _z === void 0 ? void 0 : _z.recList) === null || _0 === void 0 ? void 0 : _0.some((item) => (item === null || item === void 0 ? void 0 : item.product) || (item === null || item === void 0 ? void 0 : item.video));
|
|
1147
1135
|
if (isNotNullList) {
|
|
1148
1136
|
pageNum = pageNum + 1;
|
|
1149
1137
|
yield recurveRecList(query);
|
|
@@ -1151,61 +1139,42 @@
|
|
|
1151
1139
|
});
|
|
1152
1140
|
yield recurveRecList(query);
|
|
1153
1141
|
if (!(query === null || query === void 0 ? void 0 : query.hashTag) && result)
|
|
1154
|
-
setCurReqInfo({ rtc: (
|
|
1142
|
+
setCurReqInfo({ rtc: (_l = result === null || result === void 0 ? void 0 : result.data) === null || _l === void 0 ? void 0 : _l.rtc, requestId: (_m = result === null || result === void 0 ? void 0 : result.data) === null || _m === void 0 ? void 0 : _m.requestId });
|
|
1155
1143
|
return Object.assign(Object.assign({}, result === null || result === void 0 ? void 0 : result.data), { recList: list });
|
|
1156
1144
|
}
|
|
1157
1145
|
if (globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.enablePreview) {
|
|
1158
|
-
query = Object.assign(Object.assign(
|
|
1146
|
+
query = Object.assign(Object.assign({}, query), { directPage: true, level: 1, pageNum: (_o = query === null || query === void 0 ? void 0 : query.pageNum) !== null && _o !== void 0 ? _o : 1 });
|
|
1159
1147
|
}
|
|
1160
|
-
const result =
|
|
1161
|
-
|
|
1162
|
-
:
|
|
1163
|
-
|
|
1164
|
-
body: query
|
|
1165
|
-
}));
|
|
1148
|
+
const result = yield (bffFetch === null || bffFetch === void 0 ? void 0 : bffFetch('v1/recommend/list', {
|
|
1149
|
+
method: 'POST',
|
|
1150
|
+
body: query
|
|
1151
|
+
}));
|
|
1166
1152
|
if (!(result === null || result === void 0 ? void 0 : result.success)) {
|
|
1167
1153
|
return undefined;
|
|
1168
1154
|
}
|
|
1169
1155
|
if (!(query === null || query === void 0 ? void 0 : query.hashTag))
|
|
1170
1156
|
setCurReqInfo({ rtc: result.data.rtc, requestId: result.data.requestId });
|
|
1171
1157
|
if ((globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.enablePreview) && !isEditor) {
|
|
1172
|
-
const isNotNullList = (
|
|
1158
|
+
const isNotNullList = (_q = (_p = result === null || result === void 0 ? void 0 : result.data) === null || _p === void 0 ? void 0 : _p.recList) === null || _q === void 0 ? void 0 : _q.some((item) => (item === null || item === void 0 ? void 0 : item.product) || (item === null || item === void 0 ? void 0 : item.video));
|
|
1173
1159
|
if (!isNotNullList) {
|
|
1174
1160
|
setIsNoMoreData(true);
|
|
1175
1161
|
}
|
|
1176
1162
|
}
|
|
1177
1163
|
let list = [];
|
|
1178
|
-
list = list.concat((
|
|
1164
|
+
list = list.concat((_u = (_t = (_s = (_r = result === null || result === void 0 ? void 0 : result.data) === null || _r === void 0 ? void 0 : _r.recList) === null || _s === void 0 ? void 0 : _s.filter) === null || _t === void 0 ? void 0 : _t.call(_s, (item) => (item === null || item === void 0 ? void 0 : item.product) || (item === null || item === void 0 ? void 0 : item.video))) !== null && _u !== void 0 ? _u : []);
|
|
1179
1165
|
return Object.assign(Object.assign({}, result.data), { recList: list });
|
|
1180
|
-
}), [
|
|
1181
|
-
bffFetch,
|
|
1182
|
-
utmVal,
|
|
1183
|
-
maxSize,
|
|
1184
|
-
defaultSize,
|
|
1185
|
-
channelQueryList,
|
|
1186
|
-
channel,
|
|
1187
|
-
chatlabsId,
|
|
1188
|
-
bffFetchAdmin,
|
|
1189
|
-
isDiyPage,
|
|
1190
|
-
finalPageData,
|
|
1191
|
-
isDiyH5
|
|
1192
|
-
]);
|
|
1166
|
+
}), [bffFetch, utmVal, maxSize, defaultSize, channelQueryList, channel, chatlabsId, bffFetchAdmin]);
|
|
1193
1167
|
const loadVideos = React.useCallback((pageNum) => __awaiter(void 0, void 0, void 0, function* () {
|
|
1194
|
-
var
|
|
1168
|
+
var _1, _2, _3, _4;
|
|
1195
1169
|
if (rtcList.length <= 0) {
|
|
1196
1170
|
return;
|
|
1197
1171
|
}
|
|
1198
|
-
if (isDiyPage && (firstRtcList === null || firstRtcList === void 0 ? void 0 : firstRtcList.length) > 0) {
|
|
1199
|
-
setRtcList(rtcList.concat(firstRtcList));
|
|
1200
|
-
setCacheRtcList(cacheRtcList.concat(firstRtcList));
|
|
1201
|
-
return;
|
|
1202
|
-
}
|
|
1203
1172
|
const lastItem = rtcList === null || rtcList === void 0 ? void 0 : rtcList[(rtcList === null || rtcList === void 0 ? void 0 : rtcList.length) - 1];
|
|
1204
|
-
const data = yield getRecommendVideos(Object.assign(Object.assign(Object.assign(Object.assign({ hashTag: waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.hashTag }, (((
|
|
1173
|
+
const data = yield getRecommendVideos(Object.assign(Object.assign(Object.assign(Object.assign({ hashTag: waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.hashTag }, (((_1 = lastItem === null || lastItem === void 0 ? void 0 : lastItem.product) === null || _1 === void 0 ? void 0 : _1.itemId) && { productFilter: [(_2 = lastItem === null || lastItem === void 0 ? void 0 : lastItem.product) === null || _2 === void 0 ? void 0 : _2.itemId] })), (((_3 = lastItem === null || lastItem === void 0 ? void 0 : lastItem.video) === null || _3 === void 0 ? void 0 : _3.itemId) && { contentFilter: [(_4 = lastItem === null || lastItem === void 0 ? void 0 : lastItem.video) === null || _4 === void 0 ? void 0 : _4.itemId] })), { themeTag: themeTag.current }), ((globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.enablePreview) && !isEditor && { pageNum })));
|
|
1205
1174
|
setRtcList(rtcList.concat(getFilterRecList(data)));
|
|
1206
1175
|
setCacheRtcList(cacheRtcList.concat(getFilterRecList(data)));
|
|
1207
1176
|
return data;
|
|
1208
|
-
}), [getRecommendVideos, rtcList, waterFallData, cacheRtcList
|
|
1177
|
+
}), [getRecommendVideos, rtcList, waterFallData, cacheRtcList]);
|
|
1209
1178
|
const refreshFeSession = React.useCallback((enableReSid, event) => {
|
|
1210
1179
|
var _a, _b, _c, _d, _e;
|
|
1211
1180
|
let expire = false;
|
|
@@ -1236,8 +1205,8 @@
|
|
|
1236
1205
|
// 用户信息都是公共的
|
|
1237
1206
|
if (!userInfo) {
|
|
1238
1207
|
userInfo = {
|
|
1239
|
-
|
|
1240
|
-
|
|
1208
|
+
// productUserId: fakeUserId, // 后端逻辑会从请求头获取,所以不需要传
|
|
1209
|
+
// tpChannelId: 'H5' // 后端处理
|
|
1241
1210
|
};
|
|
1242
1211
|
}
|
|
1243
1212
|
const sessionID = storeAndLoadFeSessionId();
|
|
@@ -1271,11 +1240,10 @@
|
|
|
1271
1240
|
layoutVariantId,
|
|
1272
1241
|
globalConfig,
|
|
1273
1242
|
playbookType,
|
|
1274
|
-
bffDataSource
|
|
1275
|
-
fakeUserId
|
|
1243
|
+
bffDataSource
|
|
1276
1244
|
]);
|
|
1277
1245
|
const getEventParamsByJson = React.useCallback((_a) => {
|
|
1278
|
-
var _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s;
|
|
1246
|
+
var _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u;
|
|
1279
1247
|
var { json, product = [], rec, contentType = 'post', position, eventName } = _a, props = __rest(_a, ["json", "product", "rec", "contentType", "position", "eventName"]);
|
|
1280
1248
|
const jsonParams = lodash.cloneDeep(json);
|
|
1281
1249
|
const urlParams = new URLSearchParams(window.location.search);
|
|
@@ -1292,17 +1260,17 @@
|
|
|
1292
1260
|
// funnel_type
|
|
1293
1261
|
content_ids: [(_e = rec === null || rec === void 0 ? void 0 : rec.video) === null || _e === void 0 ? void 0 : _e.itemId, ...((_f = product === null || product === void 0 ? void 0 : product.map((item) => item === null || item === void 0 ? void 0 : item.itemId)) !== null && _f !== void 0 ? _f : [])], content_type: contentType, content_name: (_g = rec === null || rec === void 0 ? void 0 : rec.video) === null || _g === void 0 ? void 0 : _g.title, total_posts: rtcList === null || rtcList === void 0 ? void 0 : rtcList.length, position,
|
|
1294
1262
|
// content_category
|
|
1295
|
-
currency: (_h = product === null || product === void 0 ? void 0 : product[0]) === null || _h === void 0 ? void 0 : _h.currency, contents: (
|
|
1263
|
+
currency: (_k = (_j = (_h = product === null || product === void 0 ? void 0 : product[0]) === null || _h === void 0 ? void 0 : _h.currency) === null || _j === void 0 ? void 0 : _j.split('-')) === null || _k === void 0 ? void 0 : _k[0], contents: (_l = product === null || product === void 0 ? void 0 : product.map((item) => ({
|
|
1296
1264
|
id: item === null || item === void 0 ? void 0 : item.itemId,
|
|
1297
|
-
|
|
1298
|
-
}))) !== null &&
|
|
1265
|
+
value: item === null || item === void 0 ? void 0 : item.price
|
|
1266
|
+
}))) !== null && _l !== void 0 ? _l : [], image_urls: (_o = (_m = rec === null || rec === void 0 ? void 0 : rec.video) === null || _m === void 0 ? void 0 : _m.imgUrls) !== null && _o !== void 0 ? _o : [], video_urls: (_p = rec === null || rec === void 0 ? void 0 : rec.video) === null || _p === void 0 ? void 0 : _p.url,
|
|
1299
1267
|
// prompt
|
|
1300
1268
|
headline: getUrlParamByKey('headline'), scene: getUrlParamByKey('scene'), campaign_id: getUrlParamByKey('campaign_id'), ad_id: getUrlParamByKey('ad_id'), utm_source: getUrlParamByKey('utm_source'), utm_medium: getUrlParamByKey('utm_medium'), utm_campaign: getUrlParamByKey('utm_campaign'), utm_content: getUrlParamByKey('utm_content') }, props);
|
|
1301
|
-
if (!((
|
|
1302
|
-
!((
|
|
1269
|
+
if (!((_q = rec === null || rec === void 0 ? void 0 : rec.video) === null || _q === void 0 ? void 0 : _q.url) &&
|
|
1270
|
+
!((_s = (_r = rec === null || rec === void 0 ? void 0 : rec.video) === null || _r === void 0 ? void 0 : _r.imgUrls) === null || _s === void 0 ? void 0 : _s.length) &&
|
|
1303
1271
|
(rec === null || rec === void 0 ? void 0 : rec.product) &&
|
|
1304
1272
|
Array.isArray(globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.productPost) &&
|
|
1305
|
-
((
|
|
1273
|
+
((_t = globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.productPost) === null || _t === void 0 ? void 0 : _t.length) > 0) {
|
|
1306
1274
|
const product = rec === null || rec === void 0 ? void 0 : rec.product;
|
|
1307
1275
|
const productCustomData = {
|
|
1308
1276
|
content_ids: [product === null || product === void 0 ? void 0 : product.itemId],
|
|
@@ -1311,10 +1279,10 @@
|
|
|
1311
1279
|
contents: [
|
|
1312
1280
|
{
|
|
1313
1281
|
id: product === null || product === void 0 ? void 0 : product.itemId,
|
|
1314
|
-
|
|
1282
|
+
value: product === null || product === void 0 ? void 0 : product.price
|
|
1315
1283
|
}
|
|
1316
1284
|
],
|
|
1317
|
-
image_urls: (
|
|
1285
|
+
image_urls: (_u = product.homePage) !== null && _u !== void 0 ? _u : []
|
|
1318
1286
|
};
|
|
1319
1287
|
customData = Object.assign(Object.assign({}, customData), productCustomData);
|
|
1320
1288
|
}
|
|
@@ -1458,40 +1426,38 @@
|
|
|
1458
1426
|
}
|
|
1459
1427
|
}, [bffFetch, enableReportEvent, enabledMetaConversionApi, globalConfig, bffDataSource, getEventParamsByJson]);
|
|
1460
1428
|
const bffMutateLike = React.useCallback((body) => __awaiter(void 0, void 0, void 0, function* () {
|
|
1461
|
-
body = Object.assign(Object.assign({}, body), { productUserId: fakeUserId });
|
|
1462
1429
|
const res = yield (bffFetch === null || bffFetch === void 0 ? void 0 : bffFetch('v1/recommend/like', { method: 'POST', body }));
|
|
1463
1430
|
return res === null || res === void 0 ? void 0 : res.success;
|
|
1464
|
-
}), [bffFetch
|
|
1431
|
+
}), [bffFetch]);
|
|
1465
1432
|
const bffMutateUnlike = React.useCallback((body) => __awaiter(void 0, void 0, void 0, function* () {
|
|
1466
|
-
body = Object.assign(Object.assign({}, body), { productUserId: fakeUserId });
|
|
1467
1433
|
const res = yield (bffFetch === null || bffFetch === void 0 ? void 0 : bffFetch('v1/recommend/unlike', { method: 'POST', body }));
|
|
1468
1434
|
return res === null || res === void 0 ? void 0 : res.success;
|
|
1469
|
-
}), [bffFetch
|
|
1435
|
+
}), [bffFetch]);
|
|
1470
1436
|
const bffSubmitForm = React.useCallback((body) => __awaiter(void 0, void 0, void 0, function* () {
|
|
1471
1437
|
const res = yield (bffFetch === null || bffFetch === void 0 ? void 0 : bffFetch('v1/customform', { method: 'POST', body }));
|
|
1472
1438
|
return res === null || res === void 0 ? void 0 : res.success;
|
|
1473
1439
|
}), [bffFetch]);
|
|
1474
1440
|
// 获取 Tag
|
|
1475
1441
|
const bffGetTagList = React.useCallback((data) => __awaiter(void 0, void 0, void 0, function* () {
|
|
1476
|
-
var
|
|
1477
|
-
const isShowTag = !!((
|
|
1442
|
+
var _5, _6, _7, _8, _9, _10, _11, _12;
|
|
1443
|
+
const isShowTag = !!((_7 = (_6 = (_5 = data === null || data === void 0 ? void 0 : data.data) === null || _5 === void 0 ? void 0 : _5.sxpPageConf) === null || _6 === void 0 ? void 0 : _6.globalConfig) === null || _7 === void 0 ? void 0 : _7.isShowTag);
|
|
1478
1444
|
if (!utmVal || !isShowTag)
|
|
1479
1445
|
return;
|
|
1480
1446
|
try {
|
|
1481
|
-
const val = (
|
|
1447
|
+
const val = (_10 = (_9 = (_8 = splitUrlParams(utmVal)) === null || _8 === void 0 ? void 0 : _8.filter((val) => {
|
|
1482
1448
|
var _a, _b;
|
|
1483
1449
|
const key = val.split('=')[0];
|
|
1484
1450
|
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);
|
|
1485
|
-
})) === null ||
|
|
1451
|
+
})) === null || _9 === void 0 ? void 0 : _9.join('&')) !== null && _10 !== void 0 ? _10 : '';
|
|
1486
1452
|
const result = yield (bffFetch === null || bffFetch === void 0 ? void 0 : bffFetch('v1/tag/list', { method: 'GET', query: { channel: decodeURIComponent(val) } }));
|
|
1487
|
-
setTagList((
|
|
1453
|
+
setTagList((_12 = (_11 = result === null || result === void 0 ? void 0 : result.data) === null || _11 === void 0 ? void 0 : _11.tags) !== null && _12 !== void 0 ? _12 : []);
|
|
1488
1454
|
}
|
|
1489
1455
|
catch (e) {
|
|
1490
1456
|
console.log('e', e);
|
|
1491
1457
|
}
|
|
1492
1458
|
}), [bffFetch, utmVal]);
|
|
1493
1459
|
const ctaEvent = React.useCallback((eventInfo, rec, product, position, ctaActionType, targetUrl, contentType) => {
|
|
1494
|
-
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
|
|
1460
|
+
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;
|
|
1495
1461
|
const cta = product === null || product === void 0 ? void 0 : product.bindCta;
|
|
1496
1462
|
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);
|
|
1497
1463
|
let fromKName = '';
|
|
@@ -1509,7 +1475,7 @@
|
|
|
1509
1475
|
}
|
|
1510
1476
|
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;
|
|
1511
1477
|
bffEventReport === null || bffEventReport === void 0 ? void 0 : bffEventReport({
|
|
1512
|
-
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 : '',
|
|
1478
|
+
eventInfo: Object.assign(Object.assign({}, eventInfo), { ctaId: (_r = cta === null || cta === void 0 ? void 0 : cta.itemId) !== null && _r !== void 0 ? _r : '', ctaName: (_s = cta === null || cta === void 0 ? void 0 : cta.title) !== null && _s !== void 0 ? _s : '', contentTags: contentTags ? JSON.stringify(contentTags) : '', position: position + '', contentId: (_u = (_t = rec === null || rec === void 0 ? void 0 : rec.video) === null || _t === void 0 ? void 0 : _t.itemId) !== null && _u !== void 0 ? _u : '', productId: isProd ? product === null || product === void 0 ? void 0 : product.itemId : '', traceInfo: (_10 = (_7 = (_2 = (_y = (_v = cta === null || cta === void 0 ? void 0 : cta.traceInfo) !== null && _v !== void 0 ? _v : (_x = (_w = rec === null || rec === void 0 ? void 0 : rec.video) === null || _w === void 0 ? void 0 : _w.bindCta) === null || _x === void 0 ? void 0 : _x.traceInfo) !== null && _y !== void 0 ? _y : (_1 = (_0 = (_z = rec === null || rec === void 0 ? void 0 : rec.video) === null || _z === void 0 ? void 0 : _z.bindProduct) === null || _0 === void 0 ? void 0 : _0.bindCta) === null || _1 === void 0 ? void 0 : _1.traceInfo) !== null && _2 !== void 0 ? _2 : (_6 = (_5 = (_4 = (_3 = rec === null || rec === void 0 ? void 0 : rec.video) === null || _3 === void 0 ? void 0 : _3.bindProducts) === null || _4 === void 0 ? void 0 : _4[0]) === null || _5 === void 0 ? void 0 : _5.bindCta) === null || _6 === void 0 ? void 0 : _6.traceInfo) !== null && _7 !== void 0 ? _7 : (_9 = (_8 = rec === null || rec === void 0 ? void 0 : rec.product) === null || _8 === void 0 ? void 0 : _8.bindCta) === null || _9 === void 0 ? void 0 : _9.traceInfo) !== null && _10 !== void 0 ? _10 : '', fromKName, fromKPage: (_11 = location === null || location === void 0 ? void 0 : location.href) !== null && _11 !== void 0 ? _11 : '', contentFormat })
|
|
1513
1479
|
});
|
|
1514
1480
|
}, [bffEventReport, isFromHashtag]);
|
|
1515
1481
|
const h5EnterLink = React.useCallback(() => {
|
|
@@ -1533,10 +1499,10 @@
|
|
|
1533
1499
|
});
|
|
1534
1500
|
}, [bffEventReport]);
|
|
1535
1501
|
const getAccount = React.useCallback(() => __awaiter(void 0, void 0, void 0, function* () {
|
|
1536
|
-
var
|
|
1502
|
+
var _13, _14;
|
|
1537
1503
|
const res = yield (bffFetch === null || bffFetch === void 0 ? void 0 : bffFetch('v1/account', { method: 'GET' }));
|
|
1538
|
-
setChatlabsId((
|
|
1539
|
-
return ((
|
|
1504
|
+
setChatlabsId((_13 = res === null || res === void 0 ? void 0 : res.data) === null || _13 === void 0 ? void 0 : _13.chatLabsId);
|
|
1505
|
+
return ((_14 = res === null || res === void 0 ? void 0 : res.data) === null || _14 === void 0 ? void 0 : _14.consentResult) === 'true';
|
|
1540
1506
|
}), [bffFetch]);
|
|
1541
1507
|
const accountSonsent = React.useCallback((consentResult) => __awaiter(void 0, void 0, void 0, function* () {
|
|
1542
1508
|
const res = yield (bffFetch === null || bffFetch === void 0 ? void 0 : bffFetch('v1/account/consent', {
|
|
@@ -1600,9 +1566,6 @@
|
|
|
1600
1566
|
}
|
|
1601
1567
|
setRtcList(list);
|
|
1602
1568
|
setCacheRtcList(list);
|
|
1603
|
-
if (isDiyPage) {
|
|
1604
|
-
setFirstRtcList(list);
|
|
1605
|
-
}
|
|
1606
1569
|
bffGetTagList(curData !== null && curData !== void 0 ? curData : finalPageData);
|
|
1607
1570
|
if (channel) {
|
|
1608
1571
|
const item = list === null || list === void 0 ? void 0 : list[0];
|
|
@@ -1622,7 +1585,7 @@
|
|
|
1622
1585
|
});
|
|
1623
1586
|
setLoading(false);
|
|
1624
1587
|
});
|
|
1625
|
-
}, [isShowConsent, channel
|
|
1588
|
+
}, [isShowConsent, channel]);
|
|
1626
1589
|
// cms预览
|
|
1627
1590
|
React.useEffect(() => {
|
|
1628
1591
|
if (!isPreview)
|
|
@@ -1638,15 +1601,12 @@
|
|
|
1638
1601
|
}
|
|
1639
1602
|
setRtcList(list);
|
|
1640
1603
|
setCacheRtcList(list);
|
|
1641
|
-
if (isDiyPage) {
|
|
1642
|
-
setFirstRtcList(list);
|
|
1643
|
-
}
|
|
1644
1604
|
}
|
|
1645
1605
|
})
|
|
1646
1606
|
.finally(() => {
|
|
1647
1607
|
setLoading(false);
|
|
1648
1608
|
});
|
|
1649
|
-
}, [getRecommendVideos, bffGetTagList, channel
|
|
1609
|
+
}, [getRecommendVideos, bffGetTagList, channel]);
|
|
1650
1610
|
const defaultLoadingImage = useIconLink('/pb_static/a65d23c5893c49d7aaaa81681d3179e2.gif', appDomain);
|
|
1651
1611
|
return (React.createElement(SxpDataSourceContext.Provider, { value: {
|
|
1652
1612
|
rtcList,
|
|
@@ -1704,8 +1664,7 @@
|
|
|
1704
1664
|
refreshFeSession,
|
|
1705
1665
|
getAccount,
|
|
1706
1666
|
accountSonsent,
|
|
1707
|
-
isDiyH5
|
|
1708
|
-
firstRtcList,
|
|
1667
|
+
isDiyH5,
|
|
1709
1668
|
pixelPvStatusRef
|
|
1710
1669
|
} }, 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({
|
|
1711
1670
|
rtcList,
|
|
@@ -2167,14 +2126,14 @@
|
|
|
2167
2126
|
* @Author: binruan@chatlabs.com
|
|
2168
2127
|
* @Date: 2024-03-12 10:59:06
|
|
2169
2128
|
* @LastEditors: binruan@chatlabs.com
|
|
2170
|
-
* @LastEditTime:
|
|
2129
|
+
* @LastEditTime: 2024-11-28 11:17:16
|
|
2171
2130
|
* @FilePath: \pb-sxp-ui\src\core\hooks\useEventReport.ts
|
|
2172
2131
|
*
|
|
2173
2132
|
*/
|
|
2174
2133
|
function useEventReport() {
|
|
2175
2134
|
const { bffEventReport, popupDetailData, isFromHashtag, eventTimeList, setEventTimeList } = useSxpDataSource();
|
|
2176
2135
|
const jumpToWeb = React.useCallback((e, data, product, cta, position, traceInfo) => {
|
|
2177
|
-
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
|
|
2136
|
+
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;
|
|
2178
2137
|
const i = eventTimeList === null || eventTimeList === void 0 ? void 0 : eventTimeList.findIndex((item) => item.target === (e === null || e === void 0 ? void 0 : e.target));
|
|
2179
2138
|
if (i !== -1) {
|
|
2180
2139
|
return;
|
|
@@ -2207,11 +2166,11 @@
|
|
|
2207
2166
|
contentFormat = 'image';
|
|
2208
2167
|
}
|
|
2209
2168
|
bffEventReport === null || bffEventReport === void 0 ? void 0 : bffEventReport({
|
|
2210
|
-
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 : '',
|
|
2169
|
+
eventInfo: Object.assign({ eventSubject: 'jumpToWeb', eventDescription: 'User jumped to website', productId: (_v = product === null || product === void 0 ? void 0 : product.itemId) !== null && _v !== void 0 ? _v : '', productName: (_w = product === null || product === void 0 ? void 0 : product.title) !== null && _w !== void 0 ? _w : '', price: (product === null || product === void 0 ? void 0 : product.price) ? (product === null || product === void 0 ? void 0 : product.price) + '' : '0', productCollection: (_x = product === null || product === void 0 ? void 0 : product.collection) !== null && _x !== void 0 ? _x : '', fromKName, fromKPage: location === null || location === void 0 ? void 0 : location.href, contentTags: contentTags ? JSON.stringify(contentTags) : '', position: position + '', contentId: (_z = (_y = data === null || data === void 0 ? void 0 : data.video) === null || _y === void 0 ? void 0 : _y.itemId) !== null && _z !== void 0 ? _z : '', ctatId: (_0 = cta === null || cta === void 0 ? void 0 : cta.itemId) !== null && _0 !== void 0 ? _0 : '', traceInfo: (_13 = (_10 = (_8 = (_4 = (_1 = traceInfo !== null && traceInfo !== void 0 ? traceInfo : product === null || product === void 0 ? void 0 : product.traceInfo) !== null && _1 !== void 0 ? _1 : (_3 = (_2 = data === null || data === void 0 ? void 0 : data.video) === null || _2 === void 0 ? void 0 : _2.bindProduct) === null || _3 === void 0 ? void 0 : _3.traceInfo) !== null && _4 !== void 0 ? _4 : (_7 = (_6 = (_5 = data === null || data === void 0 ? void 0 : data.video) === null || _5 === void 0 ? void 0 : _5.bindProducts) === null || _6 === void 0 ? void 0 : _6[0]) === null || _7 === void 0 ? void 0 : _7.traceInfo) !== null && _8 !== void 0 ? _8 : (_9 = data === null || data === void 0 ? void 0 : data.product) === null || _9 === void 0 ? void 0 : _9.traceInfo) !== null && _10 !== void 0 ? _10 : (_12 = (_11 = data === null || data === void 0 ? void 0 : data.video) === null || _11 === void 0 ? void 0 : _11.bindCta) === null || _12 === void 0 ? void 0 : _12.traceInfo) !== null && _13 !== void 0 ? _13 : '' }, (contentFormat && { contentFormat }))
|
|
2211
2170
|
});
|
|
2212
2171
|
}, [bffEventReport, popupDetailData, isFromHashtag, eventTimeList]);
|
|
2213
2172
|
const productView = React.useCallback((data, product, cta, viewTime, position) => {
|
|
2214
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p
|
|
2173
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p;
|
|
2215
2174
|
let fromKName = '';
|
|
2216
2175
|
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))) {
|
|
2217
2176
|
fromKName = 'pdpPage';
|
|
@@ -2230,9 +2189,8 @@
|
|
|
2230
2189
|
contentTags: JSON.stringify(product === null || product === void 0 ? void 0 : product.tags),
|
|
2231
2190
|
position: position + '',
|
|
2232
2191
|
contentId: (_d = data === null || data === void 0 ? void 0 : data.video) === null || _d === void 0 ? void 0 : _d.itemId,
|
|
2233
|
-
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 : '',
|
|
2234
2192
|
ctatId: cta === null || cta === void 0 ? void 0 : cta.itemId,
|
|
2235
|
-
traceInfo: (
|
|
2193
|
+
traceInfo: (_p = (_m = (_h = (_e = product === null || product === void 0 ? void 0 : product.traceInfo) !== null && _e !== void 0 ? _e : (_g = (_f = data === null || data === void 0 ? void 0 : data.video) === null || _f === void 0 ? void 0 : _f.bindProduct) === null || _g === void 0 ? void 0 : _g.traceInfo) !== null && _h !== void 0 ? _h : (_l = (_k = (_j = data === null || data === void 0 ? void 0 : data.video) === null || _j === void 0 ? void 0 : _j.bindProducts) === null || _k === void 0 ? void 0 : _k[0]) === null || _l === void 0 ? void 0 : _l.traceInfo) !== null && _m !== void 0 ? _m : (_o = data === null || data === void 0 ? void 0 : data.product) === null || _o === void 0 ? void 0 : _o.traceInfo) !== null && _p !== void 0 ? _p : '',
|
|
2236
2194
|
timeOnSite: Math.floor((new Date() - viewTime) / 1000) + '',
|
|
2237
2195
|
eventSubject: 'productView',
|
|
2238
2196
|
eventDescription: 'User browsed the product'
|
|
@@ -16276,7 +16234,7 @@ Made in Italy` })));
|
|
|
16276
16234
|
* @Author: binruan@chatlabs.com
|
|
16277
16235
|
* @Date: 2024-01-10 10:58:24
|
|
16278
16236
|
* @LastEditors: binruan@chatlabs.com
|
|
16279
|
-
* @LastEditTime: 2025-
|
|
16237
|
+
* @LastEditTime: 2025-02-28 10:00:31
|
|
16280
16238
|
* @FilePath: \pb-sxp-ui\src\core\components\SxpPageRender\WaterFall\index.tsx
|
|
16281
16239
|
*
|
|
16282
16240
|
*/
|
|
@@ -16314,7 +16272,7 @@ Made in Italy` })));
|
|
|
16314
16272
|
}
|
|
16315
16273
|
}, [waterFallData]);
|
|
16316
16274
|
const reportTagsView = React.useCallback(() => {
|
|
16317
|
-
var _a, _b, _c, _d, _e, _f
|
|
16275
|
+
var _a, _b, _c, _d, _e, _f;
|
|
16318
16276
|
const rec = recData === null || recData === void 0 ? void 0 : recData.rec;
|
|
16319
16277
|
if (!rec)
|
|
16320
16278
|
return;
|
|
@@ -16334,10 +16292,9 @@ Made in Italy` })));
|
|
|
16334
16292
|
bffEventReport === null || bffEventReport === void 0 ? void 0 : bffEventReport({
|
|
16335
16293
|
eventInfo: {
|
|
16336
16294
|
contentId: (_d = rec === null || rec === void 0 ? void 0 : rec.video) === null || _d === void 0 ? void 0 : _d.itemId,
|
|
16337
|
-
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 : '',
|
|
16338
16295
|
position: cacheActiveIndex + '',
|
|
16339
|
-
contentTags: JSON.stringify((
|
|
16340
|
-
traceInfo: (
|
|
16296
|
+
contentTags: JSON.stringify((_e = rec === null || rec === void 0 ? void 0 : rec.video) === null || _e === void 0 ? void 0 : _e.tags),
|
|
16297
|
+
traceInfo: (_f = rec === null || rec === void 0 ? void 0 : rec.video) === null || _f === void 0 ? void 0 : _f.traceInfo,
|
|
16341
16298
|
hashTags: JSON.stringify([recData === null || recData === void 0 ? void 0 : recData.hashTag]),
|
|
16342
16299
|
fromKName,
|
|
16343
16300
|
fromKPage: location === null || location === void 0 ? void 0 : location.href,
|
|
@@ -18444,22 +18401,21 @@ Made in Italy` })));
|
|
|
18444
18401
|
const likeIcon = useIconLink(defaultLikeIconPath$2);
|
|
18445
18402
|
const unlikeIcon = useIconLink(defaultUnLikeIconPath$2);
|
|
18446
18403
|
const handleClick = lodash.debounce(() => __awaiter(void 0, void 0, void 0, function* () {
|
|
18447
|
-
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
|
|
18404
|
+
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;
|
|
18448
18405
|
if (state) {
|
|
18449
18406
|
// 先设置状态
|
|
18450
18407
|
setState(false);
|
|
18451
|
-
const result = (_e = (yield (mutateUnlike === null || mutateUnlike === void 0 ? void 0 : mutateUnlike({
|
|
18408
|
+
const result = (_e = (yield (mutateUnlike === null || mutateUnlike === void 0 ? void 0 : mutateUnlike({ videoItemId: (_d = (_c = recData === null || recData === void 0 ? void 0 : recData.video) === null || _c === void 0 ? void 0 : _c.itemId) !== null && _d !== void 0 ? _d : '' })))) !== null && _e !== void 0 ? _e : false;
|
|
18452
18409
|
bffEventReport === null || bffEventReport === void 0 ? void 0 : bffEventReport({
|
|
18453
18410
|
eventInfo: {
|
|
18454
18411
|
eventSubject: 'favoriteContentCanceled',
|
|
18455
18412
|
eventDescription: 'This content was unfavorite by the user',
|
|
18456
18413
|
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 : '',
|
|
18457
|
-
|
|
18458
|
-
|
|
18459
|
-
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 : []),
|
|
18414
|
+
contentName: (_j = (_h = recData === null || recData === void 0 ? void 0 : recData.video) === null || _h === void 0 ? void 0 : _h.title) !== null && _j !== void 0 ? _j : '',
|
|
18415
|
+
contentTags: JSON.stringify((_l = (_k = recData === null || recData === void 0 ? void 0 : recData.video) === null || _k === void 0 ? void 0 : _k.tags) !== null && _l !== void 0 ? _l : []),
|
|
18460
18416
|
position: position + '',
|
|
18461
|
-
contentFormat: ((
|
|
18462
|
-
traceInfo: (
|
|
18417
|
+
contentFormat: ((_m = recData === null || recData === void 0 ? void 0 : recData.video) === null || _m === void 0 ? void 0 : _m.url) ? 'video' : 'image',
|
|
18418
|
+
traceInfo: (_o = recData === null || recData === void 0 ? void 0 : recData.video) === null || _o === void 0 ? void 0 : _o.traceInfo
|
|
18463
18419
|
}
|
|
18464
18420
|
});
|
|
18465
18421
|
// 如果接口调用失败,则回滚状态
|
|
@@ -18467,49 +18423,48 @@ Made in Italy` })));
|
|
|
18467
18423
|
setState(true);
|
|
18468
18424
|
}
|
|
18469
18425
|
else {
|
|
18470
|
-
const nRtcList = (
|
|
18426
|
+
const nRtcList = (_p = cacheRtcList === null || cacheRtcList === void 0 ? void 0 : cacheRtcList.map((item, index) => {
|
|
18471
18427
|
if (index === position) {
|
|
18472
18428
|
item.isCollected = false;
|
|
18473
18429
|
}
|
|
18474
18430
|
return item;
|
|
18475
|
-
})) !== null &&
|
|
18431
|
+
})) !== null && _p !== void 0 ? _p : [];
|
|
18476
18432
|
setCacheRtcList === null || setCacheRtcList === void 0 ? void 0 : setCacheRtcList(nRtcList);
|
|
18477
18433
|
}
|
|
18478
18434
|
}
|
|
18479
18435
|
else {
|
|
18480
18436
|
setState(true);
|
|
18481
|
-
const result = (
|
|
18437
|
+
const result = (_q = (yield (mutateLike === null || mutateLike === void 0 ? void 0 : mutateLike({ content: JSON.stringify(recData) })))) !== null && _q !== void 0 ? _q : false;
|
|
18482
18438
|
bffEventReport === null || bffEventReport === void 0 ? void 0 : bffEventReport({
|
|
18483
18439
|
eventInfo: {
|
|
18484
18440
|
eventSubject: 'favoriteContent',
|
|
18485
18441
|
eventDescription: 'This content was favorite by the user',
|
|
18486
|
-
contentId: (
|
|
18487
|
-
|
|
18488
|
-
|
|
18489
|
-
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 : []),
|
|
18442
|
+
contentId: (_s = (_r = recData === null || recData === void 0 ? void 0 : recData.video) === null || _r === void 0 ? void 0 : _r.itemId) !== null && _s !== void 0 ? _s : '',
|
|
18443
|
+
contentName: (_u = (_t = recData === null || recData === void 0 ? void 0 : recData.video) === null || _t === void 0 ? void 0 : _t.title) !== null && _u !== void 0 ? _u : '',
|
|
18444
|
+
contentTags: JSON.stringify((_w = (_v = recData === null || recData === void 0 ? void 0 : recData.video) === null || _v === void 0 ? void 0 : _v.tags) !== null && _w !== void 0 ? _w : []),
|
|
18490
18445
|
position: position + '',
|
|
18491
|
-
contentFormat: ((
|
|
18492
|
-
traceInfo: (
|
|
18446
|
+
contentFormat: ((_x = recData === null || recData === void 0 ? void 0 : recData.video) === null || _x === void 0 ? void 0 : _x.url) ? 'video' : 'image',
|
|
18447
|
+
traceInfo: (_y = recData === null || recData === void 0 ? void 0 : recData.video) === null || _y === void 0 ? void 0 : _y.traceInfo
|
|
18493
18448
|
}
|
|
18494
18449
|
});
|
|
18495
18450
|
bffFbReport === null || bffFbReport === void 0 ? void 0 : bffFbReport({
|
|
18496
18451
|
eventName: 'Engagement',
|
|
18497
|
-
product: (
|
|
18452
|
+
product: (_z = recData === null || recData === void 0 ? void 0 : recData.video) === null || _z === void 0 ? void 0 : _z.bindProducts,
|
|
18498
18453
|
rec: recData,
|
|
18499
18454
|
position,
|
|
18500
|
-
content_id: (
|
|
18455
|
+
content_id: (_1 = (_0 = recData === null || recData === void 0 ? void 0 : recData.video) === null || _0 === void 0 ? void 0 : _0.itemId) !== null && _1 !== void 0 ? _1 : '',
|
|
18501
18456
|
engagement_type: 'like'
|
|
18502
18457
|
});
|
|
18503
18458
|
if (!result) {
|
|
18504
18459
|
setState(false);
|
|
18505
18460
|
}
|
|
18506
18461
|
else {
|
|
18507
|
-
const nRtcList = (
|
|
18462
|
+
const nRtcList = (_2 = cacheRtcList === null || cacheRtcList === void 0 ? void 0 : cacheRtcList.map((item, index) => {
|
|
18508
18463
|
if (index === position) {
|
|
18509
18464
|
item.isCollected = true;
|
|
18510
18465
|
}
|
|
18511
18466
|
return item;
|
|
18512
|
-
})) !== null &&
|
|
18467
|
+
})) !== null && _2 !== void 0 ? _2 : [];
|
|
18513
18468
|
setCacheRtcList === null || setCacheRtcList === void 0 ? void 0 : setCacheRtcList(nRtcList);
|
|
18514
18469
|
}
|
|
18515
18470
|
}
|
|
@@ -18546,7 +18501,7 @@ Made in Italy` })));
|
|
|
18546
18501
|
const VideoWidget$4 = React.forwardRef(({ rec, index, height, data, muted, activeIndex, videoPostConfig, videoPlayIcon, loopPlay, swiperRef, visibleHeight }, ref) => {
|
|
18547
18502
|
var _a, _b;
|
|
18548
18503
|
const [isPauseVideo, setIsPauseVideo] = React.useState(false);
|
|
18549
|
-
const { bffEventReport, sxpParameter,
|
|
18504
|
+
const { bffEventReport, sxpParameter, waterFallData, openHashtag, bffFbReport, isDiyH5 } = useSxpDataSource();
|
|
18550
18505
|
const videoStartTime = React.useRef(0);
|
|
18551
18506
|
const [isLoadFinish, setIsLoadFinish] = React.useState(false);
|
|
18552
18507
|
const { isActive } = useSwiperSlide();
|
|
@@ -18563,7 +18518,7 @@ Made in Italy` })));
|
|
|
18563
18518
|
const loopPlayRef = React.useRef(loopPlay);
|
|
18564
18519
|
const scene = rec.video.scene;
|
|
18565
18520
|
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);
|
|
18566
|
-
const videoCover = (_b = rec === null || rec === void 0 ? void 0 : rec.video) === null || _b === void 0 ? void 0 : _b.cover;
|
|
18521
|
+
const videoCover = (scene === null || scene === void 0 ? void 0 : scene.mediaUrl) ? scene === null || scene === void 0 ? void 0 : scene.cover : (_b = rec === null || rec === void 0 ? void 0 : rec.video) === null || _b === void 0 ? void 0 : _b.cover;
|
|
18567
18522
|
const videoPoster = videoCover || (sxpParameter === null || sxpParameter === void 0 ? void 0 : sxpParameter.placeholder_image);
|
|
18568
18523
|
React.useImperativeHandle(ref, () => {
|
|
18569
18524
|
return {
|
|
@@ -18612,23 +18567,6 @@ Made in Italy` })));
|
|
|
18612
18567
|
return;
|
|
18613
18568
|
(_a = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _a === void 0 ? void 0 : _a.play();
|
|
18614
18569
|
}, [videoRef === null || videoRef === void 0 ? void 0 : videoRef.current]);
|
|
18615
|
-
const handleEnd = () => {
|
|
18616
|
-
var _a, _b, _c, _d, _e, _f;
|
|
18617
|
-
if (!videoRef.current)
|
|
18618
|
-
return;
|
|
18619
|
-
if (isDiyH5) {
|
|
18620
|
-
(_a = videoRef.current) === null || _a === void 0 ? void 0 : _a.pause();
|
|
18621
|
-
if (!loopPlayRef.current)
|
|
18622
|
-
return;
|
|
18623
|
-
if (firstRtcList && index < (firstRtcList === null || firstRtcList === void 0 ? void 0 : firstRtcList.length) - 1) {
|
|
18624
|
-
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;
|
|
18625
|
-
(_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);
|
|
18626
|
-
}
|
|
18627
|
-
}
|
|
18628
|
-
else {
|
|
18629
|
-
(_f = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _f === void 0 ? void 0 : _f.play();
|
|
18630
|
-
}
|
|
18631
|
-
};
|
|
18632
18570
|
const PAUSE_ICON = useIconLink('/pb_static/06f28a2025c74c1cb49be6767316d827.png');
|
|
18633
18571
|
const handlePlaying = React.useCallback(() => {
|
|
18634
18572
|
if (!(videoRef === null || videoRef === void 0 ? void 0 : videoRef.current))
|
|
@@ -18637,7 +18575,7 @@ Made in Italy` })));
|
|
|
18637
18575
|
setIsLoadFinish(true);
|
|
18638
18576
|
}, []);
|
|
18639
18577
|
const handleStartPlay = React.useCallback(() => __awaiter(void 0, void 0, void 0, function* () {
|
|
18640
|
-
var _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q
|
|
18578
|
+
var _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q;
|
|
18641
18579
|
if (!(videoRef === null || videoRef === void 0 ? void 0 : videoRef.current))
|
|
18642
18580
|
return;
|
|
18643
18581
|
setIsPauseVideo(false);
|
|
@@ -18648,11 +18586,16 @@ Made in Italy` })));
|
|
|
18648
18586
|
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);
|
|
18649
18587
|
const playType = (isFirstPlayRef === null || isFirstPlayRef === void 0 ? void 0 : isFirstPlayRef.current) ? '0' : '1';
|
|
18650
18588
|
bffEventReport === null || bffEventReport === void 0 ? void 0 : bffEventReport({
|
|
18651
|
-
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 : '',
|
|
18589
|
+
eventInfo: Object.assign({ eventSubject: 'playVideo', eventDescription: 'User played the video', contentId: (_k = (_j = item === null || item === void 0 ? void 0 : item.video) === null || _j === void 0 ? void 0 : _j.itemId) !== null && _k !== void 0 ? _k : '', contentName: (_m = (_l = item === null || item === void 0 ? void 0 : item.video) === null || _l === void 0 ? void 0 : _l.title) !== null && _m !== void 0 ? _m : '', playType, startTime: videoCurrentTime, videoDuration, contentTags: JSON.stringify((_p = (_o = item === null || item === void 0 ? void 0 : item.video) === null || _o === void 0 ? void 0 : _o.tags) !== null && _p !== void 0 ? _p : []), position: index + '', contentFormat: 'video', traceInfo: (_q = item === null || item === void 0 ? void 0 : item.video) === null || _q === void 0 ? void 0 : _q.traceInfo }, ((isFirstPlayRef === null || isFirstPlayRef === void 0 ? void 0 : isFirstPlayRef.current) && { loadTime: (loadedTimeRef === null || loadedTimeRef === void 0 ? void 0 : loadedTimeRef.current) - (initTimeRef === null || initTimeRef === void 0 ? void 0 : initTimeRef.current) + '' }))
|
|
18652
18590
|
});
|
|
18653
18591
|
isFirstPlayRef.current = false;
|
|
18654
18592
|
}
|
|
18655
18593
|
}), [bffEventReport, data, index, isFirstPlayRef, videoRef === null || videoRef === void 0 ? void 0 : videoRef.current]);
|
|
18594
|
+
const setCurrentTimeByStartTime = React.useCallback(() => {
|
|
18595
|
+
if (isDiyH5) {
|
|
18596
|
+
videoRef.current.currentTime = scene === null || scene === void 0 ? void 0 : scene.startTime;
|
|
18597
|
+
}
|
|
18598
|
+
}, []);
|
|
18656
18599
|
const handLoadeddata = React.useCallback(() => {
|
|
18657
18600
|
if (!(videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) || firstFrameSrc || !blur)
|
|
18658
18601
|
return;
|
|
@@ -18677,12 +18620,13 @@ Made in Italy` })));
|
|
|
18677
18620
|
const handleLoadedmetadata = React.useCallback(() => {
|
|
18678
18621
|
if (!videoRef.current)
|
|
18679
18622
|
return;
|
|
18623
|
+
setCurrentTimeByStartTime();
|
|
18680
18624
|
loadedTimeRef.current = new Date();
|
|
18681
18625
|
handleStartPlay();
|
|
18682
18626
|
handLoadeddata();
|
|
18683
18627
|
}, [videoRef.current, handLoadeddata, handleStartPlay]);
|
|
18684
18628
|
const handleClickVideo = React.useCallback((type) => () => {
|
|
18685
|
-
var _a, _b, _c, _d, _e;
|
|
18629
|
+
var _a, _b, _c, _d, _e, _f;
|
|
18686
18630
|
if (!videoRef.current)
|
|
18687
18631
|
return;
|
|
18688
18632
|
if (!isLoadFinish)
|
|
@@ -18703,17 +18647,20 @@ Made in Italy` })));
|
|
|
18703
18647
|
break;
|
|
18704
18648
|
default:
|
|
18705
18649
|
if (isPause) {
|
|
18706
|
-
(_d = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _d === void 0 ? void 0 : _d.
|
|
18650
|
+
if (isDiyH5 && Math.round((_d = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _d === void 0 ? void 0 : _d.currentTime) >= (scene === null || scene === void 0 ? void 0 : scene.endTime)) {
|
|
18651
|
+
videoRef.current.currentTime = scene === null || scene === void 0 ? void 0 : scene.startTime;
|
|
18652
|
+
}
|
|
18653
|
+
(_e = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _e === void 0 ? void 0 : _e.play();
|
|
18707
18654
|
}
|
|
18708
18655
|
else {
|
|
18709
|
-
(
|
|
18656
|
+
(_f = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _f === void 0 ? void 0 : _f.pause();
|
|
18710
18657
|
}
|
|
18711
18658
|
setIsPauseVideo(!isPause);
|
|
18712
18659
|
break;
|
|
18713
18660
|
}
|
|
18714
18661
|
}, [isLoadFinish, videoRef === null || videoRef === void 0 ? void 0 : videoRef.current]);
|
|
18715
18662
|
const handlePause = React.useCallback(() => {
|
|
18716
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o
|
|
18663
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o;
|
|
18717
18664
|
if (!(videoRef === null || videoRef === void 0 ? void 0 : videoRef.current))
|
|
18718
18665
|
return;
|
|
18719
18666
|
if (activeIndex !== index)
|
|
@@ -18729,15 +18676,14 @@ Made in Italy` })));
|
|
|
18729
18676
|
eventSubject: 'playOverVideo',
|
|
18730
18677
|
eventDescription: 'User finished playing the video',
|
|
18731
18678
|
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 : '',
|
|
18732
|
-
|
|
18733
|
-
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 : '',
|
|
18679
|
+
contentName: (_k = (_j = item === null || item === void 0 ? void 0 : item.video) === null || _j === void 0 ? void 0 : _j.title) !== null && _k !== void 0 ? _k : '',
|
|
18734
18680
|
endTime: videoCurrentTime,
|
|
18735
18681
|
videoDuration,
|
|
18736
18682
|
playDuration,
|
|
18737
|
-
contentTags: JSON.stringify((
|
|
18683
|
+
contentTags: JSON.stringify((_m = (_l = item === null || item === void 0 ? void 0 : item.video) === null || _l === void 0 ? void 0 : _l.tags) !== null && _m !== void 0 ? _m : []),
|
|
18738
18684
|
position: index + '',
|
|
18739
18685
|
contentFormat: 'video',
|
|
18740
|
-
traceInfo: (
|
|
18686
|
+
traceInfo: (_o = item === null || item === void 0 ? void 0 : item.video) === null || _o === void 0 ? void 0 : _o.traceInfo
|
|
18741
18687
|
}
|
|
18742
18688
|
});
|
|
18743
18689
|
}
|
|
@@ -18745,8 +18691,27 @@ Made in Italy` })));
|
|
|
18745
18691
|
const handleWaiting = React.useCallback(() => {
|
|
18746
18692
|
setWaiting(true);
|
|
18747
18693
|
}, []);
|
|
18694
|
+
const handleTimeUpload = () => {
|
|
18695
|
+
if (!videoRef.current || !isDiyH5)
|
|
18696
|
+
return;
|
|
18697
|
+
setTimeout(() => {
|
|
18698
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j;
|
|
18699
|
+
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)) {
|
|
18700
|
+
(_c = videoRef.current) === null || _c === void 0 ? void 0 : _c.pause();
|
|
18701
|
+
if (!loopPlayRef.current)
|
|
18702
|
+
return;
|
|
18703
|
+
if (index === (data === null || data === void 0 ? void 0 : data.length) - 1) {
|
|
18704
|
+
(_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);
|
|
18705
|
+
}
|
|
18706
|
+
else {
|
|
18707
|
+
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;
|
|
18708
|
+
(_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);
|
|
18709
|
+
}
|
|
18710
|
+
}
|
|
18711
|
+
});
|
|
18712
|
+
};
|
|
18748
18713
|
React.useEffect(() => {
|
|
18749
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
|
|
18714
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l;
|
|
18750
18715
|
if (!isActive)
|
|
18751
18716
|
return;
|
|
18752
18717
|
const videoSrc = videoUrl;
|
|
@@ -18767,6 +18732,7 @@ Made in Italy` })));
|
|
|
18767
18732
|
hls === null || hls === void 0 ? void 0 : hls.attachMedia(videoRef === null || videoRef === void 0 ? void 0 : videoRef.current);
|
|
18768
18733
|
hls === null || hls === void 0 ? void 0 : hls.on(Hls.Events.MANIFEST_PARSED, function () {
|
|
18769
18734
|
var _a;
|
|
18735
|
+
setCurrentTimeByStartTime();
|
|
18770
18736
|
(_a = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _a === void 0 ? void 0 : _a.play();
|
|
18771
18737
|
});
|
|
18772
18738
|
}
|
|
@@ -18780,11 +18746,12 @@ Made in Italy` })));
|
|
|
18780
18746
|
(_e = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _e === void 0 ? void 0 : _e.addEventListener('play', handleStartPlay);
|
|
18781
18747
|
(_f = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _f === void 0 ? void 0 : _f.addEventListener('playing', handlePlaying);
|
|
18782
18748
|
(_g = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _g === void 0 ? void 0 : _g.addEventListener('pause', handlePause);
|
|
18783
|
-
(_h = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _h === void 0 ? void 0 : _h.addEventListener('ended',
|
|
18749
|
+
(_h = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _h === void 0 ? void 0 : _h.addEventListener('ended', handlePlay);
|
|
18784
18750
|
(_j = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _j === void 0 ? void 0 : _j.addEventListener('canplay', handlePlay);
|
|
18785
18751
|
(_k = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _k === void 0 ? void 0 : _k.addEventListener('waiting', handleWaiting);
|
|
18752
|
+
(_l = videoRef.current) === null || _l === void 0 ? void 0 : _l.addEventListener('timeupdate', handleTimeUpload);
|
|
18786
18753
|
return () => {
|
|
18787
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
|
|
18754
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l;
|
|
18788
18755
|
const isPause = (_a = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _a === void 0 ? void 0 : _a.paused;
|
|
18789
18756
|
if (!isPause)
|
|
18790
18757
|
handlePause();
|
|
@@ -18796,9 +18763,10 @@ Made in Italy` })));
|
|
|
18796
18763
|
(_e = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _e === void 0 ? void 0 : _e.removeEventListener('play', handleStartPlay);
|
|
18797
18764
|
(_f = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _f === void 0 ? void 0 : _f.removeEventListener('playing', handlePlaying);
|
|
18798
18765
|
(_g = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _g === void 0 ? void 0 : _g.removeEventListener('pause', handlePause);
|
|
18799
|
-
(_h = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _h === void 0 ? void 0 : _h.removeEventListener('ended',
|
|
18766
|
+
(_h = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _h === void 0 ? void 0 : _h.removeEventListener('ended', handlePlay);
|
|
18800
18767
|
(_j = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _j === void 0 ? void 0 : _j.removeEventListener('canplay', handlePlay);
|
|
18801
18768
|
(_k = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _k === void 0 ? void 0 : _k.removeEventListener('waiting', handleWaiting);
|
|
18769
|
+
(_l = videoRef.current) === null || _l === void 0 ? void 0 : _l.removeEventListener('timeupdate', handleTimeUpload);
|
|
18802
18770
|
};
|
|
18803
18771
|
}, [isActive]);
|
|
18804
18772
|
React.useEffect(() => {
|
|
@@ -19013,45 +18981,19 @@ Made in Italy` })));
|
|
|
19013
18981
|
}, onLoad: onShowFirstImage }))));
|
|
19014
18982
|
};
|
|
19015
18983
|
|
|
19016
|
-
const PictureGroup$4 =
|
|
18984
|
+
const PictureGroup$4 = ({ imgUrls, width, height, rec, index, onViewImageEndEvent, onViewImageStartEvent, imgUrlsPostConfig }) => {
|
|
19017
18985
|
var _a, _b;
|
|
19018
18986
|
const { isActive } = useSwiperSlide();
|
|
19019
|
-
const {
|
|
18987
|
+
const { sxpParameter, openHashtag } = useSxpDataSource();
|
|
19020
18988
|
const [isLoad, setIsLoad] = React.useState(false);
|
|
19021
18989
|
const [imgInfo, setImgInfo] = React.useState();
|
|
19022
18990
|
const [swiperActiveIndex, setSwiperActiveIndex] = React.useState(0);
|
|
19023
|
-
const
|
|
18991
|
+
const swiperRef = React.useRef();
|
|
19024
18992
|
const isFirstPlayRef = React.useRef(true);
|
|
19025
|
-
const loopPlayRef = React.useRef(true);
|
|
19026
18993
|
const initTime = new Date();
|
|
19027
|
-
React.useImperativeHandle(ref, () => {
|
|
19028
|
-
return {
|
|
19029
|
-
setLoopPlay(v) {
|
|
19030
|
-
loopPlayRef.current = v;
|
|
19031
|
-
}
|
|
19032
|
-
};
|
|
19033
|
-
});
|
|
19034
|
-
React.useEffect(() => {
|
|
19035
|
-
let timerId;
|
|
19036
|
-
if (isLoad && isActive && isDiyH5) {
|
|
19037
|
-
timerId = setTimeout(() => {
|
|
19038
|
-
var _a, _b, _c, _d;
|
|
19039
|
-
if (!loopPlayRef.current)
|
|
19040
|
-
return;
|
|
19041
|
-
if (firstRtcList && index < (firstRtcList === null || firstRtcList === void 0 ? void 0 : firstRtcList.length) - 1) {
|
|
19042
|
-
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;
|
|
19043
|
-
(_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);
|
|
19044
|
-
}
|
|
19045
|
-
}, 3000);
|
|
19046
|
-
}
|
|
19047
|
-
return () => {
|
|
19048
|
-
if (timerId)
|
|
19049
|
-
clearTimeout(timerId);
|
|
19050
|
-
};
|
|
19051
|
-
}, [isLoad, isActive, isDiyH5, index, swiperRef, firstRtcList]);
|
|
19052
18994
|
React.useEffect(() => {
|
|
19053
18995
|
if (isLoad && isActive) {
|
|
19054
|
-
(
|
|
18996
|
+
(swiperRef === null || swiperRef === void 0 ? void 0 : swiperRef.current) && swiperRef.current.swiper.autoplay.start();
|
|
19055
18997
|
if (openHashtag) {
|
|
19056
18998
|
onViewImageEndEvent(rec);
|
|
19057
18999
|
}
|
|
@@ -19061,7 +19003,7 @@ Made in Italy` })));
|
|
|
19061
19003
|
}
|
|
19062
19004
|
}
|
|
19063
19005
|
else {
|
|
19064
|
-
(
|
|
19006
|
+
(swiperRef === null || swiperRef === void 0 ? void 0 : swiperRef.current) && swiperRef.current.swiper.autoplay.stop();
|
|
19065
19007
|
}
|
|
19066
19008
|
}, [rec, isActive, onViewImageEndEvent, openHashtag, index, onViewImageStartEvent, isLoad, imgInfo]);
|
|
19067
19009
|
const showFirstImageFn = React.useCallback((e) => __awaiter(void 0, void 0, void 0, function* () {
|
|
@@ -19088,13 +19030,13 @@ Made in Italy` })));
|
|
|
19088
19030
|
};
|
|
19089
19031
|
}, [isActive, imgInfo]);
|
|
19090
19032
|
const handleMouseEnter = React.useCallback(() => {
|
|
19091
|
-
if (
|
|
19092
|
-
|
|
19033
|
+
if (swiperRef.current && swiperRef.current.swiper && isAlly) {
|
|
19034
|
+
swiperRef.current.swiper.autoplay.stop();
|
|
19093
19035
|
}
|
|
19094
19036
|
}, []);
|
|
19095
19037
|
const handleMouseLeave = React.useCallback(() => {
|
|
19096
|
-
if (
|
|
19097
|
-
|
|
19038
|
+
if (swiperRef.current && swiperRef.current.swiper && isAlly) {
|
|
19039
|
+
swiperRef.current.swiper.autoplay.start();
|
|
19098
19040
|
}
|
|
19099
19041
|
}, []);
|
|
19100
19042
|
const handleSlideChange = React.useCallback((swiper) => {
|
|
@@ -19115,7 +19057,7 @@ Made in Italy` })));
|
|
|
19115
19057
|
enabled: true
|
|
19116
19058
|
}
|
|
19117
19059
|
}
|
|
19118
|
-
: {}), { loop: true, ref:
|
|
19060
|
+
: {}), { loop: true, ref: swiperRef, onSlideChange: handleSlideChange, className: css.css(Object.assign(Object.assign({ '.swiper-pagination': {
|
|
19119
19061
|
bottom: (_a = imgUrlsPostConfig === null || imgUrlsPostConfig === void 0 ? void 0 : imgUrlsPostConfig.marginBottom) !== null && _a !== void 0 ? _a : 0,
|
|
19120
19062
|
fontSize: '14px'
|
|
19121
19063
|
} }, ((imgUrlsPostConfig === null || imgUrlsPostConfig === void 0 ? void 0 : imgUrlsPostConfig.dotsBgColor) && {
|
|
@@ -19132,7 +19074,7 @@ Made in Italy` })));
|
|
|
19132
19074
|
return (React.createElement(SwiperSlide, { key: srcKey, "aria-hidden": srcKey !== swiperActiveIndex },
|
|
19133
19075
|
React.createElement(Picture, { src: !isLoad && srcKey > 0 ? '' : url, height: height, imgUrlsPostConfig: imgUrlsPostConfig, onShowFirstImage: showFirstImageFn })));
|
|
19134
19076
|
}))));
|
|
19135
|
-
}
|
|
19077
|
+
};
|
|
19136
19078
|
var PictureGroup$5 = React.memo(PictureGroup$4);
|
|
19137
19079
|
|
|
19138
19080
|
/*
|
|
@@ -19424,7 +19366,7 @@ Made in Italy` })));
|
|
|
19424
19366
|
* @Author: binruan@chatlabs.com
|
|
19425
19367
|
* @Date: 2024-03-20 10:27:31
|
|
19426
19368
|
* @LastEditors: binruan@chatlabs.com
|
|
19427
|
-
* @LastEditTime: 2025-05-
|
|
19369
|
+
* @LastEditTime: 2025-05-09 15:51:40
|
|
19428
19370
|
* @FilePath: \pb-sxp-ui\src\core\components\SxpPageRender\index.tsx
|
|
19429
19371
|
*
|
|
19430
19372
|
*/
|
|
@@ -19445,7 +19387,6 @@ Made in Italy` })));
|
|
|
19445
19387
|
const [pageNum, setPageNum] = React.useState(2);
|
|
19446
19388
|
React.useState(false);
|
|
19447
19389
|
const videoWidgetRef = React.useRef(null);
|
|
19448
|
-
const pictureGroupRef = React.useRef(null);
|
|
19449
19390
|
const fbcRef = React.useRef('');
|
|
19450
19391
|
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();
|
|
19451
19392
|
const { backMainFeed, productView, jumpToWeb } = useEventReport();
|
|
@@ -19495,7 +19436,7 @@ Made in Italy` })));
|
|
|
19495
19436
|
(_a = swiperRef === null || swiperRef === void 0 ? void 0 : swiperRef.current) === null || _a === void 0 ? void 0 : _a.swiper.slideTo(index);
|
|
19496
19437
|
}, [data, ctaType, swiperRef]);
|
|
19497
19438
|
const handleSessionCompleted = React.useCallback((fk) => {
|
|
19498
|
-
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
|
|
19439
|
+
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;
|
|
19499
19440
|
const item = data === null || data === void 0 ? void 0 : data[activeIndex];
|
|
19500
19441
|
let fromKName = '';
|
|
19501
19442
|
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))) {
|
|
@@ -19522,23 +19463,22 @@ Made in Italy` })));
|
|
|
19522
19463
|
eventSubject: 'sessionCompleted',
|
|
19523
19464
|
eventDescription: 'Session completed',
|
|
19524
19465
|
contentId: (_m = item === null || item === void 0 ? void 0 : item.video) === null || _m === void 0 ? void 0 : _m.itemId,
|
|
19525
|
-
|
|
19526
|
-
productId: (_r = item === null || item === void 0 ? void 0 : item.product) === null || _r === void 0 ? void 0 : _r.itemId,
|
|
19466
|
+
productId: (_o = item === null || item === void 0 ? void 0 : item.product) === null || _o === void 0 ? void 0 : _o.itemId,
|
|
19527
19467
|
position: activeIndex + '',
|
|
19528
19468
|
fromKName: fk || fromKName,
|
|
19529
19469
|
fromKPage: location === null || location === void 0 ? void 0 : location.href,
|
|
19530
|
-
ctatId: (
|
|
19531
|
-
traceInfo: (
|
|
19470
|
+
ctatId: (_r = (_q = (_p = item === null || item === void 0 ? void 0 : item.video) === null || _p === void 0 ? void 0 : _p.bindCta) === null || _q === void 0 ? void 0 : _q.itemId) !== null && _r !== void 0 ? _r : '',
|
|
19471
|
+
traceInfo: (_v = (_t = (_s = item === null || item === void 0 ? void 0 : item.video) === null || _s === void 0 ? void 0 : _s.traceInfo) !== null && _t !== void 0 ? _t : (_u = item === null || item === void 0 ? void 0 : item.product) === null || _u === void 0 ? void 0 : _u.traceInfo) !== null && _v !== void 0 ? _v : ''
|
|
19532
19472
|
}
|
|
19533
19473
|
});
|
|
19534
|
-
const isPostType = ((
|
|
19474
|
+
const isPostType = ((_w = item === null || item === void 0 ? void 0 : item.video) === null || _w === void 0 ? void 0 : _w.url) || ((_y = (_x = item === null || item === void 0 ? void 0 : item.video) === null || _x === void 0 ? void 0 : _x.imgUrls) === null || _y === void 0 ? void 0 : _y.length);
|
|
19535
19475
|
if (!popupDetailData) {
|
|
19536
19476
|
bffFbReport === null || bffFbReport === void 0 ? void 0 : bffFbReport({
|
|
19537
19477
|
eventName: 'ExitFeed',
|
|
19538
|
-
product: isPostType ? (
|
|
19478
|
+
product: isPostType ? (_z = item === null || item === void 0 ? void 0 : item.video) === null || _z === void 0 ? void 0 : _z.bindProducts : (item === null || item === void 0 ? void 0 : item.product) ? [item === null || item === void 0 ? void 0 : item.product] : [],
|
|
19539
19479
|
rec: item,
|
|
19540
19480
|
position: activeIndex,
|
|
19541
|
-
content_id: isPostType ? (
|
|
19481
|
+
content_id: isPostType ? (_1 = (_0 = item === null || item === void 0 ? void 0 : item.video) === null || _0 === void 0 ? void 0 : _0.itemId) !== null && _1 !== void 0 ? _1 : '' : (_3 = (_2 = item === null || item === void 0 ? void 0 : item.product) === null || _2 === void 0 ? void 0 : _2.itemId) !== null && _3 !== void 0 ? _3 : '',
|
|
19542
19482
|
view_time: new Date() - viewTime.current
|
|
19543
19483
|
});
|
|
19544
19484
|
}
|
|
@@ -19598,9 +19538,8 @@ Made in Italy` })));
|
|
|
19598
19538
|
refreshFeSession
|
|
19599
19539
|
]);
|
|
19600
19540
|
const handleSessionExpire = React.useCallback(lodash.debounce(() => {
|
|
19601
|
-
var _a
|
|
19541
|
+
var _a;
|
|
19602
19542
|
(_a = videoWidgetRef.current) === null || _a === void 0 ? void 0 : _a.setLoopPlay(false);
|
|
19603
|
-
(_b = pictureGroupRef.current) === null || _b === void 0 ? void 0 : _b.setLoopPlay(false);
|
|
19604
19543
|
refreshFeSession === null || refreshFeSession === void 0 ? void 0 : refreshFeSession(false, handleSessionCompleted);
|
|
19605
19544
|
}, 1000), [handleSessionCompleted, refreshFeSession]);
|
|
19606
19545
|
React.useEffect(() => {
|
|
@@ -19671,18 +19610,18 @@ Made in Italy` })));
|
|
|
19671
19610
|
return null;
|
|
19672
19611
|
}, [globalConfig, activeIndex, visList]);
|
|
19673
19612
|
const renderContent = React.useCallback((rec, index) => {
|
|
19674
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k
|
|
19613
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
|
|
19675
19614
|
if (rec === 'organic menu') {
|
|
19676
19615
|
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)));
|
|
19677
19616
|
}
|
|
19678
|
-
if ((
|
|
19617
|
+
if ((_g = rec === null || rec === void 0 ? void 0 : rec.video) === null || _g === void 0 ? void 0 : _g.url) {
|
|
19679
19618
|
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 })));
|
|
19680
19619
|
}
|
|
19681
|
-
if ((
|
|
19682
|
-
return (React.createElement(PictureGroup$5,
|
|
19620
|
+
if ((_h = rec === null || rec === void 0 ? void 0 : rec.video) === null || _h === void 0 ? void 0 : _h.imgUrls) {
|
|
19621
|
+
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 }));
|
|
19683
19622
|
}
|
|
19684
|
-
if (rec.product && Array.isArray(globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.productPost) && ((
|
|
19685
|
-
return (
|
|
19623
|
+
if (rec.product && Array.isArray(globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.productPost) && ((_j = globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.productPost) === null || _j === void 0 ? void 0 : _j.length) > 0) {
|
|
19624
|
+
return (_k = globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.productPost) === null || _k === void 0 ? void 0 : _k.map((value, idx) => {
|
|
19686
19625
|
var _a, _b, _c, _d, _e, _f, _g, _h;
|
|
19687
19626
|
const t = resolver[(_a = value === null || value === void 0 ? void 0 : value.item) === null || _a === void 0 ? void 0 : _a.type];
|
|
19688
19627
|
const Component = withBindDataSource(t);
|
|
@@ -19721,7 +19660,7 @@ Made in Italy` })));
|
|
|
19721
19660
|
};
|
|
19722
19661
|
}, [isShowMore]);
|
|
19723
19662
|
const renderBottom = React.useCallback((rec, index) => {
|
|
19724
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q
|
|
19663
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q;
|
|
19725
19664
|
if (rec === null || rec === void 0 ? void 0 : rec.video) {
|
|
19726
19665
|
let cta = null;
|
|
19727
19666
|
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) {
|
|
@@ -19730,27 +19669,24 @@ Made in Italy` })));
|
|
|
19730
19669
|
else if ((_c = rec === null || rec === void 0 ? void 0 : rec.video) === null || _c === void 0 ? void 0 : _c.bindProduct) {
|
|
19731
19670
|
cta = '商品CTA';
|
|
19732
19671
|
}
|
|
19733
|
-
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)) {
|
|
19734
|
-
cta = '服务CTA';
|
|
19735
|
-
}
|
|
19736
19672
|
else {
|
|
19737
|
-
cta = (
|
|
19673
|
+
cta = (_e = (_d = rec === null || rec === void 0 ? void 0 : rec.video) === null || _d === void 0 ? void 0 : _d.bindCta) === null || _e === void 0 ? void 0 : _e.itemId;
|
|
19738
19674
|
}
|
|
19739
19675
|
const value = tempMap === null || tempMap === void 0 ? void 0 : tempMap[cta];
|
|
19740
19676
|
const isNineProduct = (globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.nineProductEnable) &&
|
|
19741
19677
|
index === ((rtcList === null || rtcList === void 0 ? void 0 : rtcList[0]) === 'organic menu' ? 1 : 0) &&
|
|
19742
|
-
((
|
|
19678
|
+
((_f = ['MultiCommodity', 'MultiCommodityDiro', 'MultiCommodityDiroNew']) === null || _f === void 0 ? void 0 : _f.includes((_g = value === null || value === void 0 ? void 0 : value.item) === null || _g === void 0 ? void 0 : _g.type));
|
|
19743
19679
|
return (React.createElement(React.Fragment, null,
|
|
19744
19680
|
isNineProduct && (React.createElement(RenderCard$1, { rec: rec, index: index, tempMap: tempMap, resolver: resolver, isActive: index === activeIndex, isNineProduct: isNineProduct })),
|
|
19745
|
-
((
|
|
19746
|
-
React.createElement("div", { className: 'clc-sxp-bottom', style: { marginBottom: `${(
|
|
19681
|
+
((_h = rec === null || rec === void 0 ? void 0 : rec.video) === null || _h === void 0 ? void 0 : _h.title) && !isShowMore && React.createElement("div", { className: 'clc-sxp-bottom-shadow' }),
|
|
19682
|
+
React.createElement("div", { className: 'clc-sxp-bottom', style: { marginBottom: `${(_j = globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.bottomInfoDist) !== null && _j !== void 0 ? _j : 40}px` } },
|
|
19747
19683
|
React.createElement(Nudge, { nudge: nudge }),
|
|
19748
19684
|
((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' },
|
|
19749
19685
|
React.createElement(RenderCard$1, { rec: rec, index: index, tempMap: tempMap, resolver: resolver, isActive: index === activeIndex, includesCtaType: [] }))) : null,
|
|
19750
19686
|
React.createElement("div", { style: { display: 'flex', flexDirection: 'column' } },
|
|
19751
|
-
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: (
|
|
19687
|
+
React.createElement(ExpandableText$1, { className: 'clc-sxp-bottom-text', isPost: true, foldText: tipText === null || tipText === void 0 ? void 0 : tipText.foldText, unfoldText: tipText === null || tipText === void 0 ? void 0 : tipText.unfoldText, text: (_l = (_k = rec === null || rec === void 0 ? void 0 : rec.video) === null || _k === void 0 ? void 0 : _k.title) !== null && _l !== void 0 ? _l : '', style: Object.assign(Object.assign({}, descStyle), { textShadow: (globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.isOpenTextShadow) ? '2px 2px 4px rgba(0, 0, 0, 0.5)' : 'none' }), onChange: onExpandableChange }),
|
|
19752
19688
|
React.createElement(RenderCard$1, { rec: rec, index: index, tempMap: tempMap, resolver: resolver, includesCtaType: ['AniLink'], isActive: index === activeIndex }),
|
|
19753
|
-
React.createElement(Hashtag$1, { index: activeIndex, tags: (
|
|
19689
|
+
React.createElement(Hashtag$1, { index: activeIndex, tags: (_o = (_m = rec === null || rec === void 0 ? void 0 : rec.video) === null || _m === void 0 ? void 0 : _m.hashTags) !== null && _o !== void 0 ? _o : [], itemId: (_p = rec === null || rec === void 0 ? void 0 : rec.video) === null || _p === void 0 ? void 0 : _p.itemId, itemType: ((_q = rec === null || rec === void 0 ? void 0 : rec.video) === null || _q === void 0 ? void 0 : _q.itemId) ? 'VIDEO' : null, rec: rec, hashTagStyle: hashTagStyle, hashTagRightMargin: containerWidth - (hashTagRightMargin !== null && hashTagRightMargin !== void 0 ? hashTagRightMargin : 0) }))),
|
|
19754
19690
|
React.createElement(RenderCard$1, { rec: rec, index: index, tempMap: tempMap, resolver: resolver, includesCtaType: ['AniLinkPopup'], isActive: index === activeIndex })));
|
|
19755
19691
|
}
|
|
19756
19692
|
return null;
|
|
@@ -19792,7 +19728,7 @@ Made in Italy` })));
|
|
|
19792
19728
|
return null;
|
|
19793
19729
|
}, [globalConfig, waterFallData, bottomHeight]);
|
|
19794
19730
|
const handleViewImageStartEnd = (item) => {
|
|
19795
|
-
var _a, _b, _c, _d, _e, _f
|
|
19731
|
+
var _a, _b, _c, _d, _e, _f;
|
|
19796
19732
|
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)) {
|
|
19797
19733
|
const endTime = Date.now();
|
|
19798
19734
|
const duration = viewImageStartTime.current === 0 ? 0 : (endTime - viewImageStartTime.current) / 1000;
|
|
@@ -19801,11 +19737,10 @@ Made in Italy` })));
|
|
|
19801
19737
|
eventSubject: 'viewImageCarouselEnd',
|
|
19802
19738
|
eventDescription: 'User end view the image carousel',
|
|
19803
19739
|
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 : '',
|
|
19804
|
-
|
|
19805
|
-
contentName: (_h = item === null || item === void 0 ? void 0 : item.video.title) !== null && _h !== void 0 ? _h : '',
|
|
19740
|
+
contentName: (_e = item === null || item === void 0 ? void 0 : item.video.title) !== null && _e !== void 0 ? _e : '',
|
|
19806
19741
|
imageEndTime: `${endTime}`,
|
|
19807
19742
|
playDuration: `${duration}`,
|
|
19808
|
-
contentTags: JSON.stringify((
|
|
19743
|
+
contentTags: JSON.stringify((_f = item === null || item === void 0 ? void 0 : item.video.tags) !== null && _f !== void 0 ? _f : []),
|
|
19809
19744
|
position: activeIndex + '',
|
|
19810
19745
|
contentFormat: 'image',
|
|
19811
19746
|
traceInfo: item === null || item === void 0 ? void 0 : item.video.traceInfo
|
|
@@ -19814,7 +19749,7 @@ Made in Italy` })));
|
|
|
19814
19749
|
}
|
|
19815
19750
|
};
|
|
19816
19751
|
const handleSlideSkip = (item, position) => {
|
|
19817
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x
|
|
19752
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x;
|
|
19818
19753
|
if (isPreview || waterFallData)
|
|
19819
19754
|
return;
|
|
19820
19755
|
const t = new Date() - curTime.current;
|
|
@@ -19840,8 +19775,7 @@ Made in Italy` })));
|
|
|
19840
19775
|
contentTags: (product === null || product === void 0 ? void 0 : product.tags) ? JSON.stringify(product === null || product === void 0 ? void 0 : product.tags) : '',
|
|
19841
19776
|
position: position + '',
|
|
19842
19777
|
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 : '',
|
|
19843
|
-
|
|
19844
|
-
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 : '',
|
|
19778
|
+
traceInfo: (_x = (_v = (_u = item === null || item === void 0 ? void 0 : item.video) === null || _u === void 0 ? void 0 : _u.traceInfo) !== null && _v !== void 0 ? _v : (_w = item === null || item === void 0 ? void 0 : item.product) === null || _w === void 0 ? void 0 : _w.traceInfo) !== null && _x !== void 0 ? _x : '',
|
|
19845
19779
|
contentFormat
|
|
19846
19780
|
}
|
|
19847
19781
|
});
|
|
@@ -19851,7 +19785,7 @@ Made in Italy` })));
|
|
|
19851
19785
|
}
|
|
19852
19786
|
};
|
|
19853
19787
|
const handleScrollEvent = (swiper) => {
|
|
19854
|
-
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
|
|
19788
|
+
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;
|
|
19855
19789
|
const item = data[swiper.previousIndex];
|
|
19856
19790
|
const activeItem = data[swiper.activeIndex];
|
|
19857
19791
|
if (!item)
|
|
@@ -19884,12 +19818,11 @@ Made in Italy` })));
|
|
|
19884
19818
|
eventSubject: 'scrollDown',
|
|
19885
19819
|
eventDescription: 'User scroll down',
|
|
19886
19820
|
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 : '',
|
|
19887
|
-
|
|
19888
|
-
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 : '',
|
|
19821
|
+
productId: (_w = (_v = item === null || item === void 0 ? void 0 : item.product) === null || _v === void 0 ? void 0 : _v.itemId) !== null && _w !== void 0 ? _w : '',
|
|
19889
19822
|
requestId: null,
|
|
19890
|
-
traceInfo: (
|
|
19823
|
+
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 : '',
|
|
19891
19824
|
contentFormat,
|
|
19892
|
-
position: ((
|
|
19825
|
+
position: ((_1 = swiper.previousIndex) !== null && _1 !== void 0 ? _1 : 0) + ''
|
|
19893
19826
|
}
|
|
19894
19827
|
});
|
|
19895
19828
|
// 如果上一个商品是图片集,需上报 浏览图片集结结束 事件
|
|
@@ -19902,13 +19835,12 @@ Made in Italy` })));
|
|
|
19902
19835
|
eventInfo: {
|
|
19903
19836
|
eventSubject: 'scrollUp',
|
|
19904
19837
|
eventDescription: 'User scroll up',
|
|
19905
|
-
contentId: (
|
|
19906
|
-
|
|
19907
|
-
productId: (_11 = (_10 = item.product) === null || _10 === void 0 ? void 0 : _10.itemId) !== null && _11 !== void 0 ? _11 : '',
|
|
19838
|
+
contentId: (_3 = (_2 = item === null || item === void 0 ? void 0 : item.video) === null || _2 === void 0 ? void 0 : _2.itemId) !== null && _3 !== void 0 ? _3 : '',
|
|
19839
|
+
productId: (_5 = (_4 = item.product) === null || _4 === void 0 ? void 0 : _4.itemId) !== null && _5 !== void 0 ? _5 : '',
|
|
19908
19840
|
requestId: null,
|
|
19909
|
-
traceInfo: (
|
|
19841
|
+
traceInfo: (_9 = (_7 = (_6 = item === null || item === void 0 ? void 0 : item.video) === null || _6 === void 0 ? void 0 : _6.traceInfo) !== null && _7 !== void 0 ? _7 : (_8 = item === null || item === void 0 ? void 0 : item.product) === null || _8 === void 0 ? void 0 : _8.traceInfo) !== null && _9 !== void 0 ? _9 : '',
|
|
19910
19842
|
contentFormat,
|
|
19911
|
-
position: ((
|
|
19843
|
+
position: ((_10 = swiper.previousIndex) !== null && _10 !== void 0 ? _10 : 0) + ''
|
|
19912
19844
|
}
|
|
19913
19845
|
});
|
|
19914
19846
|
// 如果上一个商品是图片集,需上报 浏览图片集结结束 事件
|
|
@@ -20008,7 +19940,7 @@ Made in Italy` })));
|
|
|
20008
19940
|
};
|
|
20009
19941
|
}, [globalConfig, bffEventReport, data, activeIndex]);
|
|
20010
19942
|
const handleViewImageStartEvent = (activeIndex, imgInfo, enableCapi) => {
|
|
20011
|
-
var _a, _b, _c, _d, _e, _f, _g, _h
|
|
19943
|
+
var _a, _b, _c, _d, _e, _f, _g, _h;
|
|
20012
19944
|
const item = data[activeIndex];
|
|
20013
19945
|
// 如果是图片集则上报事件
|
|
20014
19946
|
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)) {
|
|
@@ -20019,10 +19951,9 @@ Made in Italy` })));
|
|
|
20019
19951
|
eventSubject: 'viewImageCarouselStart',
|
|
20020
19952
|
eventDescription: 'User start view the image carousel',
|
|
20021
19953
|
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 : '',
|
|
20022
|
-
|
|
20023
|
-
contentName: (_h = item === null || item === void 0 ? void 0 : item.video.title) !== null && _h !== void 0 ? _h : '',
|
|
19954
|
+
contentName: (_e = item === null || item === void 0 ? void 0 : item.video.title) !== null && _e !== void 0 ? _e : '',
|
|
20024
19955
|
imageStartTime: `${startTime}`,
|
|
20025
|
-
contentTags: JSON.stringify((
|
|
19956
|
+
contentTags: JSON.stringify((_f = item === null || item === void 0 ? void 0 : item.video.tags) !== null && _f !== void 0 ? _f : []),
|
|
20026
19957
|
position: activeIndex + '',
|
|
20027
19958
|
contentFormat: 'image',
|
|
20028
19959
|
traceInfo: item === null || item === void 0 ? void 0 : item.video.traceInfo,
|
|
@@ -20032,13 +19963,13 @@ Made in Italy` })));
|
|
|
20032
19963
|
if (enableCapi) {
|
|
20033
19964
|
bffFbReport === null || bffFbReport === void 0 ? void 0 : bffFbReport({
|
|
20034
19965
|
eventName: 'ViewContent',
|
|
20035
|
-
product: (
|
|
19966
|
+
product: (_g = item === null || item === void 0 ? void 0 : item.video) === null || _g === void 0 ? void 0 : _g.bindProducts,
|
|
20036
19967
|
rec: item,
|
|
20037
19968
|
position: activeIndex
|
|
20038
19969
|
});
|
|
20039
19970
|
bffFbReport === null || bffFbReport === void 0 ? void 0 : bffFbReport({
|
|
20040
19971
|
eventName: 'PageView',
|
|
20041
|
-
product: (
|
|
19972
|
+
product: (_h = item === null || item === void 0 ? void 0 : item.video) === null || _h === void 0 ? void 0 : _h.bindProducts,
|
|
20042
19973
|
rec: item,
|
|
20043
19974
|
position: activeIndex
|
|
20044
19975
|
});
|
|
@@ -20136,20 +20067,15 @@ Made in Italy` })));
|
|
|
20136
20067
|
swiperRef.current.swiper.allowTouchMove = true;
|
|
20137
20068
|
}, 500);
|
|
20138
20069
|
}, onActiveIndexChange: (swiper) => {
|
|
20139
|
-
var _a, _b;
|
|
20140
20070
|
setActiveIndex(swiper.activeIndex);
|
|
20141
20071
|
if (openHashtag)
|
|
20142
20072
|
return;
|
|
20143
20073
|
// 处理上滑下滑事件
|
|
20144
20074
|
handleScrollEvent(swiper);
|
|
20145
|
-
if (waterFallData || isEditor)
|
|
20075
|
+
if (waterFallData || isEditor || isDiyH5)
|
|
20146
20076
|
return;
|
|
20147
20077
|
if ((swiper === null || swiper === void 0 ? void 0 : swiper.activeIndex) + 1 >= (data === null || data === void 0 ? void 0 : data.length)) {
|
|
20148
20078
|
if (!isLoadMore) {
|
|
20149
|
-
if (isDiyH5) {
|
|
20150
|
-
(_a = videoWidgetRef.current) === null || _a === void 0 ? void 0 : _a.setLoopPlay(false);
|
|
20151
|
-
(_b = pictureGroupRef.current) === null || _b === void 0 ? void 0 : _b.setLoopPlay(false);
|
|
20152
|
-
}
|
|
20153
20079
|
setIsLoadMore(true);
|
|
20154
20080
|
loadVideos === null || loadVideos === void 0 ? void 0 : loadVideos(pageNum).then((res) => {
|
|
20155
20081
|
var _a;
|
|
@@ -20222,7 +20148,7 @@ Made in Italy` })));
|
|
|
20222
20148
|
}, []);
|
|
20223
20149
|
const PAUSE_ICON = useIconLink('/pb_static/06f28a2025c74c1cb49be6767316d827.png');
|
|
20224
20150
|
const handlePlaying = React.useCallback(() => {
|
|
20225
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o
|
|
20151
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o;
|
|
20226
20152
|
setIsPauseVideo(false);
|
|
20227
20153
|
const item = data[index];
|
|
20228
20154
|
if (item && ((_a = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _a === void 0 ? void 0 : _a.duration)) {
|
|
@@ -20235,15 +20161,14 @@ Made in Italy` })));
|
|
|
20235
20161
|
eventSubject: 'playVideo',
|
|
20236
20162
|
eventDescription: 'User played the video',
|
|
20237
20163
|
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 : '',
|
|
20238
|
-
|
|
20239
|
-
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 : '',
|
|
20164
|
+
contentName: (_k = (_j = item === null || item === void 0 ? void 0 : item.video) === null || _j === void 0 ? void 0 : _j.title) !== null && _k !== void 0 ? _k : '',
|
|
20240
20165
|
playType,
|
|
20241
20166
|
startTime: videoCurrentTime,
|
|
20242
20167
|
videoDuration,
|
|
20243
|
-
contentTags: JSON.stringify((
|
|
20168
|
+
contentTags: JSON.stringify((_m = (_l = item === null || item === void 0 ? void 0 : item.video) === null || _l === void 0 ? void 0 : _l.tags) !== null && _m !== void 0 ? _m : []),
|
|
20244
20169
|
position: index + '',
|
|
20245
20170
|
contentFormat: 'video',
|
|
20246
|
-
traceInfo: (
|
|
20171
|
+
traceInfo: (_o = item === null || item === void 0 ? void 0 : item.video) === null || _o === void 0 ? void 0 : _o.traceInfo
|
|
20247
20172
|
}
|
|
20248
20173
|
});
|
|
20249
20174
|
setIsFirstPlay(false);
|
|
@@ -20282,7 +20207,7 @@ Made in Italy` })));
|
|
|
20282
20207
|
}
|
|
20283
20208
|
}, [isLoadFinish]);
|
|
20284
20209
|
const onPause = React.useCallback(() => {
|
|
20285
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o
|
|
20210
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o;
|
|
20286
20211
|
const item = data[index];
|
|
20287
20212
|
const videoDuration = ((_b = (_a = videoRef.current) === null || _a === void 0 ? void 0 : _a.duration) !== null && _b !== void 0 ? _b : 0).toFixed(2);
|
|
20288
20213
|
const videoCurrentTime = ((_d = (_c = videoRef.current) === null || _c === void 0 ? void 0 : _c.currentTime) !== null && _d !== void 0 ? _d : 0).toFixed(2);
|
|
@@ -20293,15 +20218,14 @@ Made in Italy` })));
|
|
|
20293
20218
|
eventSubject: 'playOverVideo',
|
|
20294
20219
|
eventDescription: 'User finished playing the video',
|
|
20295
20220
|
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 : '',
|
|
20296
|
-
|
|
20297
|
-
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 : '',
|
|
20221
|
+
contentName: (_k = (_j = item === null || item === void 0 ? void 0 : item.video) === null || _j === void 0 ? void 0 : _j.title) !== null && _k !== void 0 ? _k : '',
|
|
20298
20222
|
endTime: videoCurrentTime,
|
|
20299
20223
|
videoDuration,
|
|
20300
20224
|
playDuration,
|
|
20301
|
-
contentTags: JSON.stringify((
|
|
20225
|
+
contentTags: JSON.stringify((_m = (_l = item === null || item === void 0 ? void 0 : item.video) === null || _l === void 0 ? void 0 : _l.tags) !== null && _m !== void 0 ? _m : []),
|
|
20302
20226
|
position: index + '',
|
|
20303
20227
|
contentFormat: 'video',
|
|
20304
|
-
traceInfo: (
|
|
20228
|
+
traceInfo: (_o = item === null || item === void 0 ? void 0 : item.video) === null || _o === void 0 ? void 0 : _o.traceInfo
|
|
20305
20229
|
}
|
|
20306
20230
|
});
|
|
20307
20231
|
}
|