pb-sxp-ui 1.2.10 → 1.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (108) hide show
  1. package/dist/index.cjs +595 -308
  2. package/dist/index.cjs.map +1 -1
  3. package/dist/index.css +62 -2
  4. package/dist/index.js +595 -308
  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 +595 -308
  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/FormatImage.js +1 -1
  15. package/es/core/components/SxpPageRender/Modal/index.js +33 -20
  16. package/es/core/components/SxpPageRender/Popup/index.js +2 -2
  17. package/es/core/components/SxpPageRender/ToggleButton/index.js +4 -1
  18. package/es/core/components/SxpPageRender/WaterFall/List.js +5 -14
  19. package/es/core/components/SxpPageRender/WaterFall/WaterfallList.js +5 -14
  20. package/es/core/components/SxpPageRender/index.d.ts +6 -1
  21. package/es/core/components/SxpPageRender/index.js +46 -23
  22. package/es/core/components/SxpPageRender/typing.d.ts +2 -0
  23. package/es/core/context/SxpDataSourceProvider.d.ts +3 -2
  24. package/es/core/context/SxpDataSourceProvider.js +27 -30
  25. package/es/core/hooks/useEventReport.js +9 -8
  26. package/es/core/utils/tool.d.ts +5 -1
  27. package/es/core/utils/tool.js +69 -1
  28. package/es/materials/sxp/HashTag/settingRender.d.ts +7 -6
  29. package/es/materials/sxp/HashTag/settingRender.js +0 -9
  30. package/es/materials/sxp/cta/AniLink/settingRender.d.ts +0 -5
  31. package/es/materials/sxp/cta/AniLink/settingRender.js +0 -4
  32. package/es/materials/sxp/popup/AppointForm/settingRender.d.ts +5 -8
  33. package/es/materials/sxp/popup/AppointForm/settingRender.js +15 -12
  34. package/es/materials/sxp/popup/CommodityDetail/index.d.ts +10 -1
  35. package/es/materials/sxp/popup/CommodityDetail/index.js +46 -28
  36. package/es/materials/sxp/popup/CommodityDetail/material.js +4 -0
  37. package/es/materials/sxp/popup/CommodityDetail/settingRender.d.ts +19 -6
  38. package/es/materials/sxp/popup/CommodityDetail/settingRender.js +45 -8
  39. package/es/materials/sxp/popup/CommodityDetailDiroNew/index.d.ts +10 -1
  40. package/es/materials/sxp/popup/CommodityDetailDiroNew/index.js +72 -46
  41. package/es/materials/sxp/popup/CommodityDetailDiroNew/material.js +4 -0
  42. package/es/materials/sxp/popup/CommodityDetailDiroNew/settingRender.d.ts +19 -6
  43. package/es/materials/sxp/popup/CommodityDetailDiroNew/settingRender.js +45 -8
  44. package/es/materials/sxp/popup/CommodityList/settingRender.js +15 -4
  45. package/es/materials/sxp/popup/Iframe/index.d.ts +16 -0
  46. package/es/materials/sxp/popup/Iframe/index.js +18 -0
  47. package/es/materials/sxp/popup/Iframe/material.d.ts +2 -0
  48. package/es/materials/sxp/popup/Iframe/material.js +21 -0
  49. package/es/materials/sxp/popup/Iframe/settingRender.d.ts +9 -0
  50. package/es/materials/sxp/popup/Iframe/settingRender.js +12 -0
  51. package/es/materials/sxp/popup/Prompt/settingRender.js +16 -11
  52. package/es/materials/sxp/popup/index.d.ts +1 -0
  53. package/es/materials/sxp/popup/index.js +1 -0
  54. package/es/materials/sxp/template/Link/index.js +5 -11
  55. package/es/materials/sxp/template/Link/interactionRender.d.ts +8 -0
  56. package/es/materials/sxp/template/Link/interactionRender.js +11 -0
  57. package/es/materials/sxp/template/Link/material.js +3 -1
  58. package/es/materials/sxp/template/Link/settingRender.js +0 -5
  59. package/es/materials/sxp/template/components/EventProvider.d.ts +3 -2
  60. package/es/materials/sxp/template/components/EventProvider.js +3 -3
  61. package/lib/core/components/SxpPageRender/FormatImage.js +1 -1
  62. package/lib/core/components/SxpPageRender/Modal/index.js +33 -20
  63. package/lib/core/components/SxpPageRender/Popup/index.js +2 -2
  64. package/lib/core/components/SxpPageRender/ToggleButton/index.js +3 -0
  65. package/lib/core/components/SxpPageRender/WaterFall/List.js +5 -14
  66. package/lib/core/components/SxpPageRender/WaterFall/WaterfallList.js +5 -14
  67. package/lib/core/components/SxpPageRender/index.d.ts +6 -1
  68. package/lib/core/components/SxpPageRender/index.js +46 -23
  69. package/lib/core/components/SxpPageRender/typing.d.ts +2 -0
  70. package/lib/core/context/SxpDataSourceProvider.d.ts +3 -2
  71. package/lib/core/context/SxpDataSourceProvider.js +27 -30
  72. package/lib/core/hooks/useEventReport.js +9 -8
  73. package/lib/core/utils/tool.d.ts +5 -1
  74. package/lib/core/utils/tool.js +73 -1
  75. package/lib/materials/sxp/HashTag/settingRender.d.ts +7 -6
  76. package/lib/materials/sxp/HashTag/settingRender.js +0 -9
  77. package/lib/materials/sxp/cta/AniLink/settingRender.d.ts +0 -5
  78. package/lib/materials/sxp/cta/AniLink/settingRender.js +0 -4
  79. package/lib/materials/sxp/popup/AppointForm/settingRender.d.ts +5 -8
  80. package/lib/materials/sxp/popup/AppointForm/settingRender.js +15 -12
  81. package/lib/materials/sxp/popup/CommodityDetail/index.d.ts +10 -1
  82. package/lib/materials/sxp/popup/CommodityDetail/index.js +46 -28
  83. package/lib/materials/sxp/popup/CommodityDetail/material.js +4 -0
  84. package/lib/materials/sxp/popup/CommodityDetail/settingRender.d.ts +19 -6
  85. package/lib/materials/sxp/popup/CommodityDetail/settingRender.js +45 -8
  86. package/lib/materials/sxp/popup/CommodityDetailDiroNew/index.d.ts +10 -1
  87. package/lib/materials/sxp/popup/CommodityDetailDiroNew/index.js +72 -46
  88. package/lib/materials/sxp/popup/CommodityDetailDiroNew/material.js +4 -0
  89. package/lib/materials/sxp/popup/CommodityDetailDiroNew/settingRender.d.ts +19 -6
  90. package/lib/materials/sxp/popup/CommodityDetailDiroNew/settingRender.js +45 -8
  91. package/lib/materials/sxp/popup/CommodityList/settingRender.js +15 -4
  92. package/lib/materials/sxp/popup/Iframe/index.d.ts +16 -0
  93. package/lib/materials/sxp/popup/Iframe/index.js +20 -0
  94. package/lib/materials/sxp/popup/Iframe/material.d.ts +2 -0
  95. package/lib/materials/sxp/popup/Iframe/material.js +25 -0
  96. package/lib/materials/sxp/popup/Iframe/settingRender.d.ts +9 -0
  97. package/lib/materials/sxp/popup/Iframe/settingRender.js +14 -0
  98. package/lib/materials/sxp/popup/Prompt/settingRender.js +16 -11
  99. package/lib/materials/sxp/popup/index.d.ts +1 -0
  100. package/lib/materials/sxp/popup/index.js +1 -0
  101. package/lib/materials/sxp/template/Link/index.js +5 -11
  102. package/lib/materials/sxp/template/Link/interactionRender.d.ts +8 -0
  103. package/lib/materials/sxp/template/Link/interactionRender.js +13 -0
  104. package/lib/materials/sxp/template/Link/material.js +3 -1
  105. package/lib/materials/sxp/template/Link/settingRender.js +0 -5
  106. package/lib/materials/sxp/template/components/EventProvider.d.ts +3 -2
  107. package/lib/materials/sxp/template/components/EventProvider.js +3 -3
  108. package/package.json +1 -1
package/dist/index.cjs CHANGED
@@ -239,6 +239,87 @@ const setFontForText = (textContent, style) => {
239
239
  }
240
240
  return content;
241
241
  };
242
+ function getBrowserInfo() {
243
+ var _a, _b, _c, _d, _e, _f, _g;
244
+ let userAgent = self.navigator.userAgent;
245
+ if (!userAgent)
246
+ return 'Unknown';
247
+ if (/edge\/([\d\.]+)/i.exec(userAgent))
248
+ return `Edge ${(_a = /edge\/([\d\.]+)/i.exec(userAgent)) === null || _a === void 0 ? void 0 : _a[1]}`;
249
+ if (/edg\/([\d\.]+)/i.exec(userAgent))
250
+ return `Edge(Chromium) ${(_b = /edge\/([\d\.]+)/i.exec(userAgent)) === null || _b === void 0 ? void 0 : _b[1]}`;
251
+ if (/msie/i.test(userAgent))
252
+ return `Internet Explorer ${(_c = /msie ([\d\.]+)/i.exec(userAgent)) === null || _c === void 0 ? void 0 : _c[1]}`;
253
+ if (/Trident/i.test(userAgent))
254
+ return `Internet Explorer ${(_d = /rv:([\d\.]+)/i.exec(userAgent)) === null || _d === void 0 ? void 0 : _d[1]}`;
255
+ if (/chrome/i.test(userAgent))
256
+ return `Chrome ${(_e = /chrome\/([\d\.]+)/i.exec(userAgent)) === null || _e === void 0 ? void 0 : _e[1]}`;
257
+ if (/firefox/i.test(userAgent))
258
+ return `Firefox ${(_f = /firefox\/([\d\.]+)/i.exec(userAgent)) === null || _f === void 0 ? void 0 : _f[1]}`;
259
+ if (/safari/i.test(userAgent))
260
+ return `Safari ${(_g = /version\/([\d\.]+)/i.exec(userAgent)) === null || _g === void 0 ? void 0 : _g[1]}`;
261
+ return 'Unknown';
262
+ }
263
+ function getSystem() {
264
+ var _a, _b, _c;
265
+ let userAgent = self.navigator.userAgent;
266
+ if (!userAgent)
267
+ return 'Unknown';
268
+ if (/iphone/i.test(userAgent))
269
+ return `IOS ${(_a = userAgent.match(/OS\s(.*?)\slike/)) === null || _a === void 0 ? void 0 : _a[1]}`;
270
+ if (/android/i.test(userAgent))
271
+ return `Android ${(_b = userAgent.match(/Android\s(.*?)\;/)) === null || _b === void 0 ? void 0 : _b[1]}`;
272
+ if (/windows/i.test(userAgent))
273
+ return `Windows ${(_c = userAgent.match(/Windows\s(.*?)\;/)) === null || _c === void 0 ? void 0 : _c[1]}`;
274
+ if (/mac/i.test(userAgent))
275
+ return `Mac OS`;
276
+ return 'Unknown';
277
+ }
278
+ function getDevice$1() {
279
+ let userAgent = self.navigator.userAgent;
280
+ if (!userAgent)
281
+ return 'Unknown';
282
+ if (/iphone/i.test(userAgent))
283
+ return `iPhone`;
284
+ if (/android/i.test(userAgent)) {
285
+ // var index1 = userAgent.indexOf(';');
286
+ // var index2 = userAgent.indexOf(';', index1 + 1);
287
+ // var index3 = userAgent.indexOf(';', index2 + 1);
288
+ // var index4 = userAgent.indexOf(';', index3 + 1);
289
+ // if (index2 !== -1 && index3 !== -1) {
290
+ // var value1 = userAgent.substring(index3 + 1, index4);
291
+ // return `${value1}`;
292
+ // }
293
+ var index1 = userAgent.indexOf('(');
294
+ var index2 = userAgent.indexOf(')');
295
+ if (index1 !== -1 && index2 !== -1) {
296
+ var value = userAgent.substring(index1 + 1, index2);
297
+ return `${value}`;
298
+ }
299
+ }
300
+ if (/windows/i.test(userAgent))
301
+ return `Windows`;
302
+ if (/mac/i.test(userAgent))
303
+ return `Mac`;
304
+ return 'Unknown';
305
+ }
306
+ function getCookie(val) {
307
+ // const expirationDate = new Date();
308
+ // expirationDate.setDate(expirationDate.getDate() + 100);
309
+ // document.cookie = `_fbc=IwAR2F4-dbP0l7Mn1IawQQGCINEz7PYXQvwjNwB_qa2ofrHyiLjcbCRxTDGrc; expires=${expirationDate.toUTCString()}; path=/`;
310
+ const cookies = document.cookie;
311
+ // 将cookie字符串拆分成数组
312
+ const cookieArray = cookies.split(';');
313
+ let value = null;
314
+ // 遍历cookie数组,查找名为_fbc的cookie
315
+ cookieArray.forEach((cookie) => {
316
+ const [cookieName, cookieValue] = cookie.trim().split('=');
317
+ if (cookieName === val) {
318
+ value = cookieValue;
319
+ }
320
+ });
321
+ return value !== null && value !== void 0 ? value : '';
322
+ }
242
323
 
243
324
  function unzip(b64Data) {
244
325
  const strData = atob(b64Data);
@@ -554,7 +635,7 @@ var DataSourceType;
554
635
  DataSourceType[DataSourceType["BFF"] = 5] = "BFF";
555
636
  })(DataSourceType || (DataSourceType = {}));
556
637
  const DEFAULT_TAG = 'FOR U';
557
- const SxpDataSourceProvider = ({ render, dataSources, utmVal, enableReportEvent = true, maxSize, defaultSize, isPreview = false, sxpParameter, appDomain, hashTagSize, loadingImage, isOpenHashTag = false, enabledMetaConversionApi = false, consentHeight, consentWidth, isShowTag = true, isOpenConsent = false, globalConfig, isEditor = false, utmParameter }) => {
638
+ const SxpDataSourceProvider = ({ render, dataSources, utmVal, enableReportEvent = true, maxSize, defaultSize, isPreview = false, sxpParameter, appDomain, hashTagSize, loadingImage, isOpenHashTag = false, enabledMetaConversionApi = false, consentHeight, consentWidth, isShowTag = true, isOpenConsent = false, globalConfig, isEditor = false, utmParameter, channelQueryList }) => {
558
639
  var _a, _b, _c;
559
640
  const [rtcList, setRtcList] = React.useState([]);
560
641
  const [tagList, setTagList] = React.useState([]);
@@ -638,15 +719,7 @@ const SxpDataSourceProvider = ({ render, dataSources, utmVal, enableReportEvent
638
719
  // 获取推荐视频数据
639
720
  const getRecommendVideos = React.useCallback((query) => __awaiter(void 0, void 0, void 0, function* () {
640
721
  var _d, _e, _f, _g, _h;
641
- query = {
642
- maxSize: (_d = query === null || query === void 0 ? void 0 : query.maxSize) !== null && _d !== void 0 ? _d : maxSize,
643
- defaultSize: (_e = query === null || query === void 0 ? void 0 : query.defaultSize) !== null && _e !== void 0 ? _e : defaultSize,
644
- 'itemFilter.itemId': query === null || query === void 0 ? void 0 : query['itemFilter.itemId'],
645
- 'itemFilter.itemType': query === null || query === void 0 ? void 0 : query['itemFilter.itemType'],
646
- hashTag: query === null || query === void 0 ? void 0 : query.hashTag,
647
- traceInfo: query === null || query === void 0 ? void 0 : query.traceInfo,
648
- themeTag: query === null || query === void 0 ? void 0 : query.themeTag
649
- };
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}]` }));
650
723
  if (utmVal) {
651
724
  const val = (_h = (_g = (_f = utmVal === null || utmVal === void 0 ? void 0 : utmVal.split('&')) === null || _f === void 0 ? void 0 : _f.filter((val) => {
652
725
  var _a, _b;
@@ -655,6 +728,9 @@ const SxpDataSourceProvider = ({ render, dataSources, utmVal, enableReportEvent
655
728
  })) === null || _g === void 0 ? void 0 : _g.join('&')) !== null && _h !== void 0 ? _h : '';
656
729
  query = Object.assign(Object.assign({}, query), { channel: decodeURIComponent(val) });
657
730
  }
731
+ if ((globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.enablePreview) || isEditor) {
732
+ query = Object.assign(Object.assign(Object.assign({}, query), { directPage: true, level: 1, pageNum: 1 }), (!utmVal && channelQueryList && (channelQueryList === null || channelQueryList === void 0 ? void 0 : channelQueryList.length) > 0 && { channel: channelQueryList === null || channelQueryList === void 0 ? void 0 : channelQueryList.join('&') }));
733
+ }
658
734
  const result = yield (bffFetch === null || bffFetch === void 0 ? void 0 : bffFetch('/recommend/list', { method: 'GET', query }));
659
735
  if (!(result === null || result === void 0 ? void 0 : result.success)) {
660
736
  return undefined;
@@ -662,23 +738,20 @@ const SxpDataSourceProvider = ({ render, dataSources, utmVal, enableReportEvent
662
738
  if (!(query === null || query === void 0 ? void 0 : query.hashTag))
663
739
  setCurReqInfo({ rtc: result.data.rtc, requestId: result.data.requestId });
664
740
  return result === null || result === void 0 ? void 0 : result.data;
665
- }), [bffFetch, utmVal, maxSize, defaultSize]);
741
+ }), [bffFetch, utmVal, maxSize, defaultSize, globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.enablePreview, channelQueryList, isEditor]);
666
742
  const loadVideos = React.useCallback(() => __awaiter(void 0, void 0, void 0, function* () {
743
+ var _j, _k, _l, _m;
667
744
  if (rtcList.length <= 0) {
668
745
  return;
669
746
  }
670
- const data = yield getRecommendVideos({
671
- hashTag: waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.hashTag,
672
- 'itemFilter.itemId': waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.itemId,
673
- 'itemFilter.itemType': waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.itemType,
674
- themeTag: themeTag.current
675
- });
747
+ const lastItem = rtcList === null || rtcList === void 0 ? void 0 : rtcList[(rtcList === null || rtcList === void 0 ? void 0 : rtcList.length) - 1];
748
+ const data = yield getRecommendVideos(Object.assign(Object.assign(Object.assign({ hashTag: waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.hashTag }, (((_j = lastItem === null || lastItem === void 0 ? void 0 : lastItem.product) === null || _j === void 0 ? void 0 : _j.itemId) && { productFilter: (_k = lastItem === null || lastItem === void 0 ? void 0 : lastItem.product) === null || _k === void 0 ? void 0 : _k.itemId })), (((_l = lastItem === null || lastItem === void 0 ? void 0 : lastItem.video) === null || _l === void 0 ? void 0 : _l.itemId) && { contentFilter: (_m = lastItem === null || lastItem === void 0 ? void 0 : lastItem.video) === null || _m === void 0 ? void 0 : _m.itemId })), { themeTag: themeTag.current }));
676
749
  setRtcList(rtcList.concat(getFilterRecList(data)));
677
750
  setCacheRtcList(cacheRtcList.concat(getFilterRecList(data)));
678
751
  }), [getRecommendVideos, rtcList, waterFallData, cacheRtcList]);
679
752
  const bffEventReport = React.useCallback(({ userInfo, eventInfo }) => {
680
753
  // 关闭 BFF 事件上报
681
- if (!enableReportEvent) {
754
+ if (!enableReportEvent || (globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.enablePreview)) {
682
755
  return;
683
756
  }
684
757
  // 用户信息都是公共的
@@ -689,7 +762,7 @@ const SxpDataSourceProvider = ({ render, dataSources, utmVal, enableReportEvent
689
762
  };
690
763
  }
691
764
  const sessionID = storeAndLoadFeSessionId();
692
- const ef = Object.assign({ sessionID, rtc: curReqInfo.rtc, requestId: curReqInfo.requestId }, eventInfo);
765
+ const ef = Object.assign(Object.assign({ sessionID, rtc: curReqInfo.rtc, requestId: curReqInfo.requestId }, eventInfo), { sxpDevice: getDevice$1(), sxpSystem: getSystem(), sxpBrowser: getBrowserInfo() });
693
766
  const realUserInfo = Object.entries(userInfo).map(([k, v]) => ({ name: k, value: v }));
694
767
  const realEventInfo = Object.entries(ef)
695
768
  .map(([k, v]) => v && { name: k, value: v })
@@ -703,11 +776,11 @@ const SxpDataSourceProvider = ({ render, dataSources, utmVal, enableReportEvent
703
776
  body: { userInfo: realUserInfo, eventInfo: realEventInfo },
704
777
  type: 'beacon'
705
778
  });
706
- }, [bffFetch, curReqInfo, enableReportEvent]);
779
+ }, [bffFetch, curReqInfo, enableReportEvent, globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.enablePreview]);
707
780
  const bffFbReport = React.useCallback((_a) => {
708
- var _b;
781
+ var _b, _c;
709
782
  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;
710
- if (!enableReportEvent || !enabledMetaConversionApi) {
783
+ if (!enableReportEvent || !enabledMetaConversionApi || (globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.enablePreview)) {
711
784
  return;
712
785
  }
713
786
  const fakeUserId = storeAndLoadFeUserId();
@@ -718,12 +791,15 @@ const SxpDataSourceProvider = ({ render, dataSources, utmVal, enableReportEvent
718
791
  actionSource,
719
792
  eventSourceUrl,
720
793
  userData: {
721
- externalId: fakeUserId
794
+ externalId: fakeUserId,
795
+ fbc: `fb.2.${new Date().getTime()}.${getCookie('_fbc')}`,
796
+ fbp: `fb.2.${new Date().getTime()}.${getCookie('_fbp')}`,
797
+ client_user_agent: (_c = window === null || window === void 0 ? void 0 : window.navigator) === null || _c === void 0 ? void 0 : _c.userAgent
722
798
  }
723
799
  },
724
800
  type: 'beacon'
725
801
  });
726
- }, [bffFetch, enableReportEvent, enabledMetaConversionApi]);
802
+ }, [bffFetch, enableReportEvent, enabledMetaConversionApi, globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.enablePreview]);
727
803
  const bffMutateLike = React.useCallback((body) => __awaiter(void 0, void 0, void 0, function* () {
728
804
  const res = yield (bffFetch === null || bffFetch === void 0 ? void 0 : bffFetch('/recommend/like', { method: 'POST', body }));
729
805
  return res === null || res === void 0 ? void 0 : res.success;
@@ -738,24 +814,24 @@ const SxpDataSourceProvider = ({ render, dataSources, utmVal, enableReportEvent
738
814
  }), [bffFetch]);
739
815
  // 获取 Tag
740
816
  const bffGetTagList = React.useCallback(() => __awaiter(void 0, void 0, void 0, function* () {
741
- var _j, _k, _l, _m, _o;
817
+ var _o, _p, _q, _r, _s;
742
818
  if (!utmVal || !isShowTag)
743
819
  return;
744
820
  try {
745
- const val = (_l = (_k = (_j = utmVal === null || utmVal === void 0 ? void 0 : utmVal.split('&')) === null || _j === void 0 ? void 0 : _j.filter((val) => {
821
+ const val = (_q = (_p = (_o = utmVal === null || utmVal === void 0 ? void 0 : utmVal.split('&')) === null || _o === void 0 ? void 0 : _o.filter((val) => {
746
822
  var _a, _b;
747
823
  const key = val.split('=')[0];
748
824
  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);
749
- })) === null || _k === void 0 ? void 0 : _k.join('&')) !== null && _l !== void 0 ? _l : '';
825
+ })) === null || _p === void 0 ? void 0 : _p.join('&')) !== null && _q !== void 0 ? _q : '';
750
826
  const result = yield (bffFetch === null || bffFetch === void 0 ? void 0 : bffFetch('/tag/list', { method: 'GET', query: { channel: decodeURIComponent(val) } }));
751
- setTagList((_o = (_m = result === null || result === void 0 ? void 0 : result.data) === null || _m === void 0 ? void 0 : _m.tags) !== null && _o !== void 0 ? _o : []);
827
+ setTagList((_s = (_r = result === null || result === void 0 ? void 0 : result.data) === null || _r === void 0 ? void 0 : _r.tags) !== null && _s !== void 0 ? _s : []);
752
828
  }
753
829
  catch (e) {
754
830
  console.log('e', e);
755
831
  }
756
832
  }), [bffFetch, utmVal, isShowTag]);
757
833
  const ctaEvent = React.useCallback((eventInfo, rec, product, position) => {
758
- 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;
834
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11;
759
835
  const cta = product === null || product === void 0 ? void 0 : product.bindCta;
760
836
  const isProd = ((_a = rec === null || rec === void 0 ? void 0 : rec.video) === null || _a === void 0 ? void 0 : _a.bindProduct) || (((_b = rec === null || rec === void 0 ? void 0 : rec.video) === null || _b === void 0 ? void 0 : _b.bindProducts) && ((_d = (_c = rec === null || rec === void 0 ? void 0 : rec.video) === null || _c === void 0 ? void 0 : _c.bindProducts) === null || _d === void 0 ? void 0 : _d.length) > 0);
761
837
  let fromKName = '';
@@ -768,8 +844,9 @@ const SxpDataSourceProvider = ({ render, dataSources, utmVal, enableReportEvent
768
844
  else if ((_g = (_f = rec === null || rec === void 0 ? void 0 : rec.video) === null || _f === void 0 ? void 0 : _f.imgUrls) === null || _g === void 0 ? void 0 : _g.length) {
769
845
  fromKName = 'imagePage';
770
846
  }
847
+ const contentTags = (_p = (_m = (_h = product === null || product === void 0 ? void 0 : product.tags) !== null && _h !== void 0 ? _h : (_l = (_k = (_j = rec === null || rec === void 0 ? void 0 : rec.video) === null || _j === void 0 ? void 0 : _j.bindProducts) === null || _k === void 0 ? void 0 : _k[0]) === null || _l === void 0 ? void 0 : _l.tags) !== null && _m !== void 0 ? _m : (_o = rec === null || rec === void 0 ? void 0 : rec.video) === null || _o === void 0 ? void 0 : _o.tags) !== null && _p !== void 0 ? _p : (_q = rec === null || rec === void 0 ? void 0 : rec.product) === null || _q === void 0 ? void 0 : _q.tags;
771
848
  bffEventReport === null || bffEventReport === void 0 ? void 0 : bffEventReport({
772
- eventInfo: Object.assign(Object.assign({}, eventInfo), { ctaId: (_h = cta === null || cta === void 0 ? void 0 : cta.itemId) !== null && _h !== void 0 ? _h : '', ctaName: (_j = cta === null || cta === void 0 ? void 0 : cta.title) !== null && _j !== void 0 ? _j : '', contentTags: JSON.stringify(cta === null || cta === void 0 ? void 0 : cta.tags), position: position + '', contentId: (_l = (_k = rec === null || rec === void 0 ? void 0 : rec.video) === null || _k === void 0 ? void 0 : _k.itemId) !== null && _l !== void 0 ? _l : '', productId: isProd ? product === null || product === void 0 ? void 0 : product.itemId : '', traceInfo: (_2 = (_z = (_u = (_q = (_m = cta === null || cta === void 0 ? void 0 : cta.traceInfo) !== null && _m !== void 0 ? _m : (_p = (_o = rec === null || rec === void 0 ? void 0 : rec.video) === null || _o === void 0 ? void 0 : _o.bindCta) === null || _p === void 0 ? void 0 : _p.traceInfo) !== null && _q !== void 0 ? _q : (_t = (_s = (_r = rec === null || rec === void 0 ? void 0 : rec.video) === null || _r === void 0 ? void 0 : _r.bindProduct) === null || _s === void 0 ? void 0 : _s.bindCta) === null || _t === void 0 ? void 0 : _t.traceInfo) !== null && _u !== void 0 ? _u : (_y = (_x = (_w = (_v = rec === null || rec === void 0 ? void 0 : rec.video) === null || _v === void 0 ? void 0 : _v.bindProducts) === null || _w === void 0 ? void 0 : _w[0]) === null || _x === void 0 ? void 0 : _x.bindCta) === null || _y === void 0 ? void 0 : _y.traceInfo) !== null && _z !== void 0 ? _z : (_1 = (_0 = rec === null || rec === void 0 ? void 0 : rec.product) === null || _0 === void 0 ? void 0 : _0.bindCta) === null || _1 === void 0 ? void 0 : _1.traceInfo) !== null && _2 !== void 0 ? _2 : '', fromKName, fromKPage: (_3 = location === null || location === void 0 ? void 0 : location.href) !== null && _3 !== void 0 ? _3 : '' })
849
+ eventInfo: Object.assign(Object.assign({}, eventInfo), { ctaId: (_r = cta === null || cta === void 0 ? void 0 : cta.itemId) !== null && _r !== void 0 ? _r : '', ctaName: (_s = cta === null || cta === void 0 ? void 0 : cta.title) !== null && _s !== void 0 ? _s : '', contentTags: contentTags ? JSON.stringify(contentTags) : '', position: position + '', contentId: (_u = (_t = rec === null || rec === void 0 ? void 0 : rec.video) === null || _t === void 0 ? void 0 : _t.itemId) !== null && _u !== void 0 ? _u : '', productId: isProd ? product === null || product === void 0 ? void 0 : product.itemId : '', traceInfo: (_10 = (_7 = (_2 = (_y = (_v = cta === null || cta === void 0 ? void 0 : cta.traceInfo) !== null && _v !== void 0 ? _v : (_x = (_w = rec === null || rec === void 0 ? void 0 : rec.video) === null || _w === void 0 ? void 0 : _w.bindCta) === null || _x === void 0 ? void 0 : _x.traceInfo) !== null && _y !== void 0 ? _y : (_1 = (_0 = (_z = rec === null || rec === void 0 ? void 0 : rec.video) === null || _z === void 0 ? void 0 : _z.bindProduct) === null || _0 === void 0 ? void 0 : _0.bindCta) === null || _1 === void 0 ? void 0 : _1.traceInfo) !== null && _2 !== void 0 ? _2 : (_6 = (_5 = (_4 = (_3 = rec === null || rec === void 0 ? void 0 : rec.video) === null || _3 === void 0 ? void 0 : _3.bindProducts) === null || _4 === void 0 ? void 0 : _4[0]) === null || _5 === void 0 ? void 0 : _5.bindCta) === null || _6 === void 0 ? void 0 : _6.traceInfo) !== null && _7 !== void 0 ? _7 : (_9 = (_8 = rec === null || rec === void 0 ? void 0 : rec.product) === null || _8 === void 0 ? void 0 : _8.bindCta) === null || _9 === void 0 ? void 0 : _9.traceInfo) !== null && _10 !== void 0 ? _10 : '', fromKName, fromKPage: (_11 = location === null || location === void 0 ? void 0 : location.href) !== null && _11 !== void 0 ? _11 : '' })
773
850
  });
774
851
  }, [bffEventReport, isFromHashtag]);
775
852
  const h5EnterLink = React.useCallback(() => {
@@ -1121,7 +1198,7 @@ var index$2 = /*#__PURE__*/Object.freeze({
1121
1198
  EditorCore: EditorCore
1122
1199
  });
1123
1200
 
1124
- var interactionRender$d = [
1201
+ var interactionRender$e = [
1125
1202
  {
1126
1203
  title: '点击事件',
1127
1204
  child: [
@@ -1137,11 +1214,26 @@ var interactionRender$d = [
1137
1214
  * @Author: binruan@chatlabs.com
1138
1215
  * @Date: 2023-07-28 18:29:57
1139
1216
  * @LastEditors: binruan@chatlabs.com
1140
- * @LastEditTime: 2024-08-06 14:13:47
1217
+ * @LastEditTime: 2024-08-06 15:35:25
1141
1218
  * @FilePath: \pb-sxp-ui\src\materials\sxp\popup\AppointForm\settingRender.tsx
1142
1219
  *
1143
1220
  */
1144
- var settingRender$9 = [
1221
+ var settingRender$a = [
1222
+ {
1223
+ title: '弹窗背景',
1224
+ child: [
1225
+ {
1226
+ type: 'Number',
1227
+ label: '左右边距',
1228
+ name: ['props', 'popupBg', 'horizontalMargin']
1229
+ },
1230
+ {
1231
+ type: 'Number',
1232
+ label: '下边距',
1233
+ name: ['props', 'popupBg', 'bottomMargin']
1234
+ }
1235
+ ]
1236
+ },
1145
1237
  {
1146
1238
  type: 'Text',
1147
1239
  label: '组件名称',
@@ -1196,11 +1288,6 @@ var settingRender$9 = [
1196
1288
  type: 'TextAlign',
1197
1289
  name: ['textStyle']
1198
1290
  },
1199
- {
1200
- label: '标题间距',
1201
- type: 'TextSpace',
1202
- name: ['textStyle']
1203
- },
1204
1291
  {
1205
1292
  label: '表单布局',
1206
1293
  type: 'Radius',
@@ -1259,12 +1346,10 @@ var settingRender$9 = [
1259
1346
  ]
1260
1347
  },
1261
1348
  {
1262
- label: '提交按钮文本样式',
1263
1349
  type: 'TextStyle',
1264
1350
  name: ['props', 'submitButtonStyle']
1265
1351
  },
1266
1352
  {
1267
- label: '提交按钮对齐',
1268
1353
  type: 'TextAlign',
1269
1354
  name: ['props', 'submitButtonStyle']
1270
1355
  },
@@ -1272,11 +1357,6 @@ var settingRender$9 = [
1272
1357
  label: '提交按钮颜色',
1273
1358
  type: 'Color',
1274
1359
  name: ['props', 'submitBgColor']
1275
- },
1276
- {
1277
- label: '提交按钮间距',
1278
- type: 'TextSpace',
1279
- name: ['props', 'submitButtonStyle']
1280
1360
  }
1281
1361
  // {
1282
1362
  // label: '接收内容接口地址',
@@ -1311,14 +1391,14 @@ var settingRender$9 = [
1311
1391
  * @Author: binruan@chatlabs.com
1312
1392
  * @Date: 2024-03-12 10:59:06
1313
1393
  * @LastEditors: binruan@chatlabs.com
1314
- * @LastEditTime: 2024-08-01 17:36:34
1394
+ * @LastEditTime: 2024-08-14 17:02:53
1315
1395
  * @FilePath: \pb-sxp-ui\src\core\hooks\useEventReport.ts
1316
1396
  *
1317
1397
  */
1318
1398
  function useEventReport() {
1319
1399
  const { bffEventReport, popupDetailData, waterFallData, isFromHashtag } = useSxpDataSource();
1320
1400
  const jumpToWeb = React.useCallback((data, product, cta, position) => {
1321
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1;
1401
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9;
1322
1402
  let fromKName = '';
1323
1403
  if (popupDetailData && (((_b = (_a = data === null || data === void 0 ? void 0 : data.video) === null || _a === void 0 ? void 0 : _a.bindProducts) === null || _b === void 0 ? void 0 : _b.length) || ((_c = data === null || data === void 0 ? void 0 : data.video) === null || _c === void 0 ? void 0 : _c.bindProduct))) {
1324
1404
  fromKName = 'pdpPage';
@@ -1335,21 +1415,22 @@ function useEventReport() {
1335
1415
  else if (data === null || data === void 0 ? void 0 : data.product) {
1336
1416
  fromKName = 'productPage';
1337
1417
  }
1418
+ const contentTags = (_p = (_m = (_h = product === null || product === void 0 ? void 0 : product.tags) !== null && _h !== void 0 ? _h : (_l = (_k = (_j = data === null || data === void 0 ? void 0 : data.video) === null || _j === void 0 ? void 0 : _j.bindProducts) === null || _k === void 0 ? void 0 : _k[0]) === null || _l === void 0 ? void 0 : _l.tags) !== null && _m !== void 0 ? _m : (_o = data === null || data === void 0 ? void 0 : data.video) === null || _o === void 0 ? void 0 : _o.tags) !== null && _p !== void 0 ? _p : (_q = data === null || data === void 0 ? void 0 : data.product) === null || _q === void 0 ? void 0 : _q.tags;
1338
1419
  bffEventReport === null || bffEventReport === void 0 ? void 0 : bffEventReport({
1339
1420
  eventInfo: {
1340
1421
  eventSubject: 'jumpToWeb',
1341
1422
  eventDescription: 'User jumped to website',
1342
- productId: (_h = product === null || product === void 0 ? void 0 : product.itemId) !== null && _h !== void 0 ? _h : '',
1343
- productName: (_j = product === null || product === void 0 ? void 0 : product.title) !== null && _j !== void 0 ? _j : '',
1423
+ productId: (_r = product === null || product === void 0 ? void 0 : product.itemId) !== null && _r !== void 0 ? _r : '',
1424
+ productName: (_s = product === null || product === void 0 ? void 0 : product.title) !== null && _s !== void 0 ? _s : '',
1344
1425
  price: (product === null || product === void 0 ? void 0 : product.price) ? (product === null || product === void 0 ? void 0 : product.price) + '' : '0',
1345
- productCollection: (_k = product === null || product === void 0 ? void 0 : product.collection) !== null && _k !== void 0 ? _k : '',
1426
+ productCollection: (_t = product === null || product === void 0 ? void 0 : product.collection) !== null && _t !== void 0 ? _t : '',
1346
1427
  fromKName,
1347
1428
  fromKPage: location === null || location === void 0 ? void 0 : location.href,
1348
- contentTags: (product === null || product === void 0 ? void 0 : product.tags) ? JSON.stringify(product === null || product === void 0 ? void 0 : product.tags) : '',
1429
+ contentTags: contentTags ? JSON.stringify(contentTags) : '',
1349
1430
  position: position + '',
1350
- contentId: (_m = (_l = data === null || data === void 0 ? void 0 : data.video) === null || _l === void 0 ? void 0 : _l.itemId) !== null && _m !== void 0 ? _m : '',
1351
- ctatId: (_o = cta === null || cta === void 0 ? void 0 : cta.itemId) !== null && _o !== void 0 ? _o : '',
1352
- traceInfo: (_1 = (_y = (_w = (_s = (_p = product === null || product === void 0 ? void 0 : product.traceInfo) !== null && _p !== void 0 ? _p : (_r = (_q = data === null || data === void 0 ? void 0 : data.video) === null || _q === void 0 ? void 0 : _q.bindProduct) === null || _r === void 0 ? void 0 : _r.traceInfo) !== null && _s !== void 0 ? _s : (_v = (_u = (_t = data === null || data === void 0 ? void 0 : data.video) === null || _t === void 0 ? void 0 : _t.bindProducts) === null || _u === void 0 ? void 0 : _u[0]) === null || _v === void 0 ? void 0 : _v.traceInfo) !== null && _w !== void 0 ? _w : (_x = data === null || data === void 0 ? void 0 : data.product) === null || _x === void 0 ? void 0 : _x.traceInfo) !== null && _y !== void 0 ? _y : (_0 = (_z = data === null || data === void 0 ? void 0 : data.video) === null || _z === void 0 ? void 0 : _z.bindCta) === null || _0 === void 0 ? void 0 : _0.traceInfo) !== null && _1 !== void 0 ? _1 : ''
1431
+ contentId: (_v = (_u = data === null || data === void 0 ? void 0 : data.video) === null || _u === void 0 ? void 0 : _u.itemId) !== null && _v !== void 0 ? _v : '',
1432
+ ctatId: (_w = cta === null || cta === void 0 ? void 0 : cta.itemId) !== null && _w !== void 0 ? _w : '',
1433
+ traceInfo: (_9 = (_6 = (_4 = (_0 = (_x = product === null || product === void 0 ? void 0 : product.traceInfo) !== null && _x !== void 0 ? _x : (_z = (_y = data === null || data === void 0 ? void 0 : data.video) === null || _y === void 0 ? void 0 : _y.bindProduct) === null || _z === void 0 ? void 0 : _z.traceInfo) !== null && _0 !== void 0 ? _0 : (_3 = (_2 = (_1 = data === null || data === void 0 ? void 0 : data.video) === null || _1 === void 0 ? void 0 : _1.bindProducts) === null || _2 === void 0 ? void 0 : _2[0]) === null || _3 === void 0 ? void 0 : _3.traceInfo) !== null && _4 !== void 0 ? _4 : (_5 = data === null || data === void 0 ? void 0 : data.product) === null || _5 === void 0 ? void 0 : _5.traceInfo) !== null && _6 !== void 0 ? _6 : (_8 = (_7 = data === null || data === void 0 ? void 0 : data.video) === null || _7 === void 0 ? void 0 : _7.bindCta) === null || _8 === void 0 ? void 0 : _8.traceInfo) !== null && _9 !== void 0 ? _9 : ''
1353
1434
  }
1354
1435
  });
1355
1436
  }, [bffEventReport, popupDetailData, isFromHashtag]);
@@ -1519,9 +1600,9 @@ const AppointForm = createMaterial(AppointFormComponent, {
1519
1600
  category: 'popup',
1520
1601
  type: 'AppointForm',
1521
1602
  related: {
1522
- settingRender: settingRender$9,
1603
+ settingRender: settingRender$a,
1523
1604
  bindableProps: [],
1524
- interactionRender: interactionRender$d
1605
+ interactionRender: interactionRender$e
1525
1606
  },
1526
1607
  defaulSetting: {
1527
1608
  name: '表单',
@@ -1544,10 +1625,41 @@ const AppointForm = createMaterial(AppointFormComponent, {
1544
1625
  sort: 2
1545
1626
  });
1546
1627
 
1547
- var settingRender$8 = [
1628
+ var settingRender$9 = [
1629
+ {
1630
+ title: '弹窗背景',
1631
+ child: [
1632
+ {
1633
+ type: 'Number',
1634
+ label: '左右边距',
1635
+ name: ['props', 'popupBg', 'horizontalMargin']
1636
+ },
1637
+ {
1638
+ type: 'Number',
1639
+ label: '下边距',
1640
+ name: ['props', 'popupBg', 'bottomMargin']
1641
+ }
1642
+ ]
1643
+ },
1548
1644
  {
1549
1645
  title: '商品图片',
1550
1646
  child: [
1647
+ {
1648
+ type: 'Group',
1649
+ label: '宽高比',
1650
+ child: [
1651
+ {
1652
+ type: 'Number',
1653
+ name: ['props', 'commodityImgRatio', 'w'],
1654
+ addonAfter: 'w'
1655
+ },
1656
+ {
1657
+ type: 'Number',
1658
+ name: ['props', 'commodityImgRatio', 'h'],
1659
+ addonAfter: 'h'
1660
+ }
1661
+ ]
1662
+ },
1551
1663
  {
1552
1664
  type: 'Radius',
1553
1665
  label: '轮播指示器',
@@ -1559,6 +1671,10 @@ var settingRender$8 = [
1559
1671
  {
1560
1672
  label: '居中',
1561
1673
  value: 'center'
1674
+ },
1675
+ {
1676
+ label: '居右',
1677
+ value: 'right'
1562
1678
  }
1563
1679
  ],
1564
1680
  name: ['props', 'swiper', 'dotsAlign']
@@ -1719,10 +1835,6 @@ var settingRender$8 = [
1719
1835
  label: '默认行数',
1720
1836
  type: 'Number',
1721
1837
  name: ['lineClamp']
1722
- },
1723
- {
1724
- label: '间距',
1725
- type: 'TextSpace'
1726
1838
  }
1727
1839
  ]
1728
1840
  }
@@ -1808,11 +1920,17 @@ var settingRender$8 = [
1808
1920
  {
1809
1921
  type: 'TextAlign',
1810
1922
  name: ['props', 'buttonStyle']
1811
- },
1923
+ }
1924
+ ]
1925
+ },
1926
+ {
1927
+ title: 'Iframe商品弹窗',
1928
+ child: [
1812
1929
  {
1813
- label: '间距',
1814
- type: 'TextSpace',
1815
- name: ['props', 'buttonStyle']
1930
+ label: '弹窗按钮',
1931
+ type: 'Upload',
1932
+ name: ['props', 'iframeIcon'],
1933
+ text: '建议尺寸:106 * 41'
1816
1934
  }
1817
1935
  ]
1818
1936
  }
@@ -8644,13 +8762,13 @@ SwiperSlide.displayName = 'SwiperSlide';
8644
8762
  * @Author: binruan@chatlabs.com
8645
8763
  * @Date: 2023-11-02 18:34:34
8646
8764
  * @LastEditors: binruan@chatlabs.com
8647
- * @LastEditTime: 2024-07-29 16:20:40
8765
+ * @LastEditTime: 2024-08-06 16:35:43
8648
8766
  * @FilePath: \pb-sxp-ui\src\core\components\SxpPageRender\Modal\index.tsx
8649
8767
  *
8650
8768
  */
8651
8769
  const closeIcon$1 = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAjhJREFUWEfFlztOw0AQhmeWiJ4CCmpQ5DiRQsIJyAWg5A0lR0AIChDiCJS8ER0cADgBeRSxt4CCDgkaKiq8i+zYeWx2413HEWmiJJv9v535Z2aN8M8vFPT9z3zETD0aAUChUJjwvPFHAJhBhB3Hqd6OAsK2yyucwykAvP38eJX398Z3AJDLlVYR8ToU9Rhj25TWr9KEsKy5dULIGQCMtfZly45TvwsAstm56UwG6wA4FUFwzrdctxZBDcWSy5XWEPG8I84/GcMipdWPtgcsaz5PCHtKG0IuTiqUvjT9U/WYMG2IOPE+AP+LtCB0xKUAAyA2Xbd2o2OG0NQXvTnvhL17D7EPtH9TRCIWwkRcGYGIQgYBABuqPuHXOQBc6pw80lBGwBQiiXhsBHQhkoprA6iM6acjhDQKu5YJZW6XeOI3XJdpvfsdTu52VfXEekD8owQiXGIubpSCbhDbLu8DwKEAd+A41SOdPpE4BS0viFOtvV2iKWqUgn5x/tmS70xR01GuDSCKc86/OCcLgTyyZ0ScDGNhFAktAJV4NFJ9YyaFiAWIE+9uVkkgBgLoig8DMWAa9ro9ynkUdlW5maZDCmB6clmz0k1HH4Cs1Ezbq2p2yEpUuBOKTSZZex00RUWIrltxuuK6EOGDSbGIOPZicpMx6fny650377qNRgBgWeVFQuA+6UjVgREhGIMlSqsPUQqIbZdOOIdZQmCv2axRnU1N1+TzJYsxOEaEV8ep7frPZ7Gd0FTEdP0ft0/kMNdg0eoAAAAASUVORK5CYII=';
8652
8770
  const Modal = ({ visible, onClose, children, modalStyle, padding, popup, schema, fullHeight = window.innerHeight, isFullScreen = false }) => {
8653
- var _a, _b;
8771
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t;
8654
8772
  const touchRef = React.useRef(null);
8655
8773
  const fTouchRef = React.useRef(null);
8656
8774
  const touchMoveRef = React.useRef(null);
@@ -8677,12 +8795,16 @@ const Modal = ({ visible, onClose, children, modalStyle, padding, popup, schema,
8677
8795
  const isOpen = React.useMemo(() => {
8678
8796
  return ((popup === null || popup === void 0 ? void 0 : popup.id) && (popup === null || popup === void 0 ? void 0 : popup.id) !== '') || visible;
8679
8797
  }, [visible, popup]);
8680
- const isScrollFullScreen = React.useMemo(() => {
8681
- var _a, _b, _c, _d, _e;
8798
+ const getPopupById = React.useMemo(() => {
8799
+ var _a, _b, _c;
8682
8800
  const schemaData = schema !== null && schema !== void 0 ? schema : _schema;
8683
8801
  const value = (_c = (_b = (_a = schemaData === null || schemaData === void 0 ? void 0 : schemaData.sxpPageConf) === null || _a === void 0 ? void 0 : _a.globalConfig) === null || _b === void 0 ? void 0 : _b.popupList) === null || _c === void 0 ? void 0 : _c.find((value) => (value === null || value === void 0 ? void 0 : value.id) === (popup === null || popup === void 0 ? void 0 : popup.id));
8684
- return ((_e = (_d = value === null || value === void 0 ? void 0 : value.item) === null || _d === void 0 ? void 0 : _d.event) === null || _e === void 0 ? void 0 : _e.isScrollFullScreen) || false;
8802
+ return value;
8685
8803
  }, [popup, schema, _schema]);
8804
+ const isScrollFullScreen = React.useMemo(() => {
8805
+ var _a, _b;
8806
+ return ((_b = (_a = getPopupById === null || getPopupById === void 0 ? void 0 : getPopupById.item) === null || _a === void 0 ? void 0 : _a.event) === null || _b === void 0 ? void 0 : _b.isScrollFullScreen) || false;
8807
+ }, [getPopupById]);
8686
8808
  React.useEffect(() => {
8687
8809
  if (isOpen) {
8688
8810
  setIsShow(true);
@@ -8749,22 +8871,31 @@ const Modal = ({ visible, onClose, children, modalStyle, padding, popup, schema,
8749
8871
  touchMoveRef.current = false;
8750
8872
  };
8751
8873
  return ReactDOM__namespace.createPortal(React.createElement(React.Fragment, null, isShow && (React.createElement("div", { className: 'modal-bg', style: Object.assign({ display: 'flex', backgroundColor: isOpen ? 'rgba(0, 0, 0, 0.7)' : 'rgba(0, 0, 0, 0)' }, modalStyle), onClick: handleClose },
8752
- React.createElement("div", Object.assign({ className: `modal-container ${isOpen ? 'modal-popIn' : 'modal-popOut'}`, style: Object.assign({ padding, animationDuration: ((_a = popup === null || popup === void 0 ? void 0 : popup.duration) !== null && _a !== void 0 ? _a : 0) / 1000 + 's' }, (isScrollFullScreen && {
8753
- transform: `translateY(${modalTrans}px)`
8754
- })), onClick: (e) => {
8755
- e.stopPropagation();
8756
- e.preventDefault();
8757
- } }, (isScrollFullScreen && {
8758
- onTouchMove: handleTouchMove,
8759
- onTouchStart: handleTouchStart,
8760
- onTouchEnd: handleTouchEnd
8761
- })),
8762
- React.createElement("div", { onClick: onClose, className: 'modal-icon-wrapper' },
8763
- React.createElement("img", { src: (_b = globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.popupCloseIcon) !== null && _b !== void 0 ? _b : closeIcon$1, alt: 'close', className: 'modal-icon' })),
8764
- React.createElement("div", { ref: ref, style: {
8765
- height: isScrollFullScreen ? fullHeight : MODAL_DEF_CON_H,
8766
- overflow: (isScrollFullScreen && modalTrans <= 0) || !isScrollFullScreen ? 'auto' : 'hidden'
8767
- } }, children))))), modalEleRef.current);
8874
+ React.createElement("div", { style: {
8875
+ position: 'relative',
8876
+ left: `${(_d = (_c = (_b = (_a = getPopupById === null || getPopupById === void 0 ? void 0 : getPopupById.item) === null || _a === void 0 ? void 0 : _a.props) === null || _b === void 0 ? void 0 : _b.popupBg) === null || _c === void 0 ? void 0 : _c.horizontalMargin) !== null && _d !== void 0 ? _d : 0}px`,
8877
+ right: `${(_h = (_g = (_f = (_e = getPopupById === null || getPopupById === void 0 ? void 0 : getPopupById.item) === null || _e === void 0 ? void 0 : _e.props) === null || _f === void 0 ? void 0 : _f.popupBg) === null || _g === void 0 ? void 0 : _g.horizontalMargin) !== null && _h !== void 0 ? _h : 0}px`,
8878
+ bottom: `${(_m = (_l = (_k = (_j = getPopupById === null || getPopupById === void 0 ? void 0 : getPopupById.item) === null || _j === void 0 ? void 0 : _j.props) === null || _k === void 0 ? void 0 : _k.popupBg) === null || _l === void 0 ? void 0 : _l.bottomMargin) !== null && _m !== void 0 ? _m : 0}px`,
8879
+ overflow: 'hidden',
8880
+ width: `calc(100% - ${((_r = (_q = (_p = (_o = getPopupById === null || getPopupById === void 0 ? void 0 : getPopupById.item) === null || _o === void 0 ? void 0 : _o.props) === null || _p === void 0 ? void 0 : _p.popupBg) === null || _q === void 0 ? void 0 : _q.horizontalMargin) !== null && _r !== void 0 ? _r : 0) * 2}px)`,
8881
+ height: '100%'
8882
+ } },
8883
+ React.createElement("div", Object.assign({ className: `modal-container ${isOpen ? 'modal-popIn' : 'modal-popOut'}`, style: Object.assign({ padding, animationDuration: ((_s = popup === null || popup === void 0 ? void 0 : popup.duration) !== null && _s !== void 0 ? _s : 0) / 1000 + 's' }, (isScrollFullScreen && {
8884
+ transform: `translateY(${modalTrans}px)`
8885
+ })), onClick: (e) => {
8886
+ e.stopPropagation();
8887
+ e.preventDefault();
8888
+ } }, (isScrollFullScreen && {
8889
+ onTouchMove: handleTouchMove,
8890
+ onTouchStart: handleTouchStart,
8891
+ onTouchEnd: handleTouchEnd
8892
+ })),
8893
+ React.createElement("div", { onClick: onClose, className: 'modal-icon-wrapper' },
8894
+ 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' })),
8895
+ React.createElement("div", { ref: ref, style: {
8896
+ height: isScrollFullScreen ? fullHeight : MODAL_DEF_CON_H,
8897
+ overflow: (isScrollFullScreen && modalTrans <= 0) || !isScrollFullScreen ? 'auto' : 'hidden'
8898
+ } }, children)))))), modalEleRef.current);
8768
8899
  };
8769
8900
  var Modal$1 = React.memo(Modal);
8770
8901
 
@@ -8850,7 +8981,7 @@ const FormatImage = React.forwardRef((props, ref) => {
8850
8981
  }, [src]);
8851
8982
  React.useEffect(() => {
8852
8983
  const onShow = () => {
8853
- if (src && !visible) {
8984
+ if (src && !visible && imgRef.current) {
8854
8985
  imgRef.current.src = '';
8855
8986
  imgRef.current.src = src;
8856
8987
  }
@@ -8930,8 +9061,8 @@ const CommodityGroup = ({ products, data, defImg, style, onCLick, popupDetailDat
8930
9061
  var CommodityGroup$1 = React.memo(CommodityGroup);
8931
9062
 
8932
9063
  const CommodityDetail$1 = (_a) => {
8933
- var _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x;
8934
- var { content, style, bgImg, onClick, schema, isDefault, bottom_image, tipText, isPost, viewTime, rec, swiper, commodityStyles, buttonStyle, index, commodityGroup } = _a, props = __rest(_a, ["content", "style", "bgImg", "onClick", "schema", "isDefault", "bottom_image", "tipText", "isPost", "viewTime", "rec", "swiper", "commodityStyles", "buttonStyle", "index", "commodityGroup"]);
9064
+ 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;
9065
+ 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"]);
8935
9066
  const { sxpParameter, popupDetailData, isPreview, bffFbReport, popupCurTimeRef, checkCommodityIndexRef } = useSxpDataSource();
8936
9067
  const { jumpToWeb, productView } = useEventReport();
8937
9068
  const curTimeRef = React.useRef(null);
@@ -8987,7 +9118,8 @@ const CommodityDetail$1 = (_a) => {
8987
9118
  return '$7,000';
8988
9119
  }
8989
9120
  }, [product === null || product === void 0 ? void 0 : product.price, product === null || product === void 0 ? void 0 : product.currency]);
8990
- const width = isPreview ? 375 : (_t = style === null || style === void 0 ? void 0 : style.width) !== null && _t !== void 0 ? _t : window.innerWidth;
9121
+ const width = (isPreview ? 375 : (_t = style === null || style === void 0 ? void 0 : style.width) !== null && _t !== void 0 ? _t : window.innerWidth) - ((_u = popupBg === null || popupBg === void 0 ? void 0 : popupBg.horizontalMargin) !== null && _u !== void 0 ? _u : 0) * 2;
9122
+ const height = commodityImgRatio ? width * (commodityImgRatio.h / commodityImgRatio.w) : width;
8991
9123
  const renderContent = ({ isPost }) => {
8992
9124
  var _a, _b, _c, _d;
8993
9125
  return (React.createElement("div", null,
@@ -9034,25 +9166,32 @@ const CommodityDetail$1 = (_a) => {
9034
9166
  return;
9035
9167
  return (React.createElement(CommodityGroup$1, { products: (_a = data === null || data === void 0 ? void 0 : data.video) === null || _a === void 0 ? void 0 : _a.bindProducts, data: commodityGroup, defImg: (_c = (_b = sxpParameter === null || sxpParameter === void 0 ? void 0 : sxpParameter.bottom_image) !== null && _b !== void 0 ? _b : bottom_image) !== null && _c !== void 0 ? _c : '', style: { padding: '0 19px' }, onCLick: handleClick, popupDetailData: popupDetailData, check: checkCommodityIndex }));
9036
9168
  }, [checkCommodityIndex]);
9169
+ const getDotsAlign = React.useMemo(() => {
9170
+ const dotsAlignClass = {
9171
+ left: 'commondityDetail-swiper-clickable-left',
9172
+ center: 'commondityDetail-swiper-clickable-center',
9173
+ right: 'commondityDetail-swiper-clickable-right'
9174
+ };
9175
+ return dotsAlignClass === null || dotsAlignClass === void 0 ? void 0 : dotsAlignClass[swiper === null || swiper === void 0 ? void 0 : swiper.dotsAlign];
9176
+ }, [swiper === null || swiper === void 0 ? void 0 : swiper.dotsAlign]);
9177
+ const iframeUrl = ((_w = (_v = data === null || data === void 0 ? void 0 : data.video) === null || _v === void 0 ? void 0 : _v.bindProduct) === null || _w === void 0 ? void 0 : _w.remark) || ((_z = (_y = (_x = data === null || data === void 0 ? void 0 : data.video) === null || _x === void 0 ? void 0 : _x.bindProducts) === null || _y === void 0 ? void 0 : _y[0]) === null || _z === void 0 ? void 0 : _z.remark) || ((_0 = data === null || data === void 0 ? void 0 : data.product) === null || _0 === void 0 ? void 0 : _0.remark);
9037
9178
  return (React.createElement(React.Fragment, null,
9038
9179
  React.createElement("div", Object.assign({ className: css.css(Object.assign({}, style)) }, props),
9039
- product && ((_u = product === null || product === void 0 ? void 0 : product.homePage) === null || _u === void 0 ? void 0 : _u.length) > 0 && (React.createElement("div", { style: { position: 'relative' } },
9040
- React.createElement(Swiper, { height: width, modules: [Pagination, Autoplay], pagination: {
9180
+ React.createElement("div", { style: { position: 'relative' } },
9181
+ product && ((_1 = product === null || product === void 0 ? void 0 : product.homePage) === null || _1 === void 0 ? void 0 : _1.length) > 0 && (React.createElement(Swiper, { height: height, modules: [Pagination, Autoplay], pagination: {
9041
9182
  clickable: true,
9042
9183
  bulletActiveClass: 'swipe-item-active-bullet',
9043
- clickableClass: (swiper === null || swiper === void 0 ? void 0 : swiper.dotsAlign) === 'left'
9044
- ? 'commondityDetail-swiper-clickable-left'
9045
- : 'commondityDetail-swiper-clickable-center'
9184
+ clickableClass: getDotsAlign
9046
9185
  }, loop: true, autoplay: {
9047
9186
  delay: (swiper === null || swiper === void 0 ? void 0 : swiper.delay) * 1000
9048
9187
  } },
9049
- React.createElement(React.Fragment, null, (_v = product === null || product === void 0 ? void 0 : product.homePage) === null || _v === void 0 ? void 0 : _v.map((src) => {
9188
+ React.createElement(React.Fragment, null, (_2 = product === null || product === void 0 ? void 0 : product.homePage) === null || _2 === void 0 ? void 0 : _2.map((src) => {
9050
9189
  var _a;
9051
9190
  return (React.createElement(SwiperSlide, { key: src },
9052
9191
  React.createElement("div", { style: {
9053
9192
  overflow: 'hidden',
9054
9193
  width,
9055
- height: width
9194
+ height
9056
9195
  } },
9057
9196
  React.createElement(FormatImage$1, { style: {
9058
9197
  height: '100%',
@@ -9061,21 +9200,30 @@ const CommodityDetail$1 = (_a) => {
9061
9200
  display: 'block',
9062
9201
  objectPosition: `50% ${(swiper === null || swiper === void 0 ? void 0 : swiper.translateY) ? (swiper === null || swiper === void 0 ? void 0 : swiper.translateY) + 50 : 50}%`
9063
9202
  }, 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 }))));
9064
- }))))),
9065
- !((_w = product === null || product === void 0 ? void 0 : product.homePage) === null || _w === void 0 ? void 0 : _w.length) && (React.createElement("div", { className: css.css({
9066
- position: 'relative',
9067
- height: 0,
9068
- width: '100%',
9069
- paddingBottom: '100%',
9070
- overflow: 'hidden'
9071
- }) },
9072
- React.createElement("img", { className: css.css({
9073
- position: 'absolute',
9074
- left: 0,
9075
- top: 0,
9076
- objectFit: 'cover',
9077
- width: '100%'
9078
- }), src: (_x = sxpParameter === null || sxpParameter === void 0 ? void 0 : sxpParameter.bottom_image) !== null && _x !== void 0 ? _x : bottom_image, alt: 'pdp image' }))),
9203
+ })))),
9204
+ !((_3 = product === null || product === void 0 ? void 0 : product.homePage) === null || _3 === void 0 ? void 0 : _3.length) && (React.createElement("div", { className: css.css({
9205
+ height,
9206
+ width
9207
+ }) },
9208
+ React.createElement("img", { className: css.css({
9209
+ objectFit: 'cover',
9210
+ width: '100%',
9211
+ height: '100%'
9212
+ }), src: (_4 = sxpParameter === null || sxpParameter === void 0 ? void 0 : sxpParameter.bottom_image) !== null && _4 !== void 0 ? _4 : bottom_image, alt: 'pdp image' }))),
9213
+ (iframeUrl && iframeIcon) ||
9214
+ (!product && iframeIcon && (React.createElement("div", { style: {
9215
+ padding: '5px 10px',
9216
+ display: 'flex',
9217
+ alignItems: 'center',
9218
+ position: 'absolute',
9219
+ right: '10px',
9220
+ bottom: '10px',
9221
+ zIndex: 1,
9222
+ background: '#fff',
9223
+ borderRadius: '3px'
9224
+ }, onClick: () => setShow3DModal(true) },
9225
+ React.createElement("img", { src: iframeIcon, alt: '3d', width: '20px', height: '20px', style: { marginRight: '5px' } }),
9226
+ React.createElement("span", { style: { fontSize: '12px' } }, "Try in 3D"))))),
9079
9227
  renderCommodityGroup(),
9080
9228
  React.createElement("div", { className: 'pb-commondity-content' }, renderContent({ isPost }))),
9081
9229
  renderBtn(),
@@ -9083,10 +9231,11 @@ const CommodityDetail$1 = (_a) => {
9083
9231
  React.createElement("div", { style: { paddingBottom: '80px' } }, renderContent({ isPost: false })),
9084
9232
  renderBtn()),
9085
9233
  React.createElement(Modal$1, { visible: show3DModal, padding: 0, isFullScreen: true, onClose: () => setShow3DModal(false) },
9086
- React.createElement("iframe", { src: 'https://rimowa.threedium.co.uk/product-experience/latest/?sku=92573974&lang=en', style: {
9234
+ React.createElement("iframe", { src: iframeUrl, style: {
9087
9235
  width: '100%',
9088
- height: 'calc(100% - 40px)',
9089
- marginTop: '40px'
9236
+ height: 'calc(100% - 50px)',
9237
+ marginTop: '40px',
9238
+ border: 'none'
9090
9239
  } }))));
9091
9240
  };
9092
9241
  var CommodityDetailComponent = React.memo(CommodityDetail$1);
@@ -9107,7 +9256,7 @@ var CommodityDetailComponent = React.memo(CommodityDetail$1);
9107
9256
  * @FilePath: \pb-sxp-ui\src\materials\sxp\cta\AniLink\interactionRender.tsx
9108
9257
  *
9109
9258
  */
9110
- var interactionRender$c = [
9259
+ var interactionRender$d = [
9111
9260
  {
9112
9261
  title: '滑动事件',
9113
9262
  child: [
@@ -9124,7 +9273,7 @@ var interactionRender$c = [
9124
9273
  * @Author: binruan@chatlabs.com
9125
9274
  * @Date: 2023-07-28 18:29:57
9126
9275
  * @LastEditors: binruan@chatlabs.com
9127
- * @LastEditTime: 2024-07-31 13:58:45
9276
+ * @LastEditTime: 2024-08-08 18:30:20
9128
9277
  * @FilePath: \pb-sxp-ui\src\materials\sxp\popup\CommodityDetail\material.tsx
9129
9278
  *
9130
9279
  */
@@ -9134,8 +9283,8 @@ const CommodityDetail = createMaterial(CommodityDetailComponent, {
9134
9283
  category: 'popup',
9135
9284
  type: 'CommodityDetail',
9136
9285
  related: {
9137
- settingRender: settingRender$8,
9138
- interactionRender: interactionRender$c
9286
+ settingRender: settingRender$9,
9287
+ interactionRender: interactionRender$d
9139
9288
  },
9140
9289
  defaulSetting: {
9141
9290
  props: {
@@ -9177,6 +9326,10 @@ const CommodityDetail = createMaterial(CommodityDetailComponent, {
9177
9326
  fontWeight: 'bold',
9178
9327
  textAlign: 'center',
9179
9328
  color: 'rgba(255, 255, 255, 0.9)'
9329
+ },
9330
+ commodityImgRatio: {
9331
+ w: 1,
9332
+ h: 1
9180
9333
  }
9181
9334
  },
9182
9335
  style: {}
@@ -9186,7 +9339,7 @@ const CommodityDetail = createMaterial(CommodityDetailComponent, {
9186
9339
  sort: 1
9187
9340
  });
9188
9341
 
9189
- var interactionRender$b = [
9342
+ var interactionRender$c = [
9190
9343
  {
9191
9344
  title: '点击事件',
9192
9345
  child: [
@@ -9202,13 +9355,28 @@ var interactionRender$b = [
9202
9355
  * @Author: binruan@chatlabs.com
9203
9356
  * @Date: 2023-10-27 14:06:35
9204
9357
  * @LastEditors: binruan@chatlabs.com
9205
- * @LastEditTime: 2024-08-06 14:23:11
9358
+ * @LastEditTime: 2024-08-06 16:15:08
9206
9359
  * @FilePath: \pb-sxp-ui\src\materials\sxp\popup\Prompt\settingRender.tsx
9207
9360
  *
9208
9361
  */
9209
- var settingRender$7 = [
9362
+ var settingRender$8 = [
9210
9363
  {
9211
- title: '',
9364
+ title: '弹窗背景',
9365
+ child: [
9366
+ {
9367
+ type: 'Number',
9368
+ label: '左右边距',
9369
+ name: ['props', 'popupBg', 'horizontalMargin']
9370
+ },
9371
+ {
9372
+ type: 'Number',
9373
+ label: '下边距',
9374
+ name: ['props', 'popupBg', 'bottomMargin']
9375
+ }
9376
+ ]
9377
+ },
9378
+ {
9379
+ title: '内容',
9212
9380
  child: [
9213
9381
  {
9214
9382
  type: 'Media',
@@ -9254,11 +9422,6 @@ var settingRender$7 = [
9254
9422
  }
9255
9423
  ]
9256
9424
  },
9257
- {
9258
- label: '内容字体间距',
9259
- type: 'TextSpace',
9260
- name: ['props', 'contentStyle']
9261
- },
9262
9425
  {
9263
9426
  type: 'Group',
9264
9427
  label: '提交按钮字体',
@@ -9292,11 +9455,6 @@ var settingRender$7 = [
9292
9455
  }
9293
9456
  ]
9294
9457
  },
9295
- {
9296
- label: '提交按钮间距',
9297
- type: 'TextSpace',
9298
- name: ['props', 'submitButtonStyle']
9299
- },
9300
9458
  {
9301
9459
  type: 'TextStyle',
9302
9460
  name: ['props', 'submitButtonStyle']
@@ -9386,9 +9544,9 @@ const Prompt = createMaterial(PromptComponent, {
9386
9544
  category: 'popup',
9387
9545
  type: 'Prompt',
9388
9546
  related: {
9389
- settingRender: settingRender$7,
9547
+ settingRender: settingRender$8,
9390
9548
  bindableProps: [],
9391
- interactionRender: interactionRender$b
9549
+ interactionRender: interactionRender$c
9392
9550
  },
9393
9551
  defaulSetting: {
9394
9552
  props: {
@@ -9407,14 +9565,45 @@ const Prompt = createMaterial(PromptComponent, {
9407
9565
  * @Author: binruan@chatlabs.com
9408
9566
  * @Date: 2024-03-26 16:50:25
9409
9567
  * @LastEditors: binruan@chatlabs.com
9410
- * @LastEditTime: 2024-08-06 14:06:03
9568
+ * @LastEditTime: 2024-08-08 18:34:06
9411
9569
  * @FilePath: \pb-sxp-ui\src\materials\sxp\popup\CommodityDetailDiroNew\settingRender.tsx
9412
9570
  *
9413
9571
  */
9414
- var settingRender$6 = [
9572
+ var settingRender$7 = [
9573
+ {
9574
+ title: '弹窗背景',
9575
+ child: [
9576
+ {
9577
+ type: 'Number',
9578
+ label: '左右边距',
9579
+ name: ['props', 'popupBg', 'horizontalMargin']
9580
+ },
9581
+ {
9582
+ type: 'Number',
9583
+ label: '下边距',
9584
+ name: ['props', 'popupBg', 'bottomMargin']
9585
+ }
9586
+ ]
9587
+ },
9415
9588
  {
9416
9589
  title: '商品图片',
9417
9590
  child: [
9591
+ {
9592
+ type: 'Group',
9593
+ label: '宽高比',
9594
+ child: [
9595
+ {
9596
+ type: 'Number',
9597
+ name: ['props', 'commodityImgRatio', 'w'],
9598
+ addonAfter: 'w'
9599
+ },
9600
+ {
9601
+ type: 'Number',
9602
+ name: ['props', 'commodityImgRatio', 'h'],
9603
+ addonAfter: 'h'
9604
+ }
9605
+ ]
9606
+ },
9418
9607
  {
9419
9608
  type: 'Radius',
9420
9609
  label: '轮播指示器',
@@ -9426,6 +9615,10 @@ var settingRender$6 = [
9426
9615
  {
9427
9616
  label: '居中',
9428
9617
  value: 'center'
9618
+ },
9619
+ {
9620
+ label: '居右',
9621
+ value: 'right'
9429
9622
  }
9430
9623
  ],
9431
9624
  name: ['props', 'swiper', 'dotsAlign']
@@ -9569,10 +9762,6 @@ var settingRender$6 = [
9569
9762
  label: '默认行数',
9570
9763
  type: 'Number',
9571
9764
  name: ['lineClamp']
9572
- },
9573
- {
9574
- label: '间距',
9575
- type: 'TextSpace'
9576
9765
  }
9577
9766
  ]
9578
9767
  }
@@ -9658,19 +9847,25 @@ var settingRender$6 = [
9658
9847
  {
9659
9848
  type: 'TextAlign',
9660
9849
  name: ['props', 'buttonStyle']
9661
- },
9850
+ }
9851
+ ]
9852
+ },
9853
+ {
9854
+ title: 'Iframe商品弹窗',
9855
+ child: [
9662
9856
  {
9663
- label: '间距',
9664
- type: 'TextSpace',
9665
- name: ['props', 'buttonStyle']
9857
+ label: '弹窗按钮',
9858
+ type: 'Upload',
9859
+ name: ['props', 'iframeIcon'],
9860
+ text: '建议尺寸:106 * 41'
9666
9861
  }
9667
9862
  ]
9668
9863
  }
9669
9864
  ];
9670
9865
 
9671
9866
  const CommodityDetailDiroNew$1 = (_a) => {
9672
- 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;
9673
- var { style, isDefault, rec, viewTime, isPost, bottom_image, tipText, swiper, commodityStyles, buttonStyle, index, commodityGroup } = _a, props = __rest(_a, ["style", "isDefault", "rec", "viewTime", "isPost", "bottom_image", "tipText", "swiper", "commodityStyles", "buttonStyle", "index", "commodityGroup"]);
9867
+ 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;
9868
+ 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"]);
9674
9869
  React.useState(true);
9675
9870
  const { sxpParameter, popupCurTimeRef, popupDetailData, isPreview, bffFbReport, checkCommodityIndexRef } = useSxpDataSource();
9676
9871
  const { jumpToWeb, productView } = useEventReport();
@@ -9679,6 +9874,7 @@ const CommodityDetailDiroNew$1 = (_a) => {
9679
9874
  React.useState(true);
9680
9875
  const [showModal, setShowModal] = React.useState(false);
9681
9876
  const curTimeRef = React.useRef(null);
9877
+ const [show3DModal, setShow3DModal] = React.useState(false);
9682
9878
  const [checkCommodityIndex, setCheckCommodityIndex] = React.useState((_b = popupDetailData === null || popupDetailData === void 0 ? void 0 : popupDetailData.multiCheckIndex) !== null && _b !== void 0 ? _b : 0);
9683
9879
  const data = isPost ? rec : popupDetailData;
9684
9880
  let product = isPost ? data === null || data === void 0 ? void 0 : data.product : (_d = (_c = data === null || data === void 0 ? void 0 : data.video) === null || _c === void 0 ? void 0 : _c.bindProduct) !== null && _d !== void 0 ? _d : (_f = (_e = data === null || data === void 0 ? void 0 : data.video) === null || _e === void 0 ? void 0 : _e.bindProducts) === null || _f === void 0 ? void 0 : _f[0];
@@ -9729,7 +9925,8 @@ const CommodityDetailDiroNew$1 = (_a) => {
9729
9925
  return '£102,300.00';
9730
9926
  }
9731
9927
  }, [product === null || product === void 0 ? void 0 : product.price, product === null || product === void 0 ? void 0 : product.currency]);
9732
- const width = isPreview ? 375 : (_t = style === null || style === void 0 ? void 0 : style.width) !== null && _t !== void 0 ? _t : window.innerWidth;
9928
+ const width = (isPreview ? 375 : (_t = style === null || style === void 0 ? void 0 : style.width) !== null && _t !== void 0 ? _t : window.innerWidth) - ((_u = popupBg === null || popupBg === void 0 ? void 0 : popupBg.horizontalMargin) !== null && _u !== void 0 ? _u : 0) * 2;
9929
+ const height = commodityImgRatio ? width * (commodityImgRatio.h / commodityImgRatio.w) : width;
9733
9930
  // useEffect(() => {
9734
9931
  // console.log(scrollRef?.current?.scrollHeight, window.innerHeight);
9735
9932
  // if (scrollRef?.current && scrollRef?.current?.scrollHeight > window.innerHeight) {
@@ -9803,52 +10000,69 @@ Made in Italy` })));
9803
10000
  return;
9804
10001
  return (React.createElement(CommodityGroup$1, { products: (_a = data === null || data === void 0 ? void 0 : data.video) === null || _a === void 0 ? void 0 : _a.bindProducts, data: commodityGroup, defImg: (_c = (_b = sxpParameter === null || sxpParameter === void 0 ? void 0 : sxpParameter.bottom_image) !== null && _b !== void 0 ? _b : bottom_image) !== null && _c !== void 0 ? _c : '', style: { padding: '0 19px' }, onCLick: handleClick, popupDetailData: popupDetailData, check: checkCommodityIndex }));
9805
10002
  }, [checkCommodityIndex]);
10003
+ const getDotsAlign = React.useMemo(() => {
10004
+ const dotsAlignClass = {
10005
+ left: 'commondityDetail-swiper-clickable-left',
10006
+ center: 'commondityDetail-swiper-clickable-center',
10007
+ right: 'commondityDetail-swiper-clickable-right'
10008
+ };
10009
+ return dotsAlignClass === null || dotsAlignClass === void 0 ? void 0 : dotsAlignClass[swiper === null || swiper === void 0 ? void 0 : swiper.dotsAlign];
10010
+ }, [swiper === null || swiper === void 0 ? void 0 : swiper.dotsAlign]);
10011
+ const iframeUrl = ((_w = (_v = data === null || data === void 0 ? void 0 : data.video) === null || _v === void 0 ? void 0 : _v.bindProduct) === null || _w === void 0 ? void 0 : _w.remark) || ((_z = (_y = (_x = data === null || data === void 0 ? void 0 : data.video) === null || _x === void 0 ? void 0 : _x.bindProducts) === null || _y === void 0 ? void 0 : _y[0]) === null || _z === void 0 ? void 0 : _z.remark) || ((_0 = data === null || data === void 0 ? void 0 : data.product) === null || _0 === void 0 ? void 0 : _0.remark);
9806
10012
  return (React.createElement("div", { className: 'pb-commondityDiroNew' },
9807
10013
  React.createElement("div", Object.assign({ className: css.css(Object.assign(Object.assign({}, style), { transform: 'translate3d(0px, 0px, 0px)' })) }, props),
9808
- product && ((_u = product === null || product === void 0 ? void 0 : product.homePage) === null || _u === void 0 ? void 0 : _u.length) > 0 && (React.createElement(Swiper, { height: width, modules: [Pagination, Autoplay], pagination: {
9809
- clickable: true,
9810
- bulletActiveClass: 'commondityDiroNew-swipe-item-active-bullet',
9811
- clickableClass: (swiper === null || swiper === void 0 ? void 0 : swiper.dotsAlign) === 'left'
9812
- ? 'commondityDiroNew-swiper-clickable-left'
9813
- : 'commondityDiroNew-swiper-clickable-center'
9814
- }, loop: true, autoplay: {
9815
- delay: (swiper === null || swiper === void 0 ? void 0 : swiper.delay) * 1000
9816
- } }, (_v = product === null || product === void 0 ? void 0 : product.homePage) === null || _v === void 0 ? void 0 : _v.map((src) => {
9817
- var _a;
9818
- return (React.createElement(SwiperSlide, { key: src },
9819
- React.createElement("div", { style: {
9820
- overflow: 'hidden',
9821
- width,
9822
- height: width
9823
- } },
9824
- React.createElement(FormatImage$1, { style: {
9825
- height: '100%',
9826
- width: '100%',
9827
- objectFit: 'cover',
9828
- display: 'block',
9829
- objectPosition: `50% ${(swiper === null || swiper === void 0 ? void 0 : swiper.translateY) ? (swiper === null || swiper === void 0 ? void 0 : swiper.translateY) + 50 : 50}%`
9830
- }, 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 }))));
9831
- }))),
9832
- !((_w = product === null || product === void 0 ? void 0 : product.homePage) === null || _w === void 0 ? void 0 : _w.length) && (React.createElement("div", { className: css.css({
9833
- position: 'relative',
9834
- height: 0,
9835
- width: '100%',
9836
- paddingBottom: '100%',
9837
- overflow: 'hidden'
9838
- }) },
9839
- React.createElement("img", { className: css.css({
9840
- position: 'absolute',
9841
- left: 0,
9842
- top: 0,
9843
- objectFit: 'cover',
9844
- width: '100%'
9845
- }), src: (_x = sxpParameter === null || sxpParameter === void 0 ? void 0 : sxpParameter.bottom_image) !== null && _x !== void 0 ? _x : bottom_image, alt: 'pdp image' }))),
10014
+ React.createElement("div", { style: { position: 'relative' } },
10015
+ product && ((_1 = product === null || product === void 0 ? void 0 : product.homePage) === null || _1 === void 0 ? void 0 : _1.length) > 0 && (React.createElement(Swiper, { height: height, modules: [Pagination, Autoplay], pagination: {
10016
+ clickable: true,
10017
+ bulletActiveClass: 'commondityDiroNew-swipe-item-active-bullet',
10018
+ clickableClass: getDotsAlign
10019
+ }, loop: true, autoplay: {
10020
+ delay: (swiper === null || swiper === void 0 ? void 0 : swiper.delay) * 1000
10021
+ } }, (_2 = product === null || product === void 0 ? void 0 : product.homePage) === null || _2 === void 0 ? void 0 : _2.map((src) => {
10022
+ var _a;
10023
+ return (React.createElement(SwiperSlide, { key: src },
10024
+ React.createElement("div", { style: {
10025
+ overflow: 'hidden',
10026
+ width,
10027
+ height
10028
+ } },
10029
+ React.createElement(FormatImage$1, { style: {
10030
+ height: '100%',
10031
+ width: '100%',
10032
+ objectFit: 'cover',
10033
+ display: 'block',
10034
+ objectPosition: `50% ${(swiper === null || swiper === void 0 ? void 0 : swiper.translateY) ? (swiper === null || swiper === void 0 ? void 0 : swiper.translateY) + 50 : 50}%`
10035
+ }, 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 }))));
10036
+ }))),
10037
+ !((_3 = product === null || product === void 0 ? void 0 : product.homePage) === null || _3 === void 0 ? void 0 : _3.length) && (React.createElement("div", { className: css.css({
10038
+ height,
10039
+ width
10040
+ }) },
10041
+ React.createElement("img", { className: css.css({
10042
+ objectFit: 'cover',
10043
+ width: '100%',
10044
+ height: '100%'
10045
+ }), src: (_4 = sxpParameter === null || sxpParameter === void 0 ? void 0 : sxpParameter.bottom_image) !== null && _4 !== void 0 ? _4 : bottom_image, alt: 'pdp image' }))),
10046
+ (iframeUrl && iframeIcon) ||
10047
+ (!product && iframeIcon && (React.createElement("div", { style: {
10048
+ padding: '5px 10px',
10049
+ display: 'flex',
10050
+ alignItems: 'center',
10051
+ position: 'absolute',
10052
+ right: '10px',
10053
+ bottom: '10px',
10054
+ zIndex: 1,
10055
+ background: '#fff',
10056
+ borderRadius: '3px'
10057
+ }, onClick: () => setShow3DModal(true) },
10058
+ React.createElement("img", { src: iframeIcon, alt: '3d', width: '20px', height: '20px', style: { marginRight: '5px' } }),
10059
+ React.createElement("span", { style: { fontSize: '12px' } }, "Try in 3D"))))),
9846
10060
  renderCommodityGroup(),
9847
10061
  React.createElement("div", { className: 'pb-commondityDiroNew-content' },
9848
10062
  React.createElement("div", { className: 'pb-commondityDiroNew-content-top' },
9849
10063
  React.createElement("div", { className: 'pb-commondityDiroNew-content-top-left' },
9850
10064
  React.createElement("div", { className: 'pb-commondityDiroNew-content-top-left-title', style: getStyle(commodityStyles === null || commodityStyles === void 0 ? void 0 : commodityStyles.title), dangerouslySetInnerHTML: {
9851
- __html: setFontForText((_y = product === null || product === void 0 ? void 0 : product.title) !== null && _y !== void 0 ? _y : 'Large Dior Toujours BagLarge', commodityStyles === null || commodityStyles === void 0 ? void 0 : commodityStyles.title)
10065
+ __html: setFontForText((_5 = product === null || product === void 0 ? void 0 : product.title) !== null && _5 !== void 0 ? _5 : 'Large Dior Toujours BagLarge', commodityStyles === null || commodityStyles === void 0 ? void 0 : commodityStyles.title)
9852
10066
  } }),
9853
10067
  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: {
9854
10068
  __html: setFontForText((product === null || product === void 0 ? void 0 : product.collection) || 'Black Macrocannage CalfskinLarge', commodityStyles === null || commodityStyles === void 0 ? void 0 : commodityStyles.collection)
@@ -9858,14 +10072,21 @@ Made in Italy` })));
9858
10072
  __html: setFontForText(priceText, commodityStyles === null || commodityStyles === void 0 ? void 0 : commodityStyles.price)
9859
10073
  } }),
9860
10074
  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: {
9861
- __html: setFontForText((_z = product === null || product === void 0 ? void 0 : product.taxInfo) !== null && _z !== void 0 ? _z : '税费', commodityStyles === null || commodityStyles === void 0 ? void 0 : commodityStyles.taxInfo)
10075
+ __html: setFontForText((_6 = product === null || product === void 0 ? void 0 : product.taxInfo) !== null && _6 !== void 0 ? _6 : '税费', commodityStyles === null || commodityStyles === void 0 ? void 0 : commodityStyles.taxInfo)
9862
10076
  } }))),
9863
- (!product || (product === null || product === void 0 ? void 0 : product.link)) && (React.createElement("button", { "aria-label": (_0 = cta === null || cta === void 0 ? void 0 : cta.enTitle) !== null && _0 !== void 0 ? _0 : 'Shop now', onClick: handleLink, className: 'pb-commondityDiroNew-btn', style: buttonStyle },
10077
+ (!product || (product === null || product === void 0 ? void 0 : product.link)) && (React.createElement("button", { "aria-label": (_7 = cta === null || cta === void 0 ? void 0 : cta.enTitle) !== null && _7 !== void 0 ? _7 : 'Shop now', onClick: handleLink, className: 'pb-commondityDiroNew-btn', style: buttonStyle },
9864
10078
  React.createElement("span", { dangerouslySetInnerHTML: {
9865
- __html: setFontForText((_1 = cta === null || cta === void 0 ? void 0 : cta.enTitle) !== null && _1 !== void 0 ? _1 : 'Shop now', buttonStyle)
10079
+ __html: setFontForText((_8 = cta === null || cta === void 0 ? void 0 : cta.enTitle) !== null && _8 !== void 0 ? _8 : 'Shop now', buttonStyle)
9866
10080
  } }))),
9867
10081
  productInfoText({ isPost }))),
9868
- React.createElement(Modal$1, { visible: showModal, onClose: () => setShowModal(false) }, productInfoText({ isPost: false }))));
10082
+ React.createElement(Modal$1, { visible: showModal, onClose: () => setShowModal(false) }, productInfoText({ isPost: false })),
10083
+ React.createElement(Modal$1, { visible: show3DModal, padding: 0, isFullScreen: true, onClose: () => setShow3DModal(false) },
10084
+ React.createElement("iframe", { src: iframeUrl, style: {
10085
+ width: '100%',
10086
+ height: 'calc(100% - 50px)',
10087
+ marginTop: '40px',
10088
+ border: 'none'
10089
+ } }))));
9869
10090
  };
9870
10091
  var CommodityDetailDiroNewComponent = React.memo(CommodityDetailDiroNew$1);
9871
10092
 
@@ -9885,7 +10106,7 @@ var CommodityDetailDiroNewComponent = React.memo(CommodityDetailDiroNew$1);
9885
10106
  * @FilePath: \pb-sxp-ui\src\materials\sxp\cta\AniLink\interactionRender.tsx
9886
10107
  *
9887
10108
  */
9888
- var interactionRender$a = [
10109
+ var interactionRender$b = [
9889
10110
  {
9890
10111
  title: '滑动事件',
9891
10112
  child: [
@@ -9912,8 +10133,8 @@ const CommodityDetailDiroNew = createMaterial(CommodityDetailDiroNewComponent, {
9912
10133
  category: 'popup',
9913
10134
  type: 'CommodityDetailDiroNew',
9914
10135
  related: {
9915
- settingRender: settingRender$6,
9916
- interactionRender: interactionRender$a
10136
+ settingRender: settingRender$7,
10137
+ interactionRender: interactionRender$b
9917
10138
  },
9918
10139
  defaulSetting: {
9919
10140
  props: {
@@ -9956,6 +10177,10 @@ const CommodityDetailDiroNew = createMaterial(CommodityDetailDiroNewComponent, {
9956
10177
  borderRadius: 25,
9957
10178
  marginTop: 16,
9958
10179
  marginBottom: 16
10180
+ },
10181
+ commodityImgRatio: {
10182
+ w: 1,
10183
+ h: 1
9959
10184
  }
9960
10185
  },
9961
10186
  style: {}
@@ -9969,11 +10194,26 @@ const CommodityDetailDiroNew = createMaterial(CommodityDetailDiroNewComponent, {
9969
10194
  * @Author: binruan@chatlabs.com
9970
10195
  * @Date: 2024-03-26 16:50:25
9971
10196
  * @LastEditors: binruan@chatlabs.com
9972
- * @LastEditTime: 2024-08-06 14:09:52
10197
+ * @LastEditTime: 2024-07-09 10:37:45
9973
10198
  * @FilePath: \pb-sxp-ui\src\materials\sxp\popup\CommodityList\settingRender.tsx
9974
10199
  *
9975
10200
  */
9976
- var settingRender$5 = [
10201
+ var settingRender$6 = [
10202
+ {
10203
+ title: '弹窗背景',
10204
+ child: [
10205
+ {
10206
+ type: 'Number',
10207
+ label: '左右边距',
10208
+ name: ['props', 'popupBg', 'horizontalMargin']
10209
+ },
10210
+ {
10211
+ type: 'Number',
10212
+ label: '下边距',
10213
+ name: ['props', 'popupBg', 'bottomMargin']
10214
+ }
10215
+ ]
10216
+ },
9977
10217
  {
9978
10218
  title: '商品图片',
9979
10219
  child: [
@@ -10091,10 +10331,6 @@ var settingRender$5 = [
10091
10331
  {
10092
10332
  label: '标题对齐',
10093
10333
  type: 'TextAlign'
10094
- },
10095
- {
10096
- label: '间距',
10097
- type: 'TextSpace'
10098
10334
  }
10099
10335
  ]
10100
10336
  }
@@ -10335,7 +10571,7 @@ var CommodityListComponent = React.memo(CommodityList$1);
10335
10571
  * @FilePath: \pb-sxp-ui\src\materials\sxp\cta\AniLink\interactionRender.tsx
10336
10572
  *
10337
10573
  */
10338
- var interactionRender$9 = [
10574
+ var interactionRender$a = [
10339
10575
  {
10340
10576
  title: '点击事件',
10341
10577
  child: [
@@ -10361,8 +10597,8 @@ const CommodityList = createMaterial(CommodityListComponent, {
10361
10597
  category: 'popup',
10362
10598
  type: 'CommodityList',
10363
10599
  related: {
10364
- settingRender: settingRender$5,
10365
- interactionRender: interactionRender$9
10600
+ settingRender: settingRender$6,
10601
+ interactionRender: interactionRender$a
10366
10602
  },
10367
10603
  defaulSetting: {
10368
10604
  props: {
@@ -10403,6 +10639,59 @@ const CommodityList = createMaterial(CommodityListComponent, {
10403
10639
  sort: 1
10404
10640
  });
10405
10641
 
10642
+ /*
10643
+ * @Author: binruan@chatlabs.com
10644
+ * @Date: 2023-10-27 14:06:35
10645
+ * @LastEditors: binruan@chatlabs.com
10646
+ * @LastEditTime: 2024-08-08 17:32:11
10647
+ * @FilePath: \pb-sxp-ui\src\materials\sxp\popup\Iframe\settingRender.tsx
10648
+ *
10649
+ */
10650
+ var settingRender$5 = [
10651
+ {
10652
+ title: '背景样式',
10653
+ child: [
10654
+ {
10655
+ type: 'Color',
10656
+ label: '背景色',
10657
+ name: ['style', 'backgroundColor']
10658
+ }
10659
+ ]
10660
+ }
10661
+ ];
10662
+
10663
+ const Iframe$1 = (_a) => {
10664
+ var _b, _c;
10665
+ 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"]);
10666
+ const { popupDetailData } = useSxpDataSource();
10667
+ 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;
10668
+ return (React.createElement("div", Object.assign({ className: `${css.css(Object.assign({}, style))}` }, props), iframeUrl && (React.createElement("iframe", { src: iframeUrl, style: {
10669
+ width: '100%',
10670
+ height: 'calc(100% - 50px)',
10671
+ marginTop: '40px',
10672
+ border: 'none'
10673
+ } }))));
10674
+ };
10675
+ var IframeComponent = React.memo(Iframe$1);
10676
+
10677
+ const Iframe = createMaterial(IframeComponent, {
10678
+ displayName: 'Iframe弹窗',
10679
+ icon: '',
10680
+ category: 'popup',
10681
+ type: 'Iframe',
10682
+ related: {
10683
+ settingRender: settingRender$5,
10684
+ bindableProps: []
10685
+ },
10686
+ defaulSetting: {
10687
+ props: {},
10688
+ style: {}
10689
+ },
10690
+ w: 100,
10691
+ h: 40,
10692
+ sort: 3
10693
+ });
10694
+
10406
10695
  /*
10407
10696
  * @Author: binruan@chatlabs.com
10408
10697
  * @Date: 2024-03-26 16:50:25
@@ -10662,7 +10951,7 @@ var settingRender$4 = [
10662
10951
  }
10663
10952
  ];
10664
10953
 
10665
- var interactionRender$8 = [
10954
+ var interactionRender$9 = [
10666
10955
  {
10667
10956
  title: '点击事件',
10668
10957
  child: [
@@ -10675,7 +10964,7 @@ var interactionRender$8 = [
10675
10964
  ];
10676
10965
 
10677
10966
  const EventProvider = (_a) => {
10678
- var { rec, children, className, onClick, style, isExternalLink = false, index } = _a; __rest(_a, ["rec", "children", "className", "onClick", "style", "isExternalLink", "index"]);
10967
+ var { rec, children, className, onClick, style, isExternalLink = false, index, jumpLink } = _a; __rest(_a, ["rec", "children", "className", "onClick", "style", "isExternalLink", "index", "jumpLink"]);
10679
10968
  const ref = React.useRef(null);
10680
10969
  const { popup } = useEditor();
10681
10970
  const { setPopupDetailData, ctaEvent } = useSxpDataSource();
@@ -10689,11 +10978,11 @@ const EventProvider = (_a) => {
10689
10978
  }, rec, item, index);
10690
10979
  setPopupDetailData === null || setPopupDetailData === void 0 ? void 0 : setPopupDetailData(Object.assign(Object.assign({}, rec), { index }));
10691
10980
  if (isExternalLink) {
10692
- if ((_d = (_c = rec === null || rec === void 0 ? void 0 : rec.video) === null || _c === void 0 ? void 0 : _c.bindProduct) === null || _d === void 0 ? void 0 : _d.link) {
10981
+ if (jumpLink || ((_d = (_c = rec === null || rec === void 0 ? void 0 : rec.video) === null || _c === void 0 ? void 0 : _c.bindProduct) === null || _d === void 0 ? void 0 : _d.link)) {
10693
10982
  const cta = (_e = rec === null || rec === void 0 ? void 0 : rec.video) === null || _e === void 0 ? void 0 : _e.bindCta;
10694
10983
  const product = (_f = rec === null || rec === void 0 ? void 0 : rec.video) === null || _f === void 0 ? void 0 : _f.bindProduct;
10695
10984
  jumpToWeb(rec, product, cta, index);
10696
- window.location.href = window.getJointUtmLink((_h = (_g = rec === null || rec === void 0 ? void 0 : rec.video) === null || _g === void 0 ? void 0 : _g.bindProduct) === null || _h === void 0 ? void 0 : _h.link);
10985
+ window.location.href = window.getJointUtmLink(jumpLink || ((_h = (_g = rec === null || rec === void 0 ? void 0 : rec.video) === null || _g === void 0 ? void 0 : _g.bindProduct) === null || _h === void 0 ? void 0 : _h.link) || '');
10697
10986
  }
10698
10987
  }
10699
10988
  else {
@@ -10745,7 +11034,7 @@ const Commodity = createMaterial(CommodityComponent, {
10745
11034
  category: 'template',
10746
11035
  type: 'Commodity',
10747
11036
  related: {
10748
- interactionRender: interactionRender$8,
11037
+ interactionRender: interactionRender$9,
10749
11038
  bindableProps: [],
10750
11039
  settingRender: settingRender$4
10751
11040
  },
@@ -10787,7 +11076,7 @@ const Commodity = createMaterial(CommodityComponent, {
10787
11076
  sort: 1
10788
11077
  });
10789
11078
 
10790
- var interactionRender$7 = [
11079
+ var interactionRender$8 = [
10791
11080
  {
10792
11081
  title: '点击事件',
10793
11082
  child: [
@@ -10827,7 +11116,7 @@ const Appoint = createMaterial(AppointComponent, {
10827
11116
  category: 'template',
10828
11117
  type: 'Appoint',
10829
11118
  related: {
10830
- interactionRender: interactionRender$7,
11119
+ interactionRender: interactionRender$8,
10831
11120
  settingRender: settingRender$4 === null || settingRender$4 === void 0 ? void 0 : settingRender$4.filter((i) => i.type !== 'commodityTitle'),
10832
11121
  bindableProps: []
10833
11122
  },
@@ -10867,7 +11156,7 @@ const Appoint = createMaterial(AppointComponent, {
10867
11156
  * @Author: binruan@chatlabs.com
10868
11157
  * @Date: 2024-07-02 14:51:32
10869
11158
  * @LastEditors: binruan@chatlabs.com
10870
- * @LastEditTime: 2024-08-06 14:51:18
11159
+ * @LastEditTime: 2024-07-02 16:44:34
10871
11160
  * @FilePath: \pb-sxp-ui\src\materials\sxp\template\Link\settingRender.tsx
10872
11161
  *
10873
11162
  */
@@ -10964,11 +11253,6 @@ var linkSettingRender = [
10964
11253
  type: 'TextAlign',
10965
11254
  name: ['props', 'customTitle', 'style']
10966
11255
  },
10967
- {
10968
- label: '间距',
10969
- type: 'TextSpace',
10970
- name: ['props', 'customTitle', 'style']
10971
- },
10972
11256
  {
10973
11257
  label: '上边距',
10974
11258
  type: 'Number',
@@ -10982,21 +11266,15 @@ var linkSettingRender = [
10982
11266
  var styles$7 = {"tow-line-ellipsis":"index-module_tow-line-ellipsis__nkBlU","one-line-ellipsis":"index-module_one-line-ellipsis__buFw1"};
10983
11267
 
10984
11268
  const Link$1 = (_a) => {
10985
- var _b, _c, _d, _e, _f, _g, _h, _j;
11269
+ var _b, _c, _d, _e, _f, _g, _h, _j, _k;
10986
11270
  var { content, style, bgImg, recData, bottom_image, ctaTempStyles, index, customTitle } = _a, props = __rest(_a, ["content", "style", "bgImg", "recData", "bottom_image", "ctaTempStyles", "index", "customTitle"]);
10987
11271
  const { sxpParameter, bffEventReport } = useSxpDataSource();
10988
- const { jumpToWeb } = useEventReport();
11272
+ useEventReport();
10989
11273
  const cta = (_b = recData === null || recData === void 0 ? void 0 : recData.video) === null || _b === void 0 ? void 0 : _b.bindCta;
10990
- const product = (_c = recData === null || recData === void 0 ? void 0 : recData.video) === null || _c === void 0 ? void 0 : _c.bindProduct;
10991
- const handleTo = () => {
10992
- if (cta === null || cta === void 0 ? void 0 : cta.link) {
10993
- jumpToWeb(recData, product, cta, index);
10994
- window.location.href = window.getJointUtmLink(cta.link);
10995
- }
10996
- };
11274
+ (_c = recData === null || recData === void 0 ? void 0 : recData.video) === null || _c === void 0 ? void 0 : _c.bindProduct;
10997
11275
  const src = (_e = (_d = cta === null || cta === void 0 ? void 0 : cta.icon) !== null && _d !== void 0 ? _d : sxpParameter === null || sxpParameter === void 0 ? void 0 : sxpParameter.bottom_image) !== null && _e !== void 0 ? _e : bottom_image;
10998
- return (React.createElement(EventProvider$1, Object.assign({ index: index, rec: recData, className: css.css(Object.assign({ alignItems: 'center' }, style)), style: { display: 'flex' } }, props, { onClick: handleTo }),
10999
- React.createElement(Img$1, { src: src, rec: recData, item: (_g = (_f = recData === null || recData === void 0 ? void 0 : recData.video) === null || _f === void 0 ? void 0 : _f.bindProduct) !== null && _g !== void 0 ? _g : recData === null || recData === void 0 ? void 0 : recData.video, index: index, imgStyle: ctaTempStyles === null || ctaTempStyles === void 0 ? void 0 : ctaTempStyles.img }),
11276
+ return (React.createElement(EventProvider$1, Object.assign({ index: index, rec: recData, className: css.css(Object.assign({ alignItems: 'center' }, style)), style: { display: 'flex' } }, props, { jumpLink: (_f = cta === null || cta === void 0 ? void 0 : cta.link) !== null && _f !== void 0 ? _f : '' }),
11277
+ React.createElement(Img$1, { src: src, rec: recData, item: (_h = (_g = recData === null || recData === void 0 ? void 0 : recData.video) === null || _g === void 0 ? void 0 : _g.bindProduct) !== null && _h !== void 0 ? _h : recData === null || recData === void 0 ? void 0 : recData.video, index: index, imgStyle: ctaTempStyles === null || ctaTempStyles === void 0 ? void 0 : ctaTempStyles.img }),
11000
11278
  React.createElement("div", { className: css.css({
11001
11279
  display: 'flex',
11002
11280
  alignItems: 'center',
@@ -11005,14 +11283,34 @@ const Link$1 = (_a) => {
11005
11283
  }) },
11006
11284
  React.createElement("div", null,
11007
11285
  React.createElement("div", { className: styles$7['tow-line-ellipsis'], style: ctaTempStyles === null || ctaTempStyles === void 0 ? void 0 : ctaTempStyles.ctaTitle, dangerouslySetInnerHTML: {
11008
- __html: setFontForText((_h = cta === null || cta === void 0 ? void 0 : cta.enTitle) !== null && _h !== void 0 ? _h : 'Product Name', ctaTempStyles === null || ctaTempStyles === void 0 ? void 0 : ctaTempStyles.ctaTitle)
11286
+ __html: setFontForText((_j = cta === null || cta === void 0 ? void 0 : cta.enTitle) !== null && _j !== void 0 ? _j : 'Product Name', ctaTempStyles === null || ctaTempStyles === void 0 ? void 0 : ctaTempStyles.ctaTitle)
11009
11287
  } }),
11010
- (customTitle === null || customTitle === void 0 ? void 0 : customTitle.display) && (React.createElement("div", { style: Object.assign(Object.assign({}, customTitle === null || customTitle === void 0 ? void 0 : customTitle.style), { lineHeight: ((_j = customTitle === null || customTitle === void 0 ? void 0 : customTitle.style) === null || _j === void 0 ? void 0 : _j.height) + 'px' }), className: styles$7['one-line-ellipsis'], dangerouslySetInnerHTML: {
11288
+ (customTitle === null || customTitle === void 0 ? void 0 : customTitle.display) && (React.createElement("div", { style: Object.assign(Object.assign({}, customTitle === null || customTitle === void 0 ? void 0 : customTitle.style), { lineHeight: ((_k = customTitle === null || customTitle === void 0 ? void 0 : customTitle.style) === null || _k === void 0 ? void 0 : _k.height) + 'px' }), className: styles$7['one-line-ellipsis'], dangerouslySetInnerHTML: {
11011
11289
  __html: setFontForText(customTitle === null || customTitle === void 0 ? void 0 : customTitle.text, customTitle === null || customTitle === void 0 ? void 0 : customTitle.style)
11012
11290
  } }))))));
11013
11291
  };
11014
11292
  var LinkComponent = React.memo(Link$1);
11015
11293
 
11294
+ /*
11295
+ * @Author: binruan@chatlabs.com
11296
+ * @Date: 2024-08-09 16:59:38
11297
+ * @LastEditors: binruan@chatlabs.com
11298
+ * @LastEditTime: 2024-08-09 16:59:44
11299
+ * @FilePath: \pb-sxp-ui\src\materials\sxp\template\Link\interactionRender.tsx
11300
+ *
11301
+ */
11302
+ var interactionRender$7 = [
11303
+ {
11304
+ title: '点击事件',
11305
+ child: [
11306
+ {
11307
+ type: 'link',
11308
+ name: 'onClick'
11309
+ }
11310
+ ]
11311
+ }
11312
+ ];
11313
+
11016
11314
  var _a;
11017
11315
  const Link = createMaterial(LinkComponent, {
11018
11316
  displayName: '跳转指引',
@@ -11021,7 +11319,8 @@ const Link = createMaterial(LinkComponent, {
11021
11319
  type: 'Link',
11022
11320
  related: {
11023
11321
  settingRender: (_a = settingRender$4 === null || settingRender$4 === void 0 ? void 0 : settingRender$4.filter((i) => i.type !== 'commodityTitle')) === null || _a === void 0 ? void 0 : _a.concat(linkSettingRender),
11024
- bindableProps: []
11322
+ bindableProps: [],
11323
+ interactionRender: interactionRender$7
11025
11324
  },
11026
11325
  defaulSetting: {
11027
11326
  props: {
@@ -11611,7 +11910,7 @@ const MultiCommodityDiroNew = createMaterial(MultiCommodityDiroNewComponent, {
11611
11910
  * @Author: binruan@chatlabs.com
11612
11911
  * @Date: 2024-04-07 14:07:12
11613
11912
  * @LastEditors: binruan@chatlabs.com
11614
- * @LastEditTime: 2024-08-06 14:00:36
11913
+ * @LastEditTime: 2024-06-27 09:49:19
11615
11914
  * @FilePath: \pb-sxp-ui\src\materials\sxp\HashTag\settingRender.tsx
11616
11915
  *
11617
11916
  */
@@ -11716,10 +12015,6 @@ var settingRender$3 = [
11716
12015
  {
11717
12016
  label: '标题对齐',
11718
12017
  type: 'TextAlign'
11719
- },
11720
- {
11721
- label: '间距',
11722
- type: 'TextSpace'
11723
12018
  }
11724
12019
  ]
11725
12020
  }
@@ -11805,11 +12100,6 @@ var settingRender$3 = [
11805
12100
  {
11806
12101
  type: 'TextAlign',
11807
12102
  name: ['props', 'buttonStyle']
11808
- },
11809
- {
11810
- label: '间距',
11811
- type: 'TextSpace',
11812
- name: ['props', 'buttonStyle']
11813
12103
  }
11814
12104
  ]
11815
12105
  },
@@ -13365,16 +13655,10 @@ function WaterfallList$1(_a) {
13365
13655
  }, [unitWidth, rowsNum, list]); /* 增加getStyleList依赖项会导致在admin预览编辑时无限刷新 */
13366
13656
  /** 初始化请求数据 */
13367
13657
  React.useEffect(() => {
13368
- var _a, _b;
13658
+ var _a, _b, _c, _d, _e, _f;
13369
13659
  setIsLoadingData(true);
13370
13660
  waterFallData &&
13371
- (getRecommendVideos === null || getRecommendVideos === void 0 ? void 0 : getRecommendVideos({
13372
- hashTag: waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.hashTag,
13373
- 'itemFilter.itemId': waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.itemId,
13374
- 'itemFilter.itemType': waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.itemType,
13375
- defaultSize: hashTagSize,
13376
- maxSize: hashTagSize
13377
- }).then((res) => {
13661
+ (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) => {
13378
13662
  var _a, _b;
13379
13663
  setData(res);
13380
13664
  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 : []);
@@ -13383,7 +13667,7 @@ function WaterfallList$1(_a) {
13383
13667
  if (isOpenHashTag) {
13384
13668
  const res = previewData;
13385
13669
  setData(res);
13386
- 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 : []);
13670
+ 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 : []);
13387
13671
  setIsLoadingData(false);
13388
13672
  }
13389
13673
  }, [waterFallData, getRecommendVideos, hashTagSize, isOpenHashTag]);
@@ -13409,13 +13693,10 @@ function WaterfallList$1(_a) {
13409
13693
  };
13410
13694
  }, [onResize]);
13411
13695
  React.useCallback(() => {
13696
+ var _a, _b, _c, _d;
13412
13697
  setIsLoadingData(true);
13413
13698
  waterFallData &&
13414
- (getRecommendVideos === null || getRecommendVideos === void 0 ? void 0 : getRecommendVideos({
13415
- hashTag: waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.hashTag,
13416
- 'itemFilter.itemId': waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.itemId,
13417
- 'itemFilter.itemType': waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.itemType
13418
- }).then((res) => {
13699
+ (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) => {
13419
13700
  var _a, _b;
13420
13701
  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 : []));
13421
13702
  setIsLoadingData(false);
@@ -13623,31 +13904,22 @@ function WaterfallList(_a) {
13623
13904
  const containerRef = React.useRef(null);
13624
13905
  const [isLoadMore, setIsLoadMore] = React.useState(false);
13625
13906
  React.useCallback(() => {
13907
+ var _a, _b, _c, _d;
13626
13908
  if (isLoadMore)
13627
13909
  return;
13628
13910
  setIsLoadMore(true);
13629
13911
  waterFallData &&
13630
- (getRecommendVideos === null || getRecommendVideos === void 0 ? void 0 : getRecommendVideos({
13631
- hashTag: waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.hashTag,
13632
- 'itemFilter.itemId': waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.itemId,
13633
- 'itemFilter.itemType': waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.itemType
13634
- }).then((res) => {
13912
+ (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) => {
13635
13913
  var _a;
13636
13914
  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 : []));
13637
13915
  setIsLoadMore(false);
13638
13916
  }));
13639
13917
  }, [waterFallData, getRecommendVideos, list, isLoadMore]);
13640
13918
  React.useEffect(() => {
13641
- var _a, _b;
13919
+ var _a, _b, _c, _d, _e, _f;
13642
13920
  setIsLoadingData(true);
13643
13921
  waterFallData &&
13644
- (getRecommendVideos === null || getRecommendVideos === void 0 ? void 0 : getRecommendVideos({
13645
- hashTag: waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.hashTag,
13646
- 'itemFilter.itemId': waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.itemId,
13647
- 'itemFilter.itemType': waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.itemType,
13648
- defaultSize: hashTagSize,
13649
- maxSize: hashTagSize
13650
- }).then((res) => {
13922
+ (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) => {
13651
13923
  var _a, _b;
13652
13924
  setData(res);
13653
13925
  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 : []);
@@ -13656,7 +13928,7 @@ function WaterfallList(_a) {
13656
13928
  if (isOpenHashTag) {
13657
13929
  const res = previewData;
13658
13930
  setData(res);
13659
- 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 : []);
13931
+ 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 : []);
13660
13932
  setIsLoadingData(false);
13661
13933
  }
13662
13934
  }, [waterFallData, getRecommendVideos, hashTagSize, isOpenHashTag]);
@@ -13983,7 +14255,7 @@ const Consent = createMaterial(ConsentComponent, {
13983
14255
  * @Author: binruan@chatlabs.com
13984
14256
  * @Date: 2024-07-02 14:51:32
13985
14257
  * @LastEditors: binruan@chatlabs.com
13986
- * @LastEditTime: 2024-08-06 14:28:34
14258
+ * @LastEditTime: 2024-07-05 19:09:41
13987
14259
  * @FilePath: \pb-sxp-ui\src\materials\sxp\cta\AniLink\settingRender.tsx
13988
14260
  *
13989
14261
  */
@@ -14086,10 +14358,6 @@ var settingRender$1 = [
14086
14358
  label: '对齐',
14087
14359
  type: 'TextAlign',
14088
14360
  name: ['props', 'ctaTempStyles', 'ctaTitle']
14089
- },
14090
- {
14091
- type: 'TextSpace',
14092
- name: ['props', 'ctaTempStyles', 'ctaTitle']
14093
14361
  }
14094
14362
  ]
14095
14363
  }
@@ -14747,6 +15015,7 @@ var _materials_ = /*#__PURE__*/Object.freeze({
14747
15015
  CommodityList: CommodityList,
14748
15016
  Consent: Consent,
14749
15017
  HashTag: HashTag,
15018
+ Iframe: Iframe,
14750
15019
  Link: Link,
14751
15020
  MultiCommodity: MultiCommodity,
14752
15021
  MultiCommodityDiro: MultiCommodityDiro,
@@ -15205,14 +15474,6 @@ const VideoWidget$2 = ({ rec, index, height, data, muted, activeIndex, videoPost
15205
15474
  };
15206
15475
  var VideoWidget$3 = React.memo(VideoWidget$2);
15207
15476
 
15208
- /*
15209
- * @Author: binruan@chatlabs.com
15210
- * @Date: 2023-12-27 19:02:59
15211
- * @LastEditors: binruan@chatlabs.com
15212
- * @LastEditTime: 2024-01-24 10:30:13
15213
- * @FilePath: \pb-sxp-ui\src\core\components\SxpPageRender\ToggleButton\index.tsx
15214
- *
15215
- */
15216
15477
  const ToggleButton = ({ defaultValue, activeIcon, unactiveIcon, onChange, style }) => {
15217
15478
  const [isTrue, setIsTure] = React.useState(defaultValue);
15218
15479
  const handleClick = (e) => {
@@ -15221,6 +15482,9 @@ const ToggleButton = ({ defaultValue, activeIcon, unactiveIcon, onChange, style
15221
15482
  setIsTure(result);
15222
15483
  onChange === null || onChange === void 0 ? void 0 : onChange(result);
15223
15484
  };
15485
+ React.useEffect(() => {
15486
+ setIsTure(defaultValue);
15487
+ }, [defaultValue]);
15224
15488
  return (React.createElement("button", { style: style, "aria-label": 'toggle button', className: 'pb-toggle-button', onClick: handleClick },
15225
15489
  React.createElement("img", { className: 'pb-toggle-button-icon', alt: 'toggle image', src: isTrue ? activeIcon : unactiveIcon })));
15226
15490
  };
@@ -15599,12 +15863,14 @@ var Tagbar$1 = React.memo(Tagbar);
15599
15863
  * @Author: binruan@chatlabs.com
15600
15864
  * @Date: 2024-01-15 19:03:09
15601
15865
  * @LastEditors: binruan@chatlabs.com
15602
- * @LastEditTime: 2024-08-02 18:34:27
15866
+ * @LastEditTime: 2024-08-14 19:09:32
15603
15867
  * @FilePath: \pb-sxp-ui\src\core\components\SxpPageRender\index.tsx
15604
15868
  *
15605
15869
  */
15606
15870
  const SxpPageRender = ({ globalConfig, descStyle, containerHeight = window.innerHeight, containerWidth = window.innerWidth, tempMap, resolver, data = [], ctaType, tipText, nudge, _schema, hashTagStyle, tagList = [], licenseUrl }) => {
15607
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
15871
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j;
15872
+ const mutedIcon = useIconLink('/pb_static/5beaaa5ce7f3477b99db3838619cc471.png');
15873
+ const unmutedIcon = useIconLink('/pb_static/fea8668a8a894e4aa3a86bcc775e895e.png');
15608
15874
  const { schema } = useEditor();
15609
15875
  const [activeIndex, setActiveIndex] = React.useState(0);
15610
15876
  const viewImageStartTime = React.useRef(0);
@@ -15618,8 +15884,8 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight = window.inner
15618
15884
  const { backMainFeed } = useEventReport();
15619
15885
  const { productView } = useEventReport();
15620
15886
  const isShowFingerTip = React.useMemo(() => {
15621
- return data.length > 0 && !loading && getFeUserId();
15622
- }, [data, loading]);
15887
+ return data.length > 0 && !loading && (getFeUserId() || (globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.enableSwiperTip));
15888
+ }, [data, loading, globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.enableSwiperTip]);
15623
15889
  React.useEffect(() => {
15624
15890
  refreshFeSessionId();
15625
15891
  }, []);
@@ -15647,14 +15913,15 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight = window.inner
15647
15913
  var _a;
15648
15914
  const index = (data === null || data === void 0 ? void 0 : data.findIndex((item) => {
15649
15915
  var _a, _b, _c, _d, _e, _f, _g, _h, _j;
15650
- if (ctaType === '多商品CTA') {
15916
+ const ctaType0 = ctaType === null || ctaType === void 0 ? void 0 : ctaType[0];
15917
+ if (ctaType0 === '多商品CTA') {
15651
15918
  return ((_a = item === null || item === void 0 ? void 0 : item.video) === null || _a === void 0 ? void 0 : _a.bindProducts) && ((_c = (_b = item === null || item === void 0 ? void 0 : item.video) === null || _b === void 0 ? void 0 : _b.bindProducts) === null || _c === void 0 ? void 0 : _c.length) > 0;
15652
15919
  }
15653
- else if (ctaType === '商品CTA') {
15920
+ else if (ctaType0 === '商品CTA') {
15654
15921
  return (_d = item === null || item === void 0 ? void 0 : item.video) === null || _d === void 0 ? void 0 : _d.bindProduct;
15655
15922
  }
15656
15923
  else {
15657
- 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) === ctaType && (((_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));
15924
+ 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));
15658
15925
  }
15659
15926
  })) || 0;
15660
15927
  (_a = swiperRef === null || swiperRef === void 0 ? void 0 : swiperRef.current) === null || _a === void 0 ? void 0 : _a.swiper.slideTo(index);
@@ -15759,8 +16026,10 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight = window.inner
15759
16026
  return containerHeight - minusHeight - tagHeight;
15760
16027
  }, [globalConfig, containerHeight, tagHeight]);
15761
16028
  const renderLogo = React.useMemo(() => {
16029
+ var _a, _b;
15762
16030
  if ((globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.logoUrl) && (globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.isShowLogo)) {
15763
- return (React.createElement("div", { className: 'clc-sxp-logo-banner', style: { backgroundColor: globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.color } },
16031
+ const link = (_b = (_a = globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.logoBar) === null || _a === void 0 ? void 0 : _a.onClick) === null || _b === void 0 ? void 0 : _b.value;
16032
+ return (React.createElement("div", Object.assign({ className: 'clc-sxp-logo-banner', style: { backgroundColor: globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.color } }, (link && { onClick: () => new Function(link)() })),
15764
16033
  React.createElement("img", { src: globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.logoUrl, alt: 'logo' })));
15765
16034
  }
15766
16035
  return null;
@@ -15840,9 +16109,9 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight = window.inner
15840
16109
  isShowMore,
15841
16110
  lineGradStyle
15842
16111
  ]);
15843
- const renderLikeButton = React.useCallback((rec, index) => {
16112
+ const renderLikeButton = React.useCallback((rec, index, visible) => {
15844
16113
  var _a, _b, _c, _d;
15845
- if (!(globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.isShowLike))
16114
+ if (!(globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.isShowLike) || !visible)
15846
16115
  return;
15847
16116
  let top = (_a = globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.likeIconY) !== null && _a !== void 0 ? _a : 400;
15848
16117
  if (waterFallData && top < 40) {
@@ -15850,6 +16119,7 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight = window.inner
15850
16119
  }
15851
16120
  if (rec === null || rec === void 0 ? void 0 : rec.video) {
15852
16121
  return (React.createElement(LikeButton$1, { key: rec.position, activeIcon: globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.likeIcon, unActicveIcon: globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.unlikeIcon, active: rec.isCollected, recData: rec, className: 'clc-sxp-like-button', style: {
16122
+ position: (globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.likeIconFixed) ? 'fixed' : 'absolute',
15853
16123
  [(_b = globalConfig.likeIconXPosit) !== null && _b !== void 0 ? _b : 'right']: (_c = globalConfig.likeIconX) !== null && _c !== void 0 ? _c : 0,
15854
16124
  [(_d = globalConfig.likeIconYPosit) !== null && _d !== void 0 ? _d : 'bottom']: top
15855
16125
  }, position: index }));
@@ -16000,6 +16270,18 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight = window.inner
16000
16270
  });
16001
16271
  return !waterFallData ? list.concat([{ loading: true }]) : list;
16002
16272
  }, [data, activeIndex, waterFallData]);
16273
+ const renderToggleButton = React.useCallback((visible) => {
16274
+ var _a, _b, _c, _d, _e, _f;
16275
+ if (!visible)
16276
+ return;
16277
+ return (((globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.isShowMute) === undefined || (globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.isShowMute) === true) && (React.createElement(ToggleButton$1, { style: {
16278
+ position: (globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.muteIconFixed) ? 'fixed' : 'absolute',
16279
+ 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',
16280
+ zIndex: 999,
16281
+ [(_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,
16282
+ [(_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
16283
+ }, 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 })));
16284
+ }, [globalConfig, visList, activeIndex, isMuted]);
16003
16285
  const renderView = React.useMemo(() => {
16004
16286
  if (loading) {
16005
16287
  return (React.createElement("div", { style: { height, width: containerWidth, display: 'flex', justifyContent: 'center', alignItems: 'center' } },
@@ -16016,20 +16298,30 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight = window.inner
16016
16298
  React.createElement("img", { width: 64, height: 64, src: loadingImage, alt: 'loading...', style: { objectFit: 'contain' } }))) : (React.createElement(React.Fragment, null,
16017
16299
  renderContent(rec, index),
16018
16300
  renderBottom(rec, index),
16019
- renderLikeButton(rec, index)))))));
16301
+ renderLikeButton(rec, index, !(globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.likeIconFixed)),
16302
+ renderToggleButton(!(globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.muteIconFixed))))))));
16020
16303
  });
16021
- }, [containerWidth, data, height, loading, renderBottom, renderContent, visList, loadingImage, isReload]);
16022
- const mutedIcon = useIconLink('/pb_static/5beaaa5ce7f3477b99db3838619cc471.png');
16023
- const unmutedIcon = useIconLink('/pb_static/fea8668a8a894e4aa3a86bcc775e895e.png');
16304
+ }, [
16305
+ containerWidth,
16306
+ data,
16307
+ height,
16308
+ loading,
16309
+ renderBottom,
16310
+ renderContent,
16311
+ visList,
16312
+ loadingImage,
16313
+ isReload,
16314
+ renderToggleButton
16315
+ ]);
16024
16316
  return (React.createElement("div", { id: 'sxp-render', className: 'clc-sxp-container' },
16025
- waterFallData && (React.createElement(Navbar$1, { icon: img, styles: { background: 'rgba(0,0,0,.3)', color: '#fff' }, onClose: () => {
16317
+ waterFallData && (React.createElement(Navbar$1, { icon: img, styles: { background: 'rgba(0,0,0,.3)', color: '#fff' }, textStyle: Object.assign(Object.assign({}, (_e = (_d = (_c = (_b = (_a = globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.hashTag) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.item) === null || _c === void 0 ? void 0 : _c.props) === null || _d === void 0 ? void 0 : _d.textStyles) === null || _e === void 0 ? void 0 : _e.hashTagTitle), { color: '#fff' }), onClose: () => {
16026
16318
  setOpenHashtag === null || setOpenHashtag === void 0 ? void 0 : setOpenHashtag(true);
16027
16319
  } })),
16028
16320
  renderLogo,
16029
16321
  React.createElement(Tagbar$1, { tagList: tagList, setActiveIndex: setActiveIndex, style: {
16030
16322
  top: minusHeight
16031
16323
  } }),
16032
- isShowFingerTip ? (React.createElement(FingerSwipeTip, { imageUrl: globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.swipeTipIcon, style: { top: `${50 - ((_a = globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.swipeTipOffset) !== null && _a !== void 0 ? _a : 0)}%` }, duration: globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.swiperTipAniDur })) : null,
16324
+ isShowFingerTip ? (React.createElement(FingerSwipeTip, { imageUrl: globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.swipeTipIcon, style: { top: `${50 - ((_f = globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.swipeTipOffset) !== null && _f !== void 0 ? _f : 0)}%` }, duration: globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.swiperTipAniDur })) : null,
16033
16325
  React.createElement(Swiper, { style: {
16034
16326
  marginTop: tagHeight
16035
16327
  }, ref: swiperRef, onSlideChange: () => {
@@ -16054,15 +16346,10 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight = window.inner
16054
16346
  }
16055
16347
  }
16056
16348
  }, direction: 'vertical', height: height },
16057
- ((globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.isShowMute) === undefined || (globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.isShowMute) === true) && (React.createElement(ToggleButton$1, { style: {
16058
- position: 'fixed',
16059
- visibility: ((_c = (_b = data === null || data === void 0 ? void 0 : data[activeIndex]) === null || _b === void 0 ? void 0 : _b.video) === null || _c === void 0 ? void 0 : _c.url) ? 'visible' : 'hidden',
16060
- zIndex: 999,
16061
- [(_d = globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.muteIconXPosit) !== null && _d !== void 0 ? _d : 'right']: (_e = globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.muteIconX) !== null && _e !== void 0 ? _e : 0,
16062
- [(_f = globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.muteIconYPosit) !== null && _f !== void 0 ? _f : 'bottom']: (_g = globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.muteIconY) !== null && _g !== void 0 ? _g : 23
16063
- }, 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 })),
16349
+ renderLikeButton(visList[activeIndex], activeIndex, !!(globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.likeIconFixed)),
16350
+ renderToggleButton(!!(globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.muteIconFixed)),
16064
16351
  renderView),
16065
- React.createElement(WaterFall$1, Object.assign({}, (_k = (_j = (_h = globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.hashTag) === null || _h === void 0 ? void 0 : _h[0]) === null || _j === void 0 ? void 0 : _j.item) === null || _k === void 0 ? void 0 : _k.props))));
16352
+ React.createElement(WaterFall$1, Object.assign({}, (_j = (_h = (_g = globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.hashTag) === null || _g === void 0 ? void 0 : _g[0]) === null || _h === void 0 ? void 0 : _h.item) === null || _j === void 0 ? void 0 : _j.props))));
16066
16353
  };
16067
16354
 
16068
16355
  const PictureGroup = ({ imgUrls, width, height, imgUrlsPostConfig, rec, index }) => {
@@ -16429,7 +16716,7 @@ var index$1 = React.memo(DiyPortalPreview);
16429
16716
  * @Author: binruan@chatlabs.com
16430
16717
  * @Date: 2023-10-31 10:56:01
16431
16718
  * @LastEditors: binruan@chatlabs.com
16432
- * @LastEditTime: 2024-08-01 15:23:51
16719
+ * @LastEditTime: 2024-08-06 17:15:56
16433
16720
  * @FilePath: \pb-sxp-ui\src\core\components\SxpPageRender\Popup\index.tsx
16434
16721
  *
16435
16722
  */
@@ -16488,14 +16775,14 @@ const Popup = () => {
16488
16775
  const renderPopupDetail = React.useMemo(() => {
16489
16776
  var _a, _b, _c;
16490
16777
  return (_c = (_b = (_a = schema === null || schema === void 0 ? void 0 : schema.sxpPageConf) === null || _a === void 0 ? void 0 : _a.globalConfig) === null || _b === void 0 ? void 0 : _b.popupList) === null || _c === void 0 ? void 0 : _c.map((value, index) => {
16491
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q;
16778
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p;
16492
16779
  if ((value === null || value === void 0 ? void 0 : value.id) === (popup === null || popup === void 0 ? void 0 : popup.id)) {
16493
16780
  const t = resolver[(_a = value === null || value === void 0 ? void 0 : value.item) === null || _a === void 0 ? void 0 : _a.type];
16494
16781
  const Component = withBindDataSource(t);
16495
16782
  const isExternalLink = ((_d = (_c = (_b = value === null || value === void 0 ? void 0 : value.item) === null || _b === void 0 ? void 0 : _b.event) === null || _c === void 0 ? void 0 : _c.onClick) === null || _d === void 0 ? void 0 : _d.linkType) === 'externalLink';
16496
16783
  const isPopup = ((_g = (_f = (_e = value === null || value === void 0 ? void 0 : value.item) === null || _e === void 0 ? void 0 : _e.event) === null || _f === void 0 ? void 0 : _f.onClick) === null || _g === void 0 ? void 0 : _g.linkType) === 'popup';
16497
16784
  const defaulSetting = (_h = t === null || t === void 0 ? void 0 : t.extend) === null || _h === void 0 ? void 0 : _h.defaulSetting;
16498
- return (React.createElement(Component, Object.assign({ key: index, style: Object.assign(Object.assign(Object.assign({}, defaulSetting === null || defaulSetting === void 0 ? void 0 : defaulSetting.style), (_j = value === null || value === void 0 ? void 0 : value.item) === null || _j === void 0 ? void 0 : _j.style), { width: (_k = window.innerWidth) !== null && _k !== void 0 ? _k : '100vw', height: '100%' }), textStyle: Object.assign(Object.assign({}, defaulSetting === null || defaulSetting === void 0 ? void 0 : defaulSetting.textStyle), (_l = value === null || value === void 0 ? void 0 : value.item) === null || _l === void 0 ? void 0 : _l.textStyle), bindDatas: (_o = (_m = value === null || value === void 0 ? void 0 : value.item) === null || _m === void 0 ? void 0 : _m.bindDatas) !== null && _o !== void 0 ? _o : [] }, defaulSetting === null || defaulSetting === void 0 ? void 0 : defaulSetting.props, (_p = value === null || value === void 0 ? void 0 : value.item) === null || _p === void 0 ? void 0 : _p.props, { event: ((_q = value === null || value === void 0 ? void 0 : value.item) === null || _q === void 0 ? void 0 : _q.event) || {}, schema: schema, id: value === null || value === void 0 ? void 0 : value.id, isExternalLink: isExternalLink, isPopup: isPopup, onClose: handleClose })));
16785
+ return (React.createElement(Component, Object.assign({ key: index, style: Object.assign(Object.assign(Object.assign({}, defaulSetting === null || defaulSetting === void 0 ? void 0 : defaulSetting.style), (_j = value === null || value === void 0 ? void 0 : value.item) === null || _j === void 0 ? void 0 : _j.style), { height: '100%' }), textStyle: Object.assign(Object.assign({}, defaulSetting === null || defaulSetting === void 0 ? void 0 : defaulSetting.textStyle), (_k = value === null || value === void 0 ? void 0 : value.item) === null || _k === void 0 ? void 0 : _k.textStyle), bindDatas: (_m = (_l = value === null || value === void 0 ? void 0 : value.item) === null || _l === void 0 ? void 0 : _l.bindDatas) !== null && _m !== void 0 ? _m : [] }, defaulSetting === null || defaulSetting === void 0 ? void 0 : defaulSetting.props, (_o = value === null || value === void 0 ? void 0 : value.item) === null || _o === void 0 ? void 0 : _o.props, { event: ((_p = value === null || value === void 0 ? void 0 : value.item) === null || _p === void 0 ? void 0 : _p.event) || {}, schema: schema, id: value === null || value === void 0 ? void 0 : value.id, isExternalLink: isExternalLink, isPopup: isPopup, onClose: handleClose })));
16499
16786
  }
16500
16787
  else {
16501
16788
  return React.createElement(React.Fragment, null);