pb-sxp-ui 1.2.8 → 1.2.10
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 +98 -31
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +98 -31
- 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 +98 -31
- 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/FormatImage.js +19 -17
- package/es/core/components/SxpPageRender/index.js +6 -4
- package/es/materials/sxp/HashTag/settingRender.d.ts +6 -7
- package/es/materials/sxp/HashTag/settingRender.js +9 -0
- package/es/materials/sxp/cta/AniLink/settingRender.d.ts +5 -0
- package/es/materials/sxp/cta/AniLink/settingRender.js +4 -0
- package/es/materials/sxp/cta/AniLinkPopup/material.js +2 -1
- package/es/materials/sxp/popup/AppointForm/settingRender.d.ts +8 -5
- package/es/materials/sxp/popup/AppointForm/settingRender.js +12 -0
- package/es/materials/sxp/popup/CommodityDetail/settingRender.d.ts +6 -0
- package/es/materials/sxp/popup/CommodityDetail/settingRender.js +9 -0
- package/es/materials/sxp/popup/CommodityDetailDiroNew/settingRender.d.ts +6 -0
- package/es/materials/sxp/popup/CommodityDetailDiroNew/settingRender.js +9 -0
- package/es/materials/sxp/popup/CommodityList/settingRender.js +4 -0
- package/es/materials/sxp/popup/Prompt/settingRender.js +10 -0
- package/es/materials/sxp/template/Link/settingRender.js +5 -0
- package/lib/core/components/SxpPageRender/FormatImage.js +19 -17
- package/lib/core/components/SxpPageRender/index.js +6 -4
- package/lib/materials/sxp/HashTag/settingRender.d.ts +6 -7
- package/lib/materials/sxp/HashTag/settingRender.js +9 -0
- package/lib/materials/sxp/cta/AniLink/settingRender.d.ts +5 -0
- package/lib/materials/sxp/cta/AniLink/settingRender.js +4 -0
- package/lib/materials/sxp/cta/AniLinkPopup/material.js +2 -1
- package/lib/materials/sxp/popup/AppointForm/settingRender.d.ts +8 -5
- package/lib/materials/sxp/popup/AppointForm/settingRender.js +12 -0
- package/lib/materials/sxp/popup/CommodityDetail/settingRender.d.ts +6 -0
- package/lib/materials/sxp/popup/CommodityDetail/settingRender.js +9 -0
- package/lib/materials/sxp/popup/CommodityDetailDiroNew/settingRender.d.ts +6 -0
- package/lib/materials/sxp/popup/CommodityDetailDiroNew/settingRender.js +9 -0
- package/lib/materials/sxp/popup/CommodityList/settingRender.js +4 -0
- package/lib/materials/sxp/popup/Prompt/settingRender.js +10 -0
- package/lib/materials/sxp/template/Link/settingRender.js +5 -0
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
@@ -1137,7 +1137,7 @@ var interactionRender$d = [
|
|
1137
1137
|
* @Author: binruan@chatlabs.com
|
1138
1138
|
* @Date: 2023-07-28 18:29:57
|
1139
1139
|
* @LastEditors: binruan@chatlabs.com
|
1140
|
-
* @LastEditTime: 2024-
|
1140
|
+
* @LastEditTime: 2024-08-06 14:13:47
|
1141
1141
|
* @FilePath: \pb-sxp-ui\src\materials\sxp\popup\AppointForm\settingRender.tsx
|
1142
1142
|
*
|
1143
1143
|
*/
|
@@ -1196,6 +1196,11 @@ var settingRender$9 = [
|
|
1196
1196
|
type: 'TextAlign',
|
1197
1197
|
name: ['textStyle']
|
1198
1198
|
},
|
1199
|
+
{
|
1200
|
+
label: '标题间距',
|
1201
|
+
type: 'TextSpace',
|
1202
|
+
name: ['textStyle']
|
1203
|
+
},
|
1199
1204
|
{
|
1200
1205
|
label: '表单布局',
|
1201
1206
|
type: 'Radius',
|
@@ -1254,10 +1259,12 @@ var settingRender$9 = [
|
|
1254
1259
|
]
|
1255
1260
|
},
|
1256
1261
|
{
|
1262
|
+
label: '提交按钮文本样式',
|
1257
1263
|
type: 'TextStyle',
|
1258
1264
|
name: ['props', 'submitButtonStyle']
|
1259
1265
|
},
|
1260
1266
|
{
|
1267
|
+
label: '提交按钮对齐',
|
1261
1268
|
type: 'TextAlign',
|
1262
1269
|
name: ['props', 'submitButtonStyle']
|
1263
1270
|
},
|
@@ -1265,6 +1272,11 @@ var settingRender$9 = [
|
|
1265
1272
|
label: '提交按钮颜色',
|
1266
1273
|
type: 'Color',
|
1267
1274
|
name: ['props', 'submitBgColor']
|
1275
|
+
},
|
1276
|
+
{
|
1277
|
+
label: '提交按钮间距',
|
1278
|
+
type: 'TextSpace',
|
1279
|
+
name: ['props', 'submitButtonStyle']
|
1268
1280
|
}
|
1269
1281
|
// {
|
1270
1282
|
// label: '接收内容接口地址',
|
@@ -1707,6 +1719,10 @@ var settingRender$8 = [
|
|
1707
1719
|
label: '默认行数',
|
1708
1720
|
type: 'Number',
|
1709
1721
|
name: ['lineClamp']
|
1722
|
+
},
|
1723
|
+
{
|
1724
|
+
label: '间距',
|
1725
|
+
type: 'TextSpace'
|
1710
1726
|
}
|
1711
1727
|
]
|
1712
1728
|
}
|
@@ -1792,6 +1808,11 @@ var settingRender$8 = [
|
|
1792
1808
|
{
|
1793
1809
|
type: 'TextAlign',
|
1794
1810
|
name: ['props', 'buttonStyle']
|
1811
|
+
},
|
1812
|
+
{
|
1813
|
+
label: '间距',
|
1814
|
+
type: 'TextSpace',
|
1815
|
+
name: ['props', 'buttonStyle']
|
1795
1816
|
}
|
1796
1817
|
]
|
1797
1818
|
}
|
@@ -8816,18 +8837,20 @@ const FormatImage = React.forwardRef((props, ref) => {
|
|
8816
8837
|
const { src, onLoad, style, className, loading, alt = 'image' } = props;
|
8817
8838
|
const [imgSrc, setImgSrc] = React.useState();
|
8818
8839
|
const imgRef = React.useRef(null);
|
8840
|
+
const [visible, setVisible] = React.useState(false);
|
8819
8841
|
React.useImperativeHandle(ref, () => ({
|
8820
8842
|
setSrc: (v) => {
|
8821
|
-
|
8843
|
+
if (v)
|
8844
|
+
setImgSrc(v);
|
8822
8845
|
}
|
8823
8846
|
}));
|
8824
8847
|
React.useEffect(() => {
|
8825
|
-
|
8848
|
+
if (src)
|
8849
|
+
setImgSrc(src);
|
8826
8850
|
}, [src]);
|
8827
8851
|
React.useEffect(() => {
|
8828
8852
|
const onShow = () => {
|
8829
|
-
|
8830
|
-
if (src && ((_b = (_a = imgRef === null || imgRef === void 0 ? void 0 : imgRef.current) === null || _a === void 0 ? void 0 : _a.style) === null || _b === void 0 ? void 0 : _b.display) === 'none') {
|
8853
|
+
if (src && !visible) {
|
8831
8854
|
imgRef.current.src = '';
|
8832
8855
|
imgRef.current.src = src;
|
8833
8856
|
}
|
@@ -8836,20 +8859,20 @@ const FormatImage = React.forwardRef((props, ref) => {
|
|
8836
8859
|
return () => {
|
8837
8860
|
SXP_EVENT_BUS.off(SXP_EVENT_TYPE.PAGE_DID_SHOW, onShow);
|
8838
8861
|
};
|
8839
|
-
}, [src]);
|
8840
|
-
return (React.createElement(React.Fragment, null,
|
8841
|
-
React.createElement("
|
8842
|
-
|
8843
|
-
|
8844
|
-
|
8845
|
-
|
8846
|
-
|
8862
|
+
}, [src, visible]);
|
8863
|
+
return (React.createElement(React.Fragment, null,
|
8864
|
+
!visible && React.createElement("div", { style: { width: '100%', height: '100%', zIndex: 1, backgroundColor: '#fff' } }),
|
8865
|
+
(imgSrc === null || imgSrc === void 0 ? void 0 : imgSrc.includes('.avif')) ? (React.createElement("picture", null,
|
8866
|
+
React.createElement("source", { type: 'image/avif', srcSet: imgSrc }),
|
8867
|
+
React.createElement("source", { type: 'image/webp', srcSet: `${imgSrc}?imageMogr2/format/webp` }),
|
8868
|
+
React.createElement("source", { type: 'image/jpeg', srcSet: `${imgSrc}?imageMogr2/format/jpg` }),
|
8869
|
+
React.createElement("img", { ref: imgRef, className: className, src: imgSrc, style: Object.assign({}, style), loading: loading, onLoad: (e) => {
|
8870
|
+
setVisible(true);
|
8871
|
+
onLoad === null || onLoad === void 0 ? void 0 : onLoad(e.target);
|
8872
|
+
}, alt: alt }))) : (React.createElement("img", { ref: imgRef, className: className, src: imgSrc, style: Object.assign({}, style), loading: loading, onLoad: (e) => {
|
8873
|
+
setVisible(true);
|
8847
8874
|
onLoad === null || onLoad === void 0 ? void 0 : onLoad(e.target);
|
8848
|
-
}, alt: alt })))
|
8849
|
-
if (imgRef.current)
|
8850
|
-
imgRef.current.style.display = 'block';
|
8851
|
-
onLoad === null || onLoad === void 0 ? void 0 : onLoad(e.target);
|
8852
|
-
}, alt: alt }))));
|
8875
|
+
}, alt: alt }))));
|
8853
8876
|
});
|
8854
8877
|
var FormatImage$1 = React.memo(FormatImage);
|
8855
8878
|
|
@@ -9179,7 +9202,7 @@ var interactionRender$b = [
|
|
9179
9202
|
* @Author: binruan@chatlabs.com
|
9180
9203
|
* @Date: 2023-10-27 14:06:35
|
9181
9204
|
* @LastEditors: binruan@chatlabs.com
|
9182
|
-
* @LastEditTime: 2024-
|
9205
|
+
* @LastEditTime: 2024-08-06 14:23:11
|
9183
9206
|
* @FilePath: \pb-sxp-ui\src\materials\sxp\popup\Prompt\settingRender.tsx
|
9184
9207
|
*
|
9185
9208
|
*/
|
@@ -9231,6 +9254,11 @@ var settingRender$7 = [
|
|
9231
9254
|
}
|
9232
9255
|
]
|
9233
9256
|
},
|
9257
|
+
{
|
9258
|
+
label: '内容字体间距',
|
9259
|
+
type: 'TextSpace',
|
9260
|
+
name: ['props', 'contentStyle']
|
9261
|
+
},
|
9234
9262
|
{
|
9235
9263
|
type: 'Group',
|
9236
9264
|
label: '提交按钮字体',
|
@@ -9264,6 +9292,11 @@ var settingRender$7 = [
|
|
9264
9292
|
}
|
9265
9293
|
]
|
9266
9294
|
},
|
9295
|
+
{
|
9296
|
+
label: '提交按钮间距',
|
9297
|
+
type: 'TextSpace',
|
9298
|
+
name: ['props', 'submitButtonStyle']
|
9299
|
+
},
|
9267
9300
|
{
|
9268
9301
|
type: 'TextStyle',
|
9269
9302
|
name: ['props', 'submitButtonStyle']
|
@@ -9374,7 +9407,7 @@ const Prompt = createMaterial(PromptComponent, {
|
|
9374
9407
|
* @Author: binruan@chatlabs.com
|
9375
9408
|
* @Date: 2024-03-26 16:50:25
|
9376
9409
|
* @LastEditors: binruan@chatlabs.com
|
9377
|
-
* @LastEditTime: 2024-
|
9410
|
+
* @LastEditTime: 2024-08-06 14:06:03
|
9378
9411
|
* @FilePath: \pb-sxp-ui\src\materials\sxp\popup\CommodityDetailDiroNew\settingRender.tsx
|
9379
9412
|
*
|
9380
9413
|
*/
|
@@ -9536,6 +9569,10 @@ var settingRender$6 = [
|
|
9536
9569
|
label: '默认行数',
|
9537
9570
|
type: 'Number',
|
9538
9571
|
name: ['lineClamp']
|
9572
|
+
},
|
9573
|
+
{
|
9574
|
+
label: '间距',
|
9575
|
+
type: 'TextSpace'
|
9539
9576
|
}
|
9540
9577
|
]
|
9541
9578
|
}
|
@@ -9621,6 +9658,11 @@ var settingRender$6 = [
|
|
9621
9658
|
{
|
9622
9659
|
type: 'TextAlign',
|
9623
9660
|
name: ['props', 'buttonStyle']
|
9661
|
+
},
|
9662
|
+
{
|
9663
|
+
label: '间距',
|
9664
|
+
type: 'TextSpace',
|
9665
|
+
name: ['props', 'buttonStyle']
|
9624
9666
|
}
|
9625
9667
|
]
|
9626
9668
|
}
|
@@ -9927,7 +9969,7 @@ const CommodityDetailDiroNew = createMaterial(CommodityDetailDiroNewComponent, {
|
|
9927
9969
|
* @Author: binruan@chatlabs.com
|
9928
9970
|
* @Date: 2024-03-26 16:50:25
|
9929
9971
|
* @LastEditors: binruan@chatlabs.com
|
9930
|
-
* @LastEditTime: 2024-
|
9972
|
+
* @LastEditTime: 2024-08-06 14:09:52
|
9931
9973
|
* @FilePath: \pb-sxp-ui\src\materials\sxp\popup\CommodityList\settingRender.tsx
|
9932
9974
|
*
|
9933
9975
|
*/
|
@@ -10049,6 +10091,10 @@ var settingRender$5 = [
|
|
10049
10091
|
{
|
10050
10092
|
label: '标题对齐',
|
10051
10093
|
type: 'TextAlign'
|
10094
|
+
},
|
10095
|
+
{
|
10096
|
+
label: '间距',
|
10097
|
+
type: 'TextSpace'
|
10052
10098
|
}
|
10053
10099
|
]
|
10054
10100
|
}
|
@@ -10821,7 +10867,7 @@ const Appoint = createMaterial(AppointComponent, {
|
|
10821
10867
|
* @Author: binruan@chatlabs.com
|
10822
10868
|
* @Date: 2024-07-02 14:51:32
|
10823
10869
|
* @LastEditors: binruan@chatlabs.com
|
10824
|
-
* @LastEditTime: 2024-
|
10870
|
+
* @LastEditTime: 2024-08-06 14:51:18
|
10825
10871
|
* @FilePath: \pb-sxp-ui\src\materials\sxp\template\Link\settingRender.tsx
|
10826
10872
|
*
|
10827
10873
|
*/
|
@@ -10918,6 +10964,11 @@ var linkSettingRender = [
|
|
10918
10964
|
type: 'TextAlign',
|
10919
10965
|
name: ['props', 'customTitle', 'style']
|
10920
10966
|
},
|
10967
|
+
{
|
10968
|
+
label: '间距',
|
10969
|
+
type: 'TextSpace',
|
10970
|
+
name: ['props', 'customTitle', 'style']
|
10971
|
+
},
|
10921
10972
|
{
|
10922
10973
|
label: '上边距',
|
10923
10974
|
type: 'Number',
|
@@ -11560,7 +11611,7 @@ const MultiCommodityDiroNew = createMaterial(MultiCommodityDiroNewComponent, {
|
|
11560
11611
|
* @Author: binruan@chatlabs.com
|
11561
11612
|
* @Date: 2024-04-07 14:07:12
|
11562
11613
|
* @LastEditors: binruan@chatlabs.com
|
11563
|
-
* @LastEditTime: 2024-06
|
11614
|
+
* @LastEditTime: 2024-08-06 14:00:36
|
11564
11615
|
* @FilePath: \pb-sxp-ui\src\materials\sxp\HashTag\settingRender.tsx
|
11565
11616
|
*
|
11566
11617
|
*/
|
@@ -11665,6 +11716,10 @@ var settingRender$3 = [
|
|
11665
11716
|
{
|
11666
11717
|
label: '标题对齐',
|
11667
11718
|
type: 'TextAlign'
|
11719
|
+
},
|
11720
|
+
{
|
11721
|
+
label: '间距',
|
11722
|
+
type: 'TextSpace'
|
11668
11723
|
}
|
11669
11724
|
]
|
11670
11725
|
}
|
@@ -11750,6 +11805,11 @@ var settingRender$3 = [
|
|
11750
11805
|
{
|
11751
11806
|
type: 'TextAlign',
|
11752
11807
|
name: ['props', 'buttonStyle']
|
11808
|
+
},
|
11809
|
+
{
|
11810
|
+
label: '间距',
|
11811
|
+
type: 'TextSpace',
|
11812
|
+
name: ['props', 'buttonStyle']
|
11753
11813
|
}
|
11754
11814
|
]
|
11755
11815
|
},
|
@@ -13923,7 +13983,7 @@ const Consent = createMaterial(ConsentComponent, {
|
|
13923
13983
|
* @Author: binruan@chatlabs.com
|
13924
13984
|
* @Date: 2024-07-02 14:51:32
|
13925
13985
|
* @LastEditors: binruan@chatlabs.com
|
13926
|
-
* @LastEditTime: 2024-
|
13986
|
+
* @LastEditTime: 2024-08-06 14:28:34
|
13927
13987
|
* @FilePath: \pb-sxp-ui\src\materials\sxp\cta\AniLink\settingRender.tsx
|
13928
13988
|
*
|
13929
13989
|
*/
|
@@ -14026,6 +14086,10 @@ var settingRender$1 = [
|
|
14026
14086
|
label: '对齐',
|
14027
14087
|
type: 'TextAlign',
|
14028
14088
|
name: ['props', 'ctaTempStyles', 'ctaTitle']
|
14089
|
+
},
|
14090
|
+
{
|
14091
|
+
type: 'TextSpace',
|
14092
|
+
name: ['props', 'ctaTempStyles', 'ctaTitle']
|
14029
14093
|
}
|
14030
14094
|
]
|
14031
14095
|
}
|
@@ -14592,7 +14656,7 @@ var interactionRender = [
|
|
14592
14656
|
* @Author: binruan@chatlabs.com
|
14593
14657
|
* @Date: 2024-07-24 14:58:40
|
14594
14658
|
* @LastEditors: binruan@chatlabs.com
|
14595
|
-
* @LastEditTime: 2024-08-02 17:
|
14659
|
+
* @LastEditTime: 2024-08-02 17:45:51
|
14596
14660
|
* @FilePath: \pb-sxp-ui\src\materials\sxp\cta\AniLinkPopup\material.tsx
|
14597
14661
|
*
|
14598
14662
|
*/
|
@@ -14626,7 +14690,8 @@ const AniLinkPopup = createMaterial(AniLinkPopupComponent, {
|
|
14626
14690
|
title: {
|
14627
14691
|
fontSize: 14,
|
14628
14692
|
color: '#000',
|
14629
|
-
textAlign: 'left'
|
14693
|
+
textAlign: 'left',
|
14694
|
+
lineHeight: 2.6
|
14630
14695
|
},
|
14631
14696
|
ctaTitle: {
|
14632
14697
|
width: 108,
|
@@ -15534,7 +15599,7 @@ var Tagbar$1 = React.memo(Tagbar);
|
|
15534
15599
|
* @Author: binruan@chatlabs.com
|
15535
15600
|
* @Date: 2024-01-15 19:03:09
|
15536
15601
|
* @LastEditors: binruan@chatlabs.com
|
15537
|
-
* @LastEditTime: 2024-08-02
|
15602
|
+
* @LastEditTime: 2024-08-02 18:34:27
|
15538
15603
|
* @FilePath: \pb-sxp-ui\src\core\components\SxpPageRender\index.tsx
|
15539
15604
|
*
|
15540
15605
|
*/
|
@@ -15547,7 +15612,7 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight = window.inner
|
|
15547
15612
|
const viewTime = React.useRef();
|
15548
15613
|
const [isLoadMore, setIsLoadMore] = React.useState(false);
|
15549
15614
|
const [isShowMore, setIsShowMore] = React.useState(false);
|
15550
|
-
const [isReload, setIsReload] = React.useState(
|
15615
|
+
const [isReload, setIsReload] = React.useState(new Date().getTime());
|
15551
15616
|
const skipLinkRef = React.useRef(false);
|
15552
15617
|
const { loadVideos, bffEventReport, loading, setPopupDetailData, ctaEvent, swiperRef, waterFallData, setOpenHashtag, appDomain, openHashtag, loadingImage, isFromHashtag, popupDetailData, bffFbReport, curTime, h5EnterLink, isShowConsent, selectTag, isPreview } = useSxpDataSource();
|
15553
15618
|
const { backMainFeed } = useEventReport();
|
@@ -15643,7 +15708,8 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight = window.inner
|
|
15643
15708
|
}
|
15644
15709
|
else if (document.visibilityState === 'visible') {
|
15645
15710
|
if (skipLinkRef.current === true) {
|
15646
|
-
setIsReload(
|
15711
|
+
setIsReload(new Date().getTime());
|
15712
|
+
skipLinkRef.current = false;
|
15647
15713
|
}
|
15648
15714
|
// 页面可见时触发,注意页面初始化时不会触发
|
15649
15715
|
handleH5EnterLink();
|
@@ -15702,7 +15768,7 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight = window.inner
|
|
15702
15768
|
const renderContent = React.useCallback((rec, index) => {
|
15703
15769
|
var _a, _b, _c, _d;
|
15704
15770
|
if ((_a = rec === null || rec === void 0 ? void 0 : rec.video) === null || _a === void 0 ? void 0 : _a.url) {
|
15705
|
-
return (React.createElement(VideoWidget$3, { rec: rec, index: index, muted: isMuted, data: data, height: height, activeIndex: activeIndex, videoPostConfig: globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.videoPost, videoPlayIcon: globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.videoPlayIcon }));
|
15771
|
+
return (React.createElement(VideoWidget$3, { key: isReload, rec: rec, index: index, muted: isMuted, data: data, height: height, activeIndex: activeIndex, videoPostConfig: globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.videoPost, videoPlayIcon: globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.videoPlayIcon }));
|
15706
15772
|
}
|
15707
15773
|
if ((_b = rec === null || rec === void 0 ? void 0 : rec.video) === null || _b === void 0 ? void 0 : _b.imgUrls) {
|
15708
15774
|
return (React.createElement(PictureGroup$3, { key: rec === null || rec === void 0 ? void 0 : rec.video.itemId, imgUrls: rec === null || rec === void 0 ? void 0 : 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 }));
|
@@ -15728,7 +15794,8 @@ const SxpPageRender = ({ globalConfig, descStyle, containerHeight = window.inner
|
|
15728
15794
|
viewTime,
|
15729
15795
|
tipText,
|
15730
15796
|
resolver,
|
15731
|
-
schema
|
15797
|
+
schema,
|
15798
|
+
isReload
|
15732
15799
|
]);
|
15733
15800
|
const onExpandableChange = React.useCallback((v) => {
|
15734
15801
|
setIsShowMore(v);
|