pb-sxp-ui 1.3.1 → 1.3.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (64) hide show
  1. package/dist/index.cjs +238 -184
  2. package/dist/index.cjs.map +1 -1
  3. package/dist/index.css +1 -1
  4. package/dist/index.js +238 -184
  5. package/dist/index.js.map +1 -1
  6. package/dist/index.min.cjs +3 -3
  7. package/dist/index.min.cjs.map +1 -1
  8. package/dist/index.min.js +3 -3
  9. package/dist/index.min.js.map +1 -1
  10. package/dist/pb-ui.js +238 -184
  11. package/dist/pb-ui.js.map +1 -1
  12. package/dist/pb-ui.min.js +3 -3
  13. package/dist/pb-ui.min.js.map +1 -1
  14. package/es/core/components/SxpPageRender/Modal/index.js +3 -3
  15. package/es/core/components/SxpPageRender/RenderCard.d.ts +3 -3
  16. package/es/core/components/SxpPageRender/RenderCard.js +17 -27
  17. package/es/core/components/SxpPageRender/WaterFall/List.js +20 -11
  18. package/es/core/components/SxpPageRender/WaterFall/WaterfallList.js +20 -11
  19. package/es/core/components/SxpPageRender/index.js +21 -13
  20. package/es/core/context/EditorDataProvider.d.ts +3 -0
  21. package/es/core/context/EditorDataProvider.js +2 -1
  22. package/es/core/context/SxpDataSourceProvider.d.ts +1 -0
  23. package/es/core/context/SxpDataSourceProvider.js +53 -35
  24. package/es/core/utils/tool.d.ts +3 -3
  25. package/es/core/utils/tool.js +6 -6
  26. package/es/materials/sxp/HashTag/index.d.ts +3 -1
  27. package/es/materials/sxp/HashTag/settingRender.d.ts +7 -0
  28. package/es/materials/sxp/HashTag/settingRender.js +6 -0
  29. package/es/materials/sxp/popup/CommodityDetail/index.d.ts +1 -0
  30. package/es/materials/sxp/popup/CommodityDetail/index.js +26 -27
  31. package/es/materials/sxp/popup/CommodityDetailDiroNew/index.d.ts +1 -0
  32. package/es/materials/sxp/popup/CommodityDetailDiroNew/index.js +30 -31
  33. package/es/materials/sxp/popup/CommodityList/index.d.ts +3 -1
  34. package/es/materials/sxp/popup/CommodityList/index.js +11 -7
  35. package/es/materials/sxp/popup/CommodityList/settingRender.d.ts +7 -0
  36. package/es/materials/sxp/popup/CommodityList/settingRender.js +6 -0
  37. package/es/materials/sxp/popup/Iframe/index.d.ts +1 -0
  38. package/es/materials/sxp/popup/Iframe/index.js +8 -7
  39. package/lib/core/components/SxpPageRender/Modal/index.js +3 -3
  40. package/lib/core/components/SxpPageRender/RenderCard.d.ts +3 -3
  41. package/lib/core/components/SxpPageRender/RenderCard.js +16 -26
  42. package/lib/core/components/SxpPageRender/WaterFall/List.js +20 -11
  43. package/lib/core/components/SxpPageRender/WaterFall/WaterfallList.js +20 -11
  44. package/lib/core/components/SxpPageRender/index.js +21 -13
  45. package/lib/core/context/EditorDataProvider.d.ts +3 -0
  46. package/lib/core/context/EditorDataProvider.js +2 -1
  47. package/lib/core/context/SxpDataSourceProvider.d.ts +1 -0
  48. package/lib/core/context/SxpDataSourceProvider.js +53 -35
  49. package/lib/core/utils/tool.d.ts +3 -3
  50. package/lib/core/utils/tool.js +6 -6
  51. package/lib/materials/sxp/HashTag/index.d.ts +3 -1
  52. package/lib/materials/sxp/HashTag/settingRender.d.ts +7 -0
  53. package/lib/materials/sxp/HashTag/settingRender.js +6 -0
  54. package/lib/materials/sxp/popup/CommodityDetail/index.d.ts +1 -0
  55. package/lib/materials/sxp/popup/CommodityDetail/index.js +26 -27
  56. package/lib/materials/sxp/popup/CommodityDetailDiroNew/index.d.ts +1 -0
  57. package/lib/materials/sxp/popup/CommodityDetailDiroNew/index.js +30 -31
  58. package/lib/materials/sxp/popup/CommodityList/index.d.ts +3 -1
  59. package/lib/materials/sxp/popup/CommodityList/index.js +11 -7
  60. package/lib/materials/sxp/popup/CommodityList/settingRender.d.ts +7 -0
  61. package/lib/materials/sxp/popup/CommodityList/settingRender.js +6 -0
  62. package/lib/materials/sxp/popup/Iframe/index.d.ts +1 -0
  63. package/lib/materials/sxp/popup/Iframe/index.js +8 -7
  64. package/package.json +1 -1
package/dist/index.cjs CHANGED
@@ -243,7 +243,7 @@ function getBrowserInfo() {
243
243
  var _a, _b, _c, _d, _e, _f, _g;
244
244
  let userAgent = self.navigator.userAgent;
245
245
  if (!userAgent)
246
- return 'Unknown';
246
+ return null;
247
247
  if (/edge\/([\d\.]+)/i.exec(userAgent))
248
248
  return `Edge ${(_a = /edge\/([\d\.]+)/i.exec(userAgent)) === null || _a === void 0 ? void 0 : _a[1]}`;
249
249
  if (/edg\/([\d\.]+)/i.exec(userAgent))
@@ -258,13 +258,13 @@ function getBrowserInfo() {
258
258
  return `Firefox ${(_f = /firefox\/([\d\.]+)/i.exec(userAgent)) === null || _f === void 0 ? void 0 : _f[1]}`;
259
259
  if (/safari/i.test(userAgent))
260
260
  return `Safari ${(_g = /version\/([\d\.]+)/i.exec(userAgent)) === null || _g === void 0 ? void 0 : _g[1]}`;
261
- return 'Unknown';
261
+ return null;
262
262
  }
263
263
  function getSystem() {
264
264
  var _a, _b, _c;
265
265
  let userAgent = self.navigator.userAgent;
266
266
  if (!userAgent)
267
- return 'Unknown';
267
+ return null;
268
268
  if (/iphone/i.test(userAgent))
269
269
  return `IOS ${(_a = userAgent.match(/OS\s(.*?)\slike/)) === null || _a === void 0 ? void 0 : _a[1]}`;
270
270
  if (/android/i.test(userAgent))
@@ -273,12 +273,12 @@ function getSystem() {
273
273
  return `Windows ${(_c = userAgent.match(/Windows\s(.*?)\;/)) === null || _c === void 0 ? void 0 : _c[1]}`;
274
274
  if (/mac/i.test(userAgent))
275
275
  return `Mac OS`;
276
- return 'Unknown';
276
+ return null;
277
277
  }
278
278
  function getDevice$1() {
279
279
  let userAgent = self.navigator.userAgent;
280
280
  if (!userAgent)
281
- return 'Unknown';
281
+ return null;
282
282
  if (/iphone/i.test(userAgent))
283
283
  return `iPhone`;
284
284
  if (/android/i.test(userAgent)) {
@@ -301,7 +301,7 @@ function getDevice$1() {
301
301
  return `Windows`;
302
302
  if (/mac/i.test(userAgent))
303
303
  return `Mac`;
304
- return 'Unknown';
304
+ return null;
305
305
  }
306
306
  function getCookie(val) {
307
307
  // const expirationDate = new Date();
@@ -718,8 +718,8 @@ const SxpDataSourceProvider = ({ render, dataSources, utmVal, enableReportEvent
718
718
  }, [bffDataSource]);
719
719
  // 获取推荐视频数据
720
720
  const getRecommendVideos = React.useCallback((query) => __awaiter(void 0, void 0, void 0, function* () {
721
- var _d, _e, _f, _g, _h, _j, _k;
722
- query = Object.assign(Object.assign({ maxSize: (_d = query === null || query === void 0 ? void 0 : query.maxSize) !== null && _d !== void 0 ? _d : maxSize, defaultSize: (_e = query === null || query === void 0 ? void 0 : query.defaultSize) !== null && _e !== void 0 ? _e : 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 }, ((query === null || query === void 0 ? void 0 : query.contentFilter) && { contentFilter: `[${query === null || query === void 0 ? void 0 : query.contentFilter}]` })), ((query === null || query === void 0 ? void 0 : query.productFilter) && { productFilter: `[${query === null || query === void 0 ? void 0 : query.productFilter}]` }));
721
+ var _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q;
722
+ query = Object.assign(Object.assign(Object.assign({ maxSize: (_d = query === null || query === void 0 ? void 0 : query.maxSize) !== null && _d !== void 0 ? _d : maxSize, defaultSize: (_e = query === null || query === void 0 ? void 0 : query.defaultSize) !== null && _e !== void 0 ? _e : 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 }, ((query === null || query === void 0 ? void 0 : query.contentFilter) && { contentFilter: `[${query === null || query === void 0 ? void 0 : query.contentFilter}]` })), ((query === null || query === void 0 ? void 0 : query.productFilter) && { productFilter: `[${query === null || query === void 0 ? void 0 : query.productFilter}]` })), { pageNum: query === null || query === void 0 ? void 0 : query.pageNum });
723
723
  if (utmVal) {
724
724
  const val = (_h = (_g = (_f = utmVal === null || utmVal === void 0 ? void 0 : utmVal.split('&')) === null || _f === void 0 ? void 0 : _f.filter((val) => {
725
725
  var _a, _b;
@@ -728,30 +728,36 @@ const SxpDataSourceProvider = ({ render, dataSources, utmVal, enableReportEvent
728
728
  })) === null || _g === void 0 ? void 0 : _g.join('&')) !== null && _h !== void 0 ? _h : '';
729
729
  query = Object.assign(Object.assign({}, query), { channel: decodeURIComponent(val) });
730
730
  }
731
- if ((globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.enablePreview) || isEditor) {
731
+ if (globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.enablePreview) {
732
+ query = Object.assign(Object.assign({}, query), { directPage: true, level: 1, pageNum: (_j = query === null || query === void 0 ? void 0 : query.pageNum) !== null && _j !== void 0 ? _j : 1 });
733
+ }
734
+ if (isEditor) {
735
+ let pageNum = 1;
732
736
  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] }));
733
- if (!(query === null || query === void 0 ? void 0 : query.channel))
734
- return;
737
+ if (!(query === null || query === void 0 ? void 0 : query.channel) || isInit.current) {
738
+ return undefined;
739
+ }
740
+ isInit.current = true;
735
741
  let list = [];
736
742
  let result = null;
737
- let pageNum = 1;
738
743
  const recurveRecList = (query) => __awaiter(void 0, void 0, void 0, function* () {
739
- var _l, _m, _o, _p;
744
+ var _r, _s, _t, _u, _v, _w;
740
745
  query.pageNum = pageNum;
741
746
  result = yield (bffFetch === null || bffFetch === void 0 ? void 0 : bffFetch('/recommend/list', { method: 'GET', query }));
742
747
  if (!(result === null || result === void 0 ? void 0 : result.success)) {
743
748
  return undefined;
744
749
  }
745
- const rec = (_m = (_l = result === null || result === void 0 ? void 0 : result.data) === null || _l === void 0 ? void 0 : _l.recList) === null || _m === void 0 ? void 0 : _m[0];
746
- list = list.concat((_p = (_o = result === null || result === void 0 ? void 0 : result.data) === null || _o === void 0 ? void 0 : _o.recList) !== null && _p !== void 0 ? _p : []);
747
- if ((rec === null || rec === void 0 ? void 0 : rec.product) || (rec === null || rec === void 0 ? void 0 : rec.video)) {
750
+ setLoading(false);
751
+ const isNotNullList = (_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.every((item) => (item === null || item === void 0 ? void 0 : item.product) || (item === null || item === void 0 ? void 0 : item.video));
752
+ list = list.concat((_w = (_v = (_u = (_t = result === null || result === void 0 ? void 0 : result.data) === null || _t === void 0 ? void 0 : _t.recList) === null || _u === void 0 ? void 0 : _u.filter) === null || _v === void 0 ? void 0 : _v.call(_u, (item) => (item === null || item === void 0 ? void 0 : item.product) || (item === null || item === void 0 ? void 0 : item.video))) !== null && _w !== void 0 ? _w : []);
753
+ if (isNotNullList) {
748
754
  pageNum = pageNum + 1;
749
755
  yield recurveRecList(query);
750
756
  }
751
757
  });
752
758
  yield recurveRecList(query);
753
759
  if (!(query === null || query === void 0 ? void 0 : query.hashTag) && result)
754
- setCurReqInfo({ rtc: (_j = result === null || result === void 0 ? void 0 : result.data) === null || _j === void 0 ? void 0 : _j.rtc, requestId: (_k = result === null || result === void 0 ? void 0 : result.data) === null || _k === void 0 ? void 0 : _k.requestId });
760
+ setCurReqInfo({ rtc: (_k = result === null || result === void 0 ? void 0 : result.data) === null || _k === void 0 ? void 0 : _k.rtc, requestId: (_l = result === null || result === void 0 ? void 0 : result.data) === null || _l === void 0 ? void 0 : _l.requestId });
755
761
  return Object.assign(Object.assign({}, result.data), { recList: list });
756
762
  }
757
763
  const result = yield (bffFetch === null || bffFetch === void 0 ? void 0 : bffFetch('/recommend/list', { method: 'GET', query }));
@@ -760,15 +766,20 @@ const SxpDataSourceProvider = ({ render, dataSources, utmVal, enableReportEvent
760
766
  }
761
767
  if (!(query === null || query === void 0 ? void 0 : query.hashTag))
762
768
  setCurReqInfo({ rtc: result.data.rtc, requestId: result.data.requestId });
769
+ if ((globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.enablePreview) && !isEditor) {
770
+ let list = [];
771
+ list = list.concat((_q = (_p = (_o = (_m = result === null || result === void 0 ? void 0 : result.data) === null || _m === void 0 ? void 0 : _m.recList) === null || _o === void 0 ? void 0 : _o.filter) === null || _p === void 0 ? void 0 : _p.call(_o, (item) => (item === null || item === void 0 ? void 0 : item.product) || (item === null || item === void 0 ? void 0 : item.video))) !== null && _q !== void 0 ? _q : []);
772
+ return Object.assign(Object.assign({}, result.data), { recList: list });
773
+ }
763
774
  return result === null || result === void 0 ? void 0 : result.data;
764
- }), [bffFetch, utmVal, maxSize, defaultSize, globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.enablePreview, channelQueryList, isEditor]);
765
- const loadVideos = React.useCallback(() => __awaiter(void 0, void 0, void 0, function* () {
766
- var _q, _r, _s, _t;
775
+ }), [bffFetch, utmVal, maxSize, defaultSize, channelQueryList]);
776
+ const loadVideos = React.useCallback((pageNum) => __awaiter(void 0, void 0, void 0, function* () {
777
+ var _x, _y, _z, _0;
767
778
  if (rtcList.length <= 0) {
768
779
  return;
769
780
  }
770
781
  const lastItem = rtcList === null || rtcList === void 0 ? void 0 : rtcList[(rtcList === null || rtcList === void 0 ? void 0 : rtcList.length) - 1];
771
- const data = yield getRecommendVideos(Object.assign(Object.assign(Object.assign({ hashTag: waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.hashTag }, (((_q = lastItem === null || lastItem === void 0 ? void 0 : lastItem.product) === null || _q === void 0 ? void 0 : _q.itemId) && { productFilter: (_r = lastItem === null || lastItem === void 0 ? void 0 : lastItem.product) === null || _r === void 0 ? void 0 : _r.itemId })), (((_s = lastItem === null || lastItem === void 0 ? void 0 : lastItem.video) === null || _s === void 0 ? void 0 : _s.itemId) && { contentFilter: (_t = lastItem === null || lastItem === void 0 ? void 0 : lastItem.video) === null || _t === void 0 ? void 0 : _t.itemId })), { themeTag: themeTag.current }));
782
+ const data = yield getRecommendVideos(Object.assign(Object.assign(Object.assign(Object.assign({ hashTag: waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.hashTag }, (((_x = lastItem === null || lastItem === void 0 ? void 0 : lastItem.product) === null || _x === void 0 ? void 0 : _x.itemId) && { productFilter: (_y = lastItem === null || lastItem === void 0 ? void 0 : lastItem.product) === null || _y === void 0 ? void 0 : _y.itemId })), (((_z = lastItem === null || lastItem === void 0 ? void 0 : lastItem.video) === null || _z === void 0 ? void 0 : _z.itemId) && { contentFilter: (_0 = lastItem === null || lastItem === void 0 ? void 0 : lastItem.video) === null || _0 === void 0 ? void 0 : _0.itemId })), { themeTag: themeTag.current }), ((globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.enablePreview) && !isEditor && { pageNum })));
772
783
  setRtcList(rtcList.concat(getFilterRecList(data)));
773
784
  setCacheRtcList(cacheRtcList.concat(getFilterRecList(data)));
774
785
  }), [getRecommendVideos, rtcList, waterFallData, cacheRtcList]);
@@ -785,7 +796,7 @@ const SxpDataSourceProvider = ({ render, dataSources, utmVal, enableReportEvent
785
796
  };
786
797
  }
787
798
  const sessionID = storeAndLoadFeSessionId();
788
- const ef = Object.assign(Object.assign({ sessionID, rtc: curReqInfo.rtc, requestId: curReqInfo.requestId }, eventInfo), { sxpDevice: getDevice$1(), sxpSystem: getSystem(), sxpBrowser: getBrowserInfo() });
799
+ const ef = Object.assign(Object.assign(Object.assign(Object.assign({ sessionID, rtc: curReqInfo.rtc, requestId: curReqInfo.requestId }, eventInfo), (getDevice$1() && { sxpDevice: getDevice$1() })), (getSystem() && { sxpSystem: getSystem() })), (getBrowserInfo() && { sxpBrowser: getBrowserInfo() }));
789
800
  const realUserInfo = Object.entries(userInfo).map(([k, v]) => ({ name: k, value: v }));
790
801
  const realEventInfo = Object.entries(ef)
791
802
  .map(([k, v]) => v && { name: k, value: v })
@@ -801,24 +812,21 @@ const SxpDataSourceProvider = ({ render, dataSources, utmVal, enableReportEvent
801
812
  });
802
813
  }, [bffFetch, curReqInfo, enableReportEvent, globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.enablePreview]);
803
814
  const bffFbReport = React.useCallback((_a) => {
804
- var _b, _c;
815
+ var _b, _c, _d;
805
816
  var { eventName, actionSource = 'website', eventSourceUrl = (_b = window === null || window === void 0 ? void 0 : window.location) === null || _b === void 0 ? void 0 : _b.href, externalId } = _a;
806
817
  if (!enableReportEvent || !enabledMetaConversionApi || (globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.enablePreview)) {
807
818
  return;
808
819
  }
809
820
  const fakeUserId = storeAndLoadFeUserId();
821
+ const urlParams = new URLSearchParams(window.location.search);
822
+ const fbclid = urlParams.get('fbclid');
810
823
  return bffFetch === null || bffFetch === void 0 ? void 0 : bffFetch('/fb/events', {
811
824
  method: 'POST',
812
825
  body: {
813
826
  eventName,
814
827
  actionSource,
815
828
  eventSourceUrl,
816
- userData: {
817
- externalId: fakeUserId,
818
- fbc: `fb.2.${new Date().getTime()}.${getCookie('_fbc')}`,
819
- fbp: `fb.2.${new Date().getTime()}.${getCookie('_fbp')}`,
820
- client_user_agent: (_c = window === null || window === void 0 ? void 0 : window.navigator) === null || _c === void 0 ? void 0 : _c.userAgent
821
- }
829
+ userData: Object.assign(Object.assign(Object.assign({ externalId: fakeUserId }, (fbclid && { fbc: `fb.2.${new Date().getTime()}.${fbclid}` })), (getCookie('_fbp') && { fbp: `fb.2.${new Date().getTime()}.${getCookie('_fbp')}` })), { client_user_agent: (_d = (_c = window === null || window === void 0 ? void 0 : window.navigator) === null || _c === void 0 ? void 0 : _c.userAgent) !== null && _d !== void 0 ? _d : '' })
822
830
  },
823
831
  type: 'beacon'
824
832
  });
@@ -837,17 +845,17 @@ const SxpDataSourceProvider = ({ render, dataSources, utmVal, enableReportEvent
837
845
  }), [bffFetch]);
838
846
  // 获取 Tag
839
847
  const bffGetTagList = React.useCallback(() => __awaiter(void 0, void 0, void 0, function* () {
840
- var _u, _v, _w, _x, _y;
848
+ var _1, _2, _3, _4, _5;
841
849
  if (!utmVal || !isShowTag)
842
850
  return;
843
851
  try {
844
- const val = (_w = (_v = (_u = utmVal === null || utmVal === void 0 ? void 0 : utmVal.split('&')) === null || _u === void 0 ? void 0 : _u.filter((val) => {
852
+ const val = (_3 = (_2 = (_1 = utmVal === null || utmVal === void 0 ? void 0 : utmVal.split('&')) === null || _1 === void 0 ? void 0 : _1.filter((val) => {
845
853
  var _a, _b;
846
854
  const key = val.split('=')[0];
847
855
  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);
848
- })) === null || _v === void 0 ? void 0 : _v.join('&')) !== null && _w !== void 0 ? _w : '';
856
+ })) === null || _2 === void 0 ? void 0 : _2.join('&')) !== null && _3 !== void 0 ? _3 : '';
849
857
  const result = yield (bffFetch === null || bffFetch === void 0 ? void 0 : bffFetch('/tag/list', { method: 'GET', query: { channel: decodeURIComponent(val) } }));
850
- setTagList((_y = (_x = result === null || result === void 0 ? void 0 : result.data) === null || _x === void 0 ? void 0 : _x.tags) !== null && _y !== void 0 ? _y : []);
858
+ setTagList((_5 = (_4 = result === null || result === void 0 ? void 0 : result.data) === null || _4 === void 0 ? void 0 : _4.tags) !== null && _5 !== void 0 ? _5 : []);
851
859
  }
852
860
  catch (e) {
853
861
  console.log('e', e);
@@ -909,8 +917,10 @@ const SxpDataSourceProvider = ({ render, dataSources, utmVal, enableReportEvent
909
917
  bffGetTagList();
910
918
  getRecommendVideos()
911
919
  .then((data) => {
912
- setRtcList(getFilterRecList(data));
913
- setCacheRtcList(getFilterRecList(data));
920
+ if (data) {
921
+ setRtcList(getFilterRecList(data));
922
+ setCacheRtcList(getFilterRecList(data));
923
+ }
914
924
  })
915
925
  .finally(() => {
916
926
  bffEventReport({
@@ -920,23 +930,30 @@ const SxpDataSourceProvider = ({ render, dataSources, utmVal, enableReportEvent
920
930
  }
921
931
  });
922
932
  setLoading(false);
923
- isInit.current = true;
924
933
  });
925
934
  }, [isShowConsent]);
926
935
  React.useEffect(() => {
927
- if (!isInit.current && !isEditor)
936
+ if (!isPreview)
928
937
  return;
929
938
  setLoading(true);
930
939
  bffGetTagList();
931
940
  getRecommendVideos()
932
941
  .then((data) => {
933
- setRtcList(getFilterRecList(data));
934
- setCacheRtcList(getFilterRecList(data));
942
+ if (data) {
943
+ setRtcList(getFilterRecList(data));
944
+ setCacheRtcList(getFilterRecList(data));
945
+ }
935
946
  })
936
947
  .finally(() => {
948
+ bffEventReport({
949
+ eventInfo: {
950
+ eventSubject: 'apiRequest',
951
+ eventDescription: 'api request succeed'
952
+ }
953
+ });
937
954
  setLoading(false);
938
955
  });
939
- }, [bffGetTagList, isEditor, getRecommendVideos]);
956
+ }, [getRecommendVideos, bffGetTagList]);
940
957
  const defaultLoadingImage = useIconLink('/pb_static/a65d23c5893c49d7aaaa81681d3179e2.gif', appDomain);
941
958
  return (React.createElement(SxpDataSourceContext.Provider, { value: {
942
959
  rtcList,
@@ -984,7 +1001,8 @@ const SxpDataSourceProvider = ({ render, dataSources, utmVal, enableReportEvent
984
1001
  setSelectTag,
985
1002
  globalConfig,
986
1003
  popupCurTimeRef,
987
- checkCommodityIndexRef
1004
+ checkCommodityIndexRef,
1005
+ isEditor
988
1006
  } }, isShowConsent ? (React.createElement(Consent$3, Object.assign({}, (_c = (_b = (_a = globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.consent) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.item) === null || _c === void 0 ? void 0 : _c.props))) : (render({
989
1007
  rtcList,
990
1008
  mutateLike: bffMutateLike,
@@ -1427,7 +1445,7 @@ var settingRender$a = [
1427
1445
  * @Author: binruan@chatlabs.com
1428
1446
  * @Date: 2024-03-12 10:59:06
1429
1447
  * @LastEditors: binruan@chatlabs.com
1430
- * @LastEditTime: 2024-08-14 17:02:53
1448
+ * @LastEditTime: 2024-08-22 17:43:04
1431
1449
  * @FilePath: \pb-sxp-ui\src\core\hooks\useEventReport.ts
1432
1450
  *
1433
1451
  */
@@ -8813,13 +8831,13 @@ SwiperSlide.displayName = 'SwiperSlide';
8813
8831
  * @Author: binruan@chatlabs.com
8814
8832
  * @Date: 2023-11-02 18:34:34
8815
8833
  * @LastEditors: binruan@chatlabs.com
8816
- * @LastEditTime: 2024-08-16 17:58:56
8834
+ * @LastEditTime: 2024-08-20 18:29:11
8817
8835
  * @FilePath: \pb-sxp-ui\src\core\components\SxpPageRender\Modal\index.tsx
8818
8836
  *
8819
8837
  */
8820
8838
  const closeIcon$1 = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAjhJREFUWEfFlztOw0AQhmeWiJ4CCmpQ5DiRQsIJyAWg5A0lR0AIChDiCJS8ER0cADgBeRSxt4CCDgkaKiq8i+zYeWx2413HEWmiJJv9v535Z2aN8M8vFPT9z3zETD0aAUChUJjwvPFHAJhBhB3Hqd6OAsK2yyucwykAvP38eJX398Z3AJDLlVYR8ToU9Rhj25TWr9KEsKy5dULIGQCMtfZly45TvwsAstm56UwG6wA4FUFwzrdctxZBDcWSy5XWEPG8I84/GcMipdWPtgcsaz5PCHtKG0IuTiqUvjT9U/WYMG2IOPE+AP+LtCB0xKUAAyA2Xbd2o2OG0NQXvTnvhL17D7EPtH9TRCIWwkRcGYGIQgYBABuqPuHXOQBc6pw80lBGwBQiiXhsBHQhkoprA6iM6acjhDQKu5YJZW6XeOI3XJdpvfsdTu52VfXEekD8owQiXGIubpSCbhDbLu8DwKEAd+A41SOdPpE4BS0viFOtvV2iKWqUgn5x/tmS70xR01GuDSCKc86/OCcLgTyyZ0ScDGNhFAktAJV4NFJ9YyaFiAWIE+9uVkkgBgLoig8DMWAa9ro9ynkUdlW5maZDCmB6clmz0k1HH4Cs1Ezbq2p2yEpUuBOKTSZZex00RUWIrltxuuK6EOGDSbGIOPZicpMx6fny650377qNRgBgWeVFQuA+6UjVgREhGIMlSqsPUQqIbZdOOIdZQmCv2axRnU1N1+TzJYsxOEaEV8ep7frPZ7Gd0FTEdP0ft0/kMNdg0eoAAAAASUVORK5CYII=';
8821
8839
  const Modal = ({ visible, onClose, children, modalStyle, padding, popup, schema, fullHeight = window.innerHeight, isFullScreen = false }) => {
8822
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w;
8840
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x;
8823
8841
  const touchRef = React.useRef(null);
8824
8842
  const fTouchRef = React.useRef(null);
8825
8843
  const touchMoveRef = React.useRef(null);
@@ -8944,8 +8962,8 @@ const Modal = ({ visible, onClose, children, modalStyle, padding, popup, schema,
8944
8962
  React.createElement("div", { onClick: onClose, className: 'modal-icon-wrapper' },
8945
8963
  React.createElement("img", { src: (_t = globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.popupCloseIcon) !== null && _t !== void 0 ? _t : closeIcon$1, alt: 'close', className: 'modal-icon' })),
8946
8964
  React.createElement("div", { ref: ref, style: {
8947
- height: (isScrollFullScreen ? fullHeight : MODAL_DEF_CON_H) -
8948
- ((_w = (_v = (_u = getPopupById === null || getPopupById === void 0 ? void 0 : getPopupById.item) === null || _u === void 0 ? void 0 : _u.props) === null || _v === void 0 ? void 0 : _v.popupBg) === null || _w === void 0 ? void 0 : _w.bottomMargin),
8965
+ height: (_x = (isScrollFullScreen ? fullHeight : MODAL_DEF_CON_H) -
8966
+ ((_w = (_v = (_u = getPopupById === null || getPopupById === void 0 ? void 0 : getPopupById.item) === null || _u === void 0 ? void 0 : _u.props) === null || _v === void 0 ? void 0 : _v.popupBg) === null || _w === void 0 ? void 0 : _w.bottomMargin)) !== null && _x !== void 0 ? _x : 0,
8949
8967
  overflow: (isScrollFullScreen && modalTrans <= 0) || !isScrollFullScreen ? 'auto' : 'hidden'
8950
8968
  } }, children)))))), modalEleRef.current);
8951
8969
  };
@@ -9113,8 +9131,8 @@ const CommodityGroup = ({ products, data, defImg, style, onCLick, popupDetailDat
9113
9131
  var CommodityGroup$1 = React.memo(CommodityGroup);
9114
9132
 
9115
9133
  const CommodityDetail$1 = (_a) => {
9116
- var _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2, _3, _4, _5;
9117
- var { content, style, bgImg, onClick, schema, isDefault, bottom_image, tipText, isPost, viewTime, rec, swiper, commodityStyles, buttonStyle, index, commodityGroup, popupBg, iframeIcon, commodityImgRatio } = _a, props = __rest(_a, ["content", "style", "bgImg", "onClick", "schema", "isDefault", "bottom_image", "tipText", "isPost", "viewTime", "rec", "swiper", "commodityStyles", "buttonStyle", "index", "commodityGroup", "popupBg", "iframeIcon", "commodityImgRatio"]);
9134
+ var _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2;
9135
+ var { content, style, bgImg, onClick, schema, isDefault, bottom_image, tipText, isPost, viewTime, rec, swiper, commodityStyles, buttonStyle, index, commodityGroup, popupBg, iframeIcon, commodityImgRatio, isTel } = _a, props = __rest(_a, ["content", "style", "bgImg", "onClick", "schema", "isDefault", "bottom_image", "tipText", "isPost", "viewTime", "rec", "swiper", "commodityStyles", "buttonStyle", "index", "commodityGroup", "popupBg", "iframeIcon", "commodityImgRatio", "isTel"]);
9118
9136
  const { sxpParameter, popupDetailData, isPreview, bffFbReport, popupCurTimeRef, checkCommodityIndexRef } = useSxpDataSource();
9119
9137
  const { jumpToWeb, productView } = useEventReport();
9120
9138
  const curTimeRef = React.useRef(null);
@@ -9234,18 +9252,18 @@ const CommodityDetail$1 = (_a) => {
9234
9252
  };
9235
9253
  return dotsAlignClass === null || dotsAlignClass === void 0 ? void 0 : dotsAlignClass[swiper === null || swiper === void 0 ? void 0 : swiper.dotsAlign];
9236
9254
  }, [swiper === null || swiper === void 0 ? void 0 : swiper.dotsAlign]);
9237
- const iframeUrl = ((_x = (_w = data === null || data === void 0 ? void 0 : data.video) === null || _w === void 0 ? void 0 : _w.bindProduct) === null || _x === void 0 ? void 0 : _x.remark) || ((_0 = (_z = (_y = data === null || data === void 0 ? void 0 : data.video) === null || _y === void 0 ? void 0 : _y.bindProducts) === null || _z === void 0 ? void 0 : _z[0]) === null || _0 === void 0 ? void 0 : _0.remark) || ((_1 = data === null || data === void 0 ? void 0 : data.product) === null || _1 === void 0 ? void 0 : _1.remark);
9255
+ const iframeUrl = isPost ? (_w = data === null || data === void 0 ? void 0 : data.product) === null || _w === void 0 ? void 0 : _w.remark : (_y = (_x = data === null || data === void 0 ? void 0 : data.video) === null || _x === void 0 ? void 0 : _x.bindProduct) === null || _y === void 0 ? void 0 : _y.remark;
9238
9256
  return (React.createElement(React.Fragment, null,
9239
9257
  React.createElement("div", Object.assign({ className: css.css(Object.assign({}, style)) }, props),
9240
9258
  React.createElement("div", { style: { position: 'relative' } },
9241
- product && ((_2 = product === null || product === void 0 ? void 0 : product.homePage) === null || _2 === void 0 ? void 0 : _2.length) > 0 && (React.createElement(Swiper, { height: height, modules: [Pagination, Autoplay], pagination: {
9259
+ product && ((_z = product === null || product === void 0 ? void 0 : product.homePage) === null || _z === void 0 ? void 0 : _z.length) > 0 && (React.createElement(Swiper, { height: height, modules: [Pagination, Autoplay], pagination: {
9242
9260
  clickable: true,
9243
9261
  bulletActiveClass: 'swipe-item-active-bullet',
9244
9262
  clickableClass: getDotsAlign
9245
9263
  }, loop: true, autoplay: {
9246
9264
  delay: (swiper === null || swiper === void 0 ? void 0 : swiper.delay) * 1000
9247
9265
  }, ref: ref },
9248
- React.createElement(React.Fragment, null, (_3 = product === null || product === void 0 ? void 0 : product.homePage) === null || _3 === void 0 ? void 0 : _3.map((src) => {
9266
+ React.createElement(React.Fragment, null, (_0 = product === null || product === void 0 ? void 0 : product.homePage) === null || _0 === void 0 ? void 0 : _0.map((src) => {
9249
9267
  var _a;
9250
9268
  return (React.createElement(SwiperSlide, { key: src },
9251
9269
  React.createElement("div", { style: {
@@ -9261,7 +9279,7 @@ const CommodityDetail$1 = (_a) => {
9261
9279
  objectPosition: `50% ${(swiper === null || swiper === void 0 ? void 0 : swiper.translateY) ? (swiper === null || swiper === void 0 ? void 0 : swiper.translateY) + 50 : 50}%`
9262
9280
  }, src: (_a = src !== null && src !== void 0 ? src : sxpParameter === null || sxpParameter === void 0 ? void 0 : sxpParameter.bottom_image) !== null && _a !== void 0 ? _a : bottom_image }))));
9263
9281
  })))),
9264
- !((_4 = product === null || product === void 0 ? void 0 : product.homePage) === null || _4 === void 0 ? void 0 : _4.length) && (React.createElement("div", { className: css.css({
9282
+ !((_1 = product === null || product === void 0 ? void 0 : product.homePage) === null || _1 === void 0 ? void 0 : _1.length) && (React.createElement("div", { className: css.css({
9265
9283
  height,
9266
9284
  width
9267
9285
  }) },
@@ -9269,21 +9287,19 @@ const CommodityDetail$1 = (_a) => {
9269
9287
  objectFit: 'cover',
9270
9288
  width: '100%',
9271
9289
  height: '100%'
9272
- }), src: (_5 = sxpParameter === null || sxpParameter === void 0 ? void 0 : sxpParameter.bottom_image) !== null && _5 !== void 0 ? _5 : bottom_image, alt: 'pdp image' }))),
9273
- (iframeUrl && iframeIcon) ||
9274
- (!product && iframeIcon && (React.createElement("div", { style: {
9275
- padding: '5px 10px',
9276
- display: 'flex',
9277
- alignItems: 'center',
9278
- position: 'absolute',
9279
- right: '10px',
9280
- bottom: '10px',
9281
- zIndex: 1,
9282
- background: '#fff',
9283
- borderRadius: '3px'
9284
- }, onClick: () => setShow3DModal(true) },
9285
- React.createElement("img", { src: iframeIcon, alt: '3d', width: '20px', height: '20px', style: { marginRight: '5px' } }),
9286
- React.createElement("span", { style: { fontSize: '12px' } }, "Try in 3D"))))),
9290
+ }), src: (_2 = sxpParameter === null || sxpParameter === void 0 ? void 0 : sxpParameter.bottom_image) !== null && _2 !== void 0 ? _2 : bottom_image, alt: 'pdp image' }))),
9291
+ (iframeUrl || !product) && iframeIcon && (React.createElement("div", { style: {
9292
+ padding: '5px 10px',
9293
+ display: 'flex',
9294
+ alignItems: 'center',
9295
+ position: 'absolute',
9296
+ right: '10px',
9297
+ bottom: '10px',
9298
+ zIndex: 1,
9299
+ background: '#fff',
9300
+ borderRadius: '3px'
9301
+ }, onClick: () => setShow3DModal(true) },
9302
+ React.createElement("img", { src: iframeIcon, alt: '3d', width: '20px', height: '20px', style: { marginRight: '5px' } })))),
9287
9303
  renderCommodityGroup(),
9288
9304
  React.createElement("div", { className: 'pb-commondity-content' }, renderContent({ isPost }))),
9289
9305
  renderBtn(),
@@ -9291,12 +9307,13 @@ const CommodityDetail$1 = (_a) => {
9291
9307
  React.createElement("div", { style: { paddingBottom: '80px' } }, renderContent({ isPost: false })),
9292
9308
  renderBtn()),
9293
9309
  React.createElement(Modal$1, { visible: show3DModal, padding: 0, isFullScreen: true, onClose: () => setShow3DModal(false) },
9294
- React.createElement("iframe", { src: iframeUrl, style: {
9295
- width: '100%',
9296
- height: 'calc(100% - 50px)',
9297
- marginTop: '40px',
9298
- border: 'none'
9299
- } }))));
9310
+ React.createElement("div", { style: { height: '100vh' } },
9311
+ React.createElement("iframe", { src: iframeUrl, style: {
9312
+ width: '100%',
9313
+ height: isTel ? `${664 - 40}px` : `calc(100vh - 40px)`,
9314
+ marginTop: '40px',
9315
+ border: 'none'
9316
+ } })))));
9300
9317
  };
9301
9318
  var CommodityDetailComponent = React.memo(CommodityDetail$1);
9302
9319
 
@@ -9949,8 +9966,8 @@ var settingRender$7 = [
9949
9966
  ];
9950
9967
 
9951
9968
  const CommodityDetailDiroNew$1 = (_a) => {
9952
- var _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9;
9953
- var { style, isDefault, rec, viewTime, isPost, bottom_image, tipText, swiper, commodityStyles, buttonStyle, index, commodityGroup, popupBg, iframeIcon, commodityImgRatio } = _a, props = __rest(_a, ["style", "isDefault", "rec", "viewTime", "isPost", "bottom_image", "tipText", "swiper", "commodityStyles", "buttonStyle", "index", "commodityGroup", "popupBg", "iframeIcon", "commodityImgRatio"]);
9969
+ var _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2, _3, _4, _5, _6;
9970
+ var { style, isDefault, rec, viewTime, isPost, bottom_image, tipText, swiper, commodityStyles, buttonStyle, index, commodityGroup, popupBg, iframeIcon, commodityImgRatio, isTel } = _a, props = __rest(_a, ["style", "isDefault", "rec", "viewTime", "isPost", "bottom_image", "tipText", "swiper", "commodityStyles", "buttonStyle", "index", "commodityGroup", "popupBg", "iframeIcon", "commodityImgRatio", "isTel"]);
9954
9971
  React.useState(true);
9955
9972
  const { sxpParameter, popupCurTimeRef, popupDetailData, isPreview, bffFbReport, checkCommodityIndexRef } = useSxpDataSource();
9956
9973
  const { jumpToWeb, productView } = useEventReport();
@@ -10101,17 +10118,17 @@ Made in Italy` })));
10101
10118
  };
10102
10119
  return dotsAlignClass === null || dotsAlignClass === void 0 ? void 0 : dotsAlignClass[swiper === null || swiper === void 0 ? void 0 : swiper.dotsAlign];
10103
10120
  }, [swiper === null || swiper === void 0 ? void 0 : swiper.dotsAlign]);
10104
- const iframeUrl = ((_x = (_w = data === null || data === void 0 ? void 0 : data.video) === null || _w === void 0 ? void 0 : _w.bindProduct) === null || _x === void 0 ? void 0 : _x.remark) || ((_0 = (_z = (_y = data === null || data === void 0 ? void 0 : data.video) === null || _y === void 0 ? void 0 : _y.bindProducts) === null || _z === void 0 ? void 0 : _z[0]) === null || _0 === void 0 ? void 0 : _0.remark) || ((_1 = data === null || data === void 0 ? void 0 : data.product) === null || _1 === void 0 ? void 0 : _1.remark);
10121
+ const iframeUrl = isPost ? (_w = data === null || data === void 0 ? void 0 : data.product) === null || _w === void 0 ? void 0 : _w.remark : (_y = (_x = data === null || data === void 0 ? void 0 : data.video) === null || _x === void 0 ? void 0 : _x.bindProduct) === null || _y === void 0 ? void 0 : _y.remark;
10105
10122
  return (React.createElement("div", { className: 'pb-commondityDiroNew' },
10106
10123
  React.createElement("div", Object.assign({ className: css.css(Object.assign(Object.assign({}, style), { transform: 'translate3d(0px, 0px, 0px)' })) }, props),
10107
10124
  React.createElement("div", { style: { position: 'relative' } },
10108
- product && ((_2 = product === null || product === void 0 ? void 0 : product.homePage) === null || _2 === void 0 ? void 0 : _2.length) > 0 && (React.createElement(Swiper, { height: height, modules: [Pagination, Autoplay], pagination: {
10125
+ product && ((_z = product === null || product === void 0 ? void 0 : product.homePage) === null || _z === void 0 ? void 0 : _z.length) > 0 && (React.createElement(Swiper, { height: height, modules: [Pagination, Autoplay], pagination: {
10109
10126
  clickable: true,
10110
10127
  bulletActiveClass: 'commondityDiroNew-swipe-item-active-bullet',
10111
10128
  clickableClass: getDotsAlign
10112
10129
  }, loop: true, autoplay: {
10113
10130
  delay: (swiper === null || swiper === void 0 ? void 0 : swiper.delay) * 1000
10114
- }, ref: ref }, (_3 = product === null || product === void 0 ? void 0 : product.homePage) === null || _3 === void 0 ? void 0 : _3.map((src) => {
10131
+ }, ref: ref }, (_0 = product === null || product === void 0 ? void 0 : product.homePage) === null || _0 === void 0 ? void 0 : _0.map((src) => {
10115
10132
  var _a;
10116
10133
  return (React.createElement(SwiperSlide, { key: src },
10117
10134
  React.createElement("div", { style: {
@@ -10127,7 +10144,7 @@ Made in Italy` })));
10127
10144
  objectPosition: `50% ${(swiper === null || swiper === void 0 ? void 0 : swiper.translateY) ? (swiper === null || swiper === void 0 ? void 0 : swiper.translateY) + 50 : 50}%`
10128
10145
  }, src: (_a = src !== null && src !== void 0 ? src : sxpParameter === null || sxpParameter === void 0 ? void 0 : sxpParameter.bottom_image) !== null && _a !== void 0 ? _a : bottom_image }))));
10129
10146
  }))),
10130
- !((_4 = product === null || product === void 0 ? void 0 : product.homePage) === null || _4 === void 0 ? void 0 : _4.length) && (React.createElement("div", { className: css.css({
10147
+ !((_1 = product === null || product === void 0 ? void 0 : product.homePage) === null || _1 === void 0 ? void 0 : _1.length) && (React.createElement("div", { className: css.css({
10131
10148
  height,
10132
10149
  width
10133
10150
  }) },
@@ -10135,27 +10152,25 @@ Made in Italy` })));
10135
10152
  objectFit: 'cover',
10136
10153
  width: '100%',
10137
10154
  height: '100%'
10138
- }), src: (_5 = sxpParameter === null || sxpParameter === void 0 ? void 0 : sxpParameter.bottom_image) !== null && _5 !== void 0 ? _5 : bottom_image, alt: 'pdp image' }))),
10139
- (iframeUrl && iframeIcon) ||
10140
- (!product && iframeIcon && (React.createElement("div", { style: {
10141
- padding: '5px 10px',
10142
- display: 'flex',
10143
- alignItems: 'center',
10144
- position: 'absolute',
10145
- right: '10px',
10146
- bottom: '10px',
10147
- zIndex: 1,
10148
- background: '#fff',
10149
- borderRadius: '3px'
10150
- }, onClick: () => setShow3DModal(true) },
10151
- React.createElement("img", { src: iframeIcon, alt: '3d', width: '20px', height: '20px', style: { marginRight: '5px' } }),
10152
- React.createElement("span", { style: { fontSize: '12px' } }, "Try in 3D"))))),
10155
+ }), src: (_2 = sxpParameter === null || sxpParameter === void 0 ? void 0 : sxpParameter.bottom_image) !== null && _2 !== void 0 ? _2 : bottom_image, alt: 'pdp image' }))),
10156
+ (iframeUrl || !product) && iframeIcon && (React.createElement("div", { style: {
10157
+ padding: '5px 10px',
10158
+ display: 'flex',
10159
+ alignItems: 'center',
10160
+ position: 'absolute',
10161
+ right: '10px',
10162
+ bottom: '10px',
10163
+ zIndex: 1,
10164
+ background: '#fff',
10165
+ borderRadius: '3px'
10166
+ }, onClick: () => setShow3DModal(true) },
10167
+ React.createElement("img", { src: iframeIcon, alt: '3d', width: '20px', height: '20px', style: { marginRight: '5px' } })))),
10153
10168
  renderCommodityGroup(),
10154
10169
  React.createElement("div", { className: 'pb-commondityDiroNew-content' },
10155
10170
  React.createElement("div", { className: 'pb-commondityDiroNew-content-top' },
10156
10171
  React.createElement("div", { className: 'pb-commondityDiroNew-content-top-left' },
10157
10172
  React.createElement("div", { className: 'pb-commondityDiroNew-content-top-left-title', style: getStyle(commodityStyles === null || commodityStyles === void 0 ? void 0 : commodityStyles.title), dangerouslySetInnerHTML: {
10158
- __html: setFontForText((_6 = product === null || product === void 0 ? void 0 : product.title) !== null && _6 !== void 0 ? _6 : 'Large Dior Toujours BagLarge', commodityStyles === null || commodityStyles === void 0 ? void 0 : commodityStyles.title)
10173
+ __html: setFontForText((_3 = product === null || product === void 0 ? void 0 : product.title) !== null && _3 !== void 0 ? _3 : 'Large Dior Toujours BagLarge', commodityStyles === null || commodityStyles === void 0 ? void 0 : commodityStyles.title)
10159
10174
  } }),
10160
10175
  React.createElement("div", { className: 'pb-commondityDiroNew-content-collection', hidden: !!product && (!(product === null || product === void 0 ? void 0 : product.collection) || (product === null || product === void 0 ? void 0 : product.collection) === ''), style: getStyle(commodityStyles === null || commodityStyles === void 0 ? void 0 : commodityStyles.collection), dangerouslySetInnerHTML: {
10161
10176
  __html: setFontForText((product === null || product === void 0 ? void 0 : product.collection) || 'Black Macrocannage CalfskinLarge', commodityStyles === null || commodityStyles === void 0 ? void 0 : commodityStyles.collection)
@@ -10165,21 +10180,22 @@ Made in Italy` })));
10165
10180
  __html: setFontForText(priceText, commodityStyles === null || commodityStyles === void 0 ? void 0 : commodityStyles.price)
10166
10181
  } }),
10167
10182
  React.createElement("div", { className: 'pb-commondityDiroNew-content-top-right-price', hidden: !!product && !(product === null || product === void 0 ? void 0 : product.taxInfo), style: getStyle(commodityStyles === null || commodityStyles === void 0 ? void 0 : commodityStyles.taxInfo), dangerouslySetInnerHTML: {
10168
- __html: setFontForText((_7 = product === null || product === void 0 ? void 0 : product.taxInfo) !== null && _7 !== void 0 ? _7 : '税费', commodityStyles === null || commodityStyles === void 0 ? void 0 : commodityStyles.taxInfo)
10183
+ __html: setFontForText((_4 = product === null || product === void 0 ? void 0 : product.taxInfo) !== null && _4 !== void 0 ? _4 : '税费', commodityStyles === null || commodityStyles === void 0 ? void 0 : commodityStyles.taxInfo)
10169
10184
  } }))),
10170
- (!product || (product === null || product === void 0 ? void 0 : product.link)) && (React.createElement("button", { "aria-label": (_8 = cta === null || cta === void 0 ? void 0 : cta.enTitle) !== null && _8 !== void 0 ? _8 : 'Shop now', onClick: handleLink, className: 'pb-commondityDiroNew-btn', style: buttonStyle },
10185
+ (!product || (product === null || product === void 0 ? void 0 : product.link)) && (React.createElement("button", { "aria-label": (_5 = cta === null || cta === void 0 ? void 0 : cta.enTitle) !== null && _5 !== void 0 ? _5 : 'Shop now', onClick: handleLink, className: 'pb-commondityDiroNew-btn', style: buttonStyle },
10171
10186
  React.createElement("span", { dangerouslySetInnerHTML: {
10172
- __html: setFontForText((_9 = cta === null || cta === void 0 ? void 0 : cta.enTitle) !== null && _9 !== void 0 ? _9 : 'Shop now', buttonStyle)
10187
+ __html: setFontForText((_6 = cta === null || cta === void 0 ? void 0 : cta.enTitle) !== null && _6 !== void 0 ? _6 : 'Shop now', buttonStyle)
10173
10188
  } }))),
10174
10189
  productInfoText({ isPost }))),
10175
10190
  React.createElement(Modal$1, { visible: showModal, onClose: () => setShowModal(false) }, productInfoText({ isPost: false })),
10176
10191
  React.createElement(Modal$1, { visible: show3DModal, padding: 0, isFullScreen: true, onClose: () => setShow3DModal(false) },
10177
- React.createElement("iframe", { src: iframeUrl, style: {
10178
- width: '100%',
10179
- height: 'calc(100% - 50px)',
10180
- marginTop: '40px',
10181
- border: 'none'
10182
- } }))));
10192
+ React.createElement("div", { style: { height: '100vh' } },
10193
+ React.createElement("iframe", { src: iframeUrl, style: {
10194
+ width: '100%',
10195
+ height: isTel ? `${664 - 40}px` : `calc(100vh - 40px)`,
10196
+ marginTop: '40px',
10197
+ border: 'none'
10198
+ } })))));
10183
10199
  };
10184
10200
  var CommodityDetailDiroNewComponent = React.memo(CommodityDetailDiroNew$1);
10185
10201
 
@@ -10428,6 +10444,12 @@ var settingRender$6 = [
10428
10444
  {
10429
10445
  label: '间距',
10430
10446
  type: 'TextSpace'
10447
+ },
10448
+ {
10449
+ label: '价格千分符展示',
10450
+ type: 'Switch',
10451
+ name: ['enableFormattedPrice'],
10452
+ initialValue: true
10431
10453
  }
10432
10454
  ]
10433
10455
  }
@@ -10580,7 +10602,7 @@ const Img = ({ src, rec, item, index, style, translateY, imgStyle, enableEventRe
10580
10602
  var Img$1 = React.memo(Img);
10581
10603
 
10582
10604
  const CommodityList$1 = (_a) => {
10583
- var _b, _c;
10605
+ var _b, _c, _d;
10584
10606
  var { style, isDefault, rec, viewTime, isPost, bottom_image, commodityStyles, buttonStyle, translateY = 0, commodityPicture, isExternalLink, onClick } = _a, props = __rest(_a, ["style", "isDefault", "rec", "viewTime", "isPost", "bottom_image", "commodityStyles", "buttonStyle", "translateY", "commodityPicture", "isExternalLink", "onClick"]);
10585
10607
  const { sxpParameter, popupDetailData, setPopupDetailData, ctaEvent } = useSxpDataSource();
10586
10608
  const { jumpToWeb } = useEventReport();
@@ -10589,16 +10611,20 @@ const CommodityList$1 = (_a) => {
10589
10611
  const product = (_c = (_b = recData === null || recData === void 0 ? void 0 : recData.video) === null || _b === void 0 ? void 0 : _b.bindProducts) !== null && _c !== void 0 ? _c : [null, null, null, null];
10590
10612
  const index = popupDetailData === null || popupDetailData === void 0 ? void 0 : popupDetailData.index;
10591
10613
  const priceText = React.useCallback((product) => {
10592
- var _a, _b, _c, _d, _e;
10614
+ var _a, _b, _c, _d, _e, _f, _g;
10615
+ const isToLocStr = ((_a = commodityStyles === null || commodityStyles === void 0 ? void 0 : commodityStyles.price) === null || _a === void 0 ? void 0 : _a.enableFormattedPrice) === undefined || ((_b = commodityStyles === null || commodityStyles === void 0 ? void 0 : commodityStyles.price) === null || _b === void 0 ? void 0 : _b.enableFormattedPrice);
10593
10616
  if ((product === null || product === void 0 ? void 0 : product.currency) && (product === null || product === void 0 ? void 0 : product.price)) {
10594
- return `${(_c = (_b = (_a = product === null || product === void 0 ? void 0 : product.currency) === null || _a === void 0 ? void 0 : _a.split('-')[1]) === null || _b === void 0 ? void 0 : _b.toUpperCase()) !== null && _c !== void 0 ? _c : ''}${(_e = (_d = product === null || product === void 0 ? void 0 : product.price) === null || _d === void 0 ? void 0 : _d.toLocaleString('zh', {
10595
- minimumFractionDigits: 0
10596
- })) !== null && _e !== void 0 ? _e : ''}`;
10617
+ return `${(_e = (_d = (_c = product === null || product === void 0 ? void 0 : product.currency) === null || _c === void 0 ? void 0 : _c.split('-')[1]) === null || _d === void 0 ? void 0 : _d.toUpperCase()) !== null && _e !== void 0 ? _e : ''}${isToLocStr
10618
+ ? (_g = (_f = product === null || product === void 0 ? void 0 : product.price) === null || _f === void 0 ? void 0 : _f.toLocaleString('zh', {
10619
+ minimumFractionDigits: 0
10620
+ })) !== null && _g !== void 0 ? _g : ''
10621
+ : product === null || product === void 0 ? void 0 : product.price}`;
10597
10622
  }
10598
10623
  else {
10599
- return '$7,000';
10624
+ const p = 7000;
10625
+ return `$${isToLocStr ? p.toLocaleString() : p}`;
10600
10626
  }
10601
- }, []);
10627
+ }, [(_d = commodityStyles === null || commodityStyles === void 0 ? void 0 : commodityStyles.price) === null || _d === void 0 ? void 0 : _d.enableFormattedPrice]);
10602
10628
  const handleClick = lodash.throttle((item, multiCheckIndex) => {
10603
10629
  ctaEvent === null || ctaEvent === void 0 ? void 0 : ctaEvent({
10604
10630
  eventSubject: 'clickCta',
@@ -10759,15 +10785,16 @@ var settingRender$5 = [
10759
10785
 
10760
10786
  const Iframe$1 = (_a) => {
10761
10787
  var _b, _c;
10762
- var { content, btnText, style, icon, isPopup, isExternalLink, onClose, onClick, submitButtonStyle, contentStyle } = _a, props = __rest(_a, ["content", "btnText", "style", "icon", "isPopup", "isExternalLink", "onClose", "onClick", "submitButtonStyle", "contentStyle"]);
10788
+ var { content, btnText, style, icon, isPopup, isExternalLink, onClose, onClick, submitButtonStyle, contentStyle, isTel } = _a, props = __rest(_a, ["content", "btnText", "style", "icon", "isPopup", "isExternalLink", "onClose", "onClick", "submitButtonStyle", "contentStyle", "isTel"]);
10763
10789
  const { popupDetailData } = useSxpDataSource();
10764
10790
  const iframeUrl = (_c = (_b = popupDetailData === null || popupDetailData === void 0 ? void 0 : popupDetailData.video) === null || _b === void 0 ? void 0 : _b.bindCta) === null || _c === void 0 ? void 0 : _c.remark;
10765
- return (React.createElement("div", Object.assign({ className: `${css.css(Object.assign({}, style))}` }, props), iframeUrl && (React.createElement("iframe", { src: iframeUrl, style: {
10766
- width: '100%',
10767
- height: 'calc(100% - 50px)',
10768
- marginTop: '40px',
10769
- border: 'none'
10770
- } }))));
10791
+ return (React.createElement("div", Object.assign({ className: `${css.css(Object.assign(Object.assign({}, style), { height: isTel ? 664 : window === null || window === void 0 ? void 0 : window.innerHeight }))}` }, props),
10792
+ React.createElement("iframe", { src: iframeUrl, style: {
10793
+ width: '100%',
10794
+ height: 'calc(100% - 50px)',
10795
+ marginTop: '40px',
10796
+ border: 'none'
10797
+ } })));
10771
10798
  };
10772
10799
  var IframeComponent = React.memo(Iframe$1);
10773
10800
 
@@ -12012,7 +12039,7 @@ const MultiCommodityDiroNew = createMaterial(MultiCommodityDiroNewComponent, {
12012
12039
  * @Author: binruan@chatlabs.com
12013
12040
  * @Date: 2024-04-07 14:07:12
12014
12041
  * @LastEditors: binruan@chatlabs.com
12015
- * @LastEditTime: 2024-08-06 14:00:36
12042
+ * @LastEditTime: 2024-08-22 10:14:36
12016
12043
  * @FilePath: \pb-sxp-ui\src\materials\sxp\HashTag\settingRender.tsx
12017
12044
  *
12018
12045
  */
@@ -12121,6 +12148,12 @@ var settingRender$3 = [
12121
12148
  {
12122
12149
  label: '间距',
12123
12150
  type: 'TextSpace'
12151
+ },
12152
+ {
12153
+ label: '价格千分符展示',
12154
+ type: 'Switch',
12155
+ name: ['enableFormattedPrice'],
12156
+ initialValue: true
12124
12157
  }
12125
12158
  ]
12126
12159
  }
@@ -13541,6 +13574,7 @@ var previewData = {
13541
13574
  };
13542
13575
 
13543
13576
  const WaterfallFlowItem$1 = (props) => {
13577
+ var _a;
13544
13578
  const { rec, style = {}, sizeChange = () => { }, unitWidth, index, showBorder, list, reportTagsView, textStyles, space } = props;
13545
13579
  const { swiperRef, setRtcList, setOpenHashtag, sxpParameter } = useSxpDataSource();
13546
13580
  const [showVideo, setShowVideo] = React.useState(false);
@@ -13594,16 +13628,19 @@ const WaterfallFlowItem$1 = (props) => {
13594
13628
  }
13595
13629
  }, [top, showBorder]);
13596
13630
  const priceText = React.useMemo(() => {
13597
- var _a, _b, _c, _d, _e, _f, _g, _h, _j;
13598
- if (((_a = rec === null || rec === void 0 ? void 0 : rec.product) === null || _a === void 0 ? void 0 : _a.currency) && ((_b = rec === null || rec === void 0 ? void 0 : rec.product) === null || _b === void 0 ? void 0 : _b.price)) {
13599
- return `${(_f = (_e = (_d = (_c = rec === null || rec === void 0 ? void 0 : rec.product) === null || _c === void 0 ? void 0 : _c.currency) === null || _d === void 0 ? void 0 : _d.split('-')[1]) === null || _e === void 0 ? void 0 : _e.toUpperCase()) !== null && _f !== void 0 ? _f : ''}${(_j = (_h = (_g = rec === null || rec === void 0 ? void 0 : rec.product) === null || _g === void 0 ? void 0 : _g.price) === null || _h === void 0 ? void 0 : _h.toLocaleString('zh', {
13600
- minimumFractionDigits: 0
13601
- })) !== null && _j !== void 0 ? _j : ''}`;
13631
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
13632
+ const isToLocStr = ((_a = textStyles === null || textStyles === void 0 ? void 0 : textStyles.price) === null || _a === void 0 ? void 0 : _a.enableFormattedPrice) === undefined || ((_b = textStyles === null || textStyles === void 0 ? void 0 : textStyles.price) === null || _b === void 0 ? void 0 : _b.enableFormattedPrice);
13633
+ if (((_c = rec === null || rec === void 0 ? void 0 : rec.product) === null || _c === void 0 ? void 0 : _c.currency) && ((_d = rec === null || rec === void 0 ? void 0 : rec.product) === null || _d === void 0 ? void 0 : _d.price)) {
13634
+ return `${(_h = (_g = (_f = (_e = rec === null || rec === void 0 ? void 0 : rec.product) === null || _e === void 0 ? void 0 : _e.currency) === null || _f === void 0 ? void 0 : _f.split('-')[1]) === null || _g === void 0 ? void 0 : _g.toUpperCase()) !== null && _h !== void 0 ? _h : ''}${isToLocStr
13635
+ ? (_l = (_k = (_j = rec === null || rec === void 0 ? void 0 : rec.product) === null || _j === void 0 ? void 0 : _j.price) === null || _k === void 0 ? void 0 : _k.toLocaleString('zh', {
13636
+ minimumFractionDigits: 0
13637
+ })) !== null && _l !== void 0 ? _l : ''
13638
+ : (_m = rec === null || rec === void 0 ? void 0 : rec.product) === null || _m === void 0 ? void 0 : _m.price}`;
13602
13639
  }
13603
13640
  else {
13604
13641
  return null;
13605
13642
  }
13606
- }, [rec]);
13643
+ }, [rec, (_a = textStyles === null || textStyles === void 0 ? void 0 : textStyles.price) === null || _a === void 0 ? void 0 : _a.enableFormattedPrice]);
13607
13644
  React.useEffect(() => {
13608
13645
  if (imgDom.current === null || src === '') {
13609
13646
  return;
@@ -13767,10 +13804,14 @@ function WaterfallList$1(_a) {
13767
13804
  }, [unitWidth, rowsNum, list]); /* 增加getStyleList依赖项会导致在admin预览编辑时无限刷新 */
13768
13805
  /** 初始化请求数据 */
13769
13806
  React.useEffect(() => {
13770
- var _a, _b, _c, _d, _e, _f;
13807
+ var _a, _b;
13771
13808
  setIsLoadingData(true);
13772
13809
  waterFallData &&
13773
- (getRecommendVideos === null || getRecommendVideos === void 0 ? void 0 : getRecommendVideos(Object.assign(Object.assign({ hashTag: waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.hashTag, defaultSize: hashTagSize, maxSize: hashTagSize }, (((_b = (_a = waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.rec) === null || _a === void 0 ? void 0 : _a.product) === null || _b === void 0 ? void 0 : _b.itemId) && { productFilter: (_d = (_c = waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.rec) === null || _c === void 0 ? void 0 : _c.product) === null || _d === void 0 ? void 0 : _d.itemId })), ((waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.itemId) && { contentFilter: waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.itemId }))).then((res) => {
13810
+ (getRecommendVideos === null || getRecommendVideos === void 0 ? void 0 : getRecommendVideos({
13811
+ hashTag: waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.hashTag,
13812
+ defaultSize: hashTagSize,
13813
+ maxSize: hashTagSize
13814
+ }).then((res) => {
13774
13815
  var _a, _b;
13775
13816
  setData(res);
13776
13817
  setList((_b = (_a = res === null || res === void 0 ? void 0 : res.recList) === null || _a === void 0 ? void 0 : _a.filter((item) => (item === null || item === void 0 ? void 0 : item.video) !== null || (item === null || item === void 0 ? void 0 : item.product) !== null)) !== null && _b !== void 0 ? _b : []);
@@ -13779,7 +13820,7 @@ function WaterfallList$1(_a) {
13779
13820
  if (isOpenHashTag) {
13780
13821
  const res = previewData;
13781
13822
  setData(res);
13782
- setList((_f = (_e = res === null || res === void 0 ? void 0 : res.recList) === null || _e === void 0 ? void 0 : _e.filter((item) => (item === null || item === void 0 ? void 0 : item.video) !== null || (item === null || item === void 0 ? void 0 : item.product) !== null)) !== null && _f !== void 0 ? _f : []);
13823
+ setList((_b = (_a = res === null || res === void 0 ? void 0 : res.recList) === null || _a === void 0 ? void 0 : _a.filter((item) => (item === null || item === void 0 ? void 0 : item.video) !== null || (item === null || item === void 0 ? void 0 : item.product) !== null)) !== null && _b !== void 0 ? _b : []);
13783
13824
  setIsLoadingData(false);
13784
13825
  }
13785
13826
  }, [waterFallData, getRecommendVideos, hashTagSize, isOpenHashTag]);
@@ -13805,10 +13846,11 @@ function WaterfallList$1(_a) {
13805
13846
  };
13806
13847
  }, [onResize]);
13807
13848
  React.useCallback(() => {
13808
- var _a, _b, _c, _d;
13809
13849
  setIsLoadingData(true);
13810
13850
  waterFallData &&
13811
- (getRecommendVideos === null || getRecommendVideos === void 0 ? void 0 : getRecommendVideos(Object.assign(Object.assign({ hashTag: waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.hashTag }, (((_b = (_a = waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.rec) === null || _a === void 0 ? void 0 : _a.product) === null || _b === void 0 ? void 0 : _b.itemId) && { productFilter: (_d = (_c = waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.rec) === null || _c === void 0 ? void 0 : _c.product) === null || _d === void 0 ? void 0 : _d.itemId })), ((waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.itemId) && { contentFilter: waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.itemId }))).then((res) => {
13851
+ (getRecommendVideos === null || getRecommendVideos === void 0 ? void 0 : getRecommendVideos({
13852
+ hashTag: waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.hashTag
13853
+ }).then((res) => {
13812
13854
  var _a, _b;
13813
13855
  setList(list === null || list === void 0 ? void 0 : list.concat((_b = (_a = res === null || res === void 0 ? void 0 : res.recList) === null || _a === void 0 ? void 0 : _a.filter((item) => !(item === null || item === void 0 ? void 0 : item.video))) !== null && _b !== void 0 ? _b : []));
13814
13856
  setIsLoadingData(false);
@@ -13882,6 +13924,7 @@ function WaterfallList$1(_a) {
13882
13924
  var img$2 = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAAAXNSR0IArs4c6QAAAaZJREFUeF7t2jFKBEEQRuG3mSJeQTARURDMTL2EqXfwAnoKD6FHMDEzNVIw2tzQC2gFggyDrExX1V92T7wz9PumFnqbXdH5teq8nwEwJqBzgfEVKDYAW8Ae8NZq3ZUm4Aa4AnaBR+C8BUIVAIu/ngSfAs9LESoAWLgB/LzWwP7SeLtfHWAu3tZ9Adz/dwD3eOUJCIlXBQiLVwQIjVcDCI9XAkiJVwFIi1cASI3PBpjb3jbd5GyyUcraCUrEZ02ATHwGgFR8NIBcfCSAZHwUgGx8BIB0vDeAfLwnQIl4L4Ay8R4ApeJbA2wD78DOZA/e7ABzk739Xz/T8rfAIfA6WYCd3BqA7NUSwCKfgLNKCK0BjoC7rzP74yoIrQGsuxSCB0ApBC+AMgieACUQvAHkESIApBGiAGQRIgEkEaIB5BAyAKQQsgBkEDIBJBCyAdIRFABSEVQA0hCUAFIQ1ADCERQBQhFUAcIQlAFCENQBfkOwg9eXpeftFQDmEOzv8ifARy8A3wiXwAHwANwujbf7q0xAi9bZZwwAN9oiDx4TUORFuS2z+wn4BAiAaEHnKChjAAAAAElFTkSuQmCC";
13883
13925
 
13884
13926
  const WaterfallFlowItem = (props) => {
13927
+ var _a;
13885
13928
  const { rec, index, list, reportTagsView, textStyles, space } = props;
13886
13929
  const { swiperRef, setRtcList, setOpenHashtag, sxpParameter } = useSxpDataSource();
13887
13930
  const [showVideo, setShowVideo] = React.useState(false);
@@ -13910,16 +13953,19 @@ const WaterfallFlowItem = (props) => {
13910
13953
  return ((_a = rec === null || rec === void 0 ? void 0 : rec.product) === null || _a === void 0 ? void 0 : _a.title) || ((_b = rec === null || rec === void 0 ? void 0 : rec.video) === null || _b === void 0 ? void 0 : _b.title) || null;
13911
13954
  }, [rec]);
13912
13955
  const priceText = React.useMemo(() => {
13913
- var _a, _b, _c, _d, _e, _f, _g, _h, _j;
13914
- if (((_a = rec === null || rec === void 0 ? void 0 : rec.product) === null || _a === void 0 ? void 0 : _a.currency) && ((_b = rec === null || rec === void 0 ? void 0 : rec.product) === null || _b === void 0 ? void 0 : _b.price)) {
13915
- return `${(_f = (_e = (_d = (_c = rec === null || rec === void 0 ? void 0 : rec.product) === null || _c === void 0 ? void 0 : _c.currency) === null || _d === void 0 ? void 0 : _d.split('-')[1]) === null || _e === void 0 ? void 0 : _e.toUpperCase()) !== null && _f !== void 0 ? _f : ''}${(_j = (_h = (_g = rec === null || rec === void 0 ? void 0 : rec.product) === null || _g === void 0 ? void 0 : _g.price) === null || _h === void 0 ? void 0 : _h.toLocaleString('zh', {
13916
- minimumFractionDigits: 0
13917
- })) !== null && _j !== void 0 ? _j : ''}`;
13956
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
13957
+ const isToLocStr = ((_a = textStyles === null || textStyles === void 0 ? void 0 : textStyles.price) === null || _a === void 0 ? void 0 : _a.enableFormattedPrice) === undefined || ((_b = textStyles === null || textStyles === void 0 ? void 0 : textStyles.price) === null || _b === void 0 ? void 0 : _b.enableFormattedPrice);
13958
+ if (((_c = rec === null || rec === void 0 ? void 0 : rec.product) === null || _c === void 0 ? void 0 : _c.currency) && ((_d = rec === null || rec === void 0 ? void 0 : rec.product) === null || _d === void 0 ? void 0 : _d.price)) {
13959
+ return `${(_h = (_g = (_f = (_e = rec === null || rec === void 0 ? void 0 : rec.product) === null || _e === void 0 ? void 0 : _e.currency) === null || _f === void 0 ? void 0 : _f.split('-')[1]) === null || _g === void 0 ? void 0 : _g.toUpperCase()) !== null && _h !== void 0 ? _h : ''}${isToLocStr
13960
+ ? (_l = (_k = (_j = rec === null || rec === void 0 ? void 0 : rec.product) === null || _j === void 0 ? void 0 : _j.price) === null || _k === void 0 ? void 0 : _k.toLocaleString('zh', {
13961
+ minimumFractionDigits: 0
13962
+ })) !== null && _l !== void 0 ? _l : ''
13963
+ : (_m = rec === null || rec === void 0 ? void 0 : rec.product) === null || _m === void 0 ? void 0 : _m.price}`;
13918
13964
  }
13919
13965
  else {
13920
13966
  return null;
13921
13967
  }
13922
- }, [rec]);
13968
+ }, [rec, (_a = textStyles === null || textStyles === void 0 ? void 0 : textStyles.price) === null || _a === void 0 ? void 0 : _a.enableFormattedPrice]);
13923
13969
  // useEffect(() => {
13924
13970
  // if (imgDom.current === null || src === '') {
13925
13971
  // return;
@@ -14019,22 +14065,27 @@ function WaterfallList(_a) {
14019
14065
  const containerRef = React.useRef(null);
14020
14066
  const [isLoadMore, setIsLoadMore] = React.useState(false);
14021
14067
  React.useCallback(() => {
14022
- var _a, _b, _c, _d;
14023
14068
  if (isLoadMore)
14024
14069
  return;
14025
14070
  setIsLoadMore(true);
14026
14071
  waterFallData &&
14027
- (getRecommendVideos === null || getRecommendVideos === void 0 ? void 0 : getRecommendVideos(Object.assign(Object.assign({ hashTag: waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.hashTag }, (((_b = (_a = waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.rec) === null || _a === void 0 ? void 0 : _a.product) === null || _b === void 0 ? void 0 : _b.itemId) && { productFilter: (_d = (_c = waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.rec) === null || _c === void 0 ? void 0 : _c.product) === null || _d === void 0 ? void 0 : _d.itemId })), ((waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.itemId) && { contentFilter: waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.itemId }))).then((res) => {
14072
+ (getRecommendVideos === null || getRecommendVideos === void 0 ? void 0 : getRecommendVideos({
14073
+ hashTag: waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.hashTag
14074
+ }).then((res) => {
14028
14075
  var _a;
14029
14076
  setList(list === null || list === void 0 ? void 0 : list.concat((_a = res === null || res === void 0 ? void 0 : res.recList) !== null && _a !== void 0 ? _a : []));
14030
14077
  setIsLoadMore(false);
14031
14078
  }));
14032
14079
  }, [waterFallData, getRecommendVideos, list, isLoadMore]);
14033
14080
  React.useEffect(() => {
14034
- var _a, _b, _c, _d, _e, _f;
14081
+ var _a, _b;
14035
14082
  setIsLoadingData(true);
14036
14083
  waterFallData &&
14037
- (getRecommendVideos === null || getRecommendVideos === void 0 ? void 0 : getRecommendVideos(Object.assign(Object.assign(Object.assign({ hashTag: waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.hashTag }, (((_b = (_a = waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.rec) === null || _a === void 0 ? void 0 : _a.product) === null || _b === void 0 ? void 0 : _b.itemId) && { productFilter: (_d = (_c = waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.rec) === null || _c === void 0 ? void 0 : _c.product) === null || _d === void 0 ? void 0 : _d.itemId })), ((waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.itemId) && { contentFilter: waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.itemId })), { defaultSize: hashTagSize, maxSize: hashTagSize })).then((res) => {
14084
+ (getRecommendVideos === null || getRecommendVideos === void 0 ? void 0 : getRecommendVideos({
14085
+ hashTag: waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.hashTag,
14086
+ defaultSize: hashTagSize,
14087
+ maxSize: hashTagSize
14088
+ }).then((res) => {
14038
14089
  var _a, _b;
14039
14090
  setData(res);
14040
14091
  setList((_b = (_a = res === null || res === void 0 ? void 0 : res.recList) === null || _a === void 0 ? void 0 : _a.filter((item) => (item === null || item === void 0 ? void 0 : item.video) !== null || (item === null || item === void 0 ? void 0 : item.product) !== null)) !== null && _b !== void 0 ? _b : []);
@@ -14043,7 +14094,7 @@ function WaterfallList(_a) {
14043
14094
  if (isOpenHashTag) {
14044
14095
  const res = previewData;
14045
14096
  setData(res);
14046
- setList((_f = (_e = res === null || res === void 0 ? void 0 : res.recList) === null || _e === void 0 ? void 0 : _e.filter((item) => (item === null || item === void 0 ? void 0 : item.video) !== null || (item === null || item === void 0 ? void 0 : item.product) !== null)) !== null && _f !== void 0 ? _f : []);
14097
+ setList((_b = (_a = res === null || res === void 0 ? void 0 : res.recList) === null || _a === void 0 ? void 0 : _a.filter((item) => (item === null || item === void 0 ? void 0 : item.video) !== null || (item === null || item === void 0 ? void 0 : item.product) !== null)) !== null && _b !== void 0 ? _b : []);
14047
14098
  setIsLoadingData(false);
14048
14099
  }
14049
14100
  }, [waterFallData, getRecommendVideos, hashTagSize, isOpenHashTag]);
@@ -14209,7 +14260,7 @@ var WaterFall$1 = React.memo(WaterFall);
14209
14260
  * @Author: binruan@chatlabs.com
14210
14261
  * @Date: 2024-01-15 19:03:09
14211
14262
  * @LastEditors: binruan@chatlabs.com
14212
- * @LastEditTime: 2024-04-29 19:08:34
14263
+ * @LastEditTime: 2024-08-22 10:15:23
14213
14264
  * @FilePath: \pb-sxp-ui\src\materials\sxp\HashTag\index.tsx
14214
14265
  *
14215
14266
  */
@@ -15842,7 +15893,7 @@ function withBindDataSource(Component) {
15842
15893
  * @Author: binruan@chatlabs.com
15843
15894
  * @Date: 2023-12-26 16:11:34
15844
15895
  * @LastEditors: binruan@chatlabs.com
15845
- * @LastEditTime: 2024-07-29 10:07:08
15896
+ * @LastEditTime: 2024-08-21 15:46:07
15846
15897
  * @FilePath: \pb-sxp-ui\src\core\components\SxpPageRender\RenderCard.tsx
15847
15898
  *
15848
15899
  */
@@ -15862,44 +15913,38 @@ const RenderCard = ({ rec, index, tempMap, resolver, includesCtaType, isActive }
15862
15913
  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;
15863
15914
  }
15864
15915
  const value = tempMap === null || tempMap === void 0 ? void 0 : tempMap[cta];
15865
- const renderComp = React.useMemo(() => {
15866
- 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;
15916
+ const renderComp = React.useCallback(() => {
15917
+ 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;
15867
15918
  if (!(rec === null || rec === void 0 ? void 0 : rec.video))
15868
15919
  return null;
15869
- 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) ;
15870
- else if ((_c = rec === null || rec === void 0 ? void 0 : rec.video) === null || _c === void 0 ? void 0 : _c.bindProduct) ;
15871
- else {
15872
- (_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;
15873
- }
15874
15920
  //如果includesCtaType有值,则只渲染includesCtaType包含的cta类型组件,用于在页面某处只显示某一组件
15875
- if (includesCtaType && !(includesCtaType === null || includesCtaType === void 0 ? void 0 : includesCtaType.includes((_f = value === null || value === void 0 ? void 0 : value.item) === null || _f === void 0 ? void 0 : _f.type)))
15921
+ if (includesCtaType && !(includesCtaType === null || includesCtaType === void 0 ? void 0 : includesCtaType.includes((_a = value === null || value === void 0 ? void 0 : value.item) === null || _a === void 0 ? void 0 : _a.type)))
15876
15922
  return;
15877
15923
  //默认不渲染category为cta类型的组件,该类型的组件只用于某一处
15878
- if (!includesCtaType && ((_g = value === null || value === void 0 ? void 0 : value.item) === null || _g === void 0 ? void 0 : _g.category) === 'cta')
15924
+ if (!includesCtaType && ((_b = value === null || value === void 0 ? void 0 : value.item) === null || _b === void 0 ? void 0 : _b.category) === 'cta')
15879
15925
  return;
15880
- if ((((_h = value === null || value === void 0 ? void 0 : value.item) === null || _h === void 0 ? void 0 : _h.type) === 'CommodityDiro' && !((_j = rec === null || rec === void 0 ? void 0 : rec.video) === null || _j === void 0 ? void 0 : _j.bindProduct)) ||
15881
- (((_k = value === null || value === void 0 ? void 0 : value.item) === null || _k === void 0 ? void 0 : _k.type) === 'Commodity' && !((_l = rec === null || rec === void 0 ? void 0 : rec.video) === null || _l === void 0 ? void 0 : _l.bindProduct)) ||
15882
- (((_m = value === null || value === void 0 ? void 0 : value.item) === null || _m === void 0 ? void 0 : _m.type) === 'CommodityDiroNew' && !((_o = rec === null || rec === void 0 ? void 0 : rec.video) === null || _o === void 0 ? void 0 : _o.bindProduct)) ||
15883
- (((_p = value === null || value === void 0 ? void 0 : value.item) === null || _p === void 0 ? void 0 : _p.type) === 'MultiCommodity' && !((_r = (_q = rec === null || rec === void 0 ? void 0 : rec.video) === null || _q === void 0 ? void 0 : _q.bindProducts) === null || _r === void 0 ? void 0 : _r.length)) ||
15884
- (((_s = value === null || value === void 0 ? void 0 : value.item) === null || _s === void 0 ? void 0 : _s.type) === 'MultiCommodityDiro' && !((_u = (_t = rec === null || rec === void 0 ? void 0 : rec.video) === null || _t === void 0 ? void 0 : _t.bindProducts) === null || _u === void 0 ? void 0 : _u.length)) ||
15885
- (((_v = value === null || value === void 0 ? void 0 : value.item) === null || _v === void 0 ? void 0 : _v.type) === 'MultiCommodityDiroNew' && !((_x = (_w = rec === null || rec === void 0 ? void 0 : rec.video) === null || _w === void 0 ? void 0 : _w.bindProducts) === null || _x === void 0 ? void 0 : _x.length))) {
15926
+ if ((((_c = value === null || value === void 0 ? void 0 : value.item) === null || _c === void 0 ? void 0 : _c.type) === 'CommodityDiro' && !((_d = rec === null || rec === void 0 ? void 0 : rec.video) === null || _d === void 0 ? void 0 : _d.bindProduct)) ||
15927
+ (((_e = value === null || value === void 0 ? void 0 : value.item) === null || _e === void 0 ? void 0 : _e.type) === 'Commodity' && !((_f = rec === null || rec === void 0 ? void 0 : rec.video) === null || _f === void 0 ? void 0 : _f.bindProduct)) ||
15928
+ (((_g = value === null || value === void 0 ? void 0 : value.item) === null || _g === void 0 ? void 0 : _g.type) === 'CommodityDiroNew' && !((_h = rec === null || rec === void 0 ? void 0 : rec.video) === null || _h === void 0 ? void 0 : _h.bindProduct)) ||
15929
+ (((_j = value === null || value === void 0 ? void 0 : value.item) === null || _j === void 0 ? void 0 : _j.type) === 'MultiCommodity' && !((_l = (_k = rec === null || rec === void 0 ? void 0 : rec.video) === null || _k === void 0 ? void 0 : _k.bindProducts) === null || _l === void 0 ? void 0 : _l.length)) ||
15930
+ (((_m = value === null || value === void 0 ? void 0 : value.item) === null || _m === void 0 ? void 0 : _m.type) === 'MultiCommodityDiro' && !((_p = (_o = rec === null || rec === void 0 ? void 0 : rec.video) === null || _o === void 0 ? void 0 : _o.bindProducts) === null || _p === void 0 ? void 0 : _p.length)) ||
15931
+ (((_q = value === null || value === void 0 ? void 0 : value.item) === null || _q === void 0 ? void 0 : _q.type) === 'MultiCommodityDiroNew' && !((_s = (_r = rec === null || rec === void 0 ? void 0 : rec.video) === null || _r === void 0 ? void 0 : _r.bindProducts) === null || _s === void 0 ? void 0 : _s.length))) {
15886
15932
  //
15887
15933
  return null;
15888
15934
  }
15889
15935
  if (value && resolver) {
15890
- const t = resolver[(_y = value === null || value === void 0 ? void 0 : value.item) === null || _y === void 0 ? void 0 : _y.type];
15936
+ const t = resolver[(_t = value === null || value === void 0 ? void 0 : value.item) === null || _t === void 0 ? void 0 : _t.type];
15891
15937
  const Component = withBindDataSource(t);
15892
- const defaulSetting = (_z = t === null || t === void 0 ? void 0 : t.extend) === null || _z === void 0 ? void 0 : _z.defaulSetting;
15893
- const isExternalLink = ((_2 = (_1 = (_0 = value === null || value === void 0 ? void 0 : value.item) === null || _0 === void 0 ? void 0 : _0.event) === null || _1 === void 0 ? void 0 : _1.onClick) === null || _2 === void 0 ? void 0 : _2.linkType) === 'externalLink';
15894
- return (React.createElement(Component, Object.assign({ style: Object.assign(Object.assign(Object.assign({}, defaulSetting === null || defaulSetting === void 0 ? void 0 : defaulSetting.style), (_3 = value === null || value === void 0 ? void 0 : value.item) === null || _3 === void 0 ? void 0 : _3.style), { zIndex: 50, marginLeft: '20px', boxSizing: 'border-box', transform: 'translate3d(0px, 0px, 0px)' }), textStyle: Object.assign(Object.assign({}, defaulSetting === null || defaulSetting === void 0 ? void 0 : defaulSetting.textStyle), (_4 = value === null || value === void 0 ? void 0 : value.item) === null || _4 === void 0 ? void 0 : _4.textStyle), bindDatas: (_6 = (_5 = value === null || value === void 0 ? void 0 : value.item) === null || _5 === void 0 ? void 0 : _5.bindDatas) !== null && _6 !== void 0 ? _6 : [] }, defaulSetting === null || defaulSetting === void 0 ? void 0 : defaulSetting.props, (_7 = value === null || value === void 0 ? void 0 : value.item) === null || _7 === void 0 ? void 0 : _7.props, { event: ((_8 = value === null || value === void 0 ? void 0 : value.item) === null || _8 === void 0 ? void 0 : _8.event) || {}, schema: schema, id: value === null || value === void 0 ? void 0 : value.id, key: value === null || value === void 0 ? void 0 : value.id, recData: rec, isExternalLink: isExternalLink, index: index, isActive: isActive })));
15938
+ const defaulSetting = (_u = t === null || t === void 0 ? void 0 : t.extend) === null || _u === void 0 ? void 0 : _u.defaulSetting;
15939
+ const isExternalLink = ((_x = (_w = (_v = value === null || value === void 0 ? void 0 : value.item) === null || _v === void 0 ? void 0 : _v.event) === null || _w === void 0 ? void 0 : _w.onClick) === null || _x === void 0 ? void 0 : _x.linkType) === 'externalLink';
15940
+ return (React.createElement(Component, Object.assign({ style: Object.assign(Object.assign(Object.assign({}, defaulSetting === null || defaulSetting === void 0 ? void 0 : defaulSetting.style), (_y = value === null || value === void 0 ? void 0 : value.item) === null || _y === void 0 ? void 0 : _y.style), { zIndex: 50, marginLeft: '20px', boxSizing: 'border-box', transform: 'translate3d(0px, 0px, 0px)' }), textStyle: Object.assign(Object.assign({}, defaulSetting === null || defaulSetting === void 0 ? void 0 : defaulSetting.textStyle), (_z = value === null || value === void 0 ? void 0 : value.item) === null || _z === void 0 ? void 0 : _z.textStyle), bindDatas: (_1 = (_0 = value === null || value === void 0 ? void 0 : value.item) === null || _0 === void 0 ? void 0 : _0.bindDatas) !== null && _1 !== void 0 ? _1 : [] }, defaulSetting === null || defaulSetting === void 0 ? void 0 : defaulSetting.props, (_2 = value === null || value === void 0 ? void 0 : value.item) === null || _2 === void 0 ? void 0 : _2.props, { event: ((_3 = value === null || value === void 0 ? void 0 : value.item) === null || _3 === void 0 ? void 0 : _3.event) || {}, schema: schema, id: value === null || value === void 0 ? void 0 : value.id, key: value === null || value === void 0 ? void 0 : value.id, recData: rec, isExternalLink: isExternalLink, index: index, isActive: isActive })));
15895
15941
  }
15896
15942
  else {
15897
15943
  return null;
15898
15944
  }
15899
15945
  }, [rec, resolver, tempMap, schema, value === null || value === void 0 ? void 0 : value.id, isActive]);
15900
- return React.createElement(React.Fragment, null, renderComp);
15946
+ return React.createElement(React.Fragment, null, renderComp());
15901
15947
  };
15902
- var RenderCard$1 = React.memo(RenderCard);
15903
15948
 
15904
15949
  /*
15905
15950
  * @Author: binruan@chatlabs.com
@@ -15984,7 +16029,7 @@ var Tagbar$1 = React.memo(Tagbar);
15984
16029
  * @Author: binruan@chatlabs.com
15985
16030
  * @Date: 2024-01-15 19:03:09
15986
16031
  * @LastEditors: binruan@chatlabs.com
15987
- * @LastEditTime: 2024-08-16 11:47:58
16032
+ * @LastEditTime: 2024-08-22 17:50:06
15988
16033
  * @FilePath: \pb-sxp-ui\src\core\components\SxpPageRender\index.tsx
15989
16034
  *
15990
16035
  */
@@ -16001,7 +16046,7 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight = window.inner
16001
16046
  const [isShowMore, setIsShowMore] = React.useState(false);
16002
16047
  const [isReload, setIsReload] = React.useState(new Date().getTime());
16003
16048
  const skipLinkRef = React.useRef(false);
16004
- const { loadVideos, bffEventReport, loading, setPopupDetailData, ctaEvent, swiperRef, waterFallData, setOpenHashtag, appDomain, openHashtag, loadingImage, isFromHashtag, popupDetailData, bffFbReport, curTime, h5EnterLink, isShowConsent, selectTag, isPreview } = useSxpDataSource();
16049
+ const { loadVideos, bffEventReport, loading, setPopupDetailData, ctaEvent, swiperRef, waterFallData, setOpenHashtag, appDomain, openHashtag, loadingImage, isFromHashtag, popupDetailData, bffFbReport, curTime, h5EnterLink, isShowConsent, selectTag, isPreview, isEditor } = useSxpDataSource();
16005
16050
  const { backMainFeed, productView, jumpToWeb } = useEventReport();
16006
16051
  const isShowFingerTip = React.useMemo(() => {
16007
16052
  return data.length > 0 && !loading && (getFeUserId() || (globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.enableSwiperTip));
@@ -16031,6 +16076,8 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight = window.inner
16031
16076
  }, [data.length, bffFbReport, h5EnterLink]);
16032
16077
  React.useEffect(() => {
16033
16078
  var _a;
16079
+ if (!ctaType || (ctaType === null || ctaType === void 0 ? void 0 : ctaType.length) < 1)
16080
+ return;
16034
16081
  const index = (data === null || data === void 0 ? void 0 : data.findIndex((item) => {
16035
16082
  var _a, _b, _c, _d, _e, _f, _g, _h, _j;
16036
16083
  const ctaType0 = ctaType === null || ctaType === void 0 ? void 0 : ctaType[0];
@@ -16044,8 +16091,9 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight = window.inner
16044
16091
  return ((_f = (_e = item === null || item === void 0 ? void 0 : item.video) === null || _e === void 0 ? void 0 : _e.bindCta) === null || _f === void 0 ? void 0 : _f.itemId) === ctaType0 && (((_g = item === null || item === void 0 ? void 0 : item.video) === null || _g === void 0 ? void 0 : _g.url) || ((_j = (_h = item === null || item === void 0 ? void 0 : item.video) === null || _h === void 0 ? void 0 : _h.imgUrls) === null || _j === void 0 ? void 0 : _j.length));
16045
16092
  }
16046
16093
  })) || 0;
16047
- (_a = swiperRef === null || swiperRef === void 0 ? void 0 : swiperRef.current) === null || _a === void 0 ? void 0 : _a.swiper.slideTo(index);
16048
- }, [ctaType, swiperRef]);
16094
+ if (index !== -1)
16095
+ (_a = swiperRef === null || swiperRef === void 0 ? void 0 : swiperRef.current) === null || _a === void 0 ? void 0 : _a.swiper.slideTo(index);
16096
+ }, [data, ctaType, swiperRef]);
16049
16097
  React.useEffect(() => {
16050
16098
  const item = data === null || data === void 0 ? void 0 : data[activeIndex];
16051
16099
  const visibleChange = () => {
@@ -16147,7 +16195,7 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight = window.inner
16147
16195
  }, [globalConfig, containerHeight, tagHeight]);
16148
16196
  const visList = React.useMemo(() => {
16149
16197
  var _a;
16150
- const list = activeIndex === 0 && !waterFallData
16198
+ const list = activeIndex === 0 && !waterFallData && !isEditor
16151
16199
  ? [(_a = data === null || data === void 0 ? void 0 : data[0]) !== null && _a !== void 0 ? _a : null]
16152
16200
  : data === null || data === void 0 ? void 0 : data.map((item, index) => {
16153
16201
  if (activeIndex === index || index - 1 === activeIndex || index + 1 === activeIndex) {
@@ -16157,8 +16205,8 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight = window.inner
16157
16205
  return null;
16158
16206
  }
16159
16207
  });
16160
- return !waterFallData ? list.concat([{ loading: true }]) : list;
16161
- }, [data, activeIndex, waterFallData]);
16208
+ return !waterFallData && !isEditor ? list.concat([{ loading: true }]) : list;
16209
+ }, [data, activeIndex, waterFallData, isEditor]);
16162
16210
  const renderLogo = React.useMemo(() => {
16163
16211
  var _a, _b, _c, _d;
16164
16212
  if ((globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.logoUrl) && (globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.isShowLogo)) {
@@ -16232,12 +16280,12 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight = window.inner
16232
16280
  React.createElement("div", { className: 'clc-sxp-bottom', style: { paddingBottom: `${(_b = globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.bottomInfoDist) !== null && _b !== void 0 ? _b : 40}px` } },
16233
16281
  React.createElement(Nudge, { nudge: nudge }),
16234
16282
  (globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.isShowCTA) === undefined || (globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.isShowCTA) ? (React.createElement("div", { className: 'clc-sxp-bottom-card' },
16235
- React.createElement(RenderCard$1, { rec: rec, index: index, tempMap: tempMap, resolver: resolver }))) : null,
16283
+ React.createElement(RenderCard, { rec: rec, index: index, tempMap: tempMap, resolver: resolver }))) : null,
16236
16284
  React.createElement("div", null,
16237
16285
  React.createElement(ExpandableText$1, { className: 'clc-sxp-bottom-text', isPost: true, foldText: tipText === null || tipText === void 0 ? void 0 : tipText.foldText, unfoldText: tipText === null || tipText === void 0 ? void 0 : tipText.unfoldText, text: (_d = (_c = rec === null || rec === void 0 ? void 0 : rec.video) === null || _c === void 0 ? void 0 : _c.title) !== null && _d !== void 0 ? _d : '', style: Object.assign(Object.assign({}, descStyle), { textShadow: (globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.isOpenTextShadow) ? '2px 2px 4px rgba(0, 0, 0, 0.5)' : 'none' }), onChange: onExpandableChange }),
16238
- React.createElement(RenderCard$1, { rec: rec, index: index, tempMap: tempMap, resolver: resolver, includesCtaType: ['AniLink'] }),
16286
+ React.createElement(RenderCard, { rec: rec, index: index, tempMap: tempMap, resolver: resolver, includesCtaType: ['AniLink'] }),
16239
16287
  React.createElement(Hashtag$1, { index: activeIndex, tags: (_f = (_e = rec === null || rec === void 0 ? void 0 : rec.video) === null || _e === void 0 ? void 0 : _e.hashTags) !== null && _f !== void 0 ? _f : [], itemId: (_g = rec === null || rec === void 0 ? void 0 : rec.video) === null || _g === void 0 ? void 0 : _g.itemId, itemType: ((_h = rec === null || rec === void 0 ? void 0 : rec.video) === null || _h === void 0 ? void 0 : _h.itemId) ? 'VIDEO' : null, rec: rec, hashTagStyle: hashTagStyle }))),
16240
- React.createElement(RenderCard$1, { rec: rec, index: index, tempMap: tempMap, resolver: resolver, includesCtaType: ['AniLinkPopup'], isActive: index === activeIndex })));
16288
+ React.createElement(RenderCard, { rec: rec, index: index, tempMap: tempMap, resolver: resolver, includesCtaType: ['AniLinkPopup'], isActive: index === activeIndex })));
16241
16289
  }
16242
16290
  return null;
16243
16291
  }, [
@@ -16321,7 +16369,6 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight = window.inner
16321
16369
  };
16322
16370
  const handleScrollEvent = (swiper) => {
16323
16371
  var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p;
16324
- viewTime.current = new Date();
16325
16372
  const item = data[swiper.previousIndex];
16326
16373
  if (!item)
16327
16374
  return;
@@ -16362,6 +16409,7 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight = window.inner
16362
16409
  eventName: 'ProductView'
16363
16410
  });
16364
16411
  }
16412
+ viewTime.current = new Date();
16365
16413
  };
16366
16414
  const handleReportProductView = (item) => {
16367
16415
  var _a, _b, _c;
@@ -16371,8 +16419,12 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight = window.inner
16371
16419
  };
16372
16420
  React.useEffect(() => {
16373
16421
  const item = data[activeIndex];
16374
- if (openHashtag)
16422
+ if (openHashtag) {
16375
16423
  handleReportProductView(item);
16424
+ }
16425
+ else {
16426
+ viewTime.current = new Date();
16427
+ }
16376
16428
  }, [openHashtag, data, activeIndex]);
16377
16429
  const handleViewImageStartEvent = (activeIndex) => {
16378
16430
  var _a, _b, _c, _d, _e, _f;
@@ -16407,6 +16459,7 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight = window.inner
16407
16459
  position: (globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.muteIconFixed) ? 'fixed' : 'absolute',
16408
16460
  visibility: ((_b = (_a = visList === null || visList === void 0 ? void 0 : visList[activeIndex]) === null || _a === void 0 ? void 0 : _a.video) === null || _b === void 0 ? void 0 : _b.url) ? 'visible' : 'hidden',
16409
16461
  zIndex: 999,
16462
+ transform: 'translate3d(0px,0px,0px)',
16410
16463
  [(_c = globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.muteIconXPosit) !== null && _c !== void 0 ? _c : 'right']: (_d = globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.muteIconX) !== null && _d !== void 0 ? _d : 0,
16411
16464
  [(_e = globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.muteIconYPosit) !== null && _e !== void 0 ? _e : 'bottom']: (_f = globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.muteIconY) !== null && _f !== void 0 ? _f : 23
16412
16465
  }, defaultValue: isMuted, activeIcon: (globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.unMuteIcon) ? globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.unMuteIcon : mutedIcon, unactiveIcon: (globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.muteIcon) ? globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.muteIcon : unmutedIcon, onChange: setIsMuted })));
@@ -16425,10 +16478,10 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight = window.inner
16425
16478
  alignItems: 'center'
16426
16479
  } },
16427
16480
  React.createElement("img", { width: 64, height: 64, src: loadingImage, alt: 'loading...', style: { objectFit: 'contain' } }))) : (React.createElement(React.Fragment, null,
16428
- renderContent(rec, index),
16429
- renderBottom(rec, index),
16430
16481
  renderLikeButton(rec, index, !(globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.likeIconFixed)),
16431
- renderToggleButton(!(globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.muteIconFixed))))))));
16482
+ renderToggleButton(!(globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.muteIconFixed)),
16483
+ renderBottom(rec, index),
16484
+ renderContent(rec, index)))))));
16432
16485
  });
16433
16486
  }, [
16434
16487
  containerWidth,
@@ -16464,9 +16517,9 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight = window.inner
16464
16517
  return;
16465
16518
  // 处理上滑下滑事件
16466
16519
  handleScrollEvent(swiper);
16467
- if (waterFallData)
16520
+ if (waterFallData || isEditor)
16468
16521
  return;
16469
- if ((swiper === null || swiper === void 0 ? void 0 : swiper.activeIndex) + 2 >= (data === null || data === void 0 ? void 0 : data.length)) {
16522
+ if ((swiper === null || swiper === void 0 ? void 0 : swiper.activeIndex) + 1 >= (data === null || data === void 0 ? void 0 : data.length)) {
16470
16523
  if (!isLoadMore) {
16471
16524
  setIsLoadMore(true);
16472
16525
  loadVideos === null || loadVideos === void 0 ? void 0 : loadVideos(Math.ceil(activeIndex / 10) + 1).then(() => {
@@ -16772,7 +16825,7 @@ const DiyPortalPreview = ({ data = [], globalConfig, tipText, nudge, tempMap, de
16772
16825
  const CTA = (rec, index) => {
16773
16826
  if ((globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.isShowCTA) === undefined || (globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.isShowCTA)) {
16774
16827
  return (React.createElement("div", { className: 'clc-sxp-bottom-card' },
16775
- React.createElement(RenderCard$1, { rec: rec, index: index, tempMap: tempMap, resolver: RESOLVER$1 })));
16828
+ React.createElement(RenderCard, { rec: rec, index: index, tempMap: tempMap, resolver: RESOLVER$1 })));
16776
16829
  }
16777
16830
  return null;
16778
16831
  };
@@ -16962,7 +17015,7 @@ var index = React.memo(SxpPageCore);
16962
17015
  * @Author: binruan@chatlabs.com
16963
17016
  * @Date: 2023-12-26 10:38:53
16964
17017
  * @LastEditors: binruan@chatlabs.com
16965
- * @LastEditTime: 2024-06-25 11:20:15
17018
+ * @LastEditTime: 2024-08-22 11:32:23
16966
17019
  * @FilePath: \pb-sxp-ui\src\core\context\EditorDataProvider.tsx
16967
17020
  *
16968
17021
  */
@@ -16992,7 +17045,8 @@ const EditorDataProvider = ({ children, data }) => {
16992
17045
  setOpenHashtag,
16993
17046
  openConsent,
16994
17047
  setOpenConsent,
16995
- sxpFontLinks: data === null || data === void 0 ? void 0 : data.sxpFontLinks
17048
+ sxpFontLinks: data === null || data === void 0 ? void 0 : data.sxpFontLinks,
17049
+ utmParameter: data === null || data === void 0 ? void 0 : data.utm_parameter
16996
17050
  } }, children));
16997
17051
  };
16998
17052
  function useEditorDataProvider() {