pb-sxp-ui 1.0.37 → 1.0.38
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 +106 -443
- package/dist/index.cjs.map +1 -1
- package/dist/index.css +1 -6
- package/dist/index.js +106 -442
- 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 +110 -446
- 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/VideoWidget/index.js +63 -38
- package/es/core/components/SxpPageRender/WaterFall/index.js +1 -1
- package/es/core/components/SxpPageRender/index.js +7 -7
- package/es/core/context/SxpDataSourceProvider.js +1 -1
- package/es/core/hooks/useEventReport.js +4 -4
- package/es/index.d.ts +0 -1
- package/es/index.js +0 -1
- package/es/materials/sxp/popup/CommodityDetail/index.js +6 -6
- package/es/materials/sxp/popup/CommodityDetailDiroNew/index.js +9 -9
- package/lib/core/components/SxpPageRender/VideoWidget/index.js +63 -38
- package/lib/core/components/SxpPageRender/WaterFall/index.js +1 -1
- package/lib/core/components/SxpPageRender/index.js +7 -7
- package/lib/core/context/SxpDataSourceProvider.js +1 -1
- package/lib/core/hooks/useEventReport.js +4 -4
- package/lib/index.d.ts +0 -1
- package/lib/index.js +1 -3
- package/lib/materials/sxp/popup/CommodityDetail/index.js +6 -6
- package/lib/materials/sxp/popup/CommodityDetailDiroNew/index.js +9 -9
- package/package.json +1 -2
- package/es/core/components/DiyPortalPreview/PictureGroup.d.ts +0 -13
- package/es/core/components/DiyPortalPreview/PictureGroup.js +0 -11
- package/es/core/components/DiyPortalPreview/VideoWidget.d.ts +0 -15
- package/es/core/components/DiyPortalPreview/VideoWidget.js +0 -236
- package/es/core/components/DiyPortalPreview/index.d.ts +0 -6
- package/es/core/components/DiyPortalPreview/index.js +0 -112
- package/lib/core/components/DiyPortalPreview/PictureGroup.d.ts +0 -13
- package/lib/core/components/DiyPortalPreview/PictureGroup.js +0 -14
- package/lib/core/components/DiyPortalPreview/VideoWidget.d.ts +0 -15
- package/lib/core/components/DiyPortalPreview/VideoWidget.js +0 -239
- package/lib/core/components/DiyPortalPreview/index.d.ts +0 -6
- package/lib/core/components/DiyPortalPreview/index.js +0 -115
package/dist/index.cjs
CHANGED
@@ -11,7 +11,6 @@ var css = require('@emotion/css');
|
|
11
11
|
var proComponents = require('@ant-design/pro-components');
|
12
12
|
var ReactDOM = require('react-dom');
|
13
13
|
var EventEmitter = require('eventemitter3');
|
14
|
-
var Hls = require('hls.js');
|
15
14
|
|
16
15
|
function _interopNamespaceDefault(e) {
|
17
16
|
var n = Object.create(null);
|
@@ -578,7 +577,7 @@ const SxpDataSourceProvider = ({ render, dataSources, utmVal, enableReportEvent
|
|
578
577
|
fromKName = 'imagePage';
|
579
578
|
}
|
580
579
|
bffEventReport === null || bffEventReport === void 0 ? void 0 : bffEventReport({
|
581
|
-
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 + '',
|
580
|
+
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 + '', relatedContentId: (_l = (_k = rec === null || rec === void 0 ? void 0 : rec.video) === null || _k === void 0 ? void 0 : _k.itemId) !== null && _l !== void 0 ? _l : '', relatedProductId: isProd ? product === null || product === void 0 ? void 0 : product.itemId : '', traceInfo: (_m = cta === null || cta === void 0 ? void 0 : cta.traceInfo) !== null && _m !== void 0 ? _m : '', fromKName })
|
582
581
|
});
|
583
582
|
}, [bffEventReport, isFromHashtag]);
|
584
583
|
React.useEffect(() => {
|
@@ -865,7 +864,7 @@ const EditorCore = React.forwardRef(({ children, resolver, isSsr, schema, enable
|
|
865
864
|
React.createElement(DataSourceProvider$1, { isSsr: isSsr, enable: enableDataSource }, children)));
|
866
865
|
});
|
867
866
|
|
868
|
-
var index$
|
867
|
+
var index$1 = /*#__PURE__*/Object.freeze({
|
869
868
|
__proto__: null,
|
870
869
|
EditorCore: EditorCore
|
871
870
|
});
|
@@ -8151,8 +8150,8 @@ function useEventReport() {
|
|
8151
8150
|
fromKPage: location === null || location === void 0 ? void 0 : location.href,
|
8152
8151
|
contentTags: (product === null || product === void 0 ? void 0 : product.tags) ? JSON.stringify(product === null || product === void 0 ? void 0 : product.tags) : '',
|
8153
8152
|
position: position + '',
|
8154
|
-
|
8155
|
-
|
8153
|
+
relatedContentId: (_m = (_l = data === null || data === void 0 ? void 0 : data.video) === null || _l === void 0 ? void 0 : _l.itemId) !== null && _m !== void 0 ? _m : '',
|
8154
|
+
relatedCtatId: (_o = cta === null || cta === void 0 ? void 0 : cta.itemId) !== null && _o !== void 0 ? _o : '',
|
8156
8155
|
traceInfo: (_p = product === null || product === void 0 ? void 0 : product.traceInfo) !== null && _p !== void 0 ? _p : ''
|
8157
8156
|
}
|
8158
8157
|
});
|
@@ -8176,8 +8175,8 @@ function useEventReport() {
|
|
8176
8175
|
fromKPage: location === null || location === void 0 ? void 0 : location.href,
|
8177
8176
|
contentTags: JSON.stringify(product === null || product === void 0 ? void 0 : product.tags),
|
8178
8177
|
position: position + '',
|
8179
|
-
|
8180
|
-
|
8178
|
+
relatedContentId: (_d = data === null || data === void 0 ? void 0 : data.video) === null || _d === void 0 ? void 0 : _d.itemId,
|
8179
|
+
relatedCtatId: cta === null || cta === void 0 ? void 0 : cta.itemId,
|
8181
8180
|
traceInfo: product === null || product === void 0 ? void 0 : product.traceInfo,
|
8182
8181
|
timeOnSite: Math.floor((new Date() - viewTime) / 1000) + '',
|
8183
8182
|
eventSubject: 'productView',
|
@@ -8340,7 +8339,7 @@ const FormatImage = React.forwardRef((props, ref) => {
|
|
8340
8339
|
var FormatImage$1 = React.memo(FormatImage);
|
8341
8340
|
|
8342
8341
|
const CommodityDetail$1 = (_a) => {
|
8343
|
-
var _b, _c, _d, _e, _f, _g, _h, _j
|
8342
|
+
var _b, _c, _d, _e, _f, _g, _h, _j;
|
8344
8343
|
var { content, style, bgImg, onClick, schema, isDefault, bottom_image, tipText, isPost, viewTime, rec, swiper, commodityStyles, buttonStyle, index } = _a, props = __rest(_a, ["content", "style", "bgImg", "onClick", "schema", "isDefault", "bottom_image", "tipText", "isPost", "viewTime", "rec", "swiper", "commodityStyles", "buttonStyle", "index"]);
|
8345
8344
|
const { sxpParameter } = useSxpDataSource();
|
8346
8345
|
const { popupDetailData, bffEventReport, isPreview, waterFallData } = useSxpDataSource();
|
@@ -8381,7 +8380,7 @@ const CommodityDetail$1 = (_a) => {
|
|
8381
8380
|
return '$7,000';
|
8382
8381
|
}
|
8383
8382
|
}, [product === null || product === void 0 ? void 0 : product.price, product === null || product === void 0 ? void 0 : product.currency]);
|
8384
|
-
const width = isPreview ? 375 :
|
8383
|
+
const width = isPreview ? 375 : window.innerWidth;
|
8385
8384
|
const renderContent = ({ isPost }) => {
|
8386
8385
|
var _a, _b, _c;
|
8387
8386
|
return (React.createElement("div", null,
|
@@ -8401,7 +8400,7 @@ const CommodityDetail$1 = (_a) => {
|
|
8401
8400
|
};
|
8402
8401
|
return (React.createElement("div", { className: 'pb-commondity' },
|
8403
8402
|
React.createElement("div", Object.assign({ className: css.css(Object.assign({}, style)) }, props),
|
8404
|
-
product && ((
|
8403
|
+
product && ((_f = product === null || product === void 0 ? void 0 : product.homePage) === null || _f === void 0 ? void 0 : _f.length) > 0 && (React.createElement(Swiper, { height: width, modules: [Pagination, Autoplay], pagination: {
|
8405
8404
|
clickable: true,
|
8406
8405
|
bulletActiveClass: 'swipe-item-active-bullet',
|
8407
8406
|
clickableClass: (swiper === null || swiper === void 0 ? void 0 : swiper.dotsAlign) === 'left'
|
@@ -8409,7 +8408,7 @@ const CommodityDetail$1 = (_a) => {
|
|
8409
8408
|
: 'commondityDetail-swiper-clickable-center'
|
8410
8409
|
}, loop: true, autoplay: {
|
8411
8410
|
delay: (swiper === null || swiper === void 0 ? void 0 : swiper.delay) * 1000
|
8412
|
-
} }, (
|
8411
|
+
} }, (_g = product === null || product === void 0 ? void 0 : product.homePage) === null || _g === void 0 ? void 0 : _g.map((src) => {
|
8413
8412
|
return (React.createElement(SwiperSlide, { key: src },
|
8414
8413
|
React.createElement("div", { style: {
|
8415
8414
|
overflow: 'hidden',
|
@@ -8418,7 +8417,7 @@ const CommodityDetail$1 = (_a) => {
|
|
8418
8417
|
} },
|
8419
8418
|
React.createElement(FormatImage$1, { style: { height: '100%', width: '100%', objectFit: 'cover', display: 'block' }, src: src }))));
|
8420
8419
|
}))),
|
8421
|
-
!((
|
8420
|
+
!((_h = product === null || product === void 0 ? void 0 : product.homePage) === null || _h === void 0 ? void 0 : _h.length) && (React.createElement("div", { className: css.css({
|
8422
8421
|
position: 'relative',
|
8423
8422
|
height: 0,
|
8424
8423
|
width: '100%',
|
@@ -8431,7 +8430,7 @@ const CommodityDetail$1 = (_a) => {
|
|
8431
8430
|
top: 0,
|
8432
8431
|
objectFit: 'cover',
|
8433
8432
|
width: '100%'
|
8434
|
-
}), src: (
|
8433
|
+
}), src: (_j = sxpParameter === null || sxpParameter === void 0 ? void 0 : sxpParameter.bottom_image) !== null && _j !== void 0 ? _j : bottom_image, alt: '' }))),
|
8435
8434
|
React.createElement("div", { className: 'pb-commondity-content' }, renderContent({ isPost }))),
|
8436
8435
|
renderBtn(),
|
8437
8436
|
React.createElement(Modal$1, { visible: showModal, onClose: () => setShowModal(false) },
|
@@ -8791,7 +8790,7 @@ var settingRender$2 = [
|
|
8791
8790
|
];
|
8792
8791
|
|
8793
8792
|
const CommodityDetailDiroNew$1 = (_a) => {
|
8794
|
-
var _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m
|
8793
|
+
var _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
|
8795
8794
|
var { style, isDefault, rec, viewTime, isPost, bottom_image, tipText, swiper, commodityStyles, buttonStyle, index } = _a, props = __rest(_a, ["style", "isDefault", "rec", "viewTime", "isPost", "bottom_image", "tipText", "swiper", "commodityStyles", "buttonStyle", "index"]);
|
8796
8795
|
React.useState(true);
|
8797
8796
|
const { sxpParameter } = useSxpDataSource();
|
@@ -8839,7 +8838,7 @@ const CommodityDetailDiroNew$1 = (_a) => {
|
|
8839
8838
|
return '£102,300.00';
|
8840
8839
|
}
|
8841
8840
|
}, [product === null || product === void 0 ? void 0 : product.price, product === null || product === void 0 ? void 0 : product.currency]);
|
8842
|
-
const width = isPreview ? 375 :
|
8841
|
+
const width = isPreview ? 375 : window.innerWidth;
|
8843
8842
|
const productInfoText = ({ isPost }) => {
|
8844
8843
|
return (React.createElement("div", { hidden: !!product && (!(product === null || product === void 0 ? void 0 : product.info) || (product === null || product === void 0 ? void 0 : product.info) === '') },
|
8845
8844
|
React.createElement(ExpandableText$1, { 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) ||
|
@@ -8848,7 +8847,7 @@ Made in Italy` })));
|
|
8848
8847
|
};
|
8849
8848
|
return (React.createElement("div", { className: 'pb-commondityDiroNew' },
|
8850
8849
|
React.createElement("div", Object.assign({ ref: scrollRef, className: css.css(Object.assign({}, style)) }, props),
|
8851
|
-
product && ((
|
8850
|
+
product && ((_f = product === null || product === void 0 ? void 0 : product.homePage) === null || _f === void 0 ? void 0 : _f.length) > 0 && (React.createElement(Swiper, { height: width, modules: [Pagination, Autoplay], pagination: {
|
8852
8851
|
clickable: true,
|
8853
8852
|
bulletActiveClass: 'commondityDiroNew-swipe-item-active-bullet',
|
8854
8853
|
clickableClass: (swiper === null || swiper === void 0 ? void 0 : swiper.dotsAlign) === 'left'
|
@@ -8856,7 +8855,7 @@ Made in Italy` })));
|
|
8856
8855
|
: 'commondityDiroNew-swiper-clickable-center'
|
8857
8856
|
}, loop: true, autoplay: {
|
8858
8857
|
delay: (swiper === null || swiper === void 0 ? void 0 : swiper.delay) * 1000
|
8859
|
-
} }, (
|
8858
|
+
} }, (_g = product === null || product === void 0 ? void 0 : product.homePage) === null || _g === void 0 ? void 0 : _g.map((src) => {
|
8860
8859
|
return (React.createElement(SwiperSlide, { key: src },
|
8861
8860
|
React.createElement("div", { style: {
|
8862
8861
|
overflow: 'hidden',
|
@@ -8865,7 +8864,7 @@ Made in Italy` })));
|
|
8865
8864
|
} },
|
8866
8865
|
React.createElement(FormatImage$1, { style: { height: '100%', width: '100%', objectFit: 'cover', display: 'block' }, src: src }))));
|
8867
8866
|
}))),
|
8868
|
-
!((
|
8867
|
+
!((_h = product === null || product === void 0 ? void 0 : product.homePage) === null || _h === void 0 ? void 0 : _h.length) && (React.createElement("div", { className: css.css({
|
8869
8868
|
position: 'relative',
|
8870
8869
|
height: 0,
|
8871
8870
|
width: '100%',
|
@@ -8878,16 +8877,16 @@ Made in Italy` })));
|
|
8878
8877
|
top: 0,
|
8879
8878
|
objectFit: 'cover',
|
8880
8879
|
width: '100%'
|
8881
|
-
}), src: (
|
8880
|
+
}), src: (_j = sxpParameter === null || sxpParameter === void 0 ? void 0 : sxpParameter.bottom_image) !== null && _j !== void 0 ? _j : bottom_image, alt: '' }))),
|
8882
8881
|
React.createElement("div", { className: 'pb-commondityDiroNew-content' },
|
8883
8882
|
React.createElement("div", { className: 'pb-commondityDiroNew-content-top' },
|
8884
8883
|
React.createElement("div", { className: 'pb-commondityDiroNew-content-top-left' },
|
8885
|
-
React.createElement("div", { className: 'pb-commondityDiroNew-content-top-left-title', style: commodityStyles === null || commodityStyles === void 0 ? void 0 : commodityStyles.title }, (
|
8884
|
+
React.createElement("div", { className: 'pb-commondityDiroNew-content-top-left-title', style: commodityStyles === null || commodityStyles === void 0 ? void 0 : commodityStyles.title }, (_k = product === null || product === void 0 ? void 0 : product.title) !== null && _k !== void 0 ? _k : 'Large Dior Toujours Bag'),
|
8886
8885
|
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: commodityStyles === null || commodityStyles === void 0 ? void 0 : commodityStyles.collection }, (product === null || product === void 0 ? void 0 : product.collection) || 'Black Macrocannage Calfskin')),
|
8887
8886
|
React.createElement("div", { className: 'pb-commondityDiroNew-content-top-right' },
|
8888
8887
|
React.createElement("div", { className: 'pb-commondityDiroNew-content-top-right-price', hidden: !!product && !(product === null || product === void 0 ? void 0 : product.price), style: commodityStyles === null || commodityStyles === void 0 ? void 0 : commodityStyles.price }, priceText),
|
8889
|
-
React.createElement("div", { className: 'pb-commondityDiroNew-content-top-right-price', hidden: !!product && !(product === null || product === void 0 ? void 0 : product.taxInfo), style: commodityStyles === null || commodityStyles === void 0 ? void 0 : commodityStyles.taxInfo }, (
|
8890
|
-
(!product || (product === null || product === void 0 ? void 0 : product.link)) && (React.createElement("button", { onClick: handleLink, className: 'pb-commondityDiroNew-btn', style: buttonStyle }, (
|
8888
|
+
React.createElement("div", { className: 'pb-commondityDiroNew-content-top-right-price', hidden: !!product && !(product === null || product === void 0 ? void 0 : product.taxInfo), style: commodityStyles === null || commodityStyles === void 0 ? void 0 : commodityStyles.taxInfo }, (_l = product === null || product === void 0 ? void 0 : product.taxInfo) !== null && _l !== void 0 ? _l : '税费'))),
|
8889
|
+
(!product || (product === null || product === void 0 ? void 0 : product.link)) && (React.createElement("button", { onClick: handleLink, className: 'pb-commondityDiroNew-btn', style: buttonStyle }, (_m = cta === null || cta === void 0 ? void 0 : cta.enTitle) !== null && _m !== void 0 ? _m : 'Shop now')),
|
8891
8890
|
productInfoText({ isPost }))),
|
8892
8891
|
React.createElement(Modal$1, { visible: showModal, onClose: () => setShowModal(false) }, productInfoText({ isPost: false }))));
|
8893
8892
|
};
|
@@ -11795,7 +11794,7 @@ const WaterFall = (props) => {
|
|
11795
11794
|
}
|
11796
11795
|
bffEventReport === null || bffEventReport === void 0 ? void 0 : bffEventReport({
|
11797
11796
|
eventInfo: {
|
11798
|
-
|
11797
|
+
relatedContentId: (_d = rec === null || rec === void 0 ? void 0 : rec.video) === null || _d === void 0 ? void 0 : _d.itemId,
|
11799
11798
|
position: cacheActiveIndex + '',
|
11800
11799
|
contentTags: JSON.stringify((_e = rec === null || rec === void 0 ? void 0 : rec.video) === null || _e === void 0 ? void 0 : _e.tags),
|
11801
11800
|
traceInfo: (_f = rec === null || rec === void 0 ? void 0 : rec.video) === null || _f === void 0 ? void 0 : _f.traceInfo,
|
@@ -11928,14 +11927,14 @@ var _materials_ = /*#__PURE__*/Object.freeze({
|
|
11928
11927
|
Prompt: Prompt
|
11929
11928
|
});
|
11930
11929
|
|
11931
|
-
const defaultUnLikeIconPath
|
11932
|
-
const defaultLikeIconPath
|
11930
|
+
const defaultUnLikeIconPath = '/pb_static/f71266d2c64446c5ae6a5a7f5489cc0a.png';
|
11931
|
+
const defaultLikeIconPath = '/pb_static/f07900fe3f0f4ae188ea1611d4801a44.png';
|
11933
11932
|
const LikeButton = (_a) => {
|
11934
11933
|
var { active, activeIcon, unActicveIcon, recData, position } = _a, props = __rest(_a, ["active", "activeIcon", "unActicveIcon", "recData", "position"]);
|
11935
11934
|
const { mutateLike, mutateUnlike, bffEventReport } = useSxpDataSource();
|
11936
11935
|
const [state, setState] = React.useState(active);
|
11937
|
-
const likeIcon = useIconLink(defaultLikeIconPath
|
11938
|
-
const unlikeIcon = useIconLink(defaultUnLikeIconPath
|
11936
|
+
const likeIcon = useIconLink(defaultLikeIconPath);
|
11937
|
+
const unlikeIcon = useIconLink(defaultUnLikeIconPath);
|
11939
11938
|
const handleClick = lodash.debounce(() => __awaiter(void 0, void 0, void 0, function* () {
|
11940
11939
|
var _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w;
|
11941
11940
|
if (state) {
|
@@ -11991,7 +11990,7 @@ var SXP_EVENT_TYPE;
|
|
11991
11990
|
SXP_EVENT_TYPE["PAGE_DID_HIDE"] = "pageDidHide";
|
11992
11991
|
})(SXP_EVENT_TYPE || (SXP_EVENT_TYPE = {}));
|
11993
11992
|
|
11994
|
-
const VideoWidget
|
11993
|
+
const VideoWidget = ({ rec, index, height, data, muted, activeIndex, videoPostConfig }) => {
|
11995
11994
|
const [isPauseVideo, setIsPauseVideo] = React.useState(false);
|
11996
11995
|
const videoRef = React.useRef(null);
|
11997
11996
|
const { bffEventReport, sxpParameter, waterFallData, openHashtag } = useSxpDataSource();
|
@@ -12001,12 +12000,13 @@ const VideoWidget$2 = ({ rec, index, height, data, muted, activeIndex, videoPost
|
|
12001
12000
|
const { isActive } = useSwiperSlide();
|
12002
12001
|
const canvasRef = React.useRef(null);
|
12003
12002
|
const [firstFrameSrc, setFirstFrameSrc] = React.useState('');
|
12003
|
+
const videoId = `pb-video-${index}`;
|
12004
12004
|
React.useEffect(() => {
|
12005
12005
|
if (!videoRef.current)
|
12006
12006
|
return;
|
12007
|
-
videoRef.current.muted
|
12007
|
+
videoRef.current.muted(muted);
|
12008
12008
|
}, [muted]);
|
12009
|
-
const
|
12009
|
+
const handleEnded = React.useCallback(() => {
|
12010
12010
|
var _a;
|
12011
12011
|
(_a = videoRef.current) === null || _a === void 0 ? void 0 : _a.play();
|
12012
12012
|
}, []);
|
@@ -12015,10 +12015,10 @@ const VideoWidget$2 = ({ rec, index, height, data, muted, activeIndex, videoPost
|
|
12015
12015
|
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o;
|
12016
12016
|
setIsPauseVideo(false);
|
12017
12017
|
const item = data[index];
|
12018
|
-
if (item && ((_a = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _a === void 0 ? void 0 : _a.duration)) {
|
12019
|
-
videoStartTime.current = ((_b = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _b === void 0 ? void 0 : _b.currentTime) || 0;
|
12020
|
-
const videoDuration = ((_d = (_c = videoRef.current) === null || _c === void 0 ? void 0 : _c.duration) !== null && _d !== void 0 ? _d : 0).toFixed(2);
|
12021
|
-
const videoCurrentTime = ((_f = (_e = videoRef.current) === null || _e === void 0 ? void 0 : _e.currentTime) !== null && _f !== void 0 ? _f : 0).toFixed(2);
|
12018
|
+
if (item && ((_a = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _a === void 0 ? void 0 : _a.duration())) {
|
12019
|
+
videoStartTime.current = ((_b = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _b === void 0 ? void 0 : _b.currentTime()) || 0;
|
12020
|
+
const videoDuration = ((_d = (_c = videoRef.current) === null || _c === void 0 ? void 0 : _c.duration()) !== null && _d !== void 0 ? _d : 0).toFixed(2);
|
12021
|
+
const videoCurrentTime = ((_f = (_e = videoRef.current) === null || _e === void 0 ? void 0 : _e.currentTime()) !== null && _f !== void 0 ? _f : 0).toFixed(2);
|
12022
12022
|
const playType = isFirstPlay ? '0' : '1';
|
12023
12023
|
bffEventReport === null || bffEventReport === void 0 ? void 0 : bffEventReport({
|
12024
12024
|
eventInfo: {
|
@@ -12038,14 +12038,14 @@ const VideoWidget$2 = ({ rec, index, height, data, muted, activeIndex, videoPost
|
|
12038
12038
|
setIsFirstPlay(false);
|
12039
12039
|
}
|
12040
12040
|
}, [bffEventReport, data, index, isFirstPlay]);
|
12041
|
-
const
|
12041
|
+
const handleCanplay = React.useCallback(() => {
|
12042
12042
|
setIsLoadFinish(true);
|
12043
12043
|
}, []);
|
12044
12044
|
const handleClickVideo = React.useCallback((type) => () => {
|
12045
12045
|
var _a, _b, _c, _d, _e;
|
12046
12046
|
if (!isLoadFinish)
|
12047
12047
|
return;
|
12048
|
-
const isPause = (_a = videoRef.current) === null || _a === void 0 ? void 0 : _a.paused;
|
12048
|
+
const isPause = (_a = videoRef.current) === null || _a === void 0 ? void 0 : _a.paused();
|
12049
12049
|
switch (type) {
|
12050
12050
|
case 'start':
|
12051
12051
|
if (!isPause)
|
@@ -12070,13 +12070,13 @@ const VideoWidget$2 = ({ rec, index, height, data, muted, activeIndex, videoPost
|
|
12070
12070
|
break;
|
12071
12071
|
}
|
12072
12072
|
}, [isLoadFinish]);
|
12073
|
-
const
|
12073
|
+
const handlePause = React.useCallback(() => {
|
12074
12074
|
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o;
|
12075
12075
|
const item = data[index];
|
12076
|
-
const videoDuration = ((_b = (_a = videoRef.current) === null || _a === void 0 ? void 0 : _a.duration) !== null && _b !== void 0 ? _b : 0).toFixed(2);
|
12077
|
-
const videoCurrentTime = ((_d = (_c = videoRef.current) === null || _c === void 0 ? void 0 : _c.currentTime) !== null && _d !== void 0 ? _d : 0).toFixed(2);
|
12078
|
-
if ((_e = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _e === void 0 ? void 0 : _e.duration) {
|
12079
|
-
const playDuration = (((_f = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _f === void 0 ? void 0 : _f.currentTime) - videoStartTime.current).toFixed(2);
|
12076
|
+
const videoDuration = ((_b = (_a = videoRef.current) === null || _a === void 0 ? void 0 : _a.duration()) !== null && _b !== void 0 ? _b : 0).toFixed(2);
|
12077
|
+
const videoCurrentTime = ((_d = (_c = videoRef.current) === null || _c === void 0 ? void 0 : _c.currentTime()) !== null && _d !== void 0 ? _d : 0).toFixed(2);
|
12078
|
+
if ((_e = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _e === void 0 ? void 0 : _e.duration()) {
|
12079
|
+
const playDuration = (((_f = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _f === void 0 ? void 0 : _f.currentTime()) - videoStartTime.current).toFixed(2);
|
12080
12080
|
bffEventReport === null || bffEventReport === void 0 ? void 0 : bffEventReport({
|
12081
12081
|
eventInfo: {
|
12082
12082
|
eventSubject: 'playOverVideo',
|
@@ -12108,9 +12108,10 @@ const VideoWidget$2 = ({ rec, index, height, data, muted, activeIndex, videoPost
|
|
12108
12108
|
return ((_a = rec === null || rec === void 0 ? void 0 : rec.video) === null || _a === void 0 ? void 0 : _a.cover) || firstFrameSrc;
|
12109
12109
|
}, [firstFrameSrc, rec]);
|
12110
12110
|
const handLoadeddata = React.useCallback(() => {
|
12111
|
-
|
12111
|
+
const videoDomRef = document.getElementById(`${videoId}_html5_api`);
|
12112
|
+
if (!canvasRef || !videoDomRef || !canvasRef.current)
|
12112
12113
|
return;
|
12113
|
-
const video =
|
12114
|
+
const video = videoDomRef;
|
12114
12115
|
const canvas = canvasRef === null || canvasRef === void 0 ? void 0 : canvasRef.current;
|
12115
12116
|
const ctx = canvas.getContext('2d');
|
12116
12117
|
const targetWidth = window === null || window === void 0 ? void 0 : window.innerWidth;
|
@@ -12121,43 +12122,43 @@ const VideoWidget$2 = ({ rec, index, height, data, muted, activeIndex, videoPost
|
|
12121
12122
|
setFirstFrameSrc(canvas.toDataURL());
|
12122
12123
|
}, []);
|
12123
12124
|
React.useEffect(() => {
|
12124
|
-
var _a, _b, _c, _d;
|
12125
|
-
if (!videoRef.current)
|
12126
|
-
return;
|
12125
|
+
var _a, _b, _c, _d, _e, _f;
|
12127
12126
|
setIsPauseVideo(false);
|
12128
|
-
|
12129
|
-
|
12130
|
-
|
12131
|
-
|
12132
|
-
|
12133
|
-
|
12134
|
-
|
12135
|
-
|
12136
|
-
|
12137
|
-
|
12138
|
-
|
12139
|
-
|
12140
|
-
|
12141
|
-
|
12142
|
-
|
12143
|
-
|
12144
|
-
|
12145
|
-
// }
|
12146
|
-
videoRef.current.setAttribute('x5-playsinline', 'true');
|
12147
|
-
videoRef.current.setAttribute('webkit-playsinline', 'true');
|
12127
|
+
const videoSrc = rec.video.url;
|
12128
|
+
if (videoSrc && typeof TCPlayer === 'function') {
|
12129
|
+
videoRef.current = TCPlayer(videoId, {
|
12130
|
+
sources: [
|
12131
|
+
{
|
12132
|
+
src: videoSrc // 播放地址
|
12133
|
+
}
|
12134
|
+
],
|
12135
|
+
licenseUrl: 'https://license.vod2.myqcloud.com/license/v2/1325816236_1/v_cube.license', // license 地址,参考准备工作部分,在视立方控制台申请 license 后可获得 licenseUrl
|
12136
|
+
controls: false,
|
12137
|
+
autoplay: false,
|
12138
|
+
loop: false,
|
12139
|
+
muted: true,
|
12140
|
+
preload: 'auto',
|
12141
|
+
posterImage: false,
|
12142
|
+
bigPlayButton: true
|
12143
|
+
});
|
12148
12144
|
}
|
12149
|
-
(_a = videoRef.current) === null || _a === void 0 ? void 0 : _a.
|
12150
|
-
(_b = videoRef.current) === null || _b === void 0 ? void 0 : _b.
|
12151
|
-
(_c = videoRef.current) === null || _c === void 0 ? void 0 : _c.
|
12152
|
-
(_d = videoRef.current) === null || _d === void 0 ? void 0 : _d.
|
12145
|
+
(_a = videoRef.current) === null || _a === void 0 ? void 0 : _a.on('loadedmetadata', handleCanplay);
|
12146
|
+
(_b = videoRef.current) === null || _b === void 0 ? void 0 : _b.on('canplay', handleCanplay);
|
12147
|
+
(_c = videoRef.current) === null || _c === void 0 ? void 0 : _c.on('playing', handlePlaying);
|
12148
|
+
(_d = videoRef.current) === null || _d === void 0 ? void 0 : _d.on('loadeddata', handLoadeddata);
|
12149
|
+
(_e = videoRef.current) === null || _e === void 0 ? void 0 : _e.on('pause', handlePause);
|
12150
|
+
(_f = videoRef.current) === null || _f === void 0 ? void 0 : _f.on('ended', handleEnded);
|
12153
12151
|
return () => {
|
12154
|
-
var _a, _b, _c, _d;
|
12155
|
-
(_a = videoRef.current) === null || _a === void 0 ? void 0 : _a.
|
12156
|
-
(_b = videoRef.current) === null || _b === void 0 ? void 0 : _b.
|
12157
|
-
(_c = videoRef.current) === null || _c === void 0 ? void 0 : _c.
|
12158
|
-
(_d = videoRef.current) === null || _d === void 0 ? void 0 : _d.
|
12152
|
+
var _a, _b, _c, _d, _e, _f;
|
12153
|
+
(_a = videoRef.current) === null || _a === void 0 ? void 0 : _a.off('loadedmetadata', handleCanplay);
|
12154
|
+
(_b = videoRef.current) === null || _b === void 0 ? void 0 : _b.off('canplay', handleCanplay);
|
12155
|
+
(_c = videoRef.current) === null || _c === void 0 ? void 0 : _c.off('playing', handlePlaying);
|
12156
|
+
(_d = videoRef.current) === null || _d === void 0 ? void 0 : _d.off('loadeddata', handLoadeddata);
|
12157
|
+
(_e = videoRef.current) === null || _e === void 0 ? void 0 : _e.off('pause', handlePause);
|
12158
|
+
(_f = videoRef.current) === null || _f === void 0 ? void 0 : _f.off('ended', handleEnded);
|
12159
|
+
videoRef.current.dispose();
|
12159
12160
|
};
|
12160
|
-
}, [
|
12161
|
+
}, []);
|
12161
12162
|
React.useEffect(() => {
|
12162
12163
|
var _a;
|
12163
12164
|
if (!(videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) || !isLoadFinish)
|
@@ -12243,23 +12244,31 @@ const VideoWidget$2 = ({ rec, index, height, data, muted, activeIndex, videoPost
|
|
12243
12244
|
right: 0
|
12244
12245
|
} },
|
12245
12246
|
React.createElement("div", { style: { position: 'relative', width: '100%', height: '100%' } },
|
12246
|
-
React.createElement("video", { id: `pb-video-${index}`,
|
12247
|
+
React.createElement("video", { id: `pb-video-${index}`, playsInline: true, crossOrigin: 'anonymous', style: {
|
12247
12248
|
width: '100%',
|
12248
12249
|
height: '100%',
|
12249
|
-
objectFit: 'contain'
|
12250
|
+
objectFit: 'contain',
|
12251
|
+
backgroundColor: 'transparent',
|
12252
|
+
pointerEvents: 'none'
|
12250
12253
|
} }),
|
12251
12254
|
React.createElement("img", { hidden: !isPauseVideo, className: 'clc-pb-video-pause', src: PAUSE_ICON }))),
|
12252
|
-
renderPoster)) : (React.createElement("div", { className: 'video-container', key: rec.video.itemId,
|
12255
|
+
renderPoster)) : (React.createElement("div", { className: 'video-container', key: rec.video.itemId, style: {
|
12253
12256
|
position: 'relative',
|
12254
12257
|
width: '100%',
|
12255
12258
|
height,
|
12256
12259
|
overflow: 'hidden'
|
12257
|
-
} },
|
12258
|
-
React.createElement("video", { id: `pb-video-${index}`,
|
12260
|
+
}, onClick: handleClickVideo() },
|
12261
|
+
React.createElement("video", { id: `pb-video-${index}`, playsInline: true, crossOrigin: 'anonymous', style: {
|
12262
|
+
backgroundColor: 'transparent',
|
12263
|
+
width: '100%',
|
12264
|
+
height: '100%',
|
12265
|
+
objectFit: 'cover',
|
12266
|
+
pointerEvents: 'none'
|
12267
|
+
} }),
|
12259
12268
|
renderPoster,
|
12260
12269
|
React.createElement("img", { hidden: !isPauseVideo, className: 'clc-pb-video-pause', src: PAUSE_ICON })))));
|
12261
12270
|
};
|
12262
|
-
var VideoWidget$
|
12271
|
+
var VideoWidget$1 = React.memo(VideoWidget);
|
12263
12272
|
|
12264
12273
|
/*
|
12265
12274
|
* @Author: binruan@chatlabs.com
|
@@ -12358,7 +12367,7 @@ const Picture = (props) => {
|
|
12358
12367
|
* @LastEditTime: 2024-04-18 19:56:22
|
12359
12368
|
* @FilePath: \pb-sxp-ui\src\core\components\SxpPageRender\PictureGroup\index.tsx
|
12360
12369
|
*/
|
12361
|
-
const PictureGroup
|
12370
|
+
const PictureGroup = ({ imgUrls, width, height, rec, index, onReportViewImageEnd, onViewImageStartEvent, imgUrlsPostConfig }) => {
|
12362
12371
|
var _a;
|
12363
12372
|
const ref = React.useRef();
|
12364
12373
|
const { isActive } = useSwiperSlide();
|
@@ -12387,7 +12396,7 @@ const PictureGroup$2 = ({ imgUrls, width, height, rec, index, onReportViewImageE
|
|
12387
12396
|
React.createElement(Picture, { src: url, height: height, imgUrlsPostConfig: imgUrlsPostConfig })));
|
12388
12397
|
})));
|
12389
12398
|
};
|
12390
|
-
var PictureGroup$
|
12399
|
+
var PictureGroup$1 = React.memo(PictureGroup);
|
12391
12400
|
|
12392
12401
|
/*
|
12393
12402
|
* @Author: binruan@chatlabs.com
|
@@ -12566,7 +12575,7 @@ const Nudge = ({ nudge }) => {
|
|
12566
12575
|
* @Author: binruan@chatlabs.com
|
12567
12576
|
* @Date: 2024-01-15 19:03:09
|
12568
12577
|
* @LastEditors: binruan@chatlabs.com
|
12569
|
-
* @LastEditTime: 2024-04-
|
12578
|
+
* @LastEditTime: 2024-04-18 19:27:03
|
12570
12579
|
* @FilePath: \pb-sxp-ui\src\core\components\SxpPageRender\index.tsx
|
12571
12580
|
*
|
12572
12581
|
*/
|
@@ -12648,8 +12657,8 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight = window.inner
|
|
12648
12657
|
// sessionDuration: Math.floor(((new Date() as any) - curTime) / 1000) + '',
|
12649
12658
|
// eventSubject: 'sessionCompleted',
|
12650
12659
|
// eventDescription: 'Session completed',
|
12651
|
-
//
|
12652
|
-
//
|
12660
|
+
// relatedContentId: item?.video?.itemId,
|
12661
|
+
// relatedProductId: item?.product?.itemId,
|
12653
12662
|
// position: item?.position
|
12654
12663
|
// }
|
12655
12664
|
// });
|
@@ -12693,12 +12702,12 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight = window.inner
|
|
12693
12702
|
sessionDuration: Math.floor((new Date() - curTime.current) / 1000) + '',
|
12694
12703
|
eventSubject: 'sessionCompleted',
|
12695
12704
|
eventDescription: 'Session completed',
|
12696
|
-
|
12697
|
-
|
12705
|
+
relatedContentId: (_l = item === null || item === void 0 ? void 0 : item.video) === null || _l === void 0 ? void 0 : _l.itemId,
|
12706
|
+
relatedProductId: (_m = item === null || item === void 0 ? void 0 : item.product) === null || _m === void 0 ? void 0 : _m.itemId,
|
12698
12707
|
position: activeIndex + '',
|
12699
12708
|
fromKName,
|
12700
12709
|
fromKPage: location === null || location === void 0 ? void 0 : location.href,
|
12701
|
-
|
12710
|
+
relatedCtatId: (_q = (_p = (_o = item.video) === null || _o === void 0 ? void 0 : _o.bindCta) === null || _p === void 0 ? void 0 : _p.itemId) !== null && _q !== void 0 ? _q : ''
|
12702
12711
|
}
|
12703
12712
|
});
|
12704
12713
|
}
|
@@ -12727,10 +12736,10 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight = window.inner
|
|
12727
12736
|
const renderContent = React.useCallback((rec, index) => {
|
12728
12737
|
var _a, _b, _c, _d;
|
12729
12738
|
if ((_a = rec.video) === null || _a === void 0 ? void 0 : _a.url) {
|
12730
|
-
return (React.createElement(VideoWidget$
|
12739
|
+
return (React.createElement(VideoWidget$1, { rec: rec, index: index, muted: isMuted, data: data, height: height, activeIndex: activeIndex, videoPostConfig: globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.videoPost }));
|
12731
12740
|
}
|
12732
12741
|
if ((_b = rec.video) === null || _b === void 0 ? void 0 : _b.imgUrls) {
|
12733
|
-
return (React.createElement(PictureGroup$
|
12742
|
+
return (React.createElement(PictureGroup$1, { key: rec.video.itemId, imgUrls: rec.video.imgUrls, width: containerWidth, height: height, rec: rec, index: index, onReportViewImageEnd: handleReportViewImageEnd, onViewImageStartEvent: handleViewImageStartEvent, imgUrlsPostConfig: globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.imgUrlsPost }));
|
12734
12743
|
}
|
12735
12744
|
if (rec.product && Array.isArray(globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.productPost) && ((_c = globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.productPost) === null || _c === void 0 ? void 0 : _c.length) > 0) {
|
12736
12745
|
return (_d = globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.productPost) === null || _d === void 0 ? void 0 : _d.map((value, idx) => {
|
@@ -12832,8 +12841,8 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight = window.inner
|
|
12832
12841
|
eventInfo: {
|
12833
12842
|
eventSubject: 'scrollDown',
|
12834
12843
|
eventDescription: 'User scroll down',
|
12835
|
-
|
12836
|
-
|
12844
|
+
relatedContentId: (_b = (_a = item.video) === null || _a === void 0 ? void 0 : _a.itemId) !== null && _b !== void 0 ? _b : '',
|
12845
|
+
relatedProductId: (_d = (_c = item.product) === null || _c === void 0 ? void 0 : _c.itemId) !== null && _d !== void 0 ? _d : '',
|
12837
12846
|
requestId: null
|
12838
12847
|
}
|
12839
12848
|
});
|
@@ -12845,8 +12854,8 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight = window.inner
|
|
12845
12854
|
eventInfo: {
|
12846
12855
|
eventSubject: 'scrollUp',
|
12847
12856
|
eventDescription: 'User scroll up',
|
12848
|
-
|
12849
|
-
|
12857
|
+
relatedContentId: (_f = (_e = item.video) === null || _e === void 0 ? void 0 : _e.itemId) !== null && _f !== void 0 ? _f : '',
|
12858
|
+
relatedProductId: (_h = (_g = item.product) === null || _g === void 0 ? void 0 : _g.itemId) !== null && _h !== void 0 ? _h : '',
|
12850
12859
|
requestId: null
|
12851
12860
|
}
|
12852
12861
|
});
|
@@ -12969,351 +12978,6 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight = window.inner
|
|
12969
12978
|
React.createElement(WaterFall$1, Object.assign({}, (_g = (_f = (_e = globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.hashTag) === null || _e === void 0 ? void 0 : _e[0]) === null || _f === void 0 ? void 0 : _f.item) === null || _g === void 0 ? void 0 : _g.props))));
|
12970
12979
|
};
|
12971
12980
|
|
12972
|
-
const PictureGroup = ({ imgUrls, width, height, imgUrlsPostConfig, rec, index }) => {
|
12973
|
-
return (React.createElement(Swiper, { defaultValue: 0, direction: 'horizontal', modules: [Pagination, Autoplay], pagination: { clickable: true, bulletActiveClass: 'swipe-item-active-bullet' }, height: height, style: { width }, loop: true, autoplay: false }, imgUrls === null || imgUrls === void 0 ? void 0 : imgUrls.map((url) => {
|
12974
|
-
return (React.createElement(SwiperSlide, { key: url },
|
12975
|
-
React.createElement(Picture, { src: url, height: height, imgUrlsPostConfig: imgUrlsPostConfig })));
|
12976
|
-
})));
|
12977
|
-
};
|
12978
|
-
var PictureGroup$1 = React.memo(PictureGroup);
|
12979
|
-
|
12980
|
-
const VideoWidget = ({ rec, index, height, data, muted, activeIndex, videoPostConfig, width }) => {
|
12981
|
-
const [isPauseVideo, setIsPauseVideo] = React.useState(false);
|
12982
|
-
const videoRef = React.useRef(null);
|
12983
|
-
const { bffEventReport, sxpParameter, waterFallData, openHashtag } = useSxpDataSource();
|
12984
|
-
const videoStartTime = React.useRef(0);
|
12985
|
-
const [isLoadFinish, setIsLoadFinish] = React.useState(false);
|
12986
|
-
const [isFirstPlay, setIsFirstPlay] = React.useState(true);
|
12987
|
-
const canvasRef = React.useRef(null);
|
12988
|
-
const [firstFrameSrc, setFirstFrameSrc] = React.useState('');
|
12989
|
-
React.useEffect(() => {
|
12990
|
-
if (!videoRef.current)
|
12991
|
-
return;
|
12992
|
-
videoRef.current.muted = muted;
|
12993
|
-
}, [muted]);
|
12994
|
-
const handleVideoStart = React.useCallback(() => {
|
12995
|
-
var _a;
|
12996
|
-
(_a = videoRef.current) === null || _a === void 0 ? void 0 : _a.play();
|
12997
|
-
}, []);
|
12998
|
-
const PAUSE_ICON = useIconLink('/pb_static/06f28a2025c74c1cb49be6767316d827.png');
|
12999
|
-
const handlePlaying = React.useCallback(() => {
|
13000
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o;
|
13001
|
-
setIsPauseVideo(false);
|
13002
|
-
const item = data[index];
|
13003
|
-
if (item && ((_a = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _a === void 0 ? void 0 : _a.duration)) {
|
13004
|
-
videoStartTime.current = ((_b = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _b === void 0 ? void 0 : _b.currentTime) || 0;
|
13005
|
-
const videoDuration = ((_d = (_c = videoRef.current) === null || _c === void 0 ? void 0 : _c.duration) !== null && _d !== void 0 ? _d : 0).toFixed(2);
|
13006
|
-
const videoCurrentTime = ((_f = (_e = videoRef.current) === null || _e === void 0 ? void 0 : _e.currentTime) !== null && _f !== void 0 ? _f : 0).toFixed(2);
|
13007
|
-
const playType = isFirstPlay ? '0' : '1';
|
13008
|
-
bffEventReport === null || bffEventReport === void 0 ? void 0 : bffEventReport({
|
13009
|
-
eventInfo: {
|
13010
|
-
eventSubject: 'playVideo',
|
13011
|
-
eventDescription: 'User played the video',
|
13012
|
-
contentId: (_h = (_g = item.video) === null || _g === void 0 ? void 0 : _g.itemId) !== null && _h !== void 0 ? _h : '',
|
13013
|
-
contentName: (_k = (_j = item.video) === null || _j === void 0 ? void 0 : _j.title) !== null && _k !== void 0 ? _k : '',
|
13014
|
-
playType,
|
13015
|
-
startTime: videoCurrentTime,
|
13016
|
-
videoDuration,
|
13017
|
-
contentTags: JSON.stringify((_m = (_l = item.video) === null || _l === void 0 ? void 0 : _l.tags) !== null && _m !== void 0 ? _m : []),
|
13018
|
-
position: index + '',
|
13019
|
-
contentFormat: 'video',
|
13020
|
-
traceInfo: (_o = item.video) === null || _o === void 0 ? void 0 : _o.traceInfo
|
13021
|
-
}
|
13022
|
-
});
|
13023
|
-
setIsFirstPlay(false);
|
13024
|
-
}
|
13025
|
-
}, [bffEventReport, data, index, isFirstPlay]);
|
13026
|
-
const handleLoadedMetadata = React.useCallback(() => {
|
13027
|
-
setIsLoadFinish(true);
|
13028
|
-
}, []);
|
13029
|
-
const handleClickVideo = React.useCallback((type) => () => {
|
13030
|
-
var _a, _b, _c, _d, _e;
|
13031
|
-
if (!isLoadFinish)
|
13032
|
-
return;
|
13033
|
-
const isPause = (_a = videoRef.current) === null || _a === void 0 ? void 0 : _a.paused;
|
13034
|
-
switch (type) {
|
13035
|
-
case 'start':
|
13036
|
-
if (!isPause)
|
13037
|
-
return;
|
13038
|
-
(_b = videoRef.current) === null || _b === void 0 ? void 0 : _b.play();
|
13039
|
-
setIsPauseVideo(false);
|
13040
|
-
break;
|
13041
|
-
case 'pause':
|
13042
|
-
if (isPause)
|
13043
|
-
return;
|
13044
|
-
(_c = videoRef.current) === null || _c === void 0 ? void 0 : _c.pause();
|
13045
|
-
setIsPauseVideo(true);
|
13046
|
-
break;
|
13047
|
-
default:
|
13048
|
-
if (isPause) {
|
13049
|
-
(_d = videoRef.current) === null || _d === void 0 ? void 0 : _d.play();
|
13050
|
-
}
|
13051
|
-
else {
|
13052
|
-
(_e = videoRef.current) === null || _e === void 0 ? void 0 : _e.pause();
|
13053
|
-
}
|
13054
|
-
setIsPauseVideo(!isPause);
|
13055
|
-
break;
|
13056
|
-
}
|
13057
|
-
}, [isLoadFinish]);
|
13058
|
-
const onPause = React.useCallback(() => {
|
13059
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o;
|
13060
|
-
const item = data[index];
|
13061
|
-
const videoDuration = ((_b = (_a = videoRef.current) === null || _a === void 0 ? void 0 : _a.duration) !== null && _b !== void 0 ? _b : 0).toFixed(2);
|
13062
|
-
const videoCurrentTime = ((_d = (_c = videoRef.current) === null || _c === void 0 ? void 0 : _c.currentTime) !== null && _d !== void 0 ? _d : 0).toFixed(2);
|
13063
|
-
if ((_e = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _e === void 0 ? void 0 : _e.duration) {
|
13064
|
-
const playDuration = (((_f = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _f === void 0 ? void 0 : _f.currentTime) - videoStartTime.current).toFixed(2);
|
13065
|
-
bffEventReport === null || bffEventReport === void 0 ? void 0 : bffEventReport({
|
13066
|
-
eventInfo: {
|
13067
|
-
eventSubject: 'playOverVideo',
|
13068
|
-
eventDescription: 'User finished playing the video',
|
13069
|
-
contentId: (_h = (_g = item.video) === null || _g === void 0 ? void 0 : _g.itemId) !== null && _h !== void 0 ? _h : '',
|
13070
|
-
contentName: (_k = (_j = item.video) === null || _j === void 0 ? void 0 : _j.title) !== null && _k !== void 0 ? _k : '',
|
13071
|
-
endTime: videoCurrentTime,
|
13072
|
-
videoDuration,
|
13073
|
-
playDuration,
|
13074
|
-
contentTags: JSON.stringify((_m = (_l = item.video) === null || _l === void 0 ? void 0 : _l.tags) !== null && _m !== void 0 ? _m : []),
|
13075
|
-
position: index + '',
|
13076
|
-
contentFormat: 'video',
|
13077
|
-
traceInfo: (_o = item.video) === null || _o === void 0 ? void 0 : _o.traceInfo
|
13078
|
-
}
|
13079
|
-
});
|
13080
|
-
}
|
13081
|
-
}, [data, index, bffEventReport]);
|
13082
|
-
const blur = React.useMemo(() => {
|
13083
|
-
return (videoPostConfig === null || videoPostConfig === void 0 ? void 0 : videoPostConfig.mode) === '2';
|
13084
|
-
}, [videoPostConfig]);
|
13085
|
-
const translateY = React.useMemo(() => {
|
13086
|
-
var _a;
|
13087
|
-
return (videoPostConfig === null || videoPostConfig === void 0 ? void 0 : videoPostConfig.mode) === '2'
|
13088
|
-
? `translateY(-${50 + ((_a = videoPostConfig === null || videoPostConfig === void 0 ? void 0 : videoPostConfig.offsetTop) !== null && _a !== void 0 ? _a : 0)}%) translate3d(0px, 0px, 0px)`
|
13089
|
-
: 'translateY(-50%)';
|
13090
|
-
}, [videoPostConfig]);
|
13091
|
-
const blurBgSrc = React.useMemo(() => {
|
13092
|
-
var _a;
|
13093
|
-
return ((_a = rec === null || rec === void 0 ? void 0 : rec.video) === null || _a === void 0 ? void 0 : _a.cover) || firstFrameSrc;
|
13094
|
-
}, [firstFrameSrc, rec]);
|
13095
|
-
const handLoadeddata = React.useCallback(() => {
|
13096
|
-
if (!canvasRef || !videoRef || !videoRef.current || !canvasRef.current)
|
13097
|
-
return;
|
13098
|
-
const video = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current;
|
13099
|
-
const canvas = canvasRef === null || canvasRef === void 0 ? void 0 : canvasRef.current;
|
13100
|
-
const ctx = canvas.getContext('2d');
|
13101
|
-
const targetWidth = window === null || window === void 0 ? void 0 : window.innerWidth;
|
13102
|
-
const targetHeight = window === null || window === void 0 ? void 0 : window.innerHeight;
|
13103
|
-
canvas.height = targetHeight;
|
13104
|
-
canvas.width = targetWidth;
|
13105
|
-
ctx === null || ctx === void 0 ? void 0 : ctx.drawImage(video, 0, 0, canvas.width, canvas.height);
|
13106
|
-
setFirstFrameSrc(canvas.toDataURL());
|
13107
|
-
}, []);
|
13108
|
-
React.useEffect(() => {
|
13109
|
-
var _a, _b, _c, _d;
|
13110
|
-
if (!videoRef.current)
|
13111
|
-
return;
|
13112
|
-
setIsPauseVideo(false);
|
13113
|
-
if (!videoRef.current.src) {
|
13114
|
-
const videoSrc = rec.video.url;
|
13115
|
-
if (videoSrc.includes('.m3u8')) {
|
13116
|
-
if (Hls.isSupported()) {
|
13117
|
-
const hls = new Hls();
|
13118
|
-
hls.loadSource(videoSrc);
|
13119
|
-
hls.attachMedia(videoRef.current);
|
13120
|
-
}
|
13121
|
-
else if (videoRef.current.canPlayType('application/vnd.apple.mpegurl')) {
|
13122
|
-
videoRef.current.src = videoSrc;
|
13123
|
-
}
|
13124
|
-
else {
|
13125
|
-
videoRef.current.src = videoSrc;
|
13126
|
-
}
|
13127
|
-
}
|
13128
|
-
else {
|
13129
|
-
videoRef.current.src = videoSrc;
|
13130
|
-
}
|
13131
|
-
videoRef.current.setAttribute('x5-playsinline', 'true');
|
13132
|
-
videoRef.current.setAttribute('webkit-playsinline', 'true');
|
13133
|
-
}
|
13134
|
-
(_a = videoRef.current) === null || _a === void 0 ? void 0 : _a.addEventListener('loadedmetadata', handleLoadedMetadata);
|
13135
|
-
(_b = videoRef.current) === null || _b === void 0 ? void 0 : _b.addEventListener('canplay', handleLoadedMetadata);
|
13136
|
-
(_c = videoRef.current) === null || _c === void 0 ? void 0 : _c.addEventListener('playing', handlePlaying);
|
13137
|
-
(_d = videoRef.current) === null || _d === void 0 ? void 0 : _d.addEventListener('loadeddata', handLoadeddata);
|
13138
|
-
return () => {
|
13139
|
-
var _a, _b, _c, _d;
|
13140
|
-
(_a = videoRef.current) === null || _a === void 0 ? void 0 : _a.removeEventListener('loadedmetadata', handleLoadedMetadata);
|
13141
|
-
(_b = videoRef.current) === null || _b === void 0 ? void 0 : _b.removeEventListener('canplay', handleLoadedMetadata);
|
13142
|
-
(_c = videoRef.current) === null || _c === void 0 ? void 0 : _c.removeEventListener('playing', handlePlaying);
|
13143
|
-
(_d = videoRef.current) === null || _d === void 0 ? void 0 : _d.removeEventListener('loadeddata', handLoadeddata);
|
13144
|
-
};
|
13145
|
-
}, [handleLoadedMetadata, handlePlaying, rec.video, handLoadeddata]);
|
13146
|
-
const renderPoster = React.useMemo(() => {
|
13147
|
-
if (!(sxpParameter === null || sxpParameter === void 0 ? void 0 : sxpParameter.placeholder_image) || isLoadFinish) {
|
13148
|
-
return null;
|
13149
|
-
}
|
13150
|
-
return (React.createElement("img", { style: { position: 'absolute', left: 0, top: 0, width: '100%', height: '100%', objectFit: 'cover' }, src: sxpParameter === null || sxpParameter === void 0 ? void 0 : sxpParameter.placeholder_image }));
|
13151
|
-
}, [isLoadFinish, sxpParameter === null || sxpParameter === void 0 ? void 0 : sxpParameter.placeholder_image]);
|
13152
|
-
React.useEffect(() => {
|
13153
|
-
const handleBeforeUnload = () => {
|
13154
|
-
var _a, _b;
|
13155
|
-
if (activeIndex === index && ((_a = rec === null || rec === void 0 ? void 0 : rec.video) === null || _a === void 0 ? void 0 : _a.url) && ((_b = videoRef === null || videoRef === void 0 ? void 0 : videoRef.current) === null || _b === void 0 ? void 0 : _b.src) && !isPauseVideo) {
|
13156
|
-
handleClickVideo('pause')();
|
13157
|
-
}
|
13158
|
-
};
|
13159
|
-
window.addEventListener('beforeunload', handleBeforeUnload);
|
13160
|
-
return () => {
|
13161
|
-
window.removeEventListener('beforeunload', handleBeforeUnload);
|
13162
|
-
};
|
13163
|
-
}, [activeIndex, index, rec, videoRef, handleClickVideo, isPauseVideo]);
|
13164
|
-
const blurStyle = React.useMemo(() => {
|
13165
|
-
return blur
|
13166
|
-
? {
|
13167
|
-
filter: 'blur(10px)',
|
13168
|
-
transform: 'translate3d(0px, 0px, 0px) scale(1.2)'
|
13169
|
-
}
|
13170
|
-
: {};
|
13171
|
-
}, [blur]);
|
13172
|
-
if (!rec.video) {
|
13173
|
-
return null;
|
13174
|
-
}
|
13175
|
-
return (React.createElement(React.Fragment, null, blur ? (React.createElement("div", { className: 'video-container', key: rec.video.itemId, onClick: handleClickVideo(), style: {
|
13176
|
-
position: 'relative',
|
13177
|
-
width,
|
13178
|
-
height,
|
13179
|
-
overflow: 'hidden'
|
13180
|
-
} },
|
13181
|
-
React.createElement(FormatImage$1, { src: blurBgSrc, style: Object.assign({ height,
|
13182
|
-
width, objectFit: 'cover' }, blurStyle) }),
|
13183
|
-
React.createElement("canvas", { ref: canvasRef, style: { display: 'none' } }),
|
13184
|
-
React.createElement("div", { style: {
|
13185
|
-
position: 'absolute',
|
13186
|
-
width,
|
13187
|
-
height,
|
13188
|
-
top: '50%',
|
13189
|
-
transform: translateY,
|
13190
|
-
left: 0,
|
13191
|
-
right: 0
|
13192
|
-
} },
|
13193
|
-
React.createElement("div", { style: { position: 'relative', width, height: '100%' } },
|
13194
|
-
React.createElement("video", { id: `pb-video-${index}`, className: 'clc-pb-video', ref: videoRef, crossOrigin: 'anonymous', muted: true, controls: false, playsInline: true, preload: 'auto', onPause: onPause, onEnded: handleVideoStart, style: {
|
13195
|
-
width: '100%',
|
13196
|
-
height,
|
13197
|
-
objectFit: 'contain'
|
13198
|
-
} }),
|
13199
|
-
React.createElement("img", { hidden: !isPauseVideo, className: 'clc-pb-video-pause', src: PAUSE_ICON }))),
|
13200
|
-
renderPoster)) : (React.createElement("div", { className: 'video-container', key: rec.video.itemId, onClick: handleClickVideo(), style: {
|
13201
|
-
position: 'relative',
|
13202
|
-
width,
|
13203
|
-
height,
|
13204
|
-
overflow: 'hidden'
|
13205
|
-
} },
|
13206
|
-
React.createElement("video", { id: `pb-video-${index}`, className: 'clc-pb-video', ref: videoRef, crossOrigin: 'anonymous', muted: true, controls: false, playsInline: true, preload: 'auto', onPause: onPause, onEnded: handleVideoStart }),
|
13207
|
-
renderPoster,
|
13208
|
-
React.createElement("img", { hidden: !isPauseVideo, className: 'clc-pb-video-pause', src: PAUSE_ICON })))));
|
13209
|
-
};
|
13210
|
-
var VideoWidget$1 = React.memo(VideoWidget);
|
13211
|
-
|
13212
|
-
const RESOLVER$1 = {};
|
13213
|
-
Object.values(_materials_).forEach((v) => {
|
13214
|
-
RESOLVER$1[v.extend.type] = v;
|
13215
|
-
});
|
13216
|
-
const defaultUnLikeIconPath = '/pb_static/f71266d2c64446c5ae6a5a7f5489cc0a.png';
|
13217
|
-
const defaultLikeIconPath = '/pb_static/f07900fe3f0f4ae188ea1611d4801a44.png';
|
13218
|
-
const DiyPortalPreview = ({ data, globalConfig, tipText, nudge, tempMap, descStyle, hashTagStyle, containerHeight = 664, containerWidth = 375, appDomain }) => {
|
13219
|
-
const height = React.useMemo(() => {
|
13220
|
-
return (globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.logoUrl) && (globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.isShowLogo) ? containerHeight - 45 : containerHeight;
|
13221
|
-
}, [globalConfig, containerHeight]);
|
13222
|
-
const renderContent = (rec, index) => {
|
13223
|
-
var _a, _b, _c, _d;
|
13224
|
-
if ((_a = rec.video) === null || _a === void 0 ? void 0 : _a.url) {
|
13225
|
-
return (React.createElement(VideoWidget$1, { rec: rec, index: index, muted: true, width: containerWidth, data: data !== null && data !== void 0 ? data : [], height: height, activeIndex: index, videoPostConfig: globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.videoPost }));
|
13226
|
-
}
|
13227
|
-
if ((_b = rec.video) === null || _b === void 0 ? void 0 : _b.imgUrls) {
|
13228
|
-
return (React.createElement(PictureGroup$1, { key: rec.video.itemId, imgUrls: rec.video.imgUrls, width: containerWidth, height: height, rec: rec, index: index, imgUrlsPostConfig: globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.imgUrlsPost }));
|
13229
|
-
}
|
13230
|
-
if (rec.product) {
|
13231
|
-
if (rec.product && Array.isArray(globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.productPost) && ((_c = globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.productPost) === null || _c === void 0 ? void 0 : _c.length) > 0) {
|
13232
|
-
return (_d = globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.productPost) === null || _d === void 0 ? void 0 : _d.map((value, idx) => {
|
13233
|
-
var _a, _b, _c, _d, _e, _f, _g, _h;
|
13234
|
-
const t = RESOLVER$1[(_a = value === null || value === void 0 ? void 0 : value.item) === null || _a === void 0 ? void 0 : _a.type];
|
13235
|
-
const Component = withBindDataSource(t);
|
13236
|
-
const defaulSetting = (_b = t === null || t === void 0 ? void 0 : t.extend) === null || _b === void 0 ? void 0 : _b.defaulSetting;
|
13237
|
-
return (React.createElement(Component, Object.assign({ key: `${index}${idx}`, textStyle: Object.assign(Object.assign({}, defaulSetting === null || defaulSetting === void 0 ? void 0 : defaulSetting.textStyle), (_c = value === null || value === void 0 ? void 0 : value.item) === null || _c === void 0 ? void 0 : _c.textStyle), bindDatas: (_e = (_d = value === null || value === void 0 ? void 0 : value.item) === null || _d === void 0 ? void 0 : _d.bindDatas) !== null && _e !== void 0 ? _e : [] }, defaulSetting === null || defaulSetting === void 0 ? void 0 : defaulSetting.props, (_f = value === null || value === void 0 ? void 0 : value.item) === null || _f === void 0 ? void 0 : _f.props, { event: ((_g = value === null || value === void 0 ? void 0 : value.item) === null || _g === void 0 ? void 0 : _g.event) || {},
|
13238
|
-
// schema={schema}
|
13239
|
-
id: value === null || value === void 0 ? void 0 : value.id,
|
13240
|
-
// viewTime={viewTime.current}
|
13241
|
-
rec: rec, isPost: true, tipText: tipText, style: Object.assign(Object.assign(Object.assign({}, defaulSetting === null || defaulSetting === void 0 ? void 0 : defaulSetting.style), (_h = value === null || value === void 0 ? void 0 : value.item) === null || _h === void 0 ? void 0 : _h.style), { width: containerWidth, height, overflow: 'auto' }), index: index })));
|
13242
|
-
});
|
13243
|
-
}
|
13244
|
-
}
|
13245
|
-
};
|
13246
|
-
const renderLogo = React.useMemo(() => {
|
13247
|
-
if ((globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.logoUrl) && (globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.isShowLogo)) {
|
13248
|
-
return (React.createElement("div", { className: 'clc-sxp-logo-banner', style: { backgroundColor: globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.color } },
|
13249
|
-
React.createElement("img", { src: globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.logoUrl, alt: 'logo' })));
|
13250
|
-
}
|
13251
|
-
return null;
|
13252
|
-
}, [globalConfig]);
|
13253
|
-
const renderBottom = (rec, index) => {
|
13254
|
-
var _a, _b, _c, _d, _e, _f, _g;
|
13255
|
-
if (rec.video) {
|
13256
|
-
return (React.createElement(React.Fragment, null,
|
13257
|
-
((_a = rec.video) === null || _a === void 0 ? void 0 : _a.title) && React.createElement("div", { className: 'clc-sxp-bottom-shadow' }),
|
13258
|
-
React.createElement("div", { className: 'clc-sxp-bottom' },
|
13259
|
-
React.createElement(Nudge, { nudge: nudge }),
|
13260
|
-
React.createElement("div", { className: 'clc-sxp-bottom-card' },
|
13261
|
-
React.createElement(RenderCard$1, { rec: rec, index: index, tempMap: tempMap, resolver: RESOLVER$1 })),
|
13262
|
-
React.createElement("div", null,
|
13263
|
-
React.createElement(ExpandableText$1, { className: 'clc-sxp-bottom-text', isPost: true, foldText: tipText === null || tipText === void 0 ? void 0 : tipText.foldText, unfoldText: tipText === null || tipText === void 0 ? void 0 : tipText.unfoldText, text: (_c = (_b = rec.video) === null || _b === void 0 ? void 0 : _b.title) !== null && _c !== void 0 ? _c : '', style: Object.assign(Object.assign({}, descStyle), { textShadow: (globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.isOpenTextShadow) ? '2px 2px 4px rgba(0, 0, 0, 0.5)' : 'none' }) })),
|
13264
|
-
React.createElement(Hashtag$1, { index: index, tags: (_e = (_d = rec === null || rec === void 0 ? void 0 : rec.video) === null || _d === void 0 ? void 0 : _d.hashTags) !== null && _e !== void 0 ? _e : [], itemId: (_f = rec === null || rec === void 0 ? void 0 : rec.video) === null || _f === void 0 ? void 0 : _f.itemId, itemType: ((_g = rec.video) === null || _g === void 0 ? void 0 : _g.itemId) ? 'VIDEO' : null, rec: rec, hashTagStyle: hashTagStyle }))));
|
13265
|
-
}
|
13266
|
-
return null;
|
13267
|
-
};
|
13268
|
-
const likeIcon = useIconLink(defaultLikeIconPath, appDomain);
|
13269
|
-
const unlikeIcon = useIconLink(defaultUnLikeIconPath, appDomain);
|
13270
|
-
const renderLikeButton = (rec, index) => {
|
13271
|
-
var _a, _b, _c, _d;
|
13272
|
-
if (!(globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.isShowLike))
|
13273
|
-
return;
|
13274
|
-
let top = (_a = globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.likeIconY) !== null && _a !== void 0 ? _a : 400;
|
13275
|
-
if (top < 40) {
|
13276
|
-
top += 40;
|
13277
|
-
}
|
13278
|
-
if (rec.video) {
|
13279
|
-
return (React.createElement(LikeButton$1, { key: rec.position, activeIcon: (_b = globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.likeIcon) !== null && _b !== void 0 ? _b : likeIcon, unActicveIcon: (_c = globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.unlikeIcon) !== null && _c !== void 0 ? _c : unlikeIcon, position: index, active: rec.isCollected, recData: rec, className: 'clc-sxp-like-button', style: {
|
13280
|
-
top,
|
13281
|
-
right: (_d = globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.likeIconX) !== null && _d !== void 0 ? _d : 0
|
13282
|
-
} }));
|
13283
|
-
}
|
13284
|
-
return null;
|
13285
|
-
};
|
13286
|
-
const mutedIcon = useIconLink('/pb_static/5beaaa5ce7f3477b99db3838619cc471.png', appDomain);
|
13287
|
-
const unmutedIcon = useIconLink('/pb_static/fea8668a8a894e4aa3a86bcc775e895e.png', appDomain);
|
13288
|
-
const renderView = (rec, index) => {
|
13289
|
-
var _a, _b, _c, _d;
|
13290
|
-
return (React.createElement("div", { style: { position: 'relative' } },
|
13291
|
-
renderLogo,
|
13292
|
-
React.createElement(ToggleButton$1, { style: {
|
13293
|
-
position: 'absolute',
|
13294
|
-
right: (_a = globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.muteIconX) !== null && _a !== void 0 ? _a : 0,
|
13295
|
-
visibility: ((_c = (_b = data === null || data === void 0 ? void 0 : data[index]) === null || _b === void 0 ? void 0 : _b.video) === null || _c === void 0 ? void 0 : _c.url) ? 'visible' : 'hidden',
|
13296
|
-
bottom: (_d = globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.muteIconY) !== null && _d !== void 0 ? _d : 23,
|
13297
|
-
zIndex: 999
|
13298
|
-
}, defaultValue: true, 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 }),
|
13299
|
-
renderContent(rec, index),
|
13300
|
-
renderBottom(rec, index),
|
13301
|
-
renderLikeButton(rec, index)));
|
13302
|
-
};
|
13303
|
-
return (React.createElement("div", { style: {
|
13304
|
-
width: '100%',
|
13305
|
-
height: containerHeight,
|
13306
|
-
display: 'flex',
|
13307
|
-
boxSizing: 'border-box',
|
13308
|
-
gap: 16,
|
13309
|
-
pointerEvents: 'none',
|
13310
|
-
userSelect: 'none'
|
13311
|
-
} }, data === null || data === void 0 ? void 0 : data.map((rec, index) => {
|
13312
|
-
return renderView(rec, index);
|
13313
|
-
})));
|
13314
|
-
};
|
13315
|
-
var index$1 = React.memo(DiyPortalPreview);
|
13316
|
-
|
13317
12981
|
/*
|
13318
12982
|
* @Author: binruan@chatlabs.com
|
13319
12983
|
* @Date: 2023-10-31 10:56:01
|
@@ -13454,13 +13118,12 @@ function useEditorDataProvider() {
|
|
13454
13118
|
* @FilePath: \pb-sxp-ui\src\index.ts
|
13455
13119
|
*/
|
13456
13120
|
|
13457
|
-
exports.DiyPortalPreview = index$1;
|
13458
13121
|
exports.EditorDataProvider = EditorDataProvider;
|
13459
13122
|
exports.Modal = Modal$1;
|
13460
13123
|
exports.SxpDataSourceProvider = SxpDataSourceProvider$1;
|
13461
13124
|
exports.SxpPageCore = index;
|
13462
13125
|
exports.SxpPageRender = SxpPageRender;
|
13463
|
-
exports.core = index$
|
13126
|
+
exports.core = index$1;
|
13464
13127
|
exports.default = Pagebuilder;
|
13465
13128
|
exports.defaultSetting = defaultSetting;
|
13466
13129
|
exports.materials = _materials_;
|