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.js CHANGED
@@ -217,6 +217,87 @@ const setFontForText = (textContent, style) => {
217
217
  }
218
218
  return content;
219
219
  };
220
+ function getBrowserInfo() {
221
+ var _a, _b, _c, _d, _e, _f, _g;
222
+ let userAgent = self.navigator.userAgent;
223
+ if (!userAgent)
224
+ return 'Unknown';
225
+ if (/edge\/([\d\.]+)/i.exec(userAgent))
226
+ return `Edge ${(_a = /edge\/([\d\.]+)/i.exec(userAgent)) === null || _a === void 0 ? void 0 : _a[1]}`;
227
+ if (/edg\/([\d\.]+)/i.exec(userAgent))
228
+ return `Edge(Chromium) ${(_b = /edge\/([\d\.]+)/i.exec(userAgent)) === null || _b === void 0 ? void 0 : _b[1]}`;
229
+ if (/msie/i.test(userAgent))
230
+ return `Internet Explorer ${(_c = /msie ([\d\.]+)/i.exec(userAgent)) === null || _c === void 0 ? void 0 : _c[1]}`;
231
+ if (/Trident/i.test(userAgent))
232
+ return `Internet Explorer ${(_d = /rv:([\d\.]+)/i.exec(userAgent)) === null || _d === void 0 ? void 0 : _d[1]}`;
233
+ if (/chrome/i.test(userAgent))
234
+ return `Chrome ${(_e = /chrome\/([\d\.]+)/i.exec(userAgent)) === null || _e === void 0 ? void 0 : _e[1]}`;
235
+ if (/firefox/i.test(userAgent))
236
+ return `Firefox ${(_f = /firefox\/([\d\.]+)/i.exec(userAgent)) === null || _f === void 0 ? void 0 : _f[1]}`;
237
+ if (/safari/i.test(userAgent))
238
+ return `Safari ${(_g = /version\/([\d\.]+)/i.exec(userAgent)) === null || _g === void 0 ? void 0 : _g[1]}`;
239
+ return 'Unknown';
240
+ }
241
+ function getSystem() {
242
+ var _a, _b, _c;
243
+ let userAgent = self.navigator.userAgent;
244
+ if (!userAgent)
245
+ return 'Unknown';
246
+ if (/iphone/i.test(userAgent))
247
+ return `IOS ${(_a = userAgent.match(/OS\s(.*?)\slike/)) === null || _a === void 0 ? void 0 : _a[1]}`;
248
+ if (/android/i.test(userAgent))
249
+ return `Android ${(_b = userAgent.match(/Android\s(.*?)\;/)) === null || _b === void 0 ? void 0 : _b[1]}`;
250
+ if (/windows/i.test(userAgent))
251
+ return `Windows ${(_c = userAgent.match(/Windows\s(.*?)\;/)) === null || _c === void 0 ? void 0 : _c[1]}`;
252
+ if (/mac/i.test(userAgent))
253
+ return `Mac OS`;
254
+ return 'Unknown';
255
+ }
256
+ function getDevice$1() {
257
+ let userAgent = self.navigator.userAgent;
258
+ if (!userAgent)
259
+ return 'Unknown';
260
+ if (/iphone/i.test(userAgent))
261
+ return `iPhone`;
262
+ if (/android/i.test(userAgent)) {
263
+ // var index1 = userAgent.indexOf(';');
264
+ // var index2 = userAgent.indexOf(';', index1 + 1);
265
+ // var index3 = userAgent.indexOf(';', index2 + 1);
266
+ // var index4 = userAgent.indexOf(';', index3 + 1);
267
+ // if (index2 !== -1 && index3 !== -1) {
268
+ // var value1 = userAgent.substring(index3 + 1, index4);
269
+ // return `${value1}`;
270
+ // }
271
+ var index1 = userAgent.indexOf('(');
272
+ var index2 = userAgent.indexOf(')');
273
+ if (index1 !== -1 && index2 !== -1) {
274
+ var value = userAgent.substring(index1 + 1, index2);
275
+ return `${value}`;
276
+ }
277
+ }
278
+ if (/windows/i.test(userAgent))
279
+ return `Windows`;
280
+ if (/mac/i.test(userAgent))
281
+ return `Mac`;
282
+ return 'Unknown';
283
+ }
284
+ function getCookie(val) {
285
+ // const expirationDate = new Date();
286
+ // expirationDate.setDate(expirationDate.getDate() + 100);
287
+ // document.cookie = `_fbc=IwAR2F4-dbP0l7Mn1IawQQGCINEz7PYXQvwjNwB_qa2ofrHyiLjcbCRxTDGrc; expires=${expirationDate.toUTCString()}; path=/`;
288
+ const cookies = document.cookie;
289
+ // 将cookie字符串拆分成数组
290
+ const cookieArray = cookies.split(';');
291
+ let value = null;
292
+ // 遍历cookie数组,查找名为_fbc的cookie
293
+ cookieArray.forEach((cookie) => {
294
+ const [cookieName, cookieValue] = cookie.trim().split('=');
295
+ if (cookieName === val) {
296
+ value = cookieValue;
297
+ }
298
+ });
299
+ return value !== null && value !== void 0 ? value : '';
300
+ }
220
301
 
221
302
  function unzip(b64Data) {
222
303
  const strData = atob(b64Data);
@@ -532,7 +613,7 @@ var DataSourceType;
532
613
  DataSourceType[DataSourceType["BFF"] = 5] = "BFF";
533
614
  })(DataSourceType || (DataSourceType = {}));
534
615
  const DEFAULT_TAG = 'FOR U';
535
- 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 }) => {
616
+ 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 }) => {
536
617
  var _a, _b, _c;
537
618
  const [rtcList, setRtcList] = useState([]);
538
619
  const [tagList, setTagList] = useState([]);
@@ -616,15 +697,7 @@ const SxpDataSourceProvider = ({ render, dataSources, utmVal, enableReportEvent
616
697
  // 获取推荐视频数据
617
698
  const getRecommendVideos = useCallback((query) => __awaiter(void 0, void 0, void 0, function* () {
618
699
  var _d, _e, _f, _g, _h;
619
- query = {
620
- maxSize: (_d = query === null || query === void 0 ? void 0 : query.maxSize) !== null && _d !== void 0 ? _d : maxSize,
621
- defaultSize: (_e = query === null || query === void 0 ? void 0 : query.defaultSize) !== null && _e !== void 0 ? _e : defaultSize,
622
- 'itemFilter.itemId': query === null || query === void 0 ? void 0 : query['itemFilter.itemId'],
623
- 'itemFilter.itemType': query === null || query === void 0 ? void 0 : query['itemFilter.itemType'],
624
- hashTag: query === null || query === void 0 ? void 0 : query.hashTag,
625
- traceInfo: query === null || query === void 0 ? void 0 : query.traceInfo,
626
- themeTag: query === null || query === void 0 ? void 0 : query.themeTag
627
- };
700
+ 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}]` }));
628
701
  if (utmVal) {
629
702
  const val = (_h = (_g = (_f = utmVal === null || utmVal === void 0 ? void 0 : utmVal.split('&')) === null || _f === void 0 ? void 0 : _f.filter((val) => {
630
703
  var _a, _b;
@@ -633,6 +706,9 @@ const SxpDataSourceProvider = ({ render, dataSources, utmVal, enableReportEvent
633
706
  })) === null || _g === void 0 ? void 0 : _g.join('&')) !== null && _h !== void 0 ? _h : '';
634
707
  query = Object.assign(Object.assign({}, query), { channel: decodeURIComponent(val) });
635
708
  }
709
+ if ((globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.enablePreview) || isEditor) {
710
+ 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('&') }));
711
+ }
636
712
  const result = yield (bffFetch === null || bffFetch === void 0 ? void 0 : bffFetch('/recommend/list', { method: 'GET', query }));
637
713
  if (!(result === null || result === void 0 ? void 0 : result.success)) {
638
714
  return undefined;
@@ -640,23 +716,20 @@ const SxpDataSourceProvider = ({ render, dataSources, utmVal, enableReportEvent
640
716
  if (!(query === null || query === void 0 ? void 0 : query.hashTag))
641
717
  setCurReqInfo({ rtc: result.data.rtc, requestId: result.data.requestId });
642
718
  return result === null || result === void 0 ? void 0 : result.data;
643
- }), [bffFetch, utmVal, maxSize, defaultSize]);
719
+ }), [bffFetch, utmVal, maxSize, defaultSize, globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.enablePreview, channelQueryList, isEditor]);
644
720
  const loadVideos = useCallback(() => __awaiter(void 0, void 0, void 0, function* () {
721
+ var _j, _k, _l, _m;
645
722
  if (rtcList.length <= 0) {
646
723
  return;
647
724
  }
648
- const data = yield getRecommendVideos({
649
- hashTag: waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.hashTag,
650
- 'itemFilter.itemId': waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.itemId,
651
- 'itemFilter.itemType': waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.itemType,
652
- themeTag: themeTag.current
653
- });
725
+ const lastItem = rtcList === null || rtcList === void 0 ? void 0 : rtcList[(rtcList === null || rtcList === void 0 ? void 0 : rtcList.length) - 1];
726
+ 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 }));
654
727
  setRtcList(rtcList.concat(getFilterRecList(data)));
655
728
  setCacheRtcList(cacheRtcList.concat(getFilterRecList(data)));
656
729
  }), [getRecommendVideos, rtcList, waterFallData, cacheRtcList]);
657
730
  const bffEventReport = useCallback(({ userInfo, eventInfo }) => {
658
731
  // 关闭 BFF 事件上报
659
- if (!enableReportEvent) {
732
+ if (!enableReportEvent || (globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.enablePreview)) {
660
733
  return;
661
734
  }
662
735
  // 用户信息都是公共的
@@ -667,7 +740,7 @@ const SxpDataSourceProvider = ({ render, dataSources, utmVal, enableReportEvent
667
740
  };
668
741
  }
669
742
  const sessionID = storeAndLoadFeSessionId();
670
- const ef = Object.assign({ sessionID, rtc: curReqInfo.rtc, requestId: curReqInfo.requestId }, eventInfo);
743
+ const ef = Object.assign(Object.assign({ sessionID, rtc: curReqInfo.rtc, requestId: curReqInfo.requestId }, eventInfo), { sxpDevice: getDevice$1(), sxpSystem: getSystem(), sxpBrowser: getBrowserInfo() });
671
744
  const realUserInfo = Object.entries(userInfo).map(([k, v]) => ({ name: k, value: v }));
672
745
  const realEventInfo = Object.entries(ef)
673
746
  .map(([k, v]) => v && { name: k, value: v })
@@ -681,11 +754,11 @@ const SxpDataSourceProvider = ({ render, dataSources, utmVal, enableReportEvent
681
754
  body: { userInfo: realUserInfo, eventInfo: realEventInfo },
682
755
  type: 'beacon'
683
756
  });
684
- }, [bffFetch, curReqInfo, enableReportEvent]);
757
+ }, [bffFetch, curReqInfo, enableReportEvent, globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.enablePreview]);
685
758
  const bffFbReport = useCallback((_a) => {
686
- var _b;
759
+ var _b, _c;
687
760
  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;
688
- if (!enableReportEvent || !enabledMetaConversionApi) {
761
+ if (!enableReportEvent || !enabledMetaConversionApi || (globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.enablePreview)) {
689
762
  return;
690
763
  }
691
764
  const fakeUserId = storeAndLoadFeUserId();
@@ -696,12 +769,15 @@ const SxpDataSourceProvider = ({ render, dataSources, utmVal, enableReportEvent
696
769
  actionSource,
697
770
  eventSourceUrl,
698
771
  userData: {
699
- externalId: fakeUserId
772
+ externalId: fakeUserId,
773
+ fbc: `fb.2.${new Date().getTime()}.${getCookie('_fbc')}`,
774
+ fbp: `fb.2.${new Date().getTime()}.${getCookie('_fbp')}`,
775
+ client_user_agent: (_c = window === null || window === void 0 ? void 0 : window.navigator) === null || _c === void 0 ? void 0 : _c.userAgent
700
776
  }
701
777
  },
702
778
  type: 'beacon'
703
779
  });
704
- }, [bffFetch, enableReportEvent, enabledMetaConversionApi]);
780
+ }, [bffFetch, enableReportEvent, enabledMetaConversionApi, globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.enablePreview]);
705
781
  const bffMutateLike = useCallback((body) => __awaiter(void 0, void 0, void 0, function* () {
706
782
  const res = yield (bffFetch === null || bffFetch === void 0 ? void 0 : bffFetch('/recommend/like', { method: 'POST', body }));
707
783
  return res === null || res === void 0 ? void 0 : res.success;
@@ -716,24 +792,24 @@ const SxpDataSourceProvider = ({ render, dataSources, utmVal, enableReportEvent
716
792
  }), [bffFetch]);
717
793
  // 获取 Tag
718
794
  const bffGetTagList = useCallback(() => __awaiter(void 0, void 0, void 0, function* () {
719
- var _j, _k, _l, _m, _o;
795
+ var _o, _p, _q, _r, _s;
720
796
  if (!utmVal || !isShowTag)
721
797
  return;
722
798
  try {
723
- const val = (_l = (_k = (_j = utmVal === null || utmVal === void 0 ? void 0 : utmVal.split('&')) === null || _j === void 0 ? void 0 : _j.filter((val) => {
799
+ const val = (_q = (_p = (_o = utmVal === null || utmVal === void 0 ? void 0 : utmVal.split('&')) === null || _o === void 0 ? void 0 : _o.filter((val) => {
724
800
  var _a, _b;
725
801
  const key = val.split('=')[0];
726
802
  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);
727
- })) === null || _k === void 0 ? void 0 : _k.join('&')) !== null && _l !== void 0 ? _l : '';
803
+ })) === null || _p === void 0 ? void 0 : _p.join('&')) !== null && _q !== void 0 ? _q : '';
728
804
  const result = yield (bffFetch === null || bffFetch === void 0 ? void 0 : bffFetch('/tag/list', { method: 'GET', query: { channel: decodeURIComponent(val) } }));
729
- 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 : []);
805
+ 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 : []);
730
806
  }
731
807
  catch (e) {
732
808
  console.log('e', e);
733
809
  }
734
810
  }), [bffFetch, utmVal, isShowTag]);
735
811
  const ctaEvent = useCallback((eventInfo, rec, product, position) => {
736
- 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;
812
+ 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;
737
813
  const cta = product === null || product === void 0 ? void 0 : product.bindCta;
738
814
  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);
739
815
  let fromKName = '';
@@ -746,8 +822,9 @@ const SxpDataSourceProvider = ({ render, dataSources, utmVal, enableReportEvent
746
822
  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) {
747
823
  fromKName = 'imagePage';
748
824
  }
825
+ 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;
749
826
  bffEventReport === null || bffEventReport === void 0 ? void 0 : bffEventReport({
750
- 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 : '' })
827
+ 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 : '' })
751
828
  });
752
829
  }, [bffEventReport, isFromHashtag]);
753
830
  const h5EnterLink = useCallback(() => {
@@ -1099,7 +1176,7 @@ var index$2 = /*#__PURE__*/Object.freeze({
1099
1176
  EditorCore: EditorCore
1100
1177
  });
1101
1178
 
1102
- var interactionRender$d = [
1179
+ var interactionRender$e = [
1103
1180
  {
1104
1181
  title: '点击事件',
1105
1182
  child: [
@@ -1115,11 +1192,26 @@ var interactionRender$d = [
1115
1192
  * @Author: binruan@chatlabs.com
1116
1193
  * @Date: 2023-07-28 18:29:57
1117
1194
  * @LastEditors: binruan@chatlabs.com
1118
- * @LastEditTime: 2024-08-06 14:13:47
1195
+ * @LastEditTime: 2024-08-06 15:35:25
1119
1196
  * @FilePath: \pb-sxp-ui\src\materials\sxp\popup\AppointForm\settingRender.tsx
1120
1197
  *
1121
1198
  */
1122
- var settingRender$9 = [
1199
+ var settingRender$a = [
1200
+ {
1201
+ title: '弹窗背景',
1202
+ child: [
1203
+ {
1204
+ type: 'Number',
1205
+ label: '左右边距',
1206
+ name: ['props', 'popupBg', 'horizontalMargin']
1207
+ },
1208
+ {
1209
+ type: 'Number',
1210
+ label: '下边距',
1211
+ name: ['props', 'popupBg', 'bottomMargin']
1212
+ }
1213
+ ]
1214
+ },
1123
1215
  {
1124
1216
  type: 'Text',
1125
1217
  label: '组件名称',
@@ -1174,11 +1266,6 @@ var settingRender$9 = [
1174
1266
  type: 'TextAlign',
1175
1267
  name: ['textStyle']
1176
1268
  },
1177
- {
1178
- label: '标题间距',
1179
- type: 'TextSpace',
1180
- name: ['textStyle']
1181
- },
1182
1269
  {
1183
1270
  label: '表单布局',
1184
1271
  type: 'Radius',
@@ -1237,12 +1324,10 @@ var settingRender$9 = [
1237
1324
  ]
1238
1325
  },
1239
1326
  {
1240
- label: '提交按钮文本样式',
1241
1327
  type: 'TextStyle',
1242
1328
  name: ['props', 'submitButtonStyle']
1243
1329
  },
1244
1330
  {
1245
- label: '提交按钮对齐',
1246
1331
  type: 'TextAlign',
1247
1332
  name: ['props', 'submitButtonStyle']
1248
1333
  },
@@ -1250,11 +1335,6 @@ var settingRender$9 = [
1250
1335
  label: '提交按钮颜色',
1251
1336
  type: 'Color',
1252
1337
  name: ['props', 'submitBgColor']
1253
- },
1254
- {
1255
- label: '提交按钮间距',
1256
- type: 'TextSpace',
1257
- name: ['props', 'submitButtonStyle']
1258
1338
  }
1259
1339
  // {
1260
1340
  // label: '接收内容接口地址',
@@ -1289,14 +1369,14 @@ var settingRender$9 = [
1289
1369
  * @Author: binruan@chatlabs.com
1290
1370
  * @Date: 2024-03-12 10:59:06
1291
1371
  * @LastEditors: binruan@chatlabs.com
1292
- * @LastEditTime: 2024-08-01 17:36:34
1372
+ * @LastEditTime: 2024-08-14 17:02:53
1293
1373
  * @FilePath: \pb-sxp-ui\src\core\hooks\useEventReport.ts
1294
1374
  *
1295
1375
  */
1296
1376
  function useEventReport() {
1297
1377
  const { bffEventReport, popupDetailData, waterFallData, isFromHashtag } = useSxpDataSource();
1298
1378
  const jumpToWeb = useCallback((data, product, cta, position) => {
1299
- 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;
1379
+ 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;
1300
1380
  let fromKName = '';
1301
1381
  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))) {
1302
1382
  fromKName = 'pdpPage';
@@ -1313,21 +1393,22 @@ function useEventReport() {
1313
1393
  else if (data === null || data === void 0 ? void 0 : data.product) {
1314
1394
  fromKName = 'productPage';
1315
1395
  }
1396
+ 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;
1316
1397
  bffEventReport === null || bffEventReport === void 0 ? void 0 : bffEventReport({
1317
1398
  eventInfo: {
1318
1399
  eventSubject: 'jumpToWeb',
1319
1400
  eventDescription: 'User jumped to website',
1320
- productId: (_h = product === null || product === void 0 ? void 0 : product.itemId) !== null && _h !== void 0 ? _h : '',
1321
- productName: (_j = product === null || product === void 0 ? void 0 : product.title) !== null && _j !== void 0 ? _j : '',
1401
+ productId: (_r = product === null || product === void 0 ? void 0 : product.itemId) !== null && _r !== void 0 ? _r : '',
1402
+ productName: (_s = product === null || product === void 0 ? void 0 : product.title) !== null && _s !== void 0 ? _s : '',
1322
1403
  price: (product === null || product === void 0 ? void 0 : product.price) ? (product === null || product === void 0 ? void 0 : product.price) + '' : '0',
1323
- productCollection: (_k = product === null || product === void 0 ? void 0 : product.collection) !== null && _k !== void 0 ? _k : '',
1404
+ productCollection: (_t = product === null || product === void 0 ? void 0 : product.collection) !== null && _t !== void 0 ? _t : '',
1324
1405
  fromKName,
1325
1406
  fromKPage: location === null || location === void 0 ? void 0 : location.href,
1326
- contentTags: (product === null || product === void 0 ? void 0 : product.tags) ? JSON.stringify(product === null || product === void 0 ? void 0 : product.tags) : '',
1407
+ contentTags: contentTags ? JSON.stringify(contentTags) : '',
1327
1408
  position: position + '',
1328
- 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 : '',
1329
- ctatId: (_o = cta === null || cta === void 0 ? void 0 : cta.itemId) !== null && _o !== void 0 ? _o : '',
1330
- 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 : ''
1409
+ 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 : '',
1410
+ ctatId: (_w = cta === null || cta === void 0 ? void 0 : cta.itemId) !== null && _w !== void 0 ? _w : '',
1411
+ 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 : ''
1331
1412
  }
1332
1413
  });
1333
1414
  }, [bffEventReport, popupDetailData, isFromHashtag]);
@@ -1497,9 +1578,9 @@ const AppointForm = createMaterial(AppointFormComponent, {
1497
1578
  category: 'popup',
1498
1579
  type: 'AppointForm',
1499
1580
  related: {
1500
- settingRender: settingRender$9,
1581
+ settingRender: settingRender$a,
1501
1582
  bindableProps: [],
1502
- interactionRender: interactionRender$d
1583
+ interactionRender: interactionRender$e
1503
1584
  },
1504
1585
  defaulSetting: {
1505
1586
  name: '表单',
@@ -1522,10 +1603,41 @@ const AppointForm = createMaterial(AppointFormComponent, {
1522
1603
  sort: 2
1523
1604
  });
1524
1605
 
1525
- var settingRender$8 = [
1606
+ var settingRender$9 = [
1607
+ {
1608
+ title: '弹窗背景',
1609
+ child: [
1610
+ {
1611
+ type: 'Number',
1612
+ label: '左右边距',
1613
+ name: ['props', 'popupBg', 'horizontalMargin']
1614
+ },
1615
+ {
1616
+ type: 'Number',
1617
+ label: '下边距',
1618
+ name: ['props', 'popupBg', 'bottomMargin']
1619
+ }
1620
+ ]
1621
+ },
1526
1622
  {
1527
1623
  title: '商品图片',
1528
1624
  child: [
1625
+ {
1626
+ type: 'Group',
1627
+ label: '宽高比',
1628
+ child: [
1629
+ {
1630
+ type: 'Number',
1631
+ name: ['props', 'commodityImgRatio', 'w'],
1632
+ addonAfter: 'w'
1633
+ },
1634
+ {
1635
+ type: 'Number',
1636
+ name: ['props', 'commodityImgRatio', 'h'],
1637
+ addonAfter: 'h'
1638
+ }
1639
+ ]
1640
+ },
1529
1641
  {
1530
1642
  type: 'Radius',
1531
1643
  label: '轮播指示器',
@@ -1537,6 +1649,10 @@ var settingRender$8 = [
1537
1649
  {
1538
1650
  label: '居中',
1539
1651
  value: 'center'
1652
+ },
1653
+ {
1654
+ label: '居右',
1655
+ value: 'right'
1540
1656
  }
1541
1657
  ],
1542
1658
  name: ['props', 'swiper', 'dotsAlign']
@@ -1697,10 +1813,6 @@ var settingRender$8 = [
1697
1813
  label: '默认行数',
1698
1814
  type: 'Number',
1699
1815
  name: ['lineClamp']
1700
- },
1701
- {
1702
- label: '间距',
1703
- type: 'TextSpace'
1704
1816
  }
1705
1817
  ]
1706
1818
  }
@@ -1786,11 +1898,17 @@ var settingRender$8 = [
1786
1898
  {
1787
1899
  type: 'TextAlign',
1788
1900
  name: ['props', 'buttonStyle']
1789
- },
1901
+ }
1902
+ ]
1903
+ },
1904
+ {
1905
+ title: 'Iframe商品弹窗',
1906
+ child: [
1790
1907
  {
1791
- label: '间距',
1792
- type: 'TextSpace',
1793
- name: ['props', 'buttonStyle']
1908
+ label: '弹窗按钮',
1909
+ type: 'Upload',
1910
+ name: ['props', 'iframeIcon'],
1911
+ text: '建议尺寸:106 * 41'
1794
1912
  }
1795
1913
  ]
1796
1914
  }
@@ -8622,13 +8740,13 @@ SwiperSlide.displayName = 'SwiperSlide';
8622
8740
  * @Author: binruan@chatlabs.com
8623
8741
  * @Date: 2023-11-02 18:34:34
8624
8742
  * @LastEditors: binruan@chatlabs.com
8625
- * @LastEditTime: 2024-07-29 16:20:40
8743
+ * @LastEditTime: 2024-08-06 16:35:43
8626
8744
  * @FilePath: \pb-sxp-ui\src\core\components\SxpPageRender\Modal\index.tsx
8627
8745
  *
8628
8746
  */
8629
8747
  const closeIcon$1 = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAjhJREFUWEfFlztOw0AQhmeWiJ4CCmpQ5DiRQsIJyAWg5A0lR0AIChDiCJS8ER0cADgBeRSxt4CCDgkaKiq8i+zYeWx2413HEWmiJJv9v535Z2aN8M8vFPT9z3zETD0aAUChUJjwvPFHAJhBhB3Hqd6OAsK2yyucwykAvP38eJX398Z3AJDLlVYR8ToU9Rhj25TWr9KEsKy5dULIGQCMtfZly45TvwsAstm56UwG6wA4FUFwzrdctxZBDcWSy5XWEPG8I84/GcMipdWPtgcsaz5PCHtKG0IuTiqUvjT9U/WYMG2IOPE+AP+LtCB0xKUAAyA2Xbd2o2OG0NQXvTnvhL17D7EPtH9TRCIWwkRcGYGIQgYBABuqPuHXOQBc6pw80lBGwBQiiXhsBHQhkoprA6iM6acjhDQKu5YJZW6XeOI3XJdpvfsdTu52VfXEekD8owQiXGIubpSCbhDbLu8DwKEAd+A41SOdPpE4BS0viFOtvV2iKWqUgn5x/tmS70xR01GuDSCKc86/OCcLgTyyZ0ScDGNhFAktAJV4NFJ9YyaFiAWIE+9uVkkgBgLoig8DMWAa9ro9ynkUdlW5maZDCmB6clmz0k1HH4Cs1Ezbq2p2yEpUuBOKTSZZex00RUWIrltxuuK6EOGDSbGIOPZicpMx6fny650377qNRgBgWeVFQuA+6UjVgREhGIMlSqsPUQqIbZdOOIdZQmCv2axRnU1N1+TzJYsxOEaEV8ep7frPZ7Gd0FTEdP0ft0/kMNdg0eoAAAAASUVORK5CYII=';
8630
8748
  const Modal = ({ visible, onClose, children, modalStyle, padding, popup, schema, fullHeight = window.innerHeight, isFullScreen = false }) => {
8631
- var _a, _b;
8749
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t;
8632
8750
  const touchRef = useRef(null);
8633
8751
  const fTouchRef = useRef(null);
8634
8752
  const touchMoveRef = useRef(null);
@@ -8655,12 +8773,16 @@ const Modal = ({ visible, onClose, children, modalStyle, padding, popup, schema,
8655
8773
  const isOpen = useMemo(() => {
8656
8774
  return ((popup === null || popup === void 0 ? void 0 : popup.id) && (popup === null || popup === void 0 ? void 0 : popup.id) !== '') || visible;
8657
8775
  }, [visible, popup]);
8658
- const isScrollFullScreen = useMemo(() => {
8659
- var _a, _b, _c, _d, _e;
8776
+ const getPopupById = useMemo(() => {
8777
+ var _a, _b, _c;
8660
8778
  const schemaData = schema !== null && schema !== void 0 ? schema : _schema;
8661
8779
  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));
8662
- 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;
8780
+ return value;
8663
8781
  }, [popup, schema, _schema]);
8782
+ const isScrollFullScreen = useMemo(() => {
8783
+ var _a, _b;
8784
+ 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;
8785
+ }, [getPopupById]);
8664
8786
  useEffect(() => {
8665
8787
  if (isOpen) {
8666
8788
  setIsShow(true);
@@ -8727,22 +8849,31 @@ const Modal = ({ visible, onClose, children, modalStyle, padding, popup, schema,
8727
8849
  touchMoveRef.current = false;
8728
8850
  };
8729
8851
  return ReactDOM.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 },
8730
- 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 && {
8731
- transform: `translateY(${modalTrans}px)`
8732
- })), onClick: (e) => {
8733
- e.stopPropagation();
8734
- e.preventDefault();
8735
- } }, (isScrollFullScreen && {
8736
- onTouchMove: handleTouchMove,
8737
- onTouchStart: handleTouchStart,
8738
- onTouchEnd: handleTouchEnd
8739
- })),
8740
- React.createElement("div", { onClick: onClose, className: 'modal-icon-wrapper' },
8741
- 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' })),
8742
- React.createElement("div", { ref: ref, style: {
8743
- height: isScrollFullScreen ? fullHeight : MODAL_DEF_CON_H,
8744
- overflow: (isScrollFullScreen && modalTrans <= 0) || !isScrollFullScreen ? 'auto' : 'hidden'
8745
- } }, children))))), modalEleRef.current);
8852
+ React.createElement("div", { style: {
8853
+ position: 'relative',
8854
+ 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`,
8855
+ 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`,
8856
+ 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`,
8857
+ overflow: 'hidden',
8858
+ 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)`,
8859
+ height: '100%'
8860
+ } },
8861
+ 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 && {
8862
+ transform: `translateY(${modalTrans}px)`
8863
+ })), onClick: (e) => {
8864
+ e.stopPropagation();
8865
+ e.preventDefault();
8866
+ } }, (isScrollFullScreen && {
8867
+ onTouchMove: handleTouchMove,
8868
+ onTouchStart: handleTouchStart,
8869
+ onTouchEnd: handleTouchEnd
8870
+ })),
8871
+ React.createElement("div", { onClick: onClose, className: 'modal-icon-wrapper' },
8872
+ 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' })),
8873
+ React.createElement("div", { ref: ref, style: {
8874
+ height: isScrollFullScreen ? fullHeight : MODAL_DEF_CON_H,
8875
+ overflow: (isScrollFullScreen && modalTrans <= 0) || !isScrollFullScreen ? 'auto' : 'hidden'
8876
+ } }, children)))))), modalEleRef.current);
8746
8877
  };
8747
8878
  var Modal$1 = memo(Modal);
8748
8879
 
@@ -8828,7 +8959,7 @@ const FormatImage = forwardRef((props, ref) => {
8828
8959
  }, [src]);
8829
8960
  useEffect(() => {
8830
8961
  const onShow = () => {
8831
- if (src && !visible) {
8962
+ if (src && !visible && imgRef.current) {
8832
8963
  imgRef.current.src = '';
8833
8964
  imgRef.current.src = src;
8834
8965
  }
@@ -8908,8 +9039,8 @@ const CommodityGroup = ({ products, data, defImg, style, onCLick, popupDetailDat
8908
9039
  var CommodityGroup$1 = memo(CommodityGroup);
8909
9040
 
8910
9041
  const CommodityDetail$1 = (_a) => {
8911
- var _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x;
8912
- 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"]);
9042
+ 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;
9043
+ 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"]);
8913
9044
  const { sxpParameter, popupDetailData, isPreview, bffFbReport, popupCurTimeRef, checkCommodityIndexRef } = useSxpDataSource();
8914
9045
  const { jumpToWeb, productView } = useEventReport();
8915
9046
  const curTimeRef = useRef(null);
@@ -8965,7 +9096,8 @@ const CommodityDetail$1 = (_a) => {
8965
9096
  return '$7,000';
8966
9097
  }
8967
9098
  }, [product === null || product === void 0 ? void 0 : product.price, product === null || product === void 0 ? void 0 : product.currency]);
8968
- const width = isPreview ? 375 : (_t = style === null || style === void 0 ? void 0 : style.width) !== null && _t !== void 0 ? _t : window.innerWidth;
9099
+ 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;
9100
+ const height = commodityImgRatio ? width * (commodityImgRatio.h / commodityImgRatio.w) : width;
8969
9101
  const renderContent = ({ isPost }) => {
8970
9102
  var _a, _b, _c, _d;
8971
9103
  return (React.createElement("div", null,
@@ -9012,25 +9144,32 @@ const CommodityDetail$1 = (_a) => {
9012
9144
  return;
9013
9145
  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 }));
9014
9146
  }, [checkCommodityIndex]);
9147
+ const getDotsAlign = useMemo(() => {
9148
+ const dotsAlignClass = {
9149
+ left: 'commondityDetail-swiper-clickable-left',
9150
+ center: 'commondityDetail-swiper-clickable-center',
9151
+ right: 'commondityDetail-swiper-clickable-right'
9152
+ };
9153
+ return dotsAlignClass === null || dotsAlignClass === void 0 ? void 0 : dotsAlignClass[swiper === null || swiper === void 0 ? void 0 : swiper.dotsAlign];
9154
+ }, [swiper === null || swiper === void 0 ? void 0 : swiper.dotsAlign]);
9155
+ 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);
9015
9156
  return (React.createElement(React.Fragment, null,
9016
9157
  React.createElement("div", Object.assign({ className: css(Object.assign({}, style)) }, props),
9017
- 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' } },
9018
- React.createElement(Swiper, { height: width, modules: [Pagination, Autoplay], pagination: {
9158
+ React.createElement("div", { style: { position: 'relative' } },
9159
+ 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: {
9019
9160
  clickable: true,
9020
9161
  bulletActiveClass: 'swipe-item-active-bullet',
9021
- clickableClass: (swiper === null || swiper === void 0 ? void 0 : swiper.dotsAlign) === 'left'
9022
- ? 'commondityDetail-swiper-clickable-left'
9023
- : 'commondityDetail-swiper-clickable-center'
9162
+ clickableClass: getDotsAlign
9024
9163
  }, loop: true, autoplay: {
9025
9164
  delay: (swiper === null || swiper === void 0 ? void 0 : swiper.delay) * 1000
9026
9165
  } },
9027
- React.createElement(React.Fragment, null, (_v = product === null || product === void 0 ? void 0 : product.homePage) === null || _v === void 0 ? void 0 : _v.map((src) => {
9166
+ React.createElement(React.Fragment, null, (_2 = product === null || product === void 0 ? void 0 : product.homePage) === null || _2 === void 0 ? void 0 : _2.map((src) => {
9028
9167
  var _a;
9029
9168
  return (React.createElement(SwiperSlide, { key: src },
9030
9169
  React.createElement("div", { style: {
9031
9170
  overflow: 'hidden',
9032
9171
  width,
9033
- height: width
9172
+ height
9034
9173
  } },
9035
9174
  React.createElement(FormatImage$1, { style: {
9036
9175
  height: '100%',
@@ -9039,21 +9178,30 @@ const CommodityDetail$1 = (_a) => {
9039
9178
  display: 'block',
9040
9179
  objectPosition: `50% ${(swiper === null || swiper === void 0 ? void 0 : swiper.translateY) ? (swiper === null || swiper === void 0 ? void 0 : swiper.translateY) + 50 : 50}%`
9041
9180
  }, 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 }))));
9042
- }))))),
9043
- !((_w = product === null || product === void 0 ? void 0 : product.homePage) === null || _w === void 0 ? void 0 : _w.length) && (React.createElement("div", { className: css({
9044
- position: 'relative',
9045
- height: 0,
9046
- width: '100%',
9047
- paddingBottom: '100%',
9048
- overflow: 'hidden'
9049
- }) },
9050
- React.createElement("img", { className: css({
9051
- position: 'absolute',
9052
- left: 0,
9053
- top: 0,
9054
- objectFit: 'cover',
9055
- width: '100%'
9056
- }), src: (_x = sxpParameter === null || sxpParameter === void 0 ? void 0 : sxpParameter.bottom_image) !== null && _x !== void 0 ? _x : bottom_image, alt: 'pdp image' }))),
9181
+ })))),
9182
+ !((_3 = product === null || product === void 0 ? void 0 : product.homePage) === null || _3 === void 0 ? void 0 : _3.length) && (React.createElement("div", { className: css({
9183
+ height,
9184
+ width
9185
+ }) },
9186
+ React.createElement("img", { className: css({
9187
+ objectFit: 'cover',
9188
+ width: '100%',
9189
+ height: '100%'
9190
+ }), src: (_4 = sxpParameter === null || sxpParameter === void 0 ? void 0 : sxpParameter.bottom_image) !== null && _4 !== void 0 ? _4 : bottom_image, alt: 'pdp image' }))),
9191
+ (iframeUrl && iframeIcon) ||
9192
+ (!product && iframeIcon && (React.createElement("div", { style: {
9193
+ padding: '5px 10px',
9194
+ display: 'flex',
9195
+ alignItems: 'center',
9196
+ position: 'absolute',
9197
+ right: '10px',
9198
+ bottom: '10px',
9199
+ zIndex: 1,
9200
+ background: '#fff',
9201
+ borderRadius: '3px'
9202
+ }, onClick: () => setShow3DModal(true) },
9203
+ React.createElement("img", { src: iframeIcon, alt: '3d', width: '20px', height: '20px', style: { marginRight: '5px' } }),
9204
+ React.createElement("span", { style: { fontSize: '12px' } }, "Try in 3D"))))),
9057
9205
  renderCommodityGroup(),
9058
9206
  React.createElement("div", { className: 'pb-commondity-content' }, renderContent({ isPost }))),
9059
9207
  renderBtn(),
@@ -9061,10 +9209,11 @@ const CommodityDetail$1 = (_a) => {
9061
9209
  React.createElement("div", { style: { paddingBottom: '80px' } }, renderContent({ isPost: false })),
9062
9210
  renderBtn()),
9063
9211
  React.createElement(Modal$1, { visible: show3DModal, padding: 0, isFullScreen: true, onClose: () => setShow3DModal(false) },
9064
- React.createElement("iframe", { src: 'https://rimowa.threedium.co.uk/product-experience/latest/?sku=92573974&lang=en', style: {
9212
+ React.createElement("iframe", { src: iframeUrl, style: {
9065
9213
  width: '100%',
9066
- height: 'calc(100% - 40px)',
9067
- marginTop: '40px'
9214
+ height: 'calc(100% - 50px)',
9215
+ marginTop: '40px',
9216
+ border: 'none'
9068
9217
  } }))));
9069
9218
  };
9070
9219
  var CommodityDetailComponent = memo(CommodityDetail$1);
@@ -9085,7 +9234,7 @@ var CommodityDetailComponent = memo(CommodityDetail$1);
9085
9234
  * @FilePath: \pb-sxp-ui\src\materials\sxp\cta\AniLink\interactionRender.tsx
9086
9235
  *
9087
9236
  */
9088
- var interactionRender$c = [
9237
+ var interactionRender$d = [
9089
9238
  {
9090
9239
  title: '滑动事件',
9091
9240
  child: [
@@ -9102,7 +9251,7 @@ var interactionRender$c = [
9102
9251
  * @Author: binruan@chatlabs.com
9103
9252
  * @Date: 2023-07-28 18:29:57
9104
9253
  * @LastEditors: binruan@chatlabs.com
9105
- * @LastEditTime: 2024-07-31 13:58:45
9254
+ * @LastEditTime: 2024-08-08 18:30:20
9106
9255
  * @FilePath: \pb-sxp-ui\src\materials\sxp\popup\CommodityDetail\material.tsx
9107
9256
  *
9108
9257
  */
@@ -9112,8 +9261,8 @@ const CommodityDetail = createMaterial(CommodityDetailComponent, {
9112
9261
  category: 'popup',
9113
9262
  type: 'CommodityDetail',
9114
9263
  related: {
9115
- settingRender: settingRender$8,
9116
- interactionRender: interactionRender$c
9264
+ settingRender: settingRender$9,
9265
+ interactionRender: interactionRender$d
9117
9266
  },
9118
9267
  defaulSetting: {
9119
9268
  props: {
@@ -9155,6 +9304,10 @@ const CommodityDetail = createMaterial(CommodityDetailComponent, {
9155
9304
  fontWeight: 'bold',
9156
9305
  textAlign: 'center',
9157
9306
  color: 'rgba(255, 255, 255, 0.9)'
9307
+ },
9308
+ commodityImgRatio: {
9309
+ w: 1,
9310
+ h: 1
9158
9311
  }
9159
9312
  },
9160
9313
  style: {}
@@ -9164,7 +9317,7 @@ const CommodityDetail = createMaterial(CommodityDetailComponent, {
9164
9317
  sort: 1
9165
9318
  });
9166
9319
 
9167
- var interactionRender$b = [
9320
+ var interactionRender$c = [
9168
9321
  {
9169
9322
  title: '点击事件',
9170
9323
  child: [
@@ -9180,13 +9333,28 @@ var interactionRender$b = [
9180
9333
  * @Author: binruan@chatlabs.com
9181
9334
  * @Date: 2023-10-27 14:06:35
9182
9335
  * @LastEditors: binruan@chatlabs.com
9183
- * @LastEditTime: 2024-08-06 14:23:11
9336
+ * @LastEditTime: 2024-08-06 16:15:08
9184
9337
  * @FilePath: \pb-sxp-ui\src\materials\sxp\popup\Prompt\settingRender.tsx
9185
9338
  *
9186
9339
  */
9187
- var settingRender$7 = [
9340
+ var settingRender$8 = [
9188
9341
  {
9189
- title: '',
9342
+ title: '弹窗背景',
9343
+ child: [
9344
+ {
9345
+ type: 'Number',
9346
+ label: '左右边距',
9347
+ name: ['props', 'popupBg', 'horizontalMargin']
9348
+ },
9349
+ {
9350
+ type: 'Number',
9351
+ label: '下边距',
9352
+ name: ['props', 'popupBg', 'bottomMargin']
9353
+ }
9354
+ ]
9355
+ },
9356
+ {
9357
+ title: '内容',
9190
9358
  child: [
9191
9359
  {
9192
9360
  type: 'Media',
@@ -9232,11 +9400,6 @@ var settingRender$7 = [
9232
9400
  }
9233
9401
  ]
9234
9402
  },
9235
- {
9236
- label: '内容字体间距',
9237
- type: 'TextSpace',
9238
- name: ['props', 'contentStyle']
9239
- },
9240
9403
  {
9241
9404
  type: 'Group',
9242
9405
  label: '提交按钮字体',
@@ -9270,11 +9433,6 @@ var settingRender$7 = [
9270
9433
  }
9271
9434
  ]
9272
9435
  },
9273
- {
9274
- label: '提交按钮间距',
9275
- type: 'TextSpace',
9276
- name: ['props', 'submitButtonStyle']
9277
- },
9278
9436
  {
9279
9437
  type: 'TextStyle',
9280
9438
  name: ['props', 'submitButtonStyle']
@@ -9364,9 +9522,9 @@ const Prompt = createMaterial(PromptComponent, {
9364
9522
  category: 'popup',
9365
9523
  type: 'Prompt',
9366
9524
  related: {
9367
- settingRender: settingRender$7,
9525
+ settingRender: settingRender$8,
9368
9526
  bindableProps: [],
9369
- interactionRender: interactionRender$b
9527
+ interactionRender: interactionRender$c
9370
9528
  },
9371
9529
  defaulSetting: {
9372
9530
  props: {
@@ -9385,14 +9543,45 @@ const Prompt = createMaterial(PromptComponent, {
9385
9543
  * @Author: binruan@chatlabs.com
9386
9544
  * @Date: 2024-03-26 16:50:25
9387
9545
  * @LastEditors: binruan@chatlabs.com
9388
- * @LastEditTime: 2024-08-06 14:06:03
9546
+ * @LastEditTime: 2024-08-08 18:34:06
9389
9547
  * @FilePath: \pb-sxp-ui\src\materials\sxp\popup\CommodityDetailDiroNew\settingRender.tsx
9390
9548
  *
9391
9549
  */
9392
- var settingRender$6 = [
9550
+ var settingRender$7 = [
9551
+ {
9552
+ title: '弹窗背景',
9553
+ child: [
9554
+ {
9555
+ type: 'Number',
9556
+ label: '左右边距',
9557
+ name: ['props', 'popupBg', 'horizontalMargin']
9558
+ },
9559
+ {
9560
+ type: 'Number',
9561
+ label: '下边距',
9562
+ name: ['props', 'popupBg', 'bottomMargin']
9563
+ }
9564
+ ]
9565
+ },
9393
9566
  {
9394
9567
  title: '商品图片',
9395
9568
  child: [
9569
+ {
9570
+ type: 'Group',
9571
+ label: '宽高比',
9572
+ child: [
9573
+ {
9574
+ type: 'Number',
9575
+ name: ['props', 'commodityImgRatio', 'w'],
9576
+ addonAfter: 'w'
9577
+ },
9578
+ {
9579
+ type: 'Number',
9580
+ name: ['props', 'commodityImgRatio', 'h'],
9581
+ addonAfter: 'h'
9582
+ }
9583
+ ]
9584
+ },
9396
9585
  {
9397
9586
  type: 'Radius',
9398
9587
  label: '轮播指示器',
@@ -9404,6 +9593,10 @@ var settingRender$6 = [
9404
9593
  {
9405
9594
  label: '居中',
9406
9595
  value: 'center'
9596
+ },
9597
+ {
9598
+ label: '居右',
9599
+ value: 'right'
9407
9600
  }
9408
9601
  ],
9409
9602
  name: ['props', 'swiper', 'dotsAlign']
@@ -9547,10 +9740,6 @@ var settingRender$6 = [
9547
9740
  label: '默认行数',
9548
9741
  type: 'Number',
9549
9742
  name: ['lineClamp']
9550
- },
9551
- {
9552
- label: '间距',
9553
- type: 'TextSpace'
9554
9743
  }
9555
9744
  ]
9556
9745
  }
@@ -9636,19 +9825,25 @@ var settingRender$6 = [
9636
9825
  {
9637
9826
  type: 'TextAlign',
9638
9827
  name: ['props', 'buttonStyle']
9639
- },
9828
+ }
9829
+ ]
9830
+ },
9831
+ {
9832
+ title: 'Iframe商品弹窗',
9833
+ child: [
9640
9834
  {
9641
- label: '间距',
9642
- type: 'TextSpace',
9643
- name: ['props', 'buttonStyle']
9835
+ label: '弹窗按钮',
9836
+ type: 'Upload',
9837
+ name: ['props', 'iframeIcon'],
9838
+ text: '建议尺寸:106 * 41'
9644
9839
  }
9645
9840
  ]
9646
9841
  }
9647
9842
  ];
9648
9843
 
9649
9844
  const CommodityDetailDiroNew$1 = (_a) => {
9650
- 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;
9651
- 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"]);
9845
+ 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;
9846
+ 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"]);
9652
9847
  useState(true);
9653
9848
  const { sxpParameter, popupCurTimeRef, popupDetailData, isPreview, bffFbReport, checkCommodityIndexRef } = useSxpDataSource();
9654
9849
  const { jumpToWeb, productView } = useEventReport();
@@ -9657,6 +9852,7 @@ const CommodityDetailDiroNew$1 = (_a) => {
9657
9852
  useState(true);
9658
9853
  const [showModal, setShowModal] = useState(false);
9659
9854
  const curTimeRef = useRef(null);
9855
+ const [show3DModal, setShow3DModal] = useState(false);
9660
9856
  const [checkCommodityIndex, setCheckCommodityIndex] = useState((_b = popupDetailData === null || popupDetailData === void 0 ? void 0 : popupDetailData.multiCheckIndex) !== null && _b !== void 0 ? _b : 0);
9661
9857
  const data = isPost ? rec : popupDetailData;
9662
9858
  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];
@@ -9707,7 +9903,8 @@ const CommodityDetailDiroNew$1 = (_a) => {
9707
9903
  return '£102,300.00';
9708
9904
  }
9709
9905
  }, [product === null || product === void 0 ? void 0 : product.price, product === null || product === void 0 ? void 0 : product.currency]);
9710
- const width = isPreview ? 375 : (_t = style === null || style === void 0 ? void 0 : style.width) !== null && _t !== void 0 ? _t : window.innerWidth;
9906
+ 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;
9907
+ const height = commodityImgRatio ? width * (commodityImgRatio.h / commodityImgRatio.w) : width;
9711
9908
  // useEffect(() => {
9712
9909
  // console.log(scrollRef?.current?.scrollHeight, window.innerHeight);
9713
9910
  // if (scrollRef?.current && scrollRef?.current?.scrollHeight > window.innerHeight) {
@@ -9781,52 +9978,69 @@ Made in Italy` })));
9781
9978
  return;
9782
9979
  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 }));
9783
9980
  }, [checkCommodityIndex]);
9981
+ const getDotsAlign = useMemo(() => {
9982
+ const dotsAlignClass = {
9983
+ left: 'commondityDetail-swiper-clickable-left',
9984
+ center: 'commondityDetail-swiper-clickable-center',
9985
+ right: 'commondityDetail-swiper-clickable-right'
9986
+ };
9987
+ return dotsAlignClass === null || dotsAlignClass === void 0 ? void 0 : dotsAlignClass[swiper === null || swiper === void 0 ? void 0 : swiper.dotsAlign];
9988
+ }, [swiper === null || swiper === void 0 ? void 0 : swiper.dotsAlign]);
9989
+ 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);
9784
9990
  return (React.createElement("div", { className: 'pb-commondityDiroNew' },
9785
9991
  React.createElement("div", Object.assign({ className: css(Object.assign(Object.assign({}, style), { transform: 'translate3d(0px, 0px, 0px)' })) }, props),
9786
- 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: {
9787
- clickable: true,
9788
- bulletActiveClass: 'commondityDiroNew-swipe-item-active-bullet',
9789
- clickableClass: (swiper === null || swiper === void 0 ? void 0 : swiper.dotsAlign) === 'left'
9790
- ? 'commondityDiroNew-swiper-clickable-left'
9791
- : 'commondityDiroNew-swiper-clickable-center'
9792
- }, loop: true, autoplay: {
9793
- delay: (swiper === null || swiper === void 0 ? void 0 : swiper.delay) * 1000
9794
- } }, (_v = product === null || product === void 0 ? void 0 : product.homePage) === null || _v === void 0 ? void 0 : _v.map((src) => {
9795
- var _a;
9796
- return (React.createElement(SwiperSlide, { key: src },
9797
- React.createElement("div", { style: {
9798
- overflow: 'hidden',
9799
- width,
9800
- height: width
9801
- } },
9802
- React.createElement(FormatImage$1, { style: {
9803
- height: '100%',
9804
- width: '100%',
9805
- objectFit: 'cover',
9806
- display: 'block',
9807
- objectPosition: `50% ${(swiper === null || swiper === void 0 ? void 0 : swiper.translateY) ? (swiper === null || swiper === void 0 ? void 0 : swiper.translateY) + 50 : 50}%`
9808
- }, 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 }))));
9809
- }))),
9810
- !((_w = product === null || product === void 0 ? void 0 : product.homePage) === null || _w === void 0 ? void 0 : _w.length) && (React.createElement("div", { className: css({
9811
- position: 'relative',
9812
- height: 0,
9813
- width: '100%',
9814
- paddingBottom: '100%',
9815
- overflow: 'hidden'
9816
- }) },
9817
- React.createElement("img", { className: css({
9818
- position: 'absolute',
9819
- left: 0,
9820
- top: 0,
9821
- objectFit: 'cover',
9822
- width: '100%'
9823
- }), src: (_x = sxpParameter === null || sxpParameter === void 0 ? void 0 : sxpParameter.bottom_image) !== null && _x !== void 0 ? _x : bottom_image, alt: 'pdp image' }))),
9992
+ React.createElement("div", { style: { position: 'relative' } },
9993
+ 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: {
9994
+ clickable: true,
9995
+ bulletActiveClass: 'commondityDiroNew-swipe-item-active-bullet',
9996
+ clickableClass: getDotsAlign
9997
+ }, loop: true, autoplay: {
9998
+ delay: (swiper === null || swiper === void 0 ? void 0 : swiper.delay) * 1000
9999
+ } }, (_2 = product === null || product === void 0 ? void 0 : product.homePage) === null || _2 === void 0 ? void 0 : _2.map((src) => {
10000
+ var _a;
10001
+ return (React.createElement(SwiperSlide, { key: src },
10002
+ React.createElement("div", { style: {
10003
+ overflow: 'hidden',
10004
+ width,
10005
+ height
10006
+ } },
10007
+ React.createElement(FormatImage$1, { style: {
10008
+ height: '100%',
10009
+ width: '100%',
10010
+ objectFit: 'cover',
10011
+ display: 'block',
10012
+ objectPosition: `50% ${(swiper === null || swiper === void 0 ? void 0 : swiper.translateY) ? (swiper === null || swiper === void 0 ? void 0 : swiper.translateY) + 50 : 50}%`
10013
+ }, 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 }))));
10014
+ }))),
10015
+ !((_3 = product === null || product === void 0 ? void 0 : product.homePage) === null || _3 === void 0 ? void 0 : _3.length) && (React.createElement("div", { className: css({
10016
+ height,
10017
+ width
10018
+ }) },
10019
+ React.createElement("img", { className: css({
10020
+ objectFit: 'cover',
10021
+ width: '100%',
10022
+ height: '100%'
10023
+ }), src: (_4 = sxpParameter === null || sxpParameter === void 0 ? void 0 : sxpParameter.bottom_image) !== null && _4 !== void 0 ? _4 : bottom_image, alt: 'pdp image' }))),
10024
+ (iframeUrl && iframeIcon) ||
10025
+ (!product && iframeIcon && (React.createElement("div", { style: {
10026
+ padding: '5px 10px',
10027
+ display: 'flex',
10028
+ alignItems: 'center',
10029
+ position: 'absolute',
10030
+ right: '10px',
10031
+ bottom: '10px',
10032
+ zIndex: 1,
10033
+ background: '#fff',
10034
+ borderRadius: '3px'
10035
+ }, onClick: () => setShow3DModal(true) },
10036
+ React.createElement("img", { src: iframeIcon, alt: '3d', width: '20px', height: '20px', style: { marginRight: '5px' } }),
10037
+ React.createElement("span", { style: { fontSize: '12px' } }, "Try in 3D"))))),
9824
10038
  renderCommodityGroup(),
9825
10039
  React.createElement("div", { className: 'pb-commondityDiroNew-content' },
9826
10040
  React.createElement("div", { className: 'pb-commondityDiroNew-content-top' },
9827
10041
  React.createElement("div", { className: 'pb-commondityDiroNew-content-top-left' },
9828
10042
  React.createElement("div", { className: 'pb-commondityDiroNew-content-top-left-title', style: getStyle(commodityStyles === null || commodityStyles === void 0 ? void 0 : commodityStyles.title), dangerouslySetInnerHTML: {
9829
- __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)
10043
+ __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)
9830
10044
  } }),
9831
10045
  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: {
9832
10046
  __html: setFontForText((product === null || product === void 0 ? void 0 : product.collection) || 'Black Macrocannage CalfskinLarge', commodityStyles === null || commodityStyles === void 0 ? void 0 : commodityStyles.collection)
@@ -9836,14 +10050,21 @@ Made in Italy` })));
9836
10050
  __html: setFontForText(priceText, commodityStyles === null || commodityStyles === void 0 ? void 0 : commodityStyles.price)
9837
10051
  } }),
9838
10052
  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: {
9839
- __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)
10053
+ __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)
9840
10054
  } }))),
9841
- (!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 },
10055
+ (!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 },
9842
10056
  React.createElement("span", { dangerouslySetInnerHTML: {
9843
- __html: setFontForText((_1 = cta === null || cta === void 0 ? void 0 : cta.enTitle) !== null && _1 !== void 0 ? _1 : 'Shop now', buttonStyle)
10057
+ __html: setFontForText((_8 = cta === null || cta === void 0 ? void 0 : cta.enTitle) !== null && _8 !== void 0 ? _8 : 'Shop now', buttonStyle)
9844
10058
  } }))),
9845
10059
  productInfoText({ isPost }))),
9846
- React.createElement(Modal$1, { visible: showModal, onClose: () => setShowModal(false) }, productInfoText({ isPost: false }))));
10060
+ React.createElement(Modal$1, { visible: showModal, onClose: () => setShowModal(false) }, productInfoText({ isPost: false })),
10061
+ React.createElement(Modal$1, { visible: show3DModal, padding: 0, isFullScreen: true, onClose: () => setShow3DModal(false) },
10062
+ React.createElement("iframe", { src: iframeUrl, style: {
10063
+ width: '100%',
10064
+ height: 'calc(100% - 50px)',
10065
+ marginTop: '40px',
10066
+ border: 'none'
10067
+ } }))));
9847
10068
  };
9848
10069
  var CommodityDetailDiroNewComponent = memo(CommodityDetailDiroNew$1);
9849
10070
 
@@ -9863,7 +10084,7 @@ var CommodityDetailDiroNewComponent = memo(CommodityDetailDiroNew$1);
9863
10084
  * @FilePath: \pb-sxp-ui\src\materials\sxp\cta\AniLink\interactionRender.tsx
9864
10085
  *
9865
10086
  */
9866
- var interactionRender$a = [
10087
+ var interactionRender$b = [
9867
10088
  {
9868
10089
  title: '滑动事件',
9869
10090
  child: [
@@ -9890,8 +10111,8 @@ const CommodityDetailDiroNew = createMaterial(CommodityDetailDiroNewComponent, {
9890
10111
  category: 'popup',
9891
10112
  type: 'CommodityDetailDiroNew',
9892
10113
  related: {
9893
- settingRender: settingRender$6,
9894
- interactionRender: interactionRender$a
10114
+ settingRender: settingRender$7,
10115
+ interactionRender: interactionRender$b
9895
10116
  },
9896
10117
  defaulSetting: {
9897
10118
  props: {
@@ -9934,6 +10155,10 @@ const CommodityDetailDiroNew = createMaterial(CommodityDetailDiroNewComponent, {
9934
10155
  borderRadius: 25,
9935
10156
  marginTop: 16,
9936
10157
  marginBottom: 16
10158
+ },
10159
+ commodityImgRatio: {
10160
+ w: 1,
10161
+ h: 1
9937
10162
  }
9938
10163
  },
9939
10164
  style: {}
@@ -9947,11 +10172,26 @@ const CommodityDetailDiroNew = createMaterial(CommodityDetailDiroNewComponent, {
9947
10172
  * @Author: binruan@chatlabs.com
9948
10173
  * @Date: 2024-03-26 16:50:25
9949
10174
  * @LastEditors: binruan@chatlabs.com
9950
- * @LastEditTime: 2024-08-06 14:09:52
10175
+ * @LastEditTime: 2024-07-09 10:37:45
9951
10176
  * @FilePath: \pb-sxp-ui\src\materials\sxp\popup\CommodityList\settingRender.tsx
9952
10177
  *
9953
10178
  */
9954
- var settingRender$5 = [
10179
+ var settingRender$6 = [
10180
+ {
10181
+ title: '弹窗背景',
10182
+ child: [
10183
+ {
10184
+ type: 'Number',
10185
+ label: '左右边距',
10186
+ name: ['props', 'popupBg', 'horizontalMargin']
10187
+ },
10188
+ {
10189
+ type: 'Number',
10190
+ label: '下边距',
10191
+ name: ['props', 'popupBg', 'bottomMargin']
10192
+ }
10193
+ ]
10194
+ },
9955
10195
  {
9956
10196
  title: '商品图片',
9957
10197
  child: [
@@ -10069,10 +10309,6 @@ var settingRender$5 = [
10069
10309
  {
10070
10310
  label: '标题对齐',
10071
10311
  type: 'TextAlign'
10072
- },
10073
- {
10074
- label: '间距',
10075
- type: 'TextSpace'
10076
10312
  }
10077
10313
  ]
10078
10314
  }
@@ -10313,7 +10549,7 @@ var CommodityListComponent = memo(CommodityList$1);
10313
10549
  * @FilePath: \pb-sxp-ui\src\materials\sxp\cta\AniLink\interactionRender.tsx
10314
10550
  *
10315
10551
  */
10316
- var interactionRender$9 = [
10552
+ var interactionRender$a = [
10317
10553
  {
10318
10554
  title: '点击事件',
10319
10555
  child: [
@@ -10339,8 +10575,8 @@ const CommodityList = createMaterial(CommodityListComponent, {
10339
10575
  category: 'popup',
10340
10576
  type: 'CommodityList',
10341
10577
  related: {
10342
- settingRender: settingRender$5,
10343
- interactionRender: interactionRender$9
10578
+ settingRender: settingRender$6,
10579
+ interactionRender: interactionRender$a
10344
10580
  },
10345
10581
  defaulSetting: {
10346
10582
  props: {
@@ -10381,6 +10617,59 @@ const CommodityList = createMaterial(CommodityListComponent, {
10381
10617
  sort: 1
10382
10618
  });
10383
10619
 
10620
+ /*
10621
+ * @Author: binruan@chatlabs.com
10622
+ * @Date: 2023-10-27 14:06:35
10623
+ * @LastEditors: binruan@chatlabs.com
10624
+ * @LastEditTime: 2024-08-08 17:32:11
10625
+ * @FilePath: \pb-sxp-ui\src\materials\sxp\popup\Iframe\settingRender.tsx
10626
+ *
10627
+ */
10628
+ var settingRender$5 = [
10629
+ {
10630
+ title: '背景样式',
10631
+ child: [
10632
+ {
10633
+ type: 'Color',
10634
+ label: '背景色',
10635
+ name: ['style', 'backgroundColor']
10636
+ }
10637
+ ]
10638
+ }
10639
+ ];
10640
+
10641
+ const Iframe$1 = (_a) => {
10642
+ var _b, _c;
10643
+ 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"]);
10644
+ const { popupDetailData } = useSxpDataSource();
10645
+ 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;
10646
+ return (React.createElement("div", Object.assign({ className: `${css(Object.assign({}, style))}` }, props), iframeUrl && (React.createElement("iframe", { src: iframeUrl, style: {
10647
+ width: '100%',
10648
+ height: 'calc(100% - 50px)',
10649
+ marginTop: '40px',
10650
+ border: 'none'
10651
+ } }))));
10652
+ };
10653
+ var IframeComponent = memo(Iframe$1);
10654
+
10655
+ const Iframe = createMaterial(IframeComponent, {
10656
+ displayName: 'Iframe弹窗',
10657
+ icon: '',
10658
+ category: 'popup',
10659
+ type: 'Iframe',
10660
+ related: {
10661
+ settingRender: settingRender$5,
10662
+ bindableProps: []
10663
+ },
10664
+ defaulSetting: {
10665
+ props: {},
10666
+ style: {}
10667
+ },
10668
+ w: 100,
10669
+ h: 40,
10670
+ sort: 3
10671
+ });
10672
+
10384
10673
  /*
10385
10674
  * @Author: binruan@chatlabs.com
10386
10675
  * @Date: 2024-03-26 16:50:25
@@ -10640,7 +10929,7 @@ var settingRender$4 = [
10640
10929
  }
10641
10930
  ];
10642
10931
 
10643
- var interactionRender$8 = [
10932
+ var interactionRender$9 = [
10644
10933
  {
10645
10934
  title: '点击事件',
10646
10935
  child: [
@@ -10653,7 +10942,7 @@ var interactionRender$8 = [
10653
10942
  ];
10654
10943
 
10655
10944
  const EventProvider = (_a) => {
10656
- var { rec, children, className, onClick, style, isExternalLink = false, index } = _a; __rest(_a, ["rec", "children", "className", "onClick", "style", "isExternalLink", "index"]);
10945
+ var { rec, children, className, onClick, style, isExternalLink = false, index, jumpLink } = _a; __rest(_a, ["rec", "children", "className", "onClick", "style", "isExternalLink", "index", "jumpLink"]);
10657
10946
  const ref = useRef(null);
10658
10947
  const { popup } = useEditor();
10659
10948
  const { setPopupDetailData, ctaEvent } = useSxpDataSource();
@@ -10667,11 +10956,11 @@ const EventProvider = (_a) => {
10667
10956
  }, rec, item, index);
10668
10957
  setPopupDetailData === null || setPopupDetailData === void 0 ? void 0 : setPopupDetailData(Object.assign(Object.assign({}, rec), { index }));
10669
10958
  if (isExternalLink) {
10670
- 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) {
10959
+ 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)) {
10671
10960
  const cta = (_e = rec === null || rec === void 0 ? void 0 : rec.video) === null || _e === void 0 ? void 0 : _e.bindCta;
10672
10961
  const product = (_f = rec === null || rec === void 0 ? void 0 : rec.video) === null || _f === void 0 ? void 0 : _f.bindProduct;
10673
10962
  jumpToWeb(rec, product, cta, index);
10674
- 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);
10963
+ 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) || '');
10675
10964
  }
10676
10965
  }
10677
10966
  else {
@@ -10723,7 +11012,7 @@ const Commodity = createMaterial(CommodityComponent, {
10723
11012
  category: 'template',
10724
11013
  type: 'Commodity',
10725
11014
  related: {
10726
- interactionRender: interactionRender$8,
11015
+ interactionRender: interactionRender$9,
10727
11016
  bindableProps: [],
10728
11017
  settingRender: settingRender$4
10729
11018
  },
@@ -10765,7 +11054,7 @@ const Commodity = createMaterial(CommodityComponent, {
10765
11054
  sort: 1
10766
11055
  });
10767
11056
 
10768
- var interactionRender$7 = [
11057
+ var interactionRender$8 = [
10769
11058
  {
10770
11059
  title: '点击事件',
10771
11060
  child: [
@@ -10805,7 +11094,7 @@ const Appoint = createMaterial(AppointComponent, {
10805
11094
  category: 'template',
10806
11095
  type: 'Appoint',
10807
11096
  related: {
10808
- interactionRender: interactionRender$7,
11097
+ interactionRender: interactionRender$8,
10809
11098
  settingRender: settingRender$4 === null || settingRender$4 === void 0 ? void 0 : settingRender$4.filter((i) => i.type !== 'commodityTitle'),
10810
11099
  bindableProps: []
10811
11100
  },
@@ -10845,7 +11134,7 @@ const Appoint = createMaterial(AppointComponent, {
10845
11134
  * @Author: binruan@chatlabs.com
10846
11135
  * @Date: 2024-07-02 14:51:32
10847
11136
  * @LastEditors: binruan@chatlabs.com
10848
- * @LastEditTime: 2024-08-06 14:51:18
11137
+ * @LastEditTime: 2024-07-02 16:44:34
10849
11138
  * @FilePath: \pb-sxp-ui\src\materials\sxp\template\Link\settingRender.tsx
10850
11139
  *
10851
11140
  */
@@ -10942,11 +11231,6 @@ var linkSettingRender = [
10942
11231
  type: 'TextAlign',
10943
11232
  name: ['props', 'customTitle', 'style']
10944
11233
  },
10945
- {
10946
- label: '间距',
10947
- type: 'TextSpace',
10948
- name: ['props', 'customTitle', 'style']
10949
- },
10950
11234
  {
10951
11235
  label: '上边距',
10952
11236
  type: 'Number',
@@ -10960,21 +11244,15 @@ var linkSettingRender = [
10960
11244
  var styles$7 = {"tow-line-ellipsis":"index-module_tow-line-ellipsis__nkBlU","one-line-ellipsis":"index-module_one-line-ellipsis__buFw1"};
10961
11245
 
10962
11246
  const Link$1 = (_a) => {
10963
- var _b, _c, _d, _e, _f, _g, _h, _j;
11247
+ var _b, _c, _d, _e, _f, _g, _h, _j, _k;
10964
11248
  var { content, style, bgImg, recData, bottom_image, ctaTempStyles, index, customTitle } = _a, props = __rest(_a, ["content", "style", "bgImg", "recData", "bottom_image", "ctaTempStyles", "index", "customTitle"]);
10965
11249
  const { sxpParameter, bffEventReport } = useSxpDataSource();
10966
- const { jumpToWeb } = useEventReport();
11250
+ useEventReport();
10967
11251
  const cta = (_b = recData === null || recData === void 0 ? void 0 : recData.video) === null || _b === void 0 ? void 0 : _b.bindCta;
10968
- const product = (_c = recData === null || recData === void 0 ? void 0 : recData.video) === null || _c === void 0 ? void 0 : _c.bindProduct;
10969
- const handleTo = () => {
10970
- if (cta === null || cta === void 0 ? void 0 : cta.link) {
10971
- jumpToWeb(recData, product, cta, index);
10972
- window.location.href = window.getJointUtmLink(cta.link);
10973
- }
10974
- };
11252
+ (_c = recData === null || recData === void 0 ? void 0 : recData.video) === null || _c === void 0 ? void 0 : _c.bindProduct;
10975
11253
  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;
10976
- return (React.createElement(EventProvider$1, Object.assign({ index: index, rec: recData, className: css(Object.assign({ alignItems: 'center' }, style)), style: { display: 'flex' } }, props, { onClick: handleTo }),
10977
- 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 }),
11254
+ return (React.createElement(EventProvider$1, Object.assign({ index: index, rec: recData, className: 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 : '' }),
11255
+ 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 }),
10978
11256
  React.createElement("div", { className: css({
10979
11257
  display: 'flex',
10980
11258
  alignItems: 'center',
@@ -10983,14 +11261,34 @@ const Link$1 = (_a) => {
10983
11261
  }) },
10984
11262
  React.createElement("div", null,
10985
11263
  React.createElement("div", { className: styles$7['tow-line-ellipsis'], style: ctaTempStyles === null || ctaTempStyles === void 0 ? void 0 : ctaTempStyles.ctaTitle, dangerouslySetInnerHTML: {
10986
- __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)
11264
+ __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)
10987
11265
  } }),
10988
- (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: {
11266
+ (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: {
10989
11267
  __html: setFontForText(customTitle === null || customTitle === void 0 ? void 0 : customTitle.text, customTitle === null || customTitle === void 0 ? void 0 : customTitle.style)
10990
11268
  } }))))));
10991
11269
  };
10992
11270
  var LinkComponent = memo(Link$1);
10993
11271
 
11272
+ /*
11273
+ * @Author: binruan@chatlabs.com
11274
+ * @Date: 2024-08-09 16:59:38
11275
+ * @LastEditors: binruan@chatlabs.com
11276
+ * @LastEditTime: 2024-08-09 16:59:44
11277
+ * @FilePath: \pb-sxp-ui\src\materials\sxp\template\Link\interactionRender.tsx
11278
+ *
11279
+ */
11280
+ var interactionRender$7 = [
11281
+ {
11282
+ title: '点击事件',
11283
+ child: [
11284
+ {
11285
+ type: 'link',
11286
+ name: 'onClick'
11287
+ }
11288
+ ]
11289
+ }
11290
+ ];
11291
+
10994
11292
  var _a;
10995
11293
  const Link = createMaterial(LinkComponent, {
10996
11294
  displayName: '跳转指引',
@@ -10999,7 +11297,8 @@ const Link = createMaterial(LinkComponent, {
10999
11297
  type: 'Link',
11000
11298
  related: {
11001
11299
  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),
11002
- bindableProps: []
11300
+ bindableProps: [],
11301
+ interactionRender: interactionRender$7
11003
11302
  },
11004
11303
  defaulSetting: {
11005
11304
  props: {
@@ -11589,7 +11888,7 @@ const MultiCommodityDiroNew = createMaterial(MultiCommodityDiroNewComponent, {
11589
11888
  * @Author: binruan@chatlabs.com
11590
11889
  * @Date: 2024-04-07 14:07:12
11591
11890
  * @LastEditors: binruan@chatlabs.com
11592
- * @LastEditTime: 2024-08-06 14:00:36
11891
+ * @LastEditTime: 2024-06-27 09:49:19
11593
11892
  * @FilePath: \pb-sxp-ui\src\materials\sxp\HashTag\settingRender.tsx
11594
11893
  *
11595
11894
  */
@@ -11694,10 +11993,6 @@ var settingRender$3 = [
11694
11993
  {
11695
11994
  label: '标题对齐',
11696
11995
  type: 'TextAlign'
11697
- },
11698
- {
11699
- label: '间距',
11700
- type: 'TextSpace'
11701
11996
  }
11702
11997
  ]
11703
11998
  }
@@ -11783,11 +12078,6 @@ var settingRender$3 = [
11783
12078
  {
11784
12079
  type: 'TextAlign',
11785
12080
  name: ['props', 'buttonStyle']
11786
- },
11787
- {
11788
- label: '间距',
11789
- type: 'TextSpace',
11790
- name: ['props', 'buttonStyle']
11791
12081
  }
11792
12082
  ]
11793
12083
  },
@@ -13343,16 +13633,10 @@ function WaterfallList$1(_a) {
13343
13633
  }, [unitWidth, rowsNum, list]); /* 增加getStyleList依赖项会导致在admin预览编辑时无限刷新 */
13344
13634
  /** 初始化请求数据 */
13345
13635
  useEffect(() => {
13346
- var _a, _b;
13636
+ var _a, _b, _c, _d, _e, _f;
13347
13637
  setIsLoadingData(true);
13348
13638
  waterFallData &&
13349
- (getRecommendVideos === null || getRecommendVideos === void 0 ? void 0 : getRecommendVideos({
13350
- hashTag: waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.hashTag,
13351
- 'itemFilter.itemId': waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.itemId,
13352
- 'itemFilter.itemType': waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.itemType,
13353
- defaultSize: hashTagSize,
13354
- maxSize: hashTagSize
13355
- }).then((res) => {
13639
+ (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) => {
13356
13640
  var _a, _b;
13357
13641
  setData(res);
13358
13642
  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 : []);
@@ -13361,7 +13645,7 @@ function WaterfallList$1(_a) {
13361
13645
  if (isOpenHashTag) {
13362
13646
  const res = previewData;
13363
13647
  setData(res);
13364
- 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 : []);
13648
+ 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 : []);
13365
13649
  setIsLoadingData(false);
13366
13650
  }
13367
13651
  }, [waterFallData, getRecommendVideos, hashTagSize, isOpenHashTag]);
@@ -13387,13 +13671,10 @@ function WaterfallList$1(_a) {
13387
13671
  };
13388
13672
  }, [onResize]);
13389
13673
  useCallback(() => {
13674
+ var _a, _b, _c, _d;
13390
13675
  setIsLoadingData(true);
13391
13676
  waterFallData &&
13392
- (getRecommendVideos === null || getRecommendVideos === void 0 ? void 0 : getRecommendVideos({
13393
- hashTag: waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.hashTag,
13394
- 'itemFilter.itemId': waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.itemId,
13395
- 'itemFilter.itemType': waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.itemType
13396
- }).then((res) => {
13677
+ (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) => {
13397
13678
  var _a, _b;
13398
13679
  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 : []));
13399
13680
  setIsLoadingData(false);
@@ -13601,31 +13882,22 @@ function WaterfallList(_a) {
13601
13882
  const containerRef = useRef(null);
13602
13883
  const [isLoadMore, setIsLoadMore] = useState(false);
13603
13884
  useCallback(() => {
13885
+ var _a, _b, _c, _d;
13604
13886
  if (isLoadMore)
13605
13887
  return;
13606
13888
  setIsLoadMore(true);
13607
13889
  waterFallData &&
13608
- (getRecommendVideos === null || getRecommendVideos === void 0 ? void 0 : getRecommendVideos({
13609
- hashTag: waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.hashTag,
13610
- 'itemFilter.itemId': waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.itemId,
13611
- 'itemFilter.itemType': waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.itemType
13612
- }).then((res) => {
13890
+ (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) => {
13613
13891
  var _a;
13614
13892
  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 : []));
13615
13893
  setIsLoadMore(false);
13616
13894
  }));
13617
13895
  }, [waterFallData, getRecommendVideos, list, isLoadMore]);
13618
13896
  useEffect(() => {
13619
- var _a, _b;
13897
+ var _a, _b, _c, _d, _e, _f;
13620
13898
  setIsLoadingData(true);
13621
13899
  waterFallData &&
13622
- (getRecommendVideos === null || getRecommendVideos === void 0 ? void 0 : getRecommendVideos({
13623
- hashTag: waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.hashTag,
13624
- 'itemFilter.itemId': waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.itemId,
13625
- 'itemFilter.itemType': waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.itemType,
13626
- defaultSize: hashTagSize,
13627
- maxSize: hashTagSize
13628
- }).then((res) => {
13900
+ (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) => {
13629
13901
  var _a, _b;
13630
13902
  setData(res);
13631
13903
  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 : []);
@@ -13634,7 +13906,7 @@ function WaterfallList(_a) {
13634
13906
  if (isOpenHashTag) {
13635
13907
  const res = previewData;
13636
13908
  setData(res);
13637
- 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 : []);
13909
+ 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 : []);
13638
13910
  setIsLoadingData(false);
13639
13911
  }
13640
13912
  }, [waterFallData, getRecommendVideos, hashTagSize, isOpenHashTag]);
@@ -13961,7 +14233,7 @@ const Consent = createMaterial(ConsentComponent, {
13961
14233
  * @Author: binruan@chatlabs.com
13962
14234
  * @Date: 2024-07-02 14:51:32
13963
14235
  * @LastEditors: binruan@chatlabs.com
13964
- * @LastEditTime: 2024-08-06 14:28:34
14236
+ * @LastEditTime: 2024-07-05 19:09:41
13965
14237
  * @FilePath: \pb-sxp-ui\src\materials\sxp\cta\AniLink\settingRender.tsx
13966
14238
  *
13967
14239
  */
@@ -14064,10 +14336,6 @@ var settingRender$1 = [
14064
14336
  label: '对齐',
14065
14337
  type: 'TextAlign',
14066
14338
  name: ['props', 'ctaTempStyles', 'ctaTitle']
14067
- },
14068
- {
14069
- type: 'TextSpace',
14070
- name: ['props', 'ctaTempStyles', 'ctaTitle']
14071
14339
  }
14072
14340
  ]
14073
14341
  }
@@ -14725,6 +14993,7 @@ var _materials_ = /*#__PURE__*/Object.freeze({
14725
14993
  CommodityList: CommodityList,
14726
14994
  Consent: Consent,
14727
14995
  HashTag: HashTag,
14996
+ Iframe: Iframe,
14728
14997
  Link: Link,
14729
14998
  MultiCommodity: MultiCommodity,
14730
14999
  MultiCommodityDiro: MultiCommodityDiro,
@@ -15183,14 +15452,6 @@ const VideoWidget$2 = ({ rec, index, height, data, muted, activeIndex, videoPost
15183
15452
  };
15184
15453
  var VideoWidget$3 = memo(VideoWidget$2);
15185
15454
 
15186
- /*
15187
- * @Author: binruan@chatlabs.com
15188
- * @Date: 2023-12-27 19:02:59
15189
- * @LastEditors: binruan@chatlabs.com
15190
- * @LastEditTime: 2024-01-24 10:30:13
15191
- * @FilePath: \pb-sxp-ui\src\core\components\SxpPageRender\ToggleButton\index.tsx
15192
- *
15193
- */
15194
15455
  const ToggleButton = ({ defaultValue, activeIcon, unactiveIcon, onChange, style }) => {
15195
15456
  const [isTrue, setIsTure] = useState(defaultValue);
15196
15457
  const handleClick = (e) => {
@@ -15199,6 +15460,9 @@ const ToggleButton = ({ defaultValue, activeIcon, unactiveIcon, onChange, style
15199
15460
  setIsTure(result);
15200
15461
  onChange === null || onChange === void 0 ? void 0 : onChange(result);
15201
15462
  };
15463
+ useEffect(() => {
15464
+ setIsTure(defaultValue);
15465
+ }, [defaultValue]);
15202
15466
  return (React.createElement("button", { style: style, "aria-label": 'toggle button', className: 'pb-toggle-button', onClick: handleClick },
15203
15467
  React.createElement("img", { className: 'pb-toggle-button-icon', alt: 'toggle image', src: isTrue ? activeIcon : unactiveIcon })));
15204
15468
  };
@@ -15577,12 +15841,14 @@ var Tagbar$1 = memo(Tagbar);
15577
15841
  * @Author: binruan@chatlabs.com
15578
15842
  * @Date: 2024-01-15 19:03:09
15579
15843
  * @LastEditors: binruan@chatlabs.com
15580
- * @LastEditTime: 2024-08-02 18:34:27
15844
+ * @LastEditTime: 2024-08-14 19:09:32
15581
15845
  * @FilePath: \pb-sxp-ui\src\core\components\SxpPageRender\index.tsx
15582
15846
  *
15583
15847
  */
15584
15848
  const SxpPageRender = ({ globalConfig, descStyle, containerHeight = window.innerHeight, containerWidth = window.innerWidth, tempMap, resolver, data = [], ctaType, tipText, nudge, _schema, hashTagStyle, tagList = [], licenseUrl }) => {
15585
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
15849
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j;
15850
+ const mutedIcon = useIconLink('/pb_static/5beaaa5ce7f3477b99db3838619cc471.png');
15851
+ const unmutedIcon = useIconLink('/pb_static/fea8668a8a894e4aa3a86bcc775e895e.png');
15586
15852
  const { schema } = useEditor();
15587
15853
  const [activeIndex, setActiveIndex] = useState(0);
15588
15854
  const viewImageStartTime = useRef(0);
@@ -15596,8 +15862,8 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight = window.inner
15596
15862
  const { backMainFeed } = useEventReport();
15597
15863
  const { productView } = useEventReport();
15598
15864
  const isShowFingerTip = useMemo(() => {
15599
- return data.length > 0 && !loading && getFeUserId();
15600
- }, [data, loading]);
15865
+ return data.length > 0 && !loading && (getFeUserId() || (globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.enableSwiperTip));
15866
+ }, [data, loading, globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.enableSwiperTip]);
15601
15867
  useEffect(() => {
15602
15868
  refreshFeSessionId();
15603
15869
  }, []);
@@ -15625,14 +15891,15 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight = window.inner
15625
15891
  var _a;
15626
15892
  const index = (data === null || data === void 0 ? void 0 : data.findIndex((item) => {
15627
15893
  var _a, _b, _c, _d, _e, _f, _g, _h, _j;
15628
- if (ctaType === '多商品CTA') {
15894
+ const ctaType0 = ctaType === null || ctaType === void 0 ? void 0 : ctaType[0];
15895
+ if (ctaType0 === '多商品CTA') {
15629
15896
  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;
15630
15897
  }
15631
- else if (ctaType === '商品CTA') {
15898
+ else if (ctaType0 === '商品CTA') {
15632
15899
  return (_d = item === null || item === void 0 ? void 0 : item.video) === null || _d === void 0 ? void 0 : _d.bindProduct;
15633
15900
  }
15634
15901
  else {
15635
- 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));
15902
+ 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));
15636
15903
  }
15637
15904
  })) || 0;
15638
15905
  (_a = swiperRef === null || swiperRef === void 0 ? void 0 : swiperRef.current) === null || _a === void 0 ? void 0 : _a.swiper.slideTo(index);
@@ -15737,8 +16004,10 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight = window.inner
15737
16004
  return containerHeight - minusHeight - tagHeight;
15738
16005
  }, [globalConfig, containerHeight, tagHeight]);
15739
16006
  const renderLogo = useMemo(() => {
16007
+ var _a, _b;
15740
16008
  if ((globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.logoUrl) && (globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.isShowLogo)) {
15741
- return (React.createElement("div", { className: 'clc-sxp-logo-banner', style: { backgroundColor: globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.color } },
16009
+ 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;
16010
+ 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)() })),
15742
16011
  React.createElement("img", { src: globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.logoUrl, alt: 'logo' })));
15743
16012
  }
15744
16013
  return null;
@@ -15818,9 +16087,9 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight = window.inner
15818
16087
  isShowMore,
15819
16088
  lineGradStyle
15820
16089
  ]);
15821
- const renderLikeButton = useCallback((rec, index) => {
16090
+ const renderLikeButton = useCallback((rec, index, visible) => {
15822
16091
  var _a, _b, _c, _d;
15823
- if (!(globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.isShowLike))
16092
+ if (!(globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.isShowLike) || !visible)
15824
16093
  return;
15825
16094
  let top = (_a = globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.likeIconY) !== null && _a !== void 0 ? _a : 400;
15826
16095
  if (waterFallData && top < 40) {
@@ -15828,6 +16097,7 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight = window.inner
15828
16097
  }
15829
16098
  if (rec === null || rec === void 0 ? void 0 : rec.video) {
15830
16099
  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: {
16100
+ position: (globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.likeIconFixed) ? 'fixed' : 'absolute',
15831
16101
  [(_b = globalConfig.likeIconXPosit) !== null && _b !== void 0 ? _b : 'right']: (_c = globalConfig.likeIconX) !== null && _c !== void 0 ? _c : 0,
15832
16102
  [(_d = globalConfig.likeIconYPosit) !== null && _d !== void 0 ? _d : 'bottom']: top
15833
16103
  }, position: index }));
@@ -15978,6 +16248,18 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight = window.inner
15978
16248
  });
15979
16249
  return !waterFallData ? list.concat([{ loading: true }]) : list;
15980
16250
  }, [data, activeIndex, waterFallData]);
16251
+ const renderToggleButton = useCallback((visible) => {
16252
+ var _a, _b, _c, _d, _e, _f;
16253
+ if (!visible)
16254
+ return;
16255
+ 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: {
16256
+ position: (globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.muteIconFixed) ? 'fixed' : 'absolute',
16257
+ 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',
16258
+ zIndex: 999,
16259
+ [(_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,
16260
+ [(_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
16261
+ }, 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 })));
16262
+ }, [globalConfig, visList, activeIndex, isMuted]);
15981
16263
  const renderView = useMemo(() => {
15982
16264
  if (loading) {
15983
16265
  return (React.createElement("div", { style: { height, width: containerWidth, display: 'flex', justifyContent: 'center', alignItems: 'center' } },
@@ -15994,20 +16276,30 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight = window.inner
15994
16276
  React.createElement("img", { width: 64, height: 64, src: loadingImage, alt: 'loading...', style: { objectFit: 'contain' } }))) : (React.createElement(React.Fragment, null,
15995
16277
  renderContent(rec, index),
15996
16278
  renderBottom(rec, index),
15997
- renderLikeButton(rec, index)))))));
16279
+ renderLikeButton(rec, index, !(globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.likeIconFixed)),
16280
+ renderToggleButton(!(globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.muteIconFixed))))))));
15998
16281
  });
15999
- }, [containerWidth, data, height, loading, renderBottom, renderContent, visList, loadingImage, isReload]);
16000
- const mutedIcon = useIconLink('/pb_static/5beaaa5ce7f3477b99db3838619cc471.png');
16001
- const unmutedIcon = useIconLink('/pb_static/fea8668a8a894e4aa3a86bcc775e895e.png');
16282
+ }, [
16283
+ containerWidth,
16284
+ data,
16285
+ height,
16286
+ loading,
16287
+ renderBottom,
16288
+ renderContent,
16289
+ visList,
16290
+ loadingImage,
16291
+ isReload,
16292
+ renderToggleButton
16293
+ ]);
16002
16294
  return (React.createElement("div", { id: 'sxp-render', className: 'clc-sxp-container' },
16003
- waterFallData && (React.createElement(Navbar$1, { icon: img, styles: { background: 'rgba(0,0,0,.3)', color: '#fff' }, onClose: () => {
16295
+ 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: () => {
16004
16296
  setOpenHashtag === null || setOpenHashtag === void 0 ? void 0 : setOpenHashtag(true);
16005
16297
  } })),
16006
16298
  renderLogo,
16007
16299
  React.createElement(Tagbar$1, { tagList: tagList, setActiveIndex: setActiveIndex, style: {
16008
16300
  top: minusHeight
16009
16301
  } }),
16010
- 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,
16302
+ 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,
16011
16303
  React.createElement(Swiper, { style: {
16012
16304
  marginTop: tagHeight
16013
16305
  }, ref: swiperRef, onSlideChange: () => {
@@ -16032,15 +16324,10 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight = window.inner
16032
16324
  }
16033
16325
  }
16034
16326
  }, direction: 'vertical', height: height },
16035
- ((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: {
16036
- position: 'fixed',
16037
- 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',
16038
- zIndex: 999,
16039
- [(_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,
16040
- [(_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
16041
- }, 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 })),
16327
+ renderLikeButton(visList[activeIndex], activeIndex, !!(globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.likeIconFixed)),
16328
+ renderToggleButton(!!(globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.muteIconFixed)),
16042
16329
  renderView),
16043
- 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))));
16330
+ 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))));
16044
16331
  };
16045
16332
 
16046
16333
  const PictureGroup = ({ imgUrls, width, height, imgUrlsPostConfig, rec, index }) => {
@@ -16407,7 +16694,7 @@ var index$1 = memo(DiyPortalPreview);
16407
16694
  * @Author: binruan@chatlabs.com
16408
16695
  * @Date: 2023-10-31 10:56:01
16409
16696
  * @LastEditors: binruan@chatlabs.com
16410
- * @LastEditTime: 2024-08-01 15:23:51
16697
+ * @LastEditTime: 2024-08-06 17:15:56
16411
16698
  * @FilePath: \pb-sxp-ui\src\core\components\SxpPageRender\Popup\index.tsx
16412
16699
  *
16413
16700
  */
@@ -16466,14 +16753,14 @@ const Popup = () => {
16466
16753
  const renderPopupDetail = useMemo(() => {
16467
16754
  var _a, _b, _c;
16468
16755
  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) => {
16469
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q;
16756
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p;
16470
16757
  if ((value === null || value === void 0 ? void 0 : value.id) === (popup === null || popup === void 0 ? void 0 : popup.id)) {
16471
16758
  const t = resolver[(_a = value === null || value === void 0 ? void 0 : value.item) === null || _a === void 0 ? void 0 : _a.type];
16472
16759
  const Component = withBindDataSource(t);
16473
16760
  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';
16474
16761
  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';
16475
16762
  const defaulSetting = (_h = t === null || t === void 0 ? void 0 : t.extend) === null || _h === void 0 ? void 0 : _h.defaulSetting;
16476
- 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 })));
16763
+ 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 })));
16477
16764
  }
16478
16765
  else {
16479
16766
  return React.createElement(React.Fragment, null);