pb-sxp-ui 1.3.0 → 1.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +207 -78
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +207 -78
- package/dist/index.js.map +1 -1
- package/dist/index.min.cjs +3 -3
- package/dist/index.min.cjs.map +1 -1
- package/dist/index.min.js +3 -3
- package/dist/index.min.js.map +1 -1
- package/dist/pb-ui.js +207 -78
- package/dist/pb-ui.js.map +1 -1
- package/dist/pb-ui.min.js +3 -3
- package/dist/pb-ui.min.js.map +1 -1
- package/es/core/components/SxpPageRender/Modal/index.js +3 -2
- package/es/core/components/SxpPageRender/WaterFall/List.js +8 -4
- package/es/core/components/SxpPageRender/WaterFall/WaterfallList.js +7 -3
- package/es/core/components/SxpPageRender/index.js +29 -21
- package/es/core/context/EditorContext.js +2 -0
- package/es/core/context/SxpDataSourceProvider.js +33 -10
- package/es/core/hooks/useEventReport.d.ts +1 -1
- package/es/core/hooks/useEventReport.js +2 -2
- package/es/materials/sxp/HashTag/settingRender.d.ts +6 -7
- package/es/materials/sxp/HashTag/settingRender.js +9 -0
- package/es/materials/sxp/cta/AniLink/settingRender.d.ts +5 -0
- package/es/materials/sxp/cta/AniLink/settingRender.js +4 -0
- package/es/materials/sxp/popup/AppointForm/settingRender.d.ts +8 -5
- package/es/materials/sxp/popup/AppointForm/settingRender.js +12 -0
- package/es/materials/sxp/popup/CommodityDetail/index.d.ts +3 -1
- package/es/materials/sxp/popup/CommodityDetail/index.js +21 -13
- package/es/materials/sxp/popup/CommodityDetail/settingRender.d.ts +13 -0
- package/es/materials/sxp/popup/CommodityDetail/settingRender.js +15 -0
- package/es/materials/sxp/popup/CommodityDetailDiroNew/index.d.ts +3 -1
- package/es/materials/sxp/popup/CommodityDetailDiroNew/index.js +24 -16
- package/es/materials/sxp/popup/CommodityDetailDiroNew/settingRender.d.ts +13 -0
- package/es/materials/sxp/popup/CommodityDetailDiroNew/settingRender.js +15 -0
- package/es/materials/sxp/popup/CommodityList/settingRender.js +4 -0
- package/es/materials/sxp/popup/Prompt/settingRender.js +10 -0
- package/es/materials/sxp/template/Link/settingRender.js +5 -0
- package/lib/core/components/SxpPageRender/Modal/index.js +3 -2
- package/lib/core/components/SxpPageRender/WaterFall/List.js +8 -4
- package/lib/core/components/SxpPageRender/WaterFall/WaterfallList.js +7 -3
- package/lib/core/components/SxpPageRender/index.js +28 -20
- package/lib/core/context/EditorContext.js +2 -0
- package/lib/core/context/SxpDataSourceProvider.js +33 -10
- package/lib/core/hooks/useEventReport.d.ts +1 -1
- package/lib/core/hooks/useEventReport.js +2 -2
- package/lib/materials/sxp/HashTag/settingRender.d.ts +6 -7
- package/lib/materials/sxp/HashTag/settingRender.js +9 -0
- package/lib/materials/sxp/cta/AniLink/settingRender.d.ts +5 -0
- package/lib/materials/sxp/cta/AniLink/settingRender.js +4 -0
- package/lib/materials/sxp/popup/AppointForm/settingRender.d.ts +8 -5
- package/lib/materials/sxp/popup/AppointForm/settingRender.js +12 -0
- package/lib/materials/sxp/popup/CommodityDetail/index.d.ts +3 -1
- package/lib/materials/sxp/popup/CommodityDetail/index.js +21 -13
- package/lib/materials/sxp/popup/CommodityDetail/settingRender.d.ts +13 -0
- package/lib/materials/sxp/popup/CommodityDetail/settingRender.js +15 -0
- package/lib/materials/sxp/popup/CommodityDetailDiroNew/index.d.ts +3 -1
- package/lib/materials/sxp/popup/CommodityDetailDiroNew/index.js +24 -16
- package/lib/materials/sxp/popup/CommodityDetailDiroNew/settingRender.d.ts +13 -0
- package/lib/materials/sxp/popup/CommodityDetailDiroNew/settingRender.js +15 -0
- package/lib/materials/sxp/popup/CommodityList/settingRender.js +4 -0
- package/lib/materials/sxp/popup/Prompt/settingRender.js +10 -0
- package/lib/materials/sxp/template/Link/settingRender.js +5 -0
- package/package.json +1 -1
package/dist/pb-ui.js
CHANGED
@@ -711,7 +711,7 @@
|
|
711
711
|
}, [bffDataSource]);
|
712
712
|
// 获取推荐视频数据
|
713
713
|
const getRecommendVideos = React.useCallback((query) => __awaiter(void 0, void 0, void 0, function* () {
|
714
|
-
var _d, _e, _f, _g, _h;
|
714
|
+
var _d, _e, _f, _g, _h, _j, _k;
|
715
715
|
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}]` }));
|
716
716
|
if (utmVal) {
|
717
717
|
const val = (_h = (_g = (_f = utmVal === null || utmVal === void 0 ? void 0 : utmVal.split('&')) === null || _f === void 0 ? void 0 : _f.filter((val) => {
|
@@ -722,7 +722,30 @@
|
|
722
722
|
query = Object.assign(Object.assign({}, query), { channel: decodeURIComponent(val) });
|
723
723
|
}
|
724
724
|
if ((globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.enablePreview) || isEditor) {
|
725
|
-
query = Object.assign(Object.assign(Object.assign({}, query), { directPage: true, level: 1
|
725
|
+
query = Object.assign(Object.assign(Object.assign({}, query), { directPage: true, level: 1 }), (!utmVal && channelQueryList && (channelQueryList === null || channelQueryList === void 0 ? void 0 : channelQueryList.length) > 0 && { channel: channelQueryList === null || channelQueryList === void 0 ? void 0 : channelQueryList[0] }));
|
726
|
+
if (!(query === null || query === void 0 ? void 0 : query.channel))
|
727
|
+
return;
|
728
|
+
let list = [];
|
729
|
+
let result = null;
|
730
|
+
let pageNum = 1;
|
731
|
+
const recurveRecList = (query) => __awaiter(void 0, void 0, void 0, function* () {
|
732
|
+
var _l, _m, _o, _p;
|
733
|
+
query.pageNum = pageNum;
|
734
|
+
result = yield (bffFetch === null || bffFetch === void 0 ? void 0 : bffFetch('/recommend/list', { method: 'GET', query }));
|
735
|
+
if (!(result === null || result === void 0 ? void 0 : result.success)) {
|
736
|
+
return undefined;
|
737
|
+
}
|
738
|
+
const rec = (_m = (_l = result === null || result === void 0 ? void 0 : result.data) === null || _l === void 0 ? void 0 : _l.recList) === null || _m === void 0 ? void 0 : _m[0];
|
739
|
+
list = list.concat((_p = (_o = result === null || result === void 0 ? void 0 : result.data) === null || _o === void 0 ? void 0 : _o.recList) !== null && _p !== void 0 ? _p : []);
|
740
|
+
if ((rec === null || rec === void 0 ? void 0 : rec.product) || (rec === null || rec === void 0 ? void 0 : rec.video)) {
|
741
|
+
pageNum = pageNum + 1;
|
742
|
+
yield recurveRecList(query);
|
743
|
+
}
|
744
|
+
});
|
745
|
+
yield recurveRecList(query);
|
746
|
+
if (!(query === null || query === void 0 ? void 0 : query.hashTag) && result)
|
747
|
+
setCurReqInfo({ rtc: (_j = result === null || result === void 0 ? void 0 : result.data) === null || _j === void 0 ? void 0 : _j.rtc, requestId: (_k = result === null || result === void 0 ? void 0 : result.data) === null || _k === void 0 ? void 0 : _k.requestId });
|
748
|
+
return Object.assign(Object.assign({}, result.data), { recList: list });
|
726
749
|
}
|
727
750
|
const result = yield (bffFetch === null || bffFetch === void 0 ? void 0 : bffFetch('/recommend/list', { method: 'GET', query }));
|
728
751
|
if (!(result === null || result === void 0 ? void 0 : result.success)) {
|
@@ -733,12 +756,12 @@
|
|
733
756
|
return result === null || result === void 0 ? void 0 : result.data;
|
734
757
|
}), [bffFetch, utmVal, maxSize, defaultSize, globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.enablePreview, channelQueryList, isEditor]);
|
735
758
|
const loadVideos = React.useCallback(() => __awaiter(void 0, void 0, void 0, function* () {
|
736
|
-
var
|
759
|
+
var _q, _r, _s, _t;
|
737
760
|
if (rtcList.length <= 0) {
|
738
761
|
return;
|
739
762
|
}
|
740
763
|
const lastItem = rtcList === null || rtcList === void 0 ? void 0 : rtcList[(rtcList === null || rtcList === void 0 ? void 0 : rtcList.length) - 1];
|
741
|
-
const data = yield getRecommendVideos(Object.assign(Object.assign(Object.assign({ hashTag: waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.hashTag }, (((
|
764
|
+
const data = yield getRecommendVideos(Object.assign(Object.assign(Object.assign({ hashTag: waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.hashTag }, (((_q = lastItem === null || lastItem === void 0 ? void 0 : lastItem.product) === null || _q === void 0 ? void 0 : _q.itemId) && { productFilter: (_r = lastItem === null || lastItem === void 0 ? void 0 : lastItem.product) === null || _r === void 0 ? void 0 : _r.itemId })), (((_s = lastItem === null || lastItem === void 0 ? void 0 : lastItem.video) === null || _s === void 0 ? void 0 : _s.itemId) && { contentFilter: (_t = lastItem === null || lastItem === void 0 ? void 0 : lastItem.video) === null || _t === void 0 ? void 0 : _t.itemId })), { themeTag: themeTag.current }));
|
742
765
|
setRtcList(rtcList.concat(getFilterRecList(data)));
|
743
766
|
setCacheRtcList(cacheRtcList.concat(getFilterRecList(data)));
|
744
767
|
}), [getRecommendVideos, rtcList, waterFallData, cacheRtcList]);
|
@@ -807,17 +830,17 @@
|
|
807
830
|
}), [bffFetch]);
|
808
831
|
// 获取 Tag
|
809
832
|
const bffGetTagList = React.useCallback(() => __awaiter(void 0, void 0, void 0, function* () {
|
810
|
-
var
|
833
|
+
var _u, _v, _w, _x, _y;
|
811
834
|
if (!utmVal || !isShowTag)
|
812
835
|
return;
|
813
836
|
try {
|
814
|
-
const val = (
|
837
|
+
const val = (_w = (_v = (_u = utmVal === null || utmVal === void 0 ? void 0 : utmVal.split('&')) === null || _u === void 0 ? void 0 : _u.filter((val) => {
|
815
838
|
var _a, _b;
|
816
839
|
const key = val.split('=')[0];
|
817
840
|
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);
|
818
|
-
})) === null ||
|
841
|
+
})) === null || _v === void 0 ? void 0 : _v.join('&')) !== null && _w !== void 0 ? _w : '';
|
819
842
|
const result = yield (bffFetch === null || bffFetch === void 0 ? void 0 : bffFetch('/tag/list', { method: 'GET', query: { channel: decodeURIComponent(val) } }));
|
820
|
-
setTagList((
|
843
|
+
setTagList((_y = (_x = result === null || result === void 0 ? void 0 : result.data) === null || _x === void 0 ? void 0 : _x.tags) !== null && _y !== void 0 ? _y : []);
|
821
844
|
}
|
822
845
|
catch (e) {
|
823
846
|
console.log('e', e);
|
@@ -894,7 +917,7 @@
|
|
894
917
|
});
|
895
918
|
}, [isShowConsent]);
|
896
919
|
React.useEffect(() => {
|
897
|
-
if (!isInit.current)
|
920
|
+
if (!isInit.current && !isEditor)
|
898
921
|
return;
|
899
922
|
setLoading(true);
|
900
923
|
bffGetTagList();
|
@@ -906,7 +929,7 @@
|
|
906
929
|
.finally(() => {
|
907
930
|
setLoading(false);
|
908
931
|
});
|
909
|
-
}, [
|
932
|
+
}, [bffGetTagList, isEditor, getRecommendVideos]);
|
910
933
|
const defaultLoadingImage = useIconLink('/pb_static/a65d23c5893c49d7aaaa81681d3179e2.gif', appDomain);
|
911
934
|
return (React.createElement(SxpDataSourceContext.Provider, { value: {
|
912
935
|
rtcList,
|
@@ -1109,6 +1132,7 @@
|
|
1109
1132
|
});
|
1110
1133
|
typeof window !== 'undefined' &&
|
1111
1134
|
(window.getJointUtmLink = (url) => {
|
1135
|
+
setSlideSkipState();
|
1112
1136
|
if ((url === null || url === void 0 ? void 0 : url.indexOf('?')) !== -1) {
|
1113
1137
|
return url + (utmVal ? '&' + utmVal : '');
|
1114
1138
|
}
|
@@ -1281,6 +1305,11 @@
|
|
1281
1305
|
type: 'TextAlign',
|
1282
1306
|
name: ['textStyle']
|
1283
1307
|
},
|
1308
|
+
{
|
1309
|
+
label: '标题间距',
|
1310
|
+
type: 'TextSpace',
|
1311
|
+
name: ['textStyle']
|
1312
|
+
},
|
1284
1313
|
{
|
1285
1314
|
label: '表单布局',
|
1286
1315
|
type: 'Radius',
|
@@ -1339,10 +1368,12 @@
|
|
1339
1368
|
]
|
1340
1369
|
},
|
1341
1370
|
{
|
1371
|
+
label: '提交按钮文本样式',
|
1342
1372
|
type: 'TextStyle',
|
1343
1373
|
name: ['props', 'submitButtonStyle']
|
1344
1374
|
},
|
1345
1375
|
{
|
1376
|
+
label: '提交按钮对齐',
|
1346
1377
|
type: 'TextAlign',
|
1347
1378
|
name: ['props', 'submitButtonStyle']
|
1348
1379
|
},
|
@@ -1350,6 +1381,11 @@
|
|
1350
1381
|
label: '提交按钮颜色',
|
1351
1382
|
type: 'Color',
|
1352
1383
|
name: ['props', 'submitBgColor']
|
1384
|
+
},
|
1385
|
+
{
|
1386
|
+
label: '提交按钮间距',
|
1387
|
+
type: 'TextSpace',
|
1388
|
+
name: ['props', 'submitButtonStyle']
|
1353
1389
|
}
|
1354
1390
|
// {
|
1355
1391
|
// label: '接收内容接口地址',
|
@@ -1390,7 +1426,7 @@
|
|
1390
1426
|
*/
|
1391
1427
|
function useEventReport() {
|
1392
1428
|
const { bffEventReport, popupDetailData, waterFallData, isFromHashtag } = useSxpDataSource();
|
1393
|
-
const jumpToWeb = React.useCallback((data, product, cta, position) => {
|
1429
|
+
const jumpToWeb = React.useCallback((data, product, cta, position, traceInfo) => {
|
1394
1430
|
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;
|
1395
1431
|
let fromKName = '';
|
1396
1432
|
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))) {
|
@@ -1423,7 +1459,7 @@
|
|
1423
1459
|
position: position + '',
|
1424
1460
|
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 : '',
|
1425
1461
|
ctatId: (_w = cta === null || cta === void 0 ? void 0 : cta.itemId) !== null && _w !== void 0 ? _w : '',
|
1426
|
-
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 : ''
|
1462
|
+
traceInfo: (_9 = (_6 = (_4 = (_0 = (_x = traceInfo !== null && traceInfo !== void 0 ? traceInfo : 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 : ''
|
1427
1463
|
}
|
1428
1464
|
});
|
1429
1465
|
}, [bffEventReport, popupDetailData, isFromHashtag]);
|
@@ -1828,6 +1864,16 @@
|
|
1828
1864
|
label: '默认行数',
|
1829
1865
|
type: 'Number',
|
1830
1866
|
name: ['lineClamp']
|
1867
|
+
},
|
1868
|
+
{
|
1869
|
+
label: '间距',
|
1870
|
+
type: 'TextSpace'
|
1871
|
+
},
|
1872
|
+
{
|
1873
|
+
label: '价格千分符展示',
|
1874
|
+
type: 'Switch',
|
1875
|
+
name: ['enableFormattedPrice'],
|
1876
|
+
initialValue: true
|
1831
1877
|
}
|
1832
1878
|
]
|
1833
1879
|
}
|
@@ -1913,6 +1959,11 @@
|
|
1913
1959
|
{
|
1914
1960
|
type: 'TextAlign',
|
1915
1961
|
name: ['props', 'buttonStyle']
|
1962
|
+
},
|
1963
|
+
{
|
1964
|
+
label: '间距',
|
1965
|
+
type: 'TextSpace',
|
1966
|
+
name: ['props', 'buttonStyle']
|
1916
1967
|
}
|
1917
1968
|
]
|
1918
1969
|
},
|
@@ -8755,13 +8806,13 @@
|
|
8755
8806
|
* @Author: binruan@chatlabs.com
|
8756
8807
|
* @Date: 2023-11-02 18:34:34
|
8757
8808
|
* @LastEditors: binruan@chatlabs.com
|
8758
|
-
* @LastEditTime: 2024-08-
|
8809
|
+
* @LastEditTime: 2024-08-16 17:58:56
|
8759
8810
|
* @FilePath: \pb-sxp-ui\src\core\components\SxpPageRender\Modal\index.tsx
|
8760
8811
|
*
|
8761
8812
|
*/
|
8762
8813
|
const closeIcon$1 = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAjhJREFUWEfFlztOw0AQhmeWiJ4CCmpQ5DiRQsIJyAWg5A0lR0AIChDiCJS8ER0cADgBeRSxt4CCDgkaKiq8i+zYeWx2413HEWmiJJv9v535Z2aN8M8vFPT9z3zETD0aAUChUJjwvPFHAJhBhB3Hqd6OAsK2yyucwykAvP38eJX398Z3AJDLlVYR8ToU9Rhj25TWr9KEsKy5dULIGQCMtfZly45TvwsAstm56UwG6wA4FUFwzrdctxZBDcWSy5XWEPG8I84/GcMipdWPtgcsaz5PCHtKG0IuTiqUvjT9U/WYMG2IOPE+AP+LtCB0xKUAAyA2Xbd2o2OG0NQXvTnvhL17D7EPtH9TRCIWwkRcGYGIQgYBABuqPuHXOQBc6pw80lBGwBQiiXhsBHQhkoprA6iM6acjhDQKu5YJZW6XeOI3XJdpvfsdTu52VfXEekD8owQiXGIubpSCbhDbLu8DwKEAd+A41SOdPpE4BS0viFOtvV2iKWqUgn5x/tmS70xR01GuDSCKc86/OCcLgTyyZ0ScDGNhFAktAJV4NFJ9YyaFiAWIE+9uVkkgBgLoig8DMWAa9ro9ynkUdlW5maZDCmB6clmz0k1HH4Cs1Ezbq2p2yEpUuBOKTSZZex00RUWIrltxuuK6EOGDSbGIOPZicpMx6fny650377qNRgBgWeVFQuA+6UjVgREhGIMlSqsPUQqIbZdOOIdZQmCv2axRnU1N1+TzJYsxOEaEV8ep7frPZ7Gd0FTEdP0ft0/kMNdg0eoAAAAASUVORK5CYII=';
|
8763
8814
|
const Modal = ({ visible, onClose, children, modalStyle, padding, popup, schema, fullHeight = window.innerHeight, isFullScreen = false }) => {
|
8764
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t;
|
8815
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w;
|
8765
8816
|
const touchRef = React.useRef(null);
|
8766
8817
|
const fTouchRef = React.useRef(null);
|
8767
8818
|
const touchMoveRef = React.useRef(null);
|
@@ -8886,7 +8937,8 @@
|
|
8886
8937
|
React.createElement("div", { onClick: onClose, className: 'modal-icon-wrapper' },
|
8887
8938
|
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' })),
|
8888
8939
|
React.createElement("div", { ref: ref, style: {
|
8889
|
-
height: isScrollFullScreen ? fullHeight : MODAL_DEF_CON_H
|
8940
|
+
height: (isScrollFullScreen ? fullHeight : MODAL_DEF_CON_H) -
|
8941
|
+
((_w = (_v = (_u = getPopupById === null || getPopupById === void 0 ? void 0 : getPopupById.item) === null || _u === void 0 ? void 0 : _u.props) === null || _v === void 0 ? void 0 : _v.popupBg) === null || _w === void 0 ? void 0 : _w.bottomMargin),
|
8890
8942
|
overflow: (isScrollFullScreen && modalTrans <= 0) || !isScrollFullScreen ? 'auto' : 'hidden'
|
8891
8943
|
} }, children)))))), modalEleRef.current);
|
8892
8944
|
};
|
@@ -9054,7 +9106,7 @@
|
|
9054
9106
|
var CommodityGroup$1 = React.memo(CommodityGroup);
|
9055
9107
|
|
9056
9108
|
const CommodityDetail$1 = (_a) => {
|
9057
|
-
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;
|
9109
|
+
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;
|
9058
9110
|
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"]);
|
9059
9111
|
const { sxpParameter, popupDetailData, isPreview, bffFbReport, popupCurTimeRef, checkCommodityIndexRef } = useSxpDataSource();
|
9060
9112
|
const { jumpToWeb, productView } = useEventReport();
|
@@ -9062,6 +9114,7 @@
|
|
9062
9114
|
const [showModal, setShowModal] = React.useState(false);
|
9063
9115
|
const [show3DModal, setShow3DModal] = React.useState(false);
|
9064
9116
|
const [checkCommodityIndex, setCheckCommodityIndex] = React.useState((_b = popupDetailData === null || popupDetailData === void 0 ? void 0 : popupDetailData.multiCheckIndex) !== null && _b !== void 0 ? _b : 0);
|
9117
|
+
const ref = React.useRef();
|
9065
9118
|
const data = isPost ? rec : popupDetailData;
|
9066
9119
|
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];
|
9067
9120
|
let cta = isPost
|
@@ -9101,17 +9154,20 @@
|
|
9101
9154
|
};
|
9102
9155
|
}, []);
|
9103
9156
|
const priceText = React.useMemo(() => {
|
9104
|
-
var _a, _b, _c, _d, _e;
|
9157
|
+
var _a, _b, _c, _d, _e, _f, _g;
|
9158
|
+
const isToLocStr = ((_a = commodityStyles === null || commodityStyles === void 0 ? void 0 : commodityStyles.price) === null || _a === void 0 ? void 0 : _a.enableFormattedPrice) === undefined || ((_b = commodityStyles === null || commodityStyles === void 0 ? void 0 : commodityStyles.price) === null || _b === void 0 ? void 0 : _b.enableFormattedPrice);
|
9105
9159
|
if ((product === null || product === void 0 ? void 0 : product.currency) && (product === null || product === void 0 ? void 0 : product.price)) {
|
9106
|
-
return `${(
|
9107
|
-
|
9108
|
-
|
9160
|
+
return `${(_e = (_d = (_c = product === null || product === void 0 ? void 0 : product.currency) === null || _c === void 0 ? void 0 : _c.split('-')[1]) === null || _d === void 0 ? void 0 : _d.toUpperCase()) !== null && _e !== void 0 ? _e : ''}${isToLocStr
|
9161
|
+
? (_g = (_f = product === null || product === void 0 ? void 0 : product.price) === null || _f === void 0 ? void 0 : _f.toLocaleString('zh', {
|
9162
|
+
minimumFractionDigits: 0
|
9163
|
+
})) !== null && _g !== void 0 ? _g : ''
|
9164
|
+
: product === null || product === void 0 ? void 0 : product.price}`;
|
9109
9165
|
}
|
9110
9166
|
else {
|
9111
9167
|
return '$7,000';
|
9112
9168
|
}
|
9113
|
-
}, [product === null || product === void 0 ? void 0 : product.price, product === null || product === void 0 ? void 0 : product.currency]);
|
9114
|
-
const width = (isPreview ? 375 : (
|
9169
|
+
}, [product === null || product === void 0 ? void 0 : product.price, product === null || product === void 0 ? void 0 : product.currency, (_t = commodityStyles === null || commodityStyles === void 0 ? void 0 : commodityStyles.price) === null || _t === void 0 ? void 0 : _t.enableFormattedPrice]);
|
9170
|
+
const width = (isPreview ? 375 : (_u = style === null || style === void 0 ? void 0 : style.width) !== null && _u !== void 0 ? _u : window.innerWidth) - ((_v = popupBg === null || popupBg === void 0 ? void 0 : popupBg.horizontalMargin) !== null && _v !== void 0 ? _v : 0) * 2;
|
9115
9171
|
const height = commodityImgRatio ? width * (commodityImgRatio.h / commodityImgRatio.w) : width;
|
9116
9172
|
const renderContent = ({ isPost }) => {
|
9117
9173
|
var _a, _b, _c, _d;
|
@@ -9152,6 +9208,10 @@
|
|
9152
9208
|
popupCurTimeRef.current = new Date();
|
9153
9209
|
setCheckCommodityIndex(index);
|
9154
9210
|
checkCommodityIndexRef.current = index;
|
9211
|
+
if (ref === null || ref === void 0 ? void 0 : ref.current) {
|
9212
|
+
ref.current.swiper.slideTo(0);
|
9213
|
+
ref.current.swiper.autoplay.start();
|
9214
|
+
}
|
9155
9215
|
}, []);
|
9156
9216
|
const renderCommodityGroup = React.useCallback(() => {
|
9157
9217
|
var _a, _b, _c;
|
@@ -9167,18 +9227,18 @@
|
|
9167
9227
|
};
|
9168
9228
|
return dotsAlignClass === null || dotsAlignClass === void 0 ? void 0 : dotsAlignClass[swiper === null || swiper === void 0 ? void 0 : swiper.dotsAlign];
|
9169
9229
|
}, [swiper === null || swiper === void 0 ? void 0 : swiper.dotsAlign]);
|
9170
|
-
const iframeUrl = ((
|
9230
|
+
const iframeUrl = ((_x = (_w = data === null || data === void 0 ? void 0 : data.video) === null || _w === void 0 ? void 0 : _w.bindProduct) === null || _x === void 0 ? void 0 : _x.remark) || ((_0 = (_z = (_y = data === null || data === void 0 ? void 0 : data.video) === null || _y === void 0 ? void 0 : _y.bindProducts) === null || _z === void 0 ? void 0 : _z[0]) === null || _0 === void 0 ? void 0 : _0.remark) || ((_1 = data === null || data === void 0 ? void 0 : data.product) === null || _1 === void 0 ? void 0 : _1.remark);
|
9171
9231
|
return (React.createElement(React.Fragment, null,
|
9172
9232
|
React.createElement("div", Object.assign({ className: css.css(Object.assign({}, style)) }, props),
|
9173
9233
|
React.createElement("div", { style: { position: 'relative' } },
|
9174
|
-
product && ((
|
9234
|
+
product && ((_2 = product === null || product === void 0 ? void 0 : product.homePage) === null || _2 === void 0 ? void 0 : _2.length) > 0 && (React.createElement(Swiper, { height: height, modules: [Pagination, Autoplay], pagination: {
|
9175
9235
|
clickable: true,
|
9176
9236
|
bulletActiveClass: 'swipe-item-active-bullet',
|
9177
9237
|
clickableClass: getDotsAlign
|
9178
9238
|
}, loop: true, autoplay: {
|
9179
9239
|
delay: (swiper === null || swiper === void 0 ? void 0 : swiper.delay) * 1000
|
9180
|
-
} },
|
9181
|
-
React.createElement(React.Fragment, null, (
|
9240
|
+
}, ref: ref },
|
9241
|
+
React.createElement(React.Fragment, null, (_3 = product === null || product === void 0 ? void 0 : product.homePage) === null || _3 === void 0 ? void 0 : _3.map((src) => {
|
9182
9242
|
var _a;
|
9183
9243
|
return (React.createElement(SwiperSlide, { key: src },
|
9184
9244
|
React.createElement("div", { style: {
|
@@ -9194,7 +9254,7 @@
|
|
9194
9254
|
objectPosition: `50% ${(swiper === null || swiper === void 0 ? void 0 : swiper.translateY) ? (swiper === null || swiper === void 0 ? void 0 : swiper.translateY) + 50 : 50}%`
|
9195
9255
|
}, 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 }))));
|
9196
9256
|
})))),
|
9197
|
-
!((
|
9257
|
+
!((_4 = product === null || product === void 0 ? void 0 : product.homePage) === null || _4 === void 0 ? void 0 : _4.length) && (React.createElement("div", { className: css.css({
|
9198
9258
|
height,
|
9199
9259
|
width
|
9200
9260
|
}) },
|
@@ -9202,7 +9262,7 @@
|
|
9202
9262
|
objectFit: 'cover',
|
9203
9263
|
width: '100%',
|
9204
9264
|
height: '100%'
|
9205
|
-
}), src: (
|
9265
|
+
}), src: (_5 = sxpParameter === null || sxpParameter === void 0 ? void 0 : sxpParameter.bottom_image) !== null && _5 !== void 0 ? _5 : bottom_image, alt: 'pdp image' }))),
|
9206
9266
|
(iframeUrl && iframeIcon) ||
|
9207
9267
|
(!product && iframeIcon && (React.createElement("div", { style: {
|
9208
9268
|
padding: '5px 10px',
|
@@ -9348,7 +9408,7 @@
|
|
9348
9408
|
* @Author: binruan@chatlabs.com
|
9349
9409
|
* @Date: 2023-10-27 14:06:35
|
9350
9410
|
* @LastEditors: binruan@chatlabs.com
|
9351
|
-
* @LastEditTime: 2024-08-
|
9411
|
+
* @LastEditTime: 2024-08-20 14:01:21
|
9352
9412
|
* @FilePath: \pb-sxp-ui\src\materials\sxp\popup\Prompt\settingRender.tsx
|
9353
9413
|
*
|
9354
9414
|
*/
|
@@ -9415,6 +9475,11 @@
|
|
9415
9475
|
}
|
9416
9476
|
]
|
9417
9477
|
},
|
9478
|
+
{
|
9479
|
+
label: '内容字体间距',
|
9480
|
+
type: 'TextSpace',
|
9481
|
+
name: ['props', 'contentStyle']
|
9482
|
+
},
|
9418
9483
|
{
|
9419
9484
|
type: 'Group',
|
9420
9485
|
label: '提交按钮字体',
|
@@ -9448,6 +9513,11 @@
|
|
9448
9513
|
}
|
9449
9514
|
]
|
9450
9515
|
},
|
9516
|
+
{
|
9517
|
+
label: '提交按钮间距',
|
9518
|
+
type: 'TextSpace',
|
9519
|
+
name: ['props', 'submitButtonStyle']
|
9520
|
+
},
|
9451
9521
|
{
|
9452
9522
|
type: 'TextStyle',
|
9453
9523
|
name: ['props', 'submitButtonStyle']
|
@@ -9558,7 +9628,7 @@
|
|
9558
9628
|
* @Author: binruan@chatlabs.com
|
9559
9629
|
* @Date: 2024-03-26 16:50:25
|
9560
9630
|
* @LastEditors: binruan@chatlabs.com
|
9561
|
-
* @LastEditTime: 2024-08-
|
9631
|
+
* @LastEditTime: 2024-08-20 15:50:06
|
9562
9632
|
* @FilePath: \pb-sxp-ui\src\materials\sxp\popup\CommodityDetailDiroNew\settingRender.tsx
|
9563
9633
|
*
|
9564
9634
|
*/
|
@@ -9755,6 +9825,16 @@
|
|
9755
9825
|
label: '默认行数',
|
9756
9826
|
type: 'Number',
|
9757
9827
|
name: ['lineClamp']
|
9828
|
+
},
|
9829
|
+
{
|
9830
|
+
label: '间距',
|
9831
|
+
type: 'TextSpace'
|
9832
|
+
},
|
9833
|
+
{
|
9834
|
+
label: '价格千分符展示',
|
9835
|
+
type: 'Switch',
|
9836
|
+
name: ['enableFormattedPrice'],
|
9837
|
+
initialValue: true
|
9758
9838
|
}
|
9759
9839
|
]
|
9760
9840
|
}
|
@@ -9840,6 +9920,11 @@
|
|
9840
9920
|
{
|
9841
9921
|
type: 'TextAlign',
|
9842
9922
|
name: ['props', 'buttonStyle']
|
9923
|
+
},
|
9924
|
+
{
|
9925
|
+
label: '间距',
|
9926
|
+
type: 'TextSpace',
|
9927
|
+
name: ['props', 'buttonStyle']
|
9843
9928
|
}
|
9844
9929
|
]
|
9845
9930
|
},
|
@@ -9857,7 +9942,7 @@
|
|
9857
9942
|
];
|
9858
9943
|
|
9859
9944
|
const CommodityDetailDiroNew$1 = (_a) => {
|
9860
|
-
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;
|
9945
|
+
var _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9;
|
9861
9946
|
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"]);
|
9862
9947
|
React.useState(true);
|
9863
9948
|
const { sxpParameter, popupCurTimeRef, popupDetailData, isPreview, bffFbReport, checkCommodityIndexRef } = useSxpDataSource();
|
@@ -9869,6 +9954,7 @@
|
|
9869
9954
|
const curTimeRef = React.useRef(null);
|
9870
9955
|
const [show3DModal, setShow3DModal] = React.useState(false);
|
9871
9956
|
const [checkCommodityIndex, setCheckCommodityIndex] = React.useState((_b = popupDetailData === null || popupDetailData === void 0 ? void 0 : popupDetailData.multiCheckIndex) !== null && _b !== void 0 ? _b : 0);
|
9957
|
+
const ref = React.useRef();
|
9872
9958
|
const data = isPost ? rec : popupDetailData;
|
9873
9959
|
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];
|
9874
9960
|
let cta = isPost
|
@@ -9908,17 +9994,20 @@
|
|
9908
9994
|
};
|
9909
9995
|
}, []);
|
9910
9996
|
const priceText = React.useMemo(() => {
|
9911
|
-
var _a, _b, _c, _d, _e;
|
9997
|
+
var _a, _b, _c, _d, _e, _f, _g;
|
9998
|
+
const isToLocStr = ((_a = commodityStyles === null || commodityStyles === void 0 ? void 0 : commodityStyles.price) === null || _a === void 0 ? void 0 : _a.enableFormattedPrice) === undefined || ((_b = commodityStyles === null || commodityStyles === void 0 ? void 0 : commodityStyles.price) === null || _b === void 0 ? void 0 : _b.enableFormattedPrice);
|
9912
9999
|
if ((product === null || product === void 0 ? void 0 : product.currency) && (product === null || product === void 0 ? void 0 : product.price)) {
|
9913
|
-
return `${(
|
9914
|
-
|
9915
|
-
|
10000
|
+
return `${(_e = (_d = (_c = product === null || product === void 0 ? void 0 : product.currency) === null || _c === void 0 ? void 0 : _c.split('-')[1]) === null || _d === void 0 ? void 0 : _d.toUpperCase()) !== null && _e !== void 0 ? _e : ''}${isToLocStr
|
10001
|
+
? (_g = (_f = product === null || product === void 0 ? void 0 : product.price) === null || _f === void 0 ? void 0 : _f.toLocaleString('zh', {
|
10002
|
+
minimumFractionDigits: 0
|
10003
|
+
})) !== null && _g !== void 0 ? _g : ''
|
10004
|
+
: product === null || product === void 0 ? void 0 : product.price}`;
|
9916
10005
|
}
|
9917
10006
|
else {
|
9918
10007
|
return '£102,300.00';
|
9919
10008
|
}
|
9920
|
-
}, [product === null || product === void 0 ? void 0 : product.price, product === null || product === void 0 ? void 0 : product.currency]);
|
9921
|
-
const width = (isPreview ? 375 : (
|
10009
|
+
}, [product === null || product === void 0 ? void 0 : product.price, product === null || product === void 0 ? void 0 : product.currency, (_t = commodityStyles === null || commodityStyles === void 0 ? void 0 : commodityStyles.price) === null || _t === void 0 ? void 0 : _t.enableFormattedPrice]);
|
10010
|
+
const width = (isPreview ? 375 : (_u = style === null || style === void 0 ? void 0 : style.width) !== null && _u !== void 0 ? _u : window.innerWidth) - ((_v = popupBg === null || popupBg === void 0 ? void 0 : popupBg.horizontalMargin) !== null && _v !== void 0 ? _v : 0) * 2;
|
9922
10011
|
const height = commodityImgRatio ? width * (commodityImgRatio.h / commodityImgRatio.w) : width;
|
9923
10012
|
// useEffect(() => {
|
9924
10013
|
// console.log(scrollRef?.current?.scrollHeight, window.innerHeight);
|
@@ -9986,6 +10075,10 @@ Made in Italy` })));
|
|
9986
10075
|
popupCurTimeRef.current = new Date();
|
9987
10076
|
setCheckCommodityIndex(index);
|
9988
10077
|
checkCommodityIndexRef.current = index;
|
10078
|
+
if (ref === null || ref === void 0 ? void 0 : ref.current) {
|
10079
|
+
ref.current.swiper.slideTo(0);
|
10080
|
+
ref.current.swiper.autoplay.start();
|
10081
|
+
}
|
9989
10082
|
}, []);
|
9990
10083
|
const renderCommodityGroup = React.useCallback(() => {
|
9991
10084
|
var _a, _b, _c;
|
@@ -10001,17 +10094,17 @@ Made in Italy` })));
|
|
10001
10094
|
};
|
10002
10095
|
return dotsAlignClass === null || dotsAlignClass === void 0 ? void 0 : dotsAlignClass[swiper === null || swiper === void 0 ? void 0 : swiper.dotsAlign];
|
10003
10096
|
}, [swiper === null || swiper === void 0 ? void 0 : swiper.dotsAlign]);
|
10004
|
-
const iframeUrl = ((
|
10097
|
+
const iframeUrl = ((_x = (_w = data === null || data === void 0 ? void 0 : data.video) === null || _w === void 0 ? void 0 : _w.bindProduct) === null || _x === void 0 ? void 0 : _x.remark) || ((_0 = (_z = (_y = data === null || data === void 0 ? void 0 : data.video) === null || _y === void 0 ? void 0 : _y.bindProducts) === null || _z === void 0 ? void 0 : _z[0]) === null || _0 === void 0 ? void 0 : _0.remark) || ((_1 = data === null || data === void 0 ? void 0 : data.product) === null || _1 === void 0 ? void 0 : _1.remark);
|
10005
10098
|
return (React.createElement("div", { className: 'pb-commondityDiroNew' },
|
10006
10099
|
React.createElement("div", Object.assign({ className: css.css(Object.assign(Object.assign({}, style), { transform: 'translate3d(0px, 0px, 0px)' })) }, props),
|
10007
10100
|
React.createElement("div", { style: { position: 'relative' } },
|
10008
|
-
product && ((
|
10101
|
+
product && ((_2 = product === null || product === void 0 ? void 0 : product.homePage) === null || _2 === void 0 ? void 0 : _2.length) > 0 && (React.createElement(Swiper, { height: height, modules: [Pagination, Autoplay], pagination: {
|
10009
10102
|
clickable: true,
|
10010
10103
|
bulletActiveClass: 'commondityDiroNew-swipe-item-active-bullet',
|
10011
10104
|
clickableClass: getDotsAlign
|
10012
10105
|
}, loop: true, autoplay: {
|
10013
10106
|
delay: (swiper === null || swiper === void 0 ? void 0 : swiper.delay) * 1000
|
10014
|
-
} }, (
|
10107
|
+
}, ref: ref }, (_3 = product === null || product === void 0 ? void 0 : product.homePage) === null || _3 === void 0 ? void 0 : _3.map((src) => {
|
10015
10108
|
var _a;
|
10016
10109
|
return (React.createElement(SwiperSlide, { key: src },
|
10017
10110
|
React.createElement("div", { style: {
|
@@ -10027,7 +10120,7 @@ Made in Italy` })));
|
|
10027
10120
|
objectPosition: `50% ${(swiper === null || swiper === void 0 ? void 0 : swiper.translateY) ? (swiper === null || swiper === void 0 ? void 0 : swiper.translateY) + 50 : 50}%`
|
10028
10121
|
}, 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 }))));
|
10029
10122
|
}))),
|
10030
|
-
!((
|
10123
|
+
!((_4 = product === null || product === void 0 ? void 0 : product.homePage) === null || _4 === void 0 ? void 0 : _4.length) && (React.createElement("div", { className: css.css({
|
10031
10124
|
height,
|
10032
10125
|
width
|
10033
10126
|
}) },
|
@@ -10035,7 +10128,7 @@ Made in Italy` })));
|
|
10035
10128
|
objectFit: 'cover',
|
10036
10129
|
width: '100%',
|
10037
10130
|
height: '100%'
|
10038
|
-
}), src: (
|
10131
|
+
}), src: (_5 = sxpParameter === null || sxpParameter === void 0 ? void 0 : sxpParameter.bottom_image) !== null && _5 !== void 0 ? _5 : bottom_image, alt: 'pdp image' }))),
|
10039
10132
|
(iframeUrl && iframeIcon) ||
|
10040
10133
|
(!product && iframeIcon && (React.createElement("div", { style: {
|
10041
10134
|
padding: '5px 10px',
|
@@ -10055,7 +10148,7 @@ Made in Italy` })));
|
|
10055
10148
|
React.createElement("div", { className: 'pb-commondityDiroNew-content-top' },
|
10056
10149
|
React.createElement("div", { className: 'pb-commondityDiroNew-content-top-left' },
|
10057
10150
|
React.createElement("div", { className: 'pb-commondityDiroNew-content-top-left-title', style: getStyle(commodityStyles === null || commodityStyles === void 0 ? void 0 : commodityStyles.title), dangerouslySetInnerHTML: {
|
10058
|
-
__html: setFontForText((
|
10151
|
+
__html: setFontForText((_6 = product === null || product === void 0 ? void 0 : product.title) !== null && _6 !== void 0 ? _6 : 'Large Dior Toujours BagLarge', commodityStyles === null || commodityStyles === void 0 ? void 0 : commodityStyles.title)
|
10059
10152
|
} }),
|
10060
10153
|
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: {
|
10061
10154
|
__html: setFontForText((product === null || product === void 0 ? void 0 : product.collection) || 'Black Macrocannage CalfskinLarge', commodityStyles === null || commodityStyles === void 0 ? void 0 : commodityStyles.collection)
|
@@ -10065,11 +10158,11 @@ Made in Italy` })));
|
|
10065
10158
|
__html: setFontForText(priceText, commodityStyles === null || commodityStyles === void 0 ? void 0 : commodityStyles.price)
|
10066
10159
|
} }),
|
10067
10160
|
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: {
|
10068
|
-
__html: setFontForText((
|
10161
|
+
__html: setFontForText((_7 = product === null || product === void 0 ? void 0 : product.taxInfo) !== null && _7 !== void 0 ? _7 : '税费', commodityStyles === null || commodityStyles === void 0 ? void 0 : commodityStyles.taxInfo)
|
10069
10162
|
} }))),
|
10070
|
-
(!product || (product === null || product === void 0 ? void 0 : product.link)) && (React.createElement("button", { "aria-label": (
|
10163
|
+
(!product || (product === null || product === void 0 ? void 0 : product.link)) && (React.createElement("button", { "aria-label": (_8 = cta === null || cta === void 0 ? void 0 : cta.enTitle) !== null && _8 !== void 0 ? _8 : 'Shop now', onClick: handleLink, className: 'pb-commondityDiroNew-btn', style: buttonStyle },
|
10071
10164
|
React.createElement("span", { dangerouslySetInnerHTML: {
|
10072
|
-
__html: setFontForText((
|
10165
|
+
__html: setFontForText((_9 = cta === null || cta === void 0 ? void 0 : cta.enTitle) !== null && _9 !== void 0 ? _9 : 'Shop now', buttonStyle)
|
10073
10166
|
} }))),
|
10074
10167
|
productInfoText({ isPost }))),
|
10075
10168
|
React.createElement(Modal$1, { visible: showModal, onClose: () => setShowModal(false) }, productInfoText({ isPost: false })),
|
@@ -10187,7 +10280,7 @@ Made in Italy` })));
|
|
10187
10280
|
* @Author: binruan@chatlabs.com
|
10188
10281
|
* @Date: 2024-03-26 16:50:25
|
10189
10282
|
* @LastEditors: binruan@chatlabs.com
|
10190
|
-
* @LastEditTime: 2024-
|
10283
|
+
* @LastEditTime: 2024-08-06 14:09:52
|
10191
10284
|
* @FilePath: \pb-sxp-ui\src\materials\sxp\popup\CommodityList\settingRender.tsx
|
10192
10285
|
*
|
10193
10286
|
*/
|
@@ -10324,6 +10417,10 @@ Made in Italy` })));
|
|
10324
10417
|
{
|
10325
10418
|
label: '标题对齐',
|
10326
10419
|
type: 'TextAlign'
|
10420
|
+
},
|
10421
|
+
{
|
10422
|
+
label: '间距',
|
10423
|
+
type: 'TextSpace'
|
10327
10424
|
}
|
10328
10425
|
]
|
10329
10426
|
}
|
@@ -11149,7 +11246,7 @@ Made in Italy` })));
|
|
11149
11246
|
* @Author: binruan@chatlabs.com
|
11150
11247
|
* @Date: 2024-07-02 14:51:32
|
11151
11248
|
* @LastEditors: binruan@chatlabs.com
|
11152
|
-
* @LastEditTime: 2024-
|
11249
|
+
* @LastEditTime: 2024-08-06 14:51:18
|
11153
11250
|
* @FilePath: \pb-sxp-ui\src\materials\sxp\template\Link\settingRender.tsx
|
11154
11251
|
*
|
11155
11252
|
*/
|
@@ -11246,6 +11343,11 @@ Made in Italy` })));
|
|
11246
11343
|
type: 'TextAlign',
|
11247
11344
|
name: ['props', 'customTitle', 'style']
|
11248
11345
|
},
|
11346
|
+
{
|
11347
|
+
label: '间距',
|
11348
|
+
type: 'TextSpace',
|
11349
|
+
name: ['props', 'customTitle', 'style']
|
11350
|
+
},
|
11249
11351
|
{
|
11250
11352
|
label: '上边距',
|
11251
11353
|
type: 'Number',
|
@@ -11903,7 +12005,7 @@ Made in Italy` })));
|
|
11903
12005
|
* @Author: binruan@chatlabs.com
|
11904
12006
|
* @Date: 2024-04-07 14:07:12
|
11905
12007
|
* @LastEditors: binruan@chatlabs.com
|
11906
|
-
* @LastEditTime: 2024-06
|
12008
|
+
* @LastEditTime: 2024-08-06 14:00:36
|
11907
12009
|
* @FilePath: \pb-sxp-ui\src\materials\sxp\HashTag\settingRender.tsx
|
11908
12010
|
*
|
11909
12011
|
*/
|
@@ -12008,6 +12110,10 @@ Made in Italy` })));
|
|
12008
12110
|
{
|
12009
12111
|
label: '标题对齐',
|
12010
12112
|
type: 'TextAlign'
|
12113
|
+
},
|
12114
|
+
{
|
12115
|
+
label: '间距',
|
12116
|
+
type: 'TextSpace'
|
12011
12117
|
}
|
12012
12118
|
]
|
12013
12119
|
}
|
@@ -12093,6 +12199,11 @@ Made in Italy` })));
|
|
12093
12199
|
{
|
12094
12200
|
type: 'TextAlign',
|
12095
12201
|
name: ['props', 'buttonStyle']
|
12202
|
+
},
|
12203
|
+
{
|
12204
|
+
label: '间距',
|
12205
|
+
type: 'TextSpace',
|
12206
|
+
name: ['props', 'buttonStyle']
|
12096
12207
|
}
|
12097
12208
|
]
|
12098
12209
|
},
|
@@ -13532,7 +13643,8 @@ Made in Italy` })));
|
|
13532
13643
|
function WaterfallList$1(_a) {
|
13533
13644
|
var _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y;
|
13534
13645
|
var { reportTagsView, showBanner } = _a, props = __rest(_a, ["reportTagsView", "showBanner"]);
|
13535
|
-
const { waterFallData, getRecommendVideos, hashTagSize, loadingImage, isOpenHashTag } = useSxpDataSource();
|
13646
|
+
const { waterFallData, getRecommendVideos, hashTagSize, loadingImage, isOpenHashTag, cacheActiveIndex } = useSxpDataSource();
|
13647
|
+
const { jumpToWeb } = useEventReport();
|
13536
13648
|
/** 滚动的父元素 */
|
13537
13649
|
const scrollParent = React.useRef(null);
|
13538
13650
|
/** 向上滚动的距离 */
|
@@ -13716,10 +13828,12 @@ Made in Italy` })));
|
|
13716
13828
|
};
|
13717
13829
|
}, [onScroll, scrollParent]);
|
13718
13830
|
const handleClickLink = () => {
|
13719
|
-
var _a, _b;
|
13831
|
+
var _a, _b, _c, _d, _e;
|
13720
13832
|
if ((_a = data === null || data === void 0 ? void 0 : data.tag) === null || _a === void 0 ? void 0 : _a.link) {
|
13721
13833
|
reportTagsView();
|
13722
|
-
|
13834
|
+
const rec = waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.rec;
|
13835
|
+
jumpToWeb(rec, (_b = rec === null || rec === void 0 ? void 0 : rec.video) === null || _b === void 0 ? void 0 : _b.bindProduct, (_c = rec === null || rec === void 0 ? void 0 : rec.video) === null || _c === void 0 ? void 0 : _c.bindCta, cacheActiveIndex, (_d = rec === null || rec === void 0 ? void 0 : rec.video) === null || _d === void 0 ? void 0 : _d.traceInfo);
|
13836
|
+
window.location.href = window.getJointUtmLink((_e = data === null || data === void 0 ? void 0 : data.tag) === null || _e === void 0 ? void 0 : _e.link);
|
13723
13837
|
}
|
13724
13838
|
};
|
13725
13839
|
return (React.createElement(React.Fragment, null, isLoadingData ? (React.createElement("div", { style: { height: '100%', width: '100%', display: 'flex', justifyContent: 'center', alignItems: 'center' } },
|
@@ -13762,7 +13876,7 @@ Made in Italy` })));
|
|
13762
13876
|
|
13763
13877
|
const WaterfallFlowItem = (props) => {
|
13764
13878
|
const { rec, index, list, reportTagsView, textStyles, space } = props;
|
13765
|
-
const { swiperRef, setRtcList, setOpenHashtag,
|
13879
|
+
const { swiperRef, setRtcList, setOpenHashtag, sxpParameter } = useSxpDataSource();
|
13766
13880
|
const [showVideo, setShowVideo] = React.useState(false);
|
13767
13881
|
const imgDom = React.useRef(null);
|
13768
13882
|
const ref = React.useRef(null);
|
@@ -13890,7 +14004,8 @@ Made in Italy` })));
|
|
13890
14004
|
function WaterfallList(_a) {
|
13891
14005
|
var _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t;
|
13892
14006
|
var { reportTagsView, showBanner } = _a, props = __rest(_a, ["reportTagsView", "showBanner"]);
|
13893
|
-
const { waterFallData, getRecommendVideos, hashTagSize, loadingImage, isOpenHashTag } = useSxpDataSource();
|
14007
|
+
const { waterFallData, getRecommendVideos, hashTagSize, loadingImage, isOpenHashTag, cacheActiveIndex } = useSxpDataSource();
|
14008
|
+
const { jumpToWeb } = useEventReport();
|
13894
14009
|
const [list, setList] = React.useState();
|
13895
14010
|
const [data, setData] = React.useState();
|
13896
14011
|
const [isLoadingData, setIsLoadingData] = React.useState(false);
|
@@ -13942,10 +14057,12 @@ Made in Italy` })));
|
|
13942
14057
|
// };
|
13943
14058
|
// }, [isLoadingData, containerRef, loadMoreData]);
|
13944
14059
|
const handleClickLink = () => {
|
13945
|
-
var _a, _b;
|
14060
|
+
var _a, _b, _c, _d, _e;
|
13946
14061
|
if ((_a = data === null || data === void 0 ? void 0 : data.tag) === null || _a === void 0 ? void 0 : _a.link) {
|
13947
14062
|
reportTagsView();
|
13948
|
-
|
14063
|
+
const rec = waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.rec;
|
14064
|
+
jumpToWeb(rec, (_b = rec === null || rec === void 0 ? void 0 : rec.video) === null || _b === void 0 ? void 0 : _b.bindProduct, (_c = rec === null || rec === void 0 ? void 0 : rec.video) === null || _c === void 0 ? void 0 : _c.bindCta, cacheActiveIndex, (_d = rec === null || rec === void 0 ? void 0 : rec.video) === null || _d === void 0 ? void 0 : _d.traceInfo);
|
14065
|
+
window.location.href = window.getJointUtmLink((_e = data === null || data === void 0 ? void 0 : data.tag) === null || _e === void 0 ? void 0 : _e.link);
|
13949
14066
|
}
|
13950
14067
|
};
|
13951
14068
|
return (React.createElement(React.Fragment, null, isLoadingData ? (React.createElement("div", { style: { height: '100%', width: '100%', display: 'flex', justifyContent: 'center', alignItems: 'center' } },
|
@@ -14248,7 +14365,7 @@ Made in Italy` })));
|
|
14248
14365
|
* @Author: binruan@chatlabs.com
|
14249
14366
|
* @Date: 2024-07-02 14:51:32
|
14250
14367
|
* @LastEditors: binruan@chatlabs.com
|
14251
|
-
* @LastEditTime: 2024-
|
14368
|
+
* @LastEditTime: 2024-08-06 14:28:34
|
14252
14369
|
* @FilePath: \pb-sxp-ui\src\materials\sxp\cta\AniLink\settingRender.tsx
|
14253
14370
|
*
|
14254
14371
|
*/
|
@@ -14351,6 +14468,10 @@ Made in Italy` })));
|
|
14351
14468
|
label: '对齐',
|
14352
14469
|
type: 'TextAlign',
|
14353
14470
|
name: ['props', 'ctaTempStyles', 'ctaTitle']
|
14471
|
+
},
|
14472
|
+
{
|
14473
|
+
type: 'TextSpace',
|
14474
|
+
name: ['props', 'ctaTempStyles', 'ctaTitle']
|
14354
14475
|
}
|
14355
14476
|
]
|
14356
14477
|
}
|
@@ -15856,7 +15977,7 @@ Made in Italy` })));
|
|
15856
15977
|
* @Author: binruan@chatlabs.com
|
15857
15978
|
* @Date: 2024-01-15 19:03:09
|
15858
15979
|
* @LastEditors: binruan@chatlabs.com
|
15859
|
-
* @LastEditTime: 2024-08-
|
15980
|
+
* @LastEditTime: 2024-08-16 11:47:58
|
15860
15981
|
* @FilePath: \pb-sxp-ui\src\core\components\SxpPageRender\index.tsx
|
15861
15982
|
*
|
15862
15983
|
*/
|
@@ -15874,8 +15995,7 @@ Made in Italy` })));
|
|
15874
15995
|
const [isReload, setIsReload] = React.useState(new Date().getTime());
|
15875
15996
|
const skipLinkRef = React.useRef(false);
|
15876
15997
|
const { loadVideos, bffEventReport, loading, setPopupDetailData, ctaEvent, swiperRef, waterFallData, setOpenHashtag, appDomain, openHashtag, loadingImage, isFromHashtag, popupDetailData, bffFbReport, curTime, h5EnterLink, isShowConsent, selectTag, isPreview } = useSxpDataSource();
|
15877
|
-
const { backMainFeed } = useEventReport();
|
15878
|
-
const { productView } = useEventReport();
|
15998
|
+
const { backMainFeed, productView, jumpToWeb } = useEventReport();
|
15879
15999
|
const isShowFingerTip = React.useMemo(() => {
|
15880
16000
|
return data.length > 0 && !loading && (getFeUserId() || (globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.enableSwiperTip));
|
15881
16001
|
}, [data, loading, globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.enableSwiperTip]);
|
@@ -16018,15 +16138,39 @@ Made in Italy` })));
|
|
16018
16138
|
const height = React.useMemo(() => {
|
16019
16139
|
return containerHeight - minusHeight - tagHeight;
|
16020
16140
|
}, [globalConfig, containerHeight, tagHeight]);
|
16141
|
+
const visList = React.useMemo(() => {
|
16142
|
+
var _a;
|
16143
|
+
const list = activeIndex === 0 && !waterFallData
|
16144
|
+
? [(_a = data === null || data === void 0 ? void 0 : data[0]) !== null && _a !== void 0 ? _a : null]
|
16145
|
+
: data === null || data === void 0 ? void 0 : data.map((item, index) => {
|
16146
|
+
if (activeIndex === index || index - 1 === activeIndex || index + 1 === activeIndex) {
|
16147
|
+
return item;
|
16148
|
+
}
|
16149
|
+
else {
|
16150
|
+
return null;
|
16151
|
+
}
|
16152
|
+
});
|
16153
|
+
return !waterFallData ? list.concat([{ loading: true }]) : list;
|
16154
|
+
}, [data, activeIndex, waterFallData]);
|
16021
16155
|
const renderLogo = React.useMemo(() => {
|
16022
|
-
var _a, _b;
|
16156
|
+
var _a, _b, _c, _d;
|
16023
16157
|
if ((globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.logoUrl) && (globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.isShowLogo)) {
|
16024
16158
|
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;
|
16025
|
-
|
16159
|
+
const isExternalLink = ((_d = (_c = globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.logoBar) === null || _c === void 0 ? void 0 : _c.onClick) === null || _d === void 0 ? void 0 : _d.linkType) === 'externalLink';
|
16160
|
+
const rec = visList[activeIndex];
|
16161
|
+
return (React.createElement("div", Object.assign({ className: 'clc-sxp-logo-banner', style: { backgroundColor: globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.color } }, (link && {
|
16162
|
+
onClick: () => {
|
16163
|
+
var _a, _b, _c, _d;
|
16164
|
+
if (isExternalLink) {
|
16165
|
+
jumpToWeb(rec, (_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.bindCta, activeIndex, ((_c = rec === null || rec === void 0 ? void 0 : rec.product) === null || _c === void 0 ? void 0 : _c.traceInfo) || ((_d = rec === null || rec === void 0 ? void 0 : rec.video) === null || _d === void 0 ? void 0 : _d.traceInfo));
|
16166
|
+
}
|
16167
|
+
new Function(link)();
|
16168
|
+
}
|
16169
|
+
})),
|
16026
16170
|
React.createElement("img", { src: globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.logoUrl, alt: 'logo' })));
|
16027
16171
|
}
|
16028
16172
|
return null;
|
16029
|
-
}, [globalConfig]);
|
16173
|
+
}, [globalConfig, activeIndex, visList]);
|
16030
16174
|
const renderContent = React.useCallback((rec, index) => {
|
16031
16175
|
var _a, _b, _c, _d;
|
16032
16176
|
if ((_a = rec === null || rec === void 0 ? void 0 : rec.video) === null || _a === void 0 ? void 0 : _a.url) {
|
@@ -16163,7 +16307,6 @@ Made in Italy` })));
|
|
16163
16307
|
traceInfo: (_u = (_s = (_r = item === null || item === void 0 ? void 0 : item.video) === null || _r === void 0 ? void 0 : _r.traceInfo) !== null && _s !== void 0 ? _s : (_t = item === null || item === void 0 ? void 0 : item.product) === null || _t === void 0 ? void 0 : _t.traceInfo) !== null && _u !== void 0 ? _u : ''
|
16164
16308
|
}
|
16165
16309
|
});
|
16166
|
-
setSlideSkipState();
|
16167
16310
|
skipLinkRef.current = true;
|
16168
16311
|
window.location.href = window.getJointUtmLink(link);
|
16169
16312
|
}
|
@@ -16249,20 +16392,6 @@ Made in Italy` })));
|
|
16249
16392
|
});
|
16250
16393
|
}
|
16251
16394
|
};
|
16252
|
-
const visList = React.useMemo(() => {
|
16253
|
-
var _a;
|
16254
|
-
const list = activeIndex === 0 && !waterFallData
|
16255
|
-
? [(_a = data === null || data === void 0 ? void 0 : data[0]) !== null && _a !== void 0 ? _a : null]
|
16256
|
-
: data === null || data === void 0 ? void 0 : data.map((item, index) => {
|
16257
|
-
if (activeIndex === index || index - 1 === activeIndex || index + 1 === activeIndex) {
|
16258
|
-
return item;
|
16259
|
-
}
|
16260
|
-
else {
|
16261
|
-
return null;
|
16262
|
-
}
|
16263
|
-
});
|
16264
|
-
return !waterFallData ? list.concat([{ loading: true }]) : list;
|
16265
|
-
}, [data, activeIndex, waterFallData]);
|
16266
16395
|
const renderToggleButton = React.useCallback((visible) => {
|
16267
16396
|
var _a, _b, _c, _d, _e, _f;
|
16268
16397
|
if (!visible)
|