pb-sxp-ui 1.3.6 → 1.3.8
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/LICENSE +21 -21
- package/README.md +111 -111
- package/dist/index.cjs +42 -28
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +42 -28
- 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 +42 -28
- 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/WaterFall/index.js +3 -12
- package/es/core/components/SxpPageRender/index.js +6 -1
- package/es/materials/sxp/popup/CommodityDetail/index.d.ts +1 -0
- package/es/materials/sxp/popup/CommodityDetail/index.js +7 -7
- package/es/materials/sxp/popup/CommodityDetail/settingRender.d.ts +7 -2
- package/es/materials/sxp/popup/CommodityDetail/settingRender.js +6 -1
- package/es/materials/sxp/popup/CommodityDetailDiroNew/index.d.ts +1 -0
- package/es/materials/sxp/popup/CommodityDetailDiroNew/index.js +4 -4
- package/es/materials/sxp/popup/CommodityDetailDiroNew/settingRender.d.ts +7 -2
- package/es/materials/sxp/popup/CommodityDetailDiroNew/settingRender.js +6 -1
- package/lib/core/components/SxpPageRender/WaterFall/index.js +3 -12
- package/lib/core/components/SxpPageRender/index.js +6 -1
- package/lib/materials/sxp/popup/CommodityDetail/index.d.ts +1 -0
- package/lib/materials/sxp/popup/CommodityDetail/index.js +7 -7
- package/lib/materials/sxp/popup/CommodityDetail/settingRender.d.ts +7 -2
- package/lib/materials/sxp/popup/CommodityDetail/settingRender.js +6 -1
- package/lib/materials/sxp/popup/CommodityDetailDiroNew/index.d.ts +1 -0
- package/lib/materials/sxp/popup/CommodityDetailDiroNew/index.js +4 -4
- package/lib/materials/sxp/popup/CommodityDetailDiroNew/settingRender.d.ts +7 -2
- package/lib/materials/sxp/popup/CommodityDetailDiroNew/settingRender.js +6 -1
- package/package.json +111 -111
@@ -1,7 +1,6 @@
|
|
1
1
|
import React, { memo, useCallback, useEffect, useRef, useState } from 'react';
|
2
2
|
import * as ReactDOM from 'react-dom';
|
3
3
|
import './index.less';
|
4
|
-
import { isEqual } from 'lodash';
|
5
4
|
import Navbar from '../Navbar';
|
6
5
|
import WaterfallList from './WaterfallList';
|
7
6
|
import left from './left.png';
|
@@ -28,21 +27,13 @@ const WaterFall = (props) => {
|
|
28
27
|
}
|
29
28
|
}, []);
|
30
29
|
const handleClose = () => {
|
31
|
-
|
32
|
-
if (!isEq && cacheRtcList && (cacheRtcList === null || cacheRtcList === void 0 ? void 0 : cacheRtcList.length)) {
|
33
|
-
setRtcList === null || setRtcList === void 0 ? void 0 : setRtcList(cacheRtcList);
|
34
|
-
}
|
30
|
+
var _a, _b;
|
35
31
|
backMainFeed('branch', selectTag, undefined, waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.hashTag);
|
36
32
|
reportTagsView();
|
37
33
|
setWaterFallData === null || setWaterFallData === void 0 ? void 0 : setWaterFallData(undefined);
|
38
34
|
setIsFromHashtag === null || setIsFromHashtag === void 0 ? void 0 : setIsFromHashtag(false);
|
39
|
-
|
40
|
-
|
41
|
-
if (!isEq) {
|
42
|
-
(_b = (_a = swiperRef === null || swiperRef === void 0 ? void 0 : swiperRef.current) === null || _a === void 0 ? void 0 : _a.swiper) === null || _b === void 0 ? void 0 : _b.slideTo(cacheActiveIndex, 0, false);
|
43
|
-
}
|
44
|
-
setOpenHashtag === null || setOpenHashtag === void 0 ? void 0 : setOpenHashtag(false);
|
45
|
-
}, 0);
|
35
|
+
(_b = (_a = swiperRef === null || swiperRef === void 0 ? void 0 : swiperRef.current) === null || _a === void 0 ? void 0 : _a.swiper) === null || _b === void 0 ? void 0 : _b.slideTo(cacheActiveIndex, 0, false);
|
36
|
+
setOpenHashtag === null || setOpenHashtag === void 0 ? void 0 : setOpenHashtag(false);
|
46
37
|
};
|
47
38
|
const [recData, setRecData] = useState();
|
48
39
|
useEffect(() => {
|
@@ -21,6 +21,7 @@ import { useEventReport } from '../../../core/hooks/useEventReport';
|
|
21
21
|
import withBindDataSource from '../../../core/hoc/withBindDataSource';
|
22
22
|
import Tagbar from './Tagbar';
|
23
23
|
import { getFeUserId, getSlideSkipState } from '../../../core/utils/localStore';
|
24
|
+
import { isEqual } from 'lodash';
|
24
25
|
const SxpPageRender = ({ globalConfig, descStyle, containerHeight = window.innerHeight, containerWidth = window.innerWidth, tempMap, resolver, data = [], ctaType, tipText, nudge, _schema, hashTagStyle, tagList = [], licenseUrl }) => {
|
25
26
|
var _a, _b, _c, _d, _e, _f, _g, _h, _j;
|
26
27
|
const mutedIcon = useIconLink('/pb_static/5beaaa5ce7f3477b99db3838619cc471.png');
|
@@ -34,7 +35,7 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight = window.inner
|
|
34
35
|
const [isShowMore, setIsShowMore] = useState(false);
|
35
36
|
const [isReload, setIsReload] = useState(new Date().getTime());
|
36
37
|
const skipLinkRef = useRef(false);
|
37
|
-
const { loadVideos, bffEventReport, loading, setPopupDetailData, ctaEvent, swiperRef, waterFallData, setOpenHashtag, appDomain, openHashtag, loadingImage, isFromHashtag, popupDetailData, bffFbReport, curTime, h5EnterLink, isShowConsent, selectTag, isPreview, isEditor } = useSxpDataSource();
|
38
|
+
const { loadVideos, bffEventReport, loading, setPopupDetailData, ctaEvent, swiperRef, waterFallData, setOpenHashtag, appDomain, openHashtag, loadingImage, isFromHashtag, popupDetailData, bffFbReport, curTime, h5EnterLink, isShowConsent, selectTag, isPreview, isEditor, cacheRtcList, setRtcList, cacheActiveIndex, rtcList } = useSxpDataSource();
|
38
39
|
const { backMainFeed, productView, jumpToWeb } = useEventReport();
|
39
40
|
const isShowFingerTip = useMemo(() => {
|
40
41
|
return data.length > 0 && !loading && (getFeUserId() || (globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.enableSwiperTip));
|
@@ -478,6 +479,10 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight = window.inner
|
|
478
479
|
]);
|
479
480
|
return (React.createElement("div", { id: 'sxp-render', className: 'clc-sxp-container' },
|
480
481
|
waterFallData && (React.createElement(Navbar, { icon: left, 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: () => {
|
482
|
+
const isEq = isEqual(rtcList, cacheRtcList);
|
483
|
+
if (!isEq && cacheRtcList && (cacheRtcList === null || cacheRtcList === void 0 ? void 0 : cacheRtcList.length)) {
|
484
|
+
setRtcList === null || setRtcList === void 0 ? void 0 : setRtcList(cacheRtcList);
|
485
|
+
}
|
481
486
|
setOpenHashtag === null || setOpenHashtag === void 0 ? void 0 : setOpenHashtag(true);
|
482
487
|
} })),
|
483
488
|
renderLogo,
|
@@ -13,7 +13,7 @@ import { setFontForText } from '../../../../core/utils/tool';
|
|
13
13
|
import CommodityGroup from '../../template/components/CommodityGroup';
|
14
14
|
const CommodityDetail = (_a) => {
|
15
15
|
var _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z;
|
16
|
-
var { content, style, bgImg, onClick, schema, isDefault, bottom_image, tipText, isPost, viewTime, rec, swiper, commodityStyles, buttonStyle, index, commodityGroup, popupBg, iframeIcon, commodityImgRatio, isTel } = _a, props = __rest(_a, ["content", "style", "bgImg", "onClick", "schema", "isDefault", "bottom_image", "tipText", "isPost", "viewTime", "rec", "swiper", "commodityStyles", "buttonStyle", "index", "commodityGroup", "popupBg", "iframeIcon", "commodityImgRatio", "isTel"]);
|
16
|
+
var { content, style, bgImg, onClick, schema, isDefault, bottom_image, tipText, isPost, viewTime, rec, swiper, commodityStyles, buttonStyle, index, commodityGroup, popupBg, iframeIcon, commodityImgRatio, isTel, iframeBgColor } = _a, props = __rest(_a, ["content", "style", "bgImg", "onClick", "schema", "isDefault", "bottom_image", "tipText", "isPost", "viewTime", "rec", "swiper", "commodityStyles", "buttonStyle", "index", "commodityGroup", "popupBg", "iframeIcon", "commodityImgRatio", "isTel", "iframeBgColor"]);
|
17
17
|
const { sxpParameter, popupDetailData, isPreview, bffFbReport, popupCurTimeRef, checkCommodityIndexRef } = useSxpDataSource();
|
18
18
|
const { jumpToWeb, productView } = useEventReport();
|
19
19
|
const curTimeRef = useRef(null);
|
@@ -91,10 +91,10 @@ const CommodityDetail = (_a) => {
|
|
91
91
|
__html: setFontForText((_c = product === null || product === void 0 ? void 0 : product.taxInfo) !== null && _c !== void 0 ? _c : '税费', commodityStyles === null || commodityStyles === void 0 ? void 0 : commodityStyles.taxInfo)
|
92
92
|
} }),
|
93
93
|
React.createElement("div", { hidden: !!product && (!(product === null || product === void 0 ? void 0 : product.info) || (product === null || product === void 0 ? void 0 : product.info) === '') },
|
94
|
-
React.createElement(ExpandableText, { foldText: tipText === null || tipText === void 0 ? void 0 : tipText.foldText, unfoldText: tipText === null || tipText === void 0 ? void 0 : tipText.unfoldText, onClick: () => setShowModal(true), isPost: isPost, text: (_d = product === null || product === void 0 ? void 0 : product.info) !== null && _d !== void 0 ? _d : `The design inspiration of Tiffany Lock series comes from the power of connection and inclusiveness, and the
|
95
|
-
bold and avant-garde visual design interprets the emotional bond connecting my heart. The Tiffany Lock
|
96
|
-
collection is unisex and is inspired by the padlock pattern found in the Tiffany Antique Collection. This
|
97
|
-
necklace features a stylish and eye-catching oval clasp chain decorated with a lock pattern. Crafted from
|
94
|
+
React.createElement(ExpandableText, { foldText: tipText === null || tipText === void 0 ? void 0 : tipText.foldText, unfoldText: tipText === null || tipText === void 0 ? void 0 : tipText.unfoldText, onClick: () => setShowModal(true), isPost: isPost, text: (_d = product === null || product === void 0 ? void 0 : product.info) !== null && _d !== void 0 ? _d : `The design inspiration of Tiffany Lock series comes from the power of connection and inclusiveness, and the
|
95
|
+
bold and avant-garde visual design interprets the emotional bond connecting my heart. The Tiffany Lock
|
96
|
+
collection is unisex and is inspired by the padlock pattern found in the Tiffany Antique Collection. This
|
97
|
+
necklace features a stylish and eye-catching oval clasp chain decorated with a lock pattern. Crafted from
|
98
98
|
18-karat gold, this necklace is embellished with hand-set diamonds.`, maxStr: 79, className: 'pb-commondity-content-info', style: commodityStyles === null || commodityStyles === void 0 ? void 0 : commodityStyles.info }))));
|
99
99
|
};
|
100
100
|
const renderBtn = () => {
|
@@ -187,10 +187,10 @@ const CommodityDetail = (_a) => {
|
|
187
187
|
React.createElement("div", { style: { paddingBottom: '80px' } }, renderContent({ isPost: false })),
|
188
188
|
renderBtn()),
|
189
189
|
React.createElement(Modal, { visible: show3DModal, padding: 0, isFullScreen: true, onClose: () => setShow3DModal(false) },
|
190
|
-
React.createElement("div", { style: { height:
|
190
|
+
React.createElement("div", { style: { backgroundColor: iframeBgColor, height: '100%' } },
|
191
191
|
React.createElement("iframe", { src: iframeUrl, style: {
|
192
192
|
width: '100%',
|
193
|
-
height:
|
193
|
+
height: 'calc(100% - 50px)',
|
194
194
|
marginTop: '50px',
|
195
195
|
border: 'none'
|
196
196
|
} })))));
|
@@ -221,11 +221,16 @@ declare const _default: ({
|
|
221
221
|
})[];
|
222
222
|
} | {
|
223
223
|
title: string;
|
224
|
-
child: {
|
224
|
+
child: ({
|
225
225
|
label: string;
|
226
226
|
type: string;
|
227
227
|
name: string[];
|
228
228
|
text: string;
|
229
|
-
}
|
229
|
+
} | {
|
230
|
+
label: string;
|
231
|
+
type: string;
|
232
|
+
name: string[];
|
233
|
+
text?: undefined;
|
234
|
+
})[];
|
230
235
|
})[];
|
231
236
|
export default _default;
|
@@ -318,7 +318,12 @@ export default [
|
|
318
318
|
label: '弹窗按钮',
|
319
319
|
type: 'Upload',
|
320
320
|
name: ['props', 'iframeIcon'],
|
321
|
-
text: '建议尺寸:72 *
|
321
|
+
text: '建议尺寸:72 * 30'
|
322
|
+
},
|
323
|
+
{
|
324
|
+
label: '背景色',
|
325
|
+
type: 'Color',
|
326
|
+
name: ['props', 'iframeBgColor']
|
322
327
|
}
|
323
328
|
]
|
324
329
|
}
|
@@ -13,7 +13,7 @@ import { setFontForText } from '../../../../core/utils/tool';
|
|
13
13
|
import CommodityGroup from '../../template/components/CommodityGroup';
|
14
14
|
const CommodityDetailDiroNew = (_a) => {
|
15
15
|
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;
|
16
|
-
var { style, isDefault, rec, viewTime, isPost, bottom_image, tipText, swiper, commodityStyles, buttonStyle, index, commodityGroup, popupBg, iframeIcon, commodityImgRatio, isTel } = _a, props = __rest(_a, ["style", "isDefault", "rec", "viewTime", "isPost", "bottom_image", "tipText", "swiper", "commodityStyles", "buttonStyle", "index", "commodityGroup", "popupBg", "iframeIcon", "commodityImgRatio", "isTel"]);
|
16
|
+
var { style, isDefault, rec, viewTime, isPost, bottom_image, tipText, swiper, commodityStyles, buttonStyle, index, commodityGroup, popupBg, iframeIcon, commodityImgRatio, isTel, iframeBgColor } = _a, props = __rest(_a, ["style", "isDefault", "rec", "viewTime", "isPost", "bottom_image", "tipText", "swiper", "commodityStyles", "buttonStyle", "index", "commodityGroup", "popupBg", "iframeIcon", "commodityImgRatio", "isTel", "iframeBgColor"]);
|
17
17
|
const [spread, setSpread] = useState(true);
|
18
18
|
const { sxpParameter, popupCurTimeRef, popupDetailData, isPreview, bffFbReport, checkCommodityIndexRef } = useSxpDataSource();
|
19
19
|
const { jumpToWeb, productView } = useEventReport();
|
@@ -85,7 +85,7 @@ const CommodityDetailDiroNew = (_a) => {
|
|
85
85
|
const productInfoText = ({ isPost }) => {
|
86
86
|
return (React.createElement("div", { hidden: !!product && (!(product === null || product === void 0 ? void 0 : product.info) || (product === null || product === void 0 ? void 0 : product.info) === '') },
|
87
87
|
React.createElement(ExpandableText, { isPost: isPost, onClick: () => setShowModal(true), className: 'pb-commondityDiroNew-info', style: commodityStyles === null || commodityStyles === void 0 ? void 0 : commodityStyles.info, foldText: tipText === null || tipText === void 0 ? void 0 : tipText.foldText, unfoldText: tipText === null || tipText === void 0 ? void 0 : tipText.unfoldText, text: (product === null || product === void 0 ? void 0 : product.info) ||
|
88
|
-
`Unveiled at the Spring-Summer 2023 fashion show, the Dior Toujours bag is distinguished by a casual and practical design. Crafted in black calfskin with Macrocannage topstitching, it showcases a spacious interior compartment with a matching pouch to organize essentials. Its leather strap closure keeps items secure while the D of the CD Lock closure twists to adjust the sides and enhance the bag's silhouette. The leather handles can be adjusted using the small notches in order to be able to carry the large bag by hand or wear it over the shoulder. CD Lock and strap closures D.I.O.R. charms Removable interior pouch Adjustable leather handles Dust bag included
|
88
|
+
`Unveiled at the Spring-Summer 2023 fashion show, the Dior Toujours bag is distinguished by a casual and practical design. Crafted in black calfskin with Macrocannage topstitching, it showcases a spacious interior compartment with a matching pouch to organize essentials. Its leather strap closure keeps items secure while the D of the CD Lock closure twists to adjust the sides and enhance the bag's silhouette. The leather handles can be adjusted using the small notches in order to be able to carry the large bag by hand or wear it over the shoulder. CD Lock and strap closures D.I.O.R. charms Removable interior pouch Adjustable leather handles Dust bag included
|
89
89
|
Made in Italy` })));
|
90
90
|
};
|
91
91
|
const getStyle = useCallback((style) => {
|
@@ -187,10 +187,10 @@ Made in Italy` })));
|
|
187
187
|
productInfoText({ isPost }))),
|
188
188
|
React.createElement(Modal, { visible: showModal, onClose: () => setShowModal(false) }, productInfoText({ isPost: false })),
|
189
189
|
React.createElement(Modal, { visible: show3DModal, padding: 0, isFullScreen: true, onClose: () => setShow3DModal(false) },
|
190
|
-
React.createElement("div", { style: { height:
|
190
|
+
React.createElement("div", { style: { backgroundColor: iframeBgColor, height: '100%' } },
|
191
191
|
React.createElement("iframe", { src: iframeUrl, style: {
|
192
192
|
width: '100%',
|
193
|
-
height:
|
193
|
+
height: 'calc(100% - 50px)',
|
194
194
|
marginTop: '50px',
|
195
195
|
border: 'none'
|
196
196
|
} })))));
|
@@ -209,11 +209,16 @@ declare const _default: ({
|
|
209
209
|
})[];
|
210
210
|
} | {
|
211
211
|
title: string;
|
212
|
-
child: {
|
212
|
+
child: ({
|
213
213
|
label: string;
|
214
214
|
type: string;
|
215
215
|
name: string[];
|
216
216
|
text: string;
|
217
|
-
}
|
217
|
+
} | {
|
218
|
+
label: string;
|
219
|
+
type: string;
|
220
|
+
name: string[];
|
221
|
+
text?: undefined;
|
222
|
+
})[];
|
218
223
|
})[];
|
219
224
|
export default _default;
|
@@ -301,7 +301,12 @@ export default [
|
|
301
301
|
label: '弹窗按钮',
|
302
302
|
type: 'Upload',
|
303
303
|
name: ['props', 'iframeIcon'],
|
304
|
-
text: '建议尺寸:72 *
|
304
|
+
text: '建议尺寸:72 * 30'
|
305
|
+
},
|
306
|
+
{
|
307
|
+
label: '背景色',
|
308
|
+
type: 'Color',
|
309
|
+
name: ['props', 'iframeBgColor']
|
305
310
|
}
|
306
311
|
]
|
307
312
|
}
|
@@ -4,7 +4,6 @@ const tslib_1 = require("tslib");
|
|
4
4
|
const react_1 = tslib_1.__importStar(require("react"));
|
5
5
|
const ReactDOM = tslib_1.__importStar(require("react-dom"));
|
6
6
|
require("./index.less");
|
7
|
-
const lodash_1 = require("lodash");
|
8
7
|
const Navbar_1 = tslib_1.__importDefault(require("../Navbar"));
|
9
8
|
const WaterfallList_1 = tslib_1.__importDefault(require("./WaterfallList"));
|
10
9
|
const left_png_1 = tslib_1.__importDefault(require("./left.png"));
|
@@ -31,21 +30,13 @@ const WaterFall = (props) => {
|
|
31
30
|
}
|
32
31
|
}, []);
|
33
32
|
const handleClose = () => {
|
34
|
-
|
35
|
-
if (!isEq && cacheRtcList && (cacheRtcList === null || cacheRtcList === void 0 ? void 0 : cacheRtcList.length)) {
|
36
|
-
setRtcList === null || setRtcList === void 0 ? void 0 : setRtcList(cacheRtcList);
|
37
|
-
}
|
33
|
+
var _a, _b;
|
38
34
|
backMainFeed('branch', selectTag, undefined, waterFallData === null || waterFallData === void 0 ? void 0 : waterFallData.hashTag);
|
39
35
|
reportTagsView();
|
40
36
|
setWaterFallData === null || setWaterFallData === void 0 ? void 0 : setWaterFallData(undefined);
|
41
37
|
setIsFromHashtag === null || setIsFromHashtag === void 0 ? void 0 : setIsFromHashtag(false);
|
42
|
-
|
43
|
-
|
44
|
-
if (!isEq) {
|
45
|
-
(_b = (_a = swiperRef === null || swiperRef === void 0 ? void 0 : swiperRef.current) === null || _a === void 0 ? void 0 : _a.swiper) === null || _b === void 0 ? void 0 : _b.slideTo(cacheActiveIndex, 0, false);
|
46
|
-
}
|
47
|
-
setOpenHashtag === null || setOpenHashtag === void 0 ? void 0 : setOpenHashtag(false);
|
48
|
-
}, 0);
|
38
|
+
(_b = (_a = swiperRef === null || swiperRef === void 0 ? void 0 : swiperRef.current) === null || _a === void 0 ? void 0 : _a.swiper) === null || _b === void 0 ? void 0 : _b.slideTo(cacheActiveIndex, 0, false);
|
39
|
+
setOpenHashtag === null || setOpenHashtag === void 0 ? void 0 : setOpenHashtag(false);
|
49
40
|
};
|
50
41
|
const [recData, setRecData] = (0, react_1.useState)();
|
51
42
|
(0, react_1.useEffect)(() => {
|
@@ -24,6 +24,7 @@ const useEventReport_1 = require("../../../core/hooks/useEventReport");
|
|
24
24
|
const withBindDataSource_1 = tslib_1.__importDefault(require("../../../core/hoc/withBindDataSource"));
|
25
25
|
const Tagbar_1 = tslib_1.__importDefault(require("./Tagbar"));
|
26
26
|
const localStore_1 = require("../../../core/utils/localStore");
|
27
|
+
const lodash_1 = require("lodash");
|
27
28
|
const SxpPageRender = ({ globalConfig, descStyle, containerHeight = window.innerHeight, containerWidth = window.innerWidth, tempMap, resolver, data = [], ctaType, tipText, nudge, _schema, hashTagStyle, tagList = [], licenseUrl }) => {
|
28
29
|
var _a, _b, _c, _d, _e, _f, _g, _h, _j;
|
29
30
|
const mutedIcon = (0, useIconLink_1.useIconLink)('/pb_static/5beaaa5ce7f3477b99db3838619cc471.png');
|
@@ -37,7 +38,7 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight = window.inner
|
|
37
38
|
const [isShowMore, setIsShowMore] = (0, react_1.useState)(false);
|
38
39
|
const [isReload, setIsReload] = (0, react_1.useState)(new Date().getTime());
|
39
40
|
const skipLinkRef = (0, react_1.useRef)(false);
|
40
|
-
const { loadVideos, bffEventReport, loading, setPopupDetailData, ctaEvent, swiperRef, waterFallData, setOpenHashtag, appDomain, openHashtag, loadingImage, isFromHashtag, popupDetailData, bffFbReport, curTime, h5EnterLink, isShowConsent, selectTag, isPreview, isEditor } = (0, hooks_1.useSxpDataSource)();
|
41
|
+
const { loadVideos, bffEventReport, loading, setPopupDetailData, ctaEvent, swiperRef, waterFallData, setOpenHashtag, appDomain, openHashtag, loadingImage, isFromHashtag, popupDetailData, bffFbReport, curTime, h5EnterLink, isShowConsent, selectTag, isPreview, isEditor, cacheRtcList, setRtcList, cacheActiveIndex, rtcList } = (0, hooks_1.useSxpDataSource)();
|
41
42
|
const { backMainFeed, productView, jumpToWeb } = (0, useEventReport_1.useEventReport)();
|
42
43
|
const isShowFingerTip = (0, react_1.useMemo)(() => {
|
43
44
|
return data.length > 0 && !loading && ((0, localStore_1.getFeUserId)() || (globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.enableSwiperTip));
|
@@ -481,6 +482,10 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight = window.inner
|
|
481
482
|
]);
|
482
483
|
return (react_1.default.createElement("div", { id: 'sxp-render', className: 'clc-sxp-container' },
|
483
484
|
waterFallData && (react_1.default.createElement(Navbar_1.default, { icon: left_png_1.default, 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: () => {
|
485
|
+
const isEq = (0, lodash_1.isEqual)(rtcList, cacheRtcList);
|
486
|
+
if (!isEq && cacheRtcList && (cacheRtcList === null || cacheRtcList === void 0 ? void 0 : cacheRtcList.length)) {
|
487
|
+
setRtcList === null || setRtcList === void 0 ? void 0 : setRtcList(cacheRtcList);
|
488
|
+
}
|
484
489
|
setOpenHashtag === null || setOpenHashtag === void 0 ? void 0 : setOpenHashtag(true);
|
485
490
|
} })),
|
486
491
|
renderLogo,
|
@@ -15,7 +15,7 @@ const tool_1 = require("../../../../core/utils/tool");
|
|
15
15
|
const CommodityGroup_1 = tslib_1.__importDefault(require("../../template/components/CommodityGroup"));
|
16
16
|
const CommodityDetail = (_a) => {
|
17
17
|
var _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z;
|
18
|
-
var { content, style, bgImg, onClick, schema, isDefault, bottom_image, tipText, isPost, viewTime, rec, swiper, commodityStyles, buttonStyle, index, commodityGroup, popupBg, iframeIcon, commodityImgRatio, isTel } = _a, props = tslib_1.__rest(_a, ["content", "style", "bgImg", "onClick", "schema", "isDefault", "bottom_image", "tipText", "isPost", "viewTime", "rec", "swiper", "commodityStyles", "buttonStyle", "index", "commodityGroup", "popupBg", "iframeIcon", "commodityImgRatio", "isTel"]);
|
18
|
+
var { content, style, bgImg, onClick, schema, isDefault, bottom_image, tipText, isPost, viewTime, rec, swiper, commodityStyles, buttonStyle, index, commodityGroup, popupBg, iframeIcon, commodityImgRatio, isTel, iframeBgColor } = _a, props = tslib_1.__rest(_a, ["content", "style", "bgImg", "onClick", "schema", "isDefault", "bottom_image", "tipText", "isPost", "viewTime", "rec", "swiper", "commodityStyles", "buttonStyle", "index", "commodityGroup", "popupBg", "iframeIcon", "commodityImgRatio", "isTel", "iframeBgColor"]);
|
19
19
|
const { sxpParameter, popupDetailData, isPreview, bffFbReport, popupCurTimeRef, checkCommodityIndexRef } = (0, hooks_1.useSxpDataSource)();
|
20
20
|
const { jumpToWeb, productView } = (0, useEventReport_1.useEventReport)();
|
21
21
|
const curTimeRef = (0, react_1.useRef)(null);
|
@@ -93,10 +93,10 @@ const CommodityDetail = (_a) => {
|
|
93
93
|
__html: (0, tool_1.setFontForText)((_c = product === null || product === void 0 ? void 0 : product.taxInfo) !== null && _c !== void 0 ? _c : '税费', commodityStyles === null || commodityStyles === void 0 ? void 0 : commodityStyles.taxInfo)
|
94
94
|
} }),
|
95
95
|
react_1.default.createElement("div", { hidden: !!product && (!(product === null || product === void 0 ? void 0 : product.info) || (product === null || product === void 0 ? void 0 : product.info) === '') },
|
96
|
-
react_1.default.createElement(ExpandableText_1.default, { foldText: tipText === null || tipText === void 0 ? void 0 : tipText.foldText, unfoldText: tipText === null || tipText === void 0 ? void 0 : tipText.unfoldText, onClick: () => setShowModal(true), isPost: isPost, text: (_d = product === null || product === void 0 ? void 0 : product.info) !== null && _d !== void 0 ? _d : `The design inspiration of Tiffany Lock series comes from the power of connection and inclusiveness, and the
|
97
|
-
bold and avant-garde visual design interprets the emotional bond connecting my heart. The Tiffany Lock
|
98
|
-
collection is unisex and is inspired by the padlock pattern found in the Tiffany Antique Collection. This
|
99
|
-
necklace features a stylish and eye-catching oval clasp chain decorated with a lock pattern. Crafted from
|
96
|
+
react_1.default.createElement(ExpandableText_1.default, { foldText: tipText === null || tipText === void 0 ? void 0 : tipText.foldText, unfoldText: tipText === null || tipText === void 0 ? void 0 : tipText.unfoldText, onClick: () => setShowModal(true), isPost: isPost, text: (_d = product === null || product === void 0 ? void 0 : product.info) !== null && _d !== void 0 ? _d : `The design inspiration of Tiffany Lock series comes from the power of connection and inclusiveness, and the
|
97
|
+
bold and avant-garde visual design interprets the emotional bond connecting my heart. The Tiffany Lock
|
98
|
+
collection is unisex and is inspired by the padlock pattern found in the Tiffany Antique Collection. This
|
99
|
+
necklace features a stylish and eye-catching oval clasp chain decorated with a lock pattern. Crafted from
|
100
100
|
18-karat gold, this necklace is embellished with hand-set diamonds.`, maxStr: 79, className: 'pb-commondity-content-info', style: commodityStyles === null || commodityStyles === void 0 ? void 0 : commodityStyles.info }))));
|
101
101
|
};
|
102
102
|
const renderBtn = () => {
|
@@ -189,10 +189,10 @@ const CommodityDetail = (_a) => {
|
|
189
189
|
react_1.default.createElement("div", { style: { paddingBottom: '80px' } }, renderContent({ isPost: false })),
|
190
190
|
renderBtn()),
|
191
191
|
react_1.default.createElement(Modal_1.default, { visible: show3DModal, padding: 0, isFullScreen: true, onClose: () => setShow3DModal(false) },
|
192
|
-
react_1.default.createElement("div", { style: { height:
|
192
|
+
react_1.default.createElement("div", { style: { backgroundColor: iframeBgColor, height: '100%' } },
|
193
193
|
react_1.default.createElement("iframe", { src: iframeUrl, style: {
|
194
194
|
width: '100%',
|
195
|
-
height:
|
195
|
+
height: 'calc(100% - 50px)',
|
196
196
|
marginTop: '50px',
|
197
197
|
border: 'none'
|
198
198
|
} })))));
|
@@ -221,11 +221,16 @@ declare const _default: ({
|
|
221
221
|
})[];
|
222
222
|
} | {
|
223
223
|
title: string;
|
224
|
-
child: {
|
224
|
+
child: ({
|
225
225
|
label: string;
|
226
226
|
type: string;
|
227
227
|
name: string[];
|
228
228
|
text: string;
|
229
|
-
}
|
229
|
+
} | {
|
230
|
+
label: string;
|
231
|
+
type: string;
|
232
|
+
name: string[];
|
233
|
+
text?: undefined;
|
234
|
+
})[];
|
230
235
|
})[];
|
231
236
|
export default _default;
|
@@ -320,7 +320,12 @@ exports.default = [
|
|
320
320
|
label: '弹窗按钮',
|
321
321
|
type: 'Upload',
|
322
322
|
name: ['props', 'iframeIcon'],
|
323
|
-
text: '建议尺寸:72 *
|
323
|
+
text: '建议尺寸:72 * 30'
|
324
|
+
},
|
325
|
+
{
|
326
|
+
label: '背景色',
|
327
|
+
type: 'Color',
|
328
|
+
name: ['props', 'iframeBgColor']
|
324
329
|
}
|
325
330
|
]
|
326
331
|
}
|
@@ -15,7 +15,7 @@ const tool_1 = require("../../../../core/utils/tool");
|
|
15
15
|
const CommodityGroup_1 = tslib_1.__importDefault(require("../../template/components/CommodityGroup"));
|
16
16
|
const CommodityDetailDiroNew = (_a) => {
|
17
17
|
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;
|
18
|
-
var { style, isDefault, rec, viewTime, isPost, bottom_image, tipText, swiper, commodityStyles, buttonStyle, index, commodityGroup, popupBg, iframeIcon, commodityImgRatio, isTel } = _a, props = tslib_1.__rest(_a, ["style", "isDefault", "rec", "viewTime", "isPost", "bottom_image", "tipText", "swiper", "commodityStyles", "buttonStyle", "index", "commodityGroup", "popupBg", "iframeIcon", "commodityImgRatio", "isTel"]);
|
18
|
+
var { style, isDefault, rec, viewTime, isPost, bottom_image, tipText, swiper, commodityStyles, buttonStyle, index, commodityGroup, popupBg, iframeIcon, commodityImgRatio, isTel, iframeBgColor } = _a, props = tslib_1.__rest(_a, ["style", "isDefault", "rec", "viewTime", "isPost", "bottom_image", "tipText", "swiper", "commodityStyles", "buttonStyle", "index", "commodityGroup", "popupBg", "iframeIcon", "commodityImgRatio", "isTel", "iframeBgColor"]);
|
19
19
|
const [spread, setSpread] = (0, react_1.useState)(true);
|
20
20
|
const { sxpParameter, popupCurTimeRef, popupDetailData, isPreview, bffFbReport, checkCommodityIndexRef } = (0, hooks_1.useSxpDataSource)();
|
21
21
|
const { jumpToWeb, productView } = (0, useEventReport_1.useEventReport)();
|
@@ -87,7 +87,7 @@ const CommodityDetailDiroNew = (_a) => {
|
|
87
87
|
const productInfoText = ({ isPost }) => {
|
88
88
|
return (react_1.default.createElement("div", { hidden: !!product && (!(product === null || product === void 0 ? void 0 : product.info) || (product === null || product === void 0 ? void 0 : product.info) === '') },
|
89
89
|
react_1.default.createElement(ExpandableText_1.default, { isPost: isPost, onClick: () => setShowModal(true), className: 'pb-commondityDiroNew-info', style: commodityStyles === null || commodityStyles === void 0 ? void 0 : commodityStyles.info, foldText: tipText === null || tipText === void 0 ? void 0 : tipText.foldText, unfoldText: tipText === null || tipText === void 0 ? void 0 : tipText.unfoldText, text: (product === null || product === void 0 ? void 0 : product.info) ||
|
90
|
-
`Unveiled at the Spring-Summer 2023 fashion show, the Dior Toujours bag is distinguished by a casual and practical design. Crafted in black calfskin with Macrocannage topstitching, it showcases a spacious interior compartment with a matching pouch to organize essentials. Its leather strap closure keeps items secure while the D of the CD Lock closure twists to adjust the sides and enhance the bag's silhouette. The leather handles can be adjusted using the small notches in order to be able to carry the large bag by hand or wear it over the shoulder. CD Lock and strap closures D.I.O.R. charms Removable interior pouch Adjustable leather handles Dust bag included
|
90
|
+
`Unveiled at the Spring-Summer 2023 fashion show, the Dior Toujours bag is distinguished by a casual and practical design. Crafted in black calfskin with Macrocannage topstitching, it showcases a spacious interior compartment with a matching pouch to organize essentials. Its leather strap closure keeps items secure while the D of the CD Lock closure twists to adjust the sides and enhance the bag's silhouette. The leather handles can be adjusted using the small notches in order to be able to carry the large bag by hand or wear it over the shoulder. CD Lock and strap closures D.I.O.R. charms Removable interior pouch Adjustable leather handles Dust bag included
|
91
91
|
Made in Italy` })));
|
92
92
|
};
|
93
93
|
const getStyle = (0, react_1.useCallback)((style) => {
|
@@ -189,10 +189,10 @@ Made in Italy` })));
|
|
189
189
|
productInfoText({ isPost }))),
|
190
190
|
react_1.default.createElement(Modal_1.default, { visible: showModal, onClose: () => setShowModal(false) }, productInfoText({ isPost: false })),
|
191
191
|
react_1.default.createElement(Modal_1.default, { visible: show3DModal, padding: 0, isFullScreen: true, onClose: () => setShow3DModal(false) },
|
192
|
-
react_1.default.createElement("div", { style: { height:
|
192
|
+
react_1.default.createElement("div", { style: { backgroundColor: iframeBgColor, height: '100%' } },
|
193
193
|
react_1.default.createElement("iframe", { src: iframeUrl, style: {
|
194
194
|
width: '100%',
|
195
|
-
height:
|
195
|
+
height: 'calc(100% - 50px)',
|
196
196
|
marginTop: '50px',
|
197
197
|
border: 'none'
|
198
198
|
} })))));
|
@@ -209,11 +209,16 @@ declare const _default: ({
|
|
209
209
|
})[];
|
210
210
|
} | {
|
211
211
|
title: string;
|
212
|
-
child: {
|
212
|
+
child: ({
|
213
213
|
label: string;
|
214
214
|
type: string;
|
215
215
|
name: string[];
|
216
216
|
text: string;
|
217
|
-
}
|
217
|
+
} | {
|
218
|
+
label: string;
|
219
|
+
type: string;
|
220
|
+
name: string[];
|
221
|
+
text?: undefined;
|
222
|
+
})[];
|
218
223
|
})[];
|
219
224
|
export default _default;
|
@@ -303,7 +303,12 @@ exports.default = [
|
|
303
303
|
label: '弹窗按钮',
|
304
304
|
type: 'Upload',
|
305
305
|
name: ['props', 'iframeIcon'],
|
306
|
-
text: '建议尺寸:72 *
|
306
|
+
text: '建议尺寸:72 * 30'
|
307
|
+
},
|
308
|
+
{
|
309
|
+
label: '背景色',
|
310
|
+
type: 'Color',
|
311
|
+
name: ['props', 'iframeBgColor']
|
307
312
|
}
|
308
313
|
]
|
309
314
|
}
|