@conecli/cone-render 0.8.44 → 0.8.46-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (94) hide show
  1. package/dist/api/index.ts +1 -1
  2. package/dist/assets/icon_blue_info.svg +1 -0
  3. package/dist/common/const.ts +1 -1
  4. package/dist/common/environmentType.ts +1 -1
  5. package/dist/common/index.h5.ts +1 -1
  6. package/dist/common/index.jd.ts +1 -1
  7. package/dist/common/index.ts +1 -1
  8. package/dist/common/index.weapp.ts +1 -1
  9. package/dist/common/pageType.ts +1 -1
  10. package/dist/common/sgmCustomCode.ts +1 -1
  11. package/dist/common/token/index.h5.ts +1 -1
  12. package/dist/common/token/token.jd.ts +1 -1
  13. package/dist/common/wxappApi.ts +1 -1
  14. package/dist/components/base/CommonFloorHead/index.module.scss +126 -111
  15. package/dist/components/base/CommonFloorHead/index.tsx +1 -1
  16. package/dist/components/base/CountDown/index.module.scss +49 -44
  17. package/dist/components/base/CountDown/index.tsx +1 -1
  18. package/dist/components/base/CustomScrollView/index.tsx +1 -1
  19. package/dist/components/base/CustomVideo/common.ts +1 -0
  20. package/dist/components/base/CustomVideo/index.tsx +1 -1
  21. package/dist/components/base/Dialog/index.module.scss +11 -0
  22. package/dist/components/base/ExposureSmart/index.h5.module.scss +12 -2
  23. package/dist/components/base/ExposureSmart/index.h5.tsx +1 -1
  24. package/dist/components/base/ExposureSmart/reporter.tsx +1 -1
  25. package/dist/components/base/ItemViewExposureSmart/index.module.scss +2 -2
  26. package/dist/components/base/ItemViewExposureSmart/index.tsx +1 -1
  27. package/dist/components/base/LazyLoadImage/index.h5.module.scss +4 -0
  28. package/dist/components/base/LazyLoadImage/index.h5.tsx +1 -1
  29. package/dist/components/base/Price/Base/index.tsx +1 -1
  30. package/dist/components/base/Price/Double/index.module.scss +8 -0
  31. package/dist/components/base/Price/Double/index.tsx +1 -1
  32. package/dist/components/debug/DebugLayout/index.module.scss +67 -0
  33. package/dist/components/debug/DebugLayout/index.tsx +1 -0
  34. package/dist/components/debug/DebugLayout/utils.ts +1 -0
  35. package/dist/components/decorate/DecorateFloorModule/index.module.scss +11 -0
  36. package/dist/components/decorate/DecorateFloorModule/index.tsx +1 -1
  37. package/dist/components/decorate/EmptyFloorModule/index.tsx +1 -1
  38. package/dist/components/decorate/PlaceHolder/index.tsx +1 -1
  39. package/dist/components/floorItem.tsx +1 -1
  40. package/dist/components/floorItem.weapp.tsx +1 -1
  41. package/dist/components/isv/Floor/index.tsx +1 -1
  42. package/dist/interface/common.ts +1 -1
  43. package/dist/interface/component.ts +1 -1
  44. package/dist/interface/jumpEventReport.ts +1 -1
  45. package/dist/interface/service.ts +1 -1
  46. package/dist/jumpEventReport/base.ts +1 -1
  47. package/dist/jumpEventReport/const.ts +1 -1
  48. package/dist/jumpEventReport/index.jd.ts +1 -1
  49. package/dist/jumpEventReport/index.weapp.ts +1 -1
  50. package/dist/jumpEventReport/jdJumpJdApp.ts +1 -1
  51. package/dist/jumpEventReport/jumpUrlConfig/base.ts +1 -1
  52. package/dist/jumpEventReport/logEventConfig.ts +1 -1
  53. package/dist/jumpEventReport/web/report.ts +1 -1
  54. package/dist/jumpEventReport/web.base.ts +1 -1
  55. package/dist/jumpEventReport/web.jd.ts +1 -1
  56. package/dist/jumpEventReport/web.jdb.ts +1 -1
  57. package/dist/jumpEventReport/web.jdjch.ts +1 -1
  58. package/dist/jumpEventReport/web.jxwxapp.ts +1 -1
  59. package/dist/jumpEventReport/web.pc.ts +1 -1
  60. package/dist/jumpEventReport/web.tjapp.ts +1 -1
  61. package/dist/jumpEventReport/web.tjm.ts +1 -1
  62. package/dist/jumpEventReport/web.wxapp.ts +1 -1
  63. package/dist/libs/taroAppReport.js +2 -2
  64. package/dist/modules/ContainerFloorList/index.h5.module.scss +66 -53
  65. package/dist/modules/ContainerFloorList/index.h5.tsx +1 -1
  66. package/dist/modules/ContainerFloorList/index.tsx +1 -1
  67. package/dist/open/api/environment.ts +1 -1
  68. package/dist/open/api/shopMember.ts +1 -1
  69. package/dist/open/api/util.ts +1 -1
  70. package/dist/sass/app.h5.scss +255 -224
  71. package/dist/sass/base.scss +183 -137
  72. package/dist/service/fetchGateway.ts +1 -1
  73. package/dist/service/fetchGateway.weapp.ts +1 -0
  74. package/dist/service/http/colorSign.ts +1 -1
  75. package/dist/service/http/const.ts +1 -1
  76. package/dist/service/http/h5Http.ts +1 -0
  77. package/dist/service/http/index.h5.ts +1 -0
  78. package/dist/service/requestServer.h5.ts +1 -0
  79. package/dist/service/requestServer.ts +1 -1
  80. package/dist/service/requestServer.weapp.ts +1 -0
  81. package/dist/utils/connectNativeJsBridge.ts +1 -1
  82. package/dist/utils/connectNativeJsBridge.weapp.ts +1 -1
  83. package/dist/utils/h5Utils.ts +1 -1
  84. package/dist/utils/index.h5.ts +1 -1
  85. package/dist/utils/index.ts +1 -1
  86. package/dist/utils/index.weapp.ts +1 -1
  87. package/dist/utils/jumpExtMapUtil.h5.ts +1 -0
  88. package/dist/utils/jumpExtMapUtil.ts +1 -0
  89. package/dist/utils/sColor.js +1 -0
  90. package/dist/utils/utils.ts +1 -1
  91. package/dist/wxapp/common/address_api/address_api_v2.js +1 -0
  92. package/dist/wxapp/common/user_info.js +1 -1
  93. package/package.json +147 -123
  94. package/dist/utils/memberFormatUtils.js +0 -1
@@ -1,63 +1,76 @@
1
1
 
2
2
  .d-shop-container-list {
3
- position: relative;
4
- overflow: hidden;
5
- z-index: 2;
3
+ position: relative;
4
+ overflow: hidden;
5
+ z-index: 2;
6
6
 
7
- .d-container-item,
8
- .d-floor-item {
9
- position: relative;
10
- // 不能加overflow 防止IntersectionObserver监听异常
11
- //overflow: hidden;
12
- }
7
+ // 容器列表底部间距,不做适配转换,固定8px
8
+ .d-container-list-with-margin-bottom {
9
+ margin-bottom: 8px;
10
+ }
13
11
 
14
-
15
- .d-floor-item {
16
- overflow: hidden;
17
- display: block; // 由于taro的View属于一种自定义标签,虽然taro自己会给View设置display为block,但是这个是一个异步过程,而自定义标签的默认display是inline,inline状态下即使设置了overflow:hidden,也会由于内容过大导致宽度被撑大而超出容器实际宽度。所以为了保证楼层容器节点在加载过程中不被撑大,需要显示设置display:block
18
- }
19
- .d-floor-chart-item{
20
- position: absolute;
21
- top: 0;
22
- left: 0;
23
- right: 0;
24
- bottom: 0;
25
- pointer-events: auto;
26
- z-index: 99;
27
- }
28
- .d-container-item {
29
- //opacity: 0;
30
- //animation: containerShowToOpacity 500ms;
31
- //animation-fill-mode: forwards;
32
- :global {
33
- .lazyload-placeholder {
34
- background: url('https://img13.360buyimg.com/imagetools/jfs/t1/151010/32/14284/30214/5ff66791Ea1bc6cc6/698c0772b377aef5.png')
35
- center center / 40px 40px no-repeat;
36
- }
37
- }
38
- }
39
- .d-luxury-header {
40
- border-top-left-radius: 40px;
41
- border-top-right-radius: 40px;
42
- width: 100%;
43
- height: 8PX;
44
- margin-top: -8PX;
45
- background-clip: padding-box;
46
- position: relative;
47
- z-index: 999;
48
- background: #F2F2F2;
49
- box-shadow: 0 0 1px rgba(0, 0, 0, 0);
50
- }
51
- .d-luxury-header-black {
52
- width: 100%;
53
- z-index: 999;
54
- background: black;
55
- margin-bottom: 16px;
12
+ .d-container-list-no-margin-bottom {
13
+ margin-bottom: 0;
14
+ }
15
+
16
+ .d-container-item,
17
+ .d-floor-item {
18
+ position: relative;
19
+ // 不能加overflow 防止IntersectionObserver监听异常
20
+ //overflow: hidden;
21
+ }
22
+
23
+
24
+ .d-floor-item {
25
+ overflow: hidden;
26
+ display: block; // 由于taro的View属于一种自定义标签,虽然taro自己会给View设置display为block,但是这个是一个异步过程,而自定义标签的默认display是inline,inline状态下即使设置了overflow:hidden,也会由于内容过大导致宽度被撑大而超出容器实际宽度。所以为了保证楼层容器节点在加载过程中不被撑大,需要显示设置display:block
27
+ }
28
+ .d-floor-chart-item {
29
+ position: absolute;
30
+ top: 0;
31
+ left: 0;
32
+ right: 0;
33
+ bottom: 0;
34
+ pointer-events: auto;
35
+ z-index: 99;
36
+ }
37
+ .d-container-item {
38
+ //opacity: 0;
39
+ //animation: containerShowToOpacity 500ms;
40
+ //animation-fill-mode: forwards;
41
+ :global {
42
+ .lazyload-placeholder {
43
+ background: url('https://img13.360buyimg.com/imagetools/jfs/t1/151010/32/14284/30214/5ff66791Ea1bc6cc6/698c0772b377aef5.png')
44
+ center center / 40px 40px no-repeat;
45
+ }
56
46
  }
57
- .d-container-list-no-data {
58
- min-height: 400px;
47
+ }
48
+ .d-luxury-header {
49
+ border-top-left-radius: 40px;
50
+ border-top-right-radius: 40px;
51
+ width: 100%;
52
+ height: 8px;
53
+ margin-top: -8px;
54
+ background-clip: padding-box;
55
+ position: relative;
56
+ z-index: 999;
57
+ background: #f2f2f2;
58
+ box-shadow: 0 0 1px rgba(0, 0, 0, 0);
59
+ }
60
+ .d-luxury-header-black {
61
+ width: 100%;
62
+ z-index: 999;
63
+ background: black;
64
+ margin-bottom: 16px;
65
+ }
66
+ .d-container-list-no-data {
67
+ min-height: 400px;
68
+ &.d-sage-shop-no-data {
69
+ background: #fff;
59
70
  }
71
+ }
60
72
  }
73
+
61
74
  //@keyframes containerShowToOpacity {
62
75
  // from {
63
76
  // opacity: 0;
@@ -1 +1 @@
1
- import React from 'react'
2
1
  isJdApp,
3
2
  isChartH5,
4
3
  NETWORK_DATA_TYPE,
5
4
  M_SHOP_DOWNLOAD_HEADER_NAV_BAR_BOTTOM_MENU_HEIGHT,
6
5
  APP_SHOP_HEADER_NAV_BAR_BOTTOM_MENU_HEIGHT,
7
6
  containerFloorListData: ComponentInterFace.ContainerItemData[]
8
7
  className?: string
9
8
  containerItemClass?: object
10
9
  style?: object
11
10
  hasGoodsFeeds?: boolean
12
11
  builtInComponents?: Object
13
12
  loadingEndComponentFn?: Function
14
13
  sectionType?: string
15
14
  updateShopFloorDataFn?: Function
16
15
  updateContainerFloorListDataFn?: Function
17
16
  refreshFloorListDataFn?: Function
18
17
  refreshFloorListDataBtnLabel?: string
19
18
  customErrorIsvFloorModule?: React.ReactElement
20
19
  componentExtend?: React.ReactElement
21
20
  const { windowHeight } = taroJdBaseInfo.info.sysInfo
22
21
  const {
23
22
  className,
24
23
  style,
25
24
  containerItemClass = null,
26
25
  containerFloorListData,
27
26
  builtInComponents,
28
27
  loadingEndComponentFn,
29
28
  sectionType,
30
29
  updateShopFloorDataFn,
31
30
  updateContainerFloorListDataFn,
32
31
  refreshFloorListDataFn,
33
32
  refreshFloorListDataBtnLabel,
34
33
  customErrorIsvFloorModule,
35
34
  } = props
36
35
 
37
36
  const renderFloorItem = (
38
37
  item,
39
38
  floorItem,
40
39
  floorIndex,
41
40
  containerLayoutLeftRightMargin,
42
41
  lazyLoadState = false,
43
42
  ) => {
44
43
  return (
45
44
  <View
46
45
  className={classNames(shopContainerListStyle['d-floor-item'])}
47
46
  data-floor-uid={floorItem?.uid}
48
47
  data-floor-type={floorItem?.floorExtInfo?.moduleFlag || ''}
49
48
  data-lazy-load={lazyLoadState}
50
49
  key={floorItem.uid}
51
50
  id={`J_floor_${floorItem.uid}`}
52
51
  style={{
53
52
  borderRadius: `${item?.borderRadius || 0}px`,
54
53
  }}
55
54
  >
56
55
  {isChartH5 && (
57
56
  <View
58
57
  className={shopContainerListStyle['d-floor-chart-item']}
59
58
  id={`J_chart_floor_${floorItem?.uid}`}
60
59
  data-floor-uid={floorItem?.uid}
61
60
  data-floor-type={floorItem?.floorExtInfo?.moduleFlag || ''}
62
61
  />
63
62
  )}
64
63
  <FloorListItem
65
64
  floorIndex={floorIndex}
66
65
  floorData={floorItem}
67
66
  layoutLeftRightMargin={containerLayoutLeftRightMargin}
68
67
  containerBorderRadius={item?.borderRadius || 0}
69
68
  updateShopFloorDataFn={updateShopFloorDataFn}
70
69
  loadingEndComponentFn={loadingEndComponentFn}
71
70
  key={floorItem.uid}
72
71
  builtInComponents={builtInComponents}
73
72
  updateContainerFloorListDataFn={updateContainerFloorListDataFn}
74
73
  customErrorIsvFloorModule={customErrorIsvFloorModule}
75
74
  />
76
75
  </View>
77
76
  )
78
77
  }
79
78
 
80
79
  const getFloorSetHeight = (item) => {
81
80
  const getHeight = item?.floorExtInfo?.floorHeight
82
81
  ? Number(item?.floorExtInfo?.floorHeight)
83
82
  : 200
84
83
  return getHeight > 0 ? getHeight : 200
85
84
  }
86
85
  return (
87
86
  <View
88
87
  className={classNames(
89
88
  className,
90
89
  shopContainerListStyle['d-shop-container-list'],
91
90
  )}
92
91
  style={style}
93
92
  >
94
93
  <View id='J_shopContainerFloorList'>
95
94
  {containerFloorListData.length > 0 ? (
96
95
  containerFloorListData.map((item, index) => {
97
96
  const containerLayoutLeftRightMargin =
98
97
  (item.marginLeft || 0) + (item.marginRight || 0)
99
98
  const getContainerId = `J_container_${item.containerId}`
100
99
  return (
101
100
  <React.Fragment key={item.containerId + index}>
102
101
  {
103
102
  item.addLuxuryStyle ?
104
103
  <View
105
104
  className={
106
105
  shopContainerListStyle['d-luxury-header']
107
106
  }
108
107
  />
109
108
  : null
110
109
  }
111
110
  {
112
111
  item.addLuxuryBackupStyle ?
113
112
  <View
114
113
  style={{ height: taroJdBaseInfo?.info?.sysInfo?.jdNativeHeaderHeight + 'px' }}
115
114
  className={
116
115
  shopContainerListStyle['d-luxury-header-black']
117
116
  }
118
117
  />
119
118
  : null
120
119
  }
121
120
  {typeof item?.renderExtendComponent === 'function' ? item?.renderExtendComponent(item?.floorExtendData) : null}
122
121
  <View
123
122
  className={classNames(
124
123
  shopContainerListStyle['d-container-item'],
125
124
  containerItemClass,
126
125
  )}
127
126
  id={getContainerId}
128
127
  key={item.containerId}
129
128
  data-container-id={item?.containerId}
130
129
  data-container-type={item?.typeCode}
131
130
  style={{
132
131
  marginBottom: item.marginBottom
133
132
  ? `${item.marginBottom}px`
134
133
  : 0,
135
134
  marginTop: item.marginTop
136
135
  ? `${item.marginTop}px`
137
136
  : 0,
138
137
  marginLeft: item.marginLeft
139
138
  ? `${item.marginLeft}px`
140
139
  : 0,
141
140
  marginRight: item.marginRight
142
141
  ? `${item.marginRight}px`
143
142
  : 0,
144
143
  borderRadius: item.borderRadius
145
144
  ? `${item.borderRadius}px`
146
145
  : 0,
147
146
  }}
148
147
  >
149
148
  {typeof item?.insertContainerStartComponent === 'function' ? item?.insertContainerStartComponent(item) : null}
150
149
  {item.floors &&
151
150
  item.floors.length > 0 &&
152
151
  item.floors?.map(
153
152
  (floorItem, floorIndex) => {
154
153
  return index > lazyLoadStartIndex ? (
155
154
  <LazyLayoutLoad
156
155
  key={item.containerId}
157
156
  sectionType={sectionType}
158
157
  containerId={getContainerId}
159
158
  height={getFloorSetHeight(
160
159
  floorItem,
161
160
  )}
162
161
  floorData={floorItem}
163
162
  >
164
163
  {renderFloorItem(
165
164
  item,
166
165
  floorItem,
167
166
  floorIndex,
168
167
  containerLayoutLeftRightMargin,
169
168
  true,
170
169
  )}
171
170
  </LazyLayoutLoad>
172
171
  ) : (
173
172
  renderFloorItem(
174
173
  item,
175
174
  floorItem,
176
175
  floorIndex,
177
176
  containerLayoutLeftRightMargin,
178
177
  )
179
178
  )
180
179
  },
181
180
  )}
182
181
  </View>
183
182
  </React.Fragment>
184
183
  )
185
184
  })
186
185
  ) : (
187
186
  <View
188
187
  className={
189
188
  shopContainerListStyle['d-container-list-no-data']
190
189
  }
191
190
  style={{
192
191
  height: `${
193
192
  windowHeight -
194
193
  (isJdApp
195
194
  ? APP_SHOP_HEADER_NAV_BAR_BOTTOM_MENU_HEIGHT
196
195
  : M_SHOP_DOWNLOAD_HEADER_NAV_BAR_BOTTOM_MENU_HEIGHT)
197
196
  }px`,
198
197
  }}
199
198
  >
200
199
  <NetworkDataError
201
200
  netWorkShowType={NetWorkShowType.PART}
202
201
  netWorkDataType={NETWORK_DATA_TYPE.DATA_ERROR}
203
202
  refreshCallBackFn={refreshFloorListDataFn ? refreshFloorListDataFn : null}
204
203
  btnLabel={refreshFloorListDataBtnLabel || ""}
205
204
  />
206
205
  </View>
207
206
  )}
208
207
  </View>
209
208
  </View>
210
209
  )
211
210
  updateShopDataFn: null,
211
+ import React from 'react';
212
212
  NETWORK_DATA_TYPE,
213
213
  M_SHOP_DOWNLOAD_HEADER_NAV_BAR_BOTTOM_MENU_HEIGHT,
214
214
  APP_SHOP_HEADER_NAV_BAR_BOTTOM_MENU_HEIGHT,
215
215
  containerFloorListData: ComponentInterFace.ContainerItemData[];
216
216
  className?: string;
217
217
  containerItemClass?: object;
218
218
  style?: object;
219
219
  hasGoodsFeeds?: boolean;
220
220
  builtInComponents?: object;
221
221
  loadingEndComponentFn?: functionType;
222
222
  sectionType?: string;
223
223
  updateShopFloorDataFn?: functionType;
224
224
  updateContainerFloorListDataFn?: functionType;
225
225
  refreshFloorListDataFn?: functionType;
226
226
  refreshFloorListDataBtnLabel?: string;
227
227
  customErrorIsvFloorModule?: React.ReactElement;
228
228
  componentExtend?: React.ReactElement;
229
229
  luxuryFixedIndex?: number;
230
230
  isContainerListHasMarginBottom?: boolean;
231
231
  switchConfig?: {
232
232
  [key: string]: any;
233
233
  };
234
234
  const { windowHeight } = taroJdBaseInfo.info.sysInfo;
235
235
  const {
236
236
  className,
237
237
  style,
238
238
  containerItemClass = null,
239
239
  containerFloorListData,
240
240
  builtInComponents,
241
241
  loadingEndComponentFn,
242
242
  sectionType,
243
243
  updateShopFloorDataFn,
244
244
  updateContainerFloorListDataFn,
245
245
  refreshFloorListDataFn,
246
246
  refreshFloorListDataBtnLabel,
247
247
  customErrorIsvFloorModule,
248
248
  luxuryFixedIndex = -1,
249
249
  isContainerListHasMarginBottom,
250
250
  switchConfig,
251
251
  } = props;
252
252
  const emptyFloorListHidden = switchConfig?.emptyFloorListHidden || false;
253
253
  const isSageShop = taroJdBaseInfo.info?.pageInfo?.isSageShop;
254
254
  const isHasMarginBottom = isContainerListHasMarginBottom ?? !isSageShop;
255
255
 
256
256
  const hasLiveForSageShop =
257
257
  isSageShop && taroJdBaseInfo.info?.pageInfo?.isJdShowNativeImmersivePlayer;
258
258
 
259
259
  const renderFloorItem = (
260
260
  item,
261
261
  floorItem,
262
262
  floorIndex,
263
263
  containerLayoutLeftRightMargin,
264
264
  lazyLoadState = false,
265
265
  index,
266
266
  borderStyle,
267
267
  ) => {
268
268
  return (
269
269
  <View
270
270
  className={classNames(shopContainerListStyle['d-floor-item'])}
271
271
  data-floor-uid={floorItem?.uid}
272
272
  data-floor-type={floorItem?.floorExtInfo?.moduleFlag || ''}
273
273
  data-lazy-load={lazyLoadState}
274
274
  key={floorItem.uid}
275
275
  id={`J_floor_${floorItem.uid}`}
276
276
  style={borderStyle}
277
277
  >
278
278
  {isChartH5 && (
279
279
  <View
280
280
  className={shopContainerListStyle['d-floor-chart-item']}
281
281
  id={`J_chart_floor_${floorItem?.uid}`}
282
282
  data-floor-uid={floorItem?.uid}
283
283
  data-floor-type={floorItem?.floorExtInfo?.moduleFlag || ''}
284
284
  />
285
285
  )}
286
286
  <FloorListItem
287
287
  floorIndex={floorIndex}
288
288
  floorData={floorItem}
289
289
  layoutLeftRightMargin={containerLayoutLeftRightMargin}
290
290
  containerBorderRadius={borderStyle}
291
291
  updateShopFloorDataFn={updateShopFloorDataFn}
292
292
  loadingEndComponentFn={loadingEndComponentFn}
293
293
  key={floorItem.uid}
294
294
  builtInComponents={builtInComponents}
295
295
  updateContainerFloorListDataFn={updateContainerFloorListDataFn}
296
296
  customErrorIsvFloorModule={customErrorIsvFloorModule}
297
297
  />
298
298
  {index === luxuryFixedIndex ? props.children : null}
299
299
  </View>
300
300
  );
301
301
  };
302
302
 
303
303
  const getFloorSetHeight = (item) => {
304
304
  const getHeight = item?.floorExtInfo?.floorHeight
305
305
  ? Number(item?.floorExtInfo?.floorHeight)
306
306
  : 200;
307
307
  return getHeight > 0 ? getHeight : 200;
308
308
  };
309
309
  const containerFloorListDataLen = containerFloorListData.length;
310
310
 
311
311
  const getNoDataContainerHeight = () => {
312
312
  const changeHeight = hasLiveForSageShop
313
313
  ? windowHeight
314
314
  : windowHeight -
315
315
  (isJdApp
316
316
  ? APP_SHOP_HEADER_NAV_BAR_BOTTOM_MENU_HEIGHT
317
317
  : M_SHOP_DOWNLOAD_HEADER_NAV_BAR_BOTTOM_MENU_HEIGHT);
318
318
  return {
319
319
  height: `${changeHeight}px`,
320
320
  };
321
321
  };
322
322
  return (
323
323
  <View
324
324
  className={classNames(className, shopContainerListStyle['d-shop-container-list'])}
325
325
  style={style}
326
326
  >
327
327
  <View
328
328
  id="J_shopContainerFloorList"
329
329
  className={
330
330
  isHasMarginBottom
331
331
  ? shopContainerListStyle['d-container-list-with-margin-bottom']
332
332
  : shopContainerListStyle['d-container-list-no-margin-bottom']
333
333
  }
334
334
  >
335
335
  {containerFloorListDataLen > 0 ? (
336
336
  containerFloorListData.map((item, index) => {
337
337
  const containerLayoutLeftRightMargin = (item.marginLeft || 0) + (item.marginRight || 0);
338
338
  const getContainerId = `J_container_${item.containerId}`;
339
339
  const borderStyle = getBorderStyle(
340
340
  item,
341
341
  index,
342
342
  containerFloorListData,
343
343
  containerFloorListDataLen,
344
344
  );
345
345
  return (
346
346
  <React.Fragment key={item.containerId + index}>
347
347
  {item.addLuxuryStyle ? (
348
348
  <View className={shopContainerListStyle['d-luxury-header']} />
349
349
  ) : null}
350
350
  {item.addLuxuryBackupStyle ? (
351
351
  <View
352
352
  style={{
353
353
  height: taroJdBaseInfo?.info?.sysInfo?.jdNativeHeaderHeight + 'px',
354
354
  }}
355
355
  className={shopContainerListStyle['d-luxury-header-black']}
356
356
  />
357
357
  ) : null}
358
358
  {typeof item?.renderExtendComponent === 'function'
359
359
  ? item?.renderExtendComponent(item?.floorExtendData)
360
360
  : null}
361
361
  <View
362
362
  className={classNames(
363
363
  shopContainerListStyle['d-container-item'],
364
364
  containerItemClass,
365
365
  )}
366
366
  id={getContainerId}
367
367
  key={item.containerId}
368
368
  data-container-id={item?.containerId}
369
369
  data-container-type={item?.typeCode}
370
370
  style={{
371
371
  marginBottom: item.marginBottom ? `${item.marginBottom}px` : 0,
372
372
  marginTop: item.marginTop ? `${item.marginTop}px` : 0,
373
373
  marginLeft: item.marginLeft ? `${item.marginLeft}px` : 0,
374
374
  marginRight: item.marginRight ? `${item.marginRight}px` : 0,
375
375
  borderTopLeftRadius: borderStyle?.borderTopLeftRadius || `0px`,
376
376
  borderTopRightRadius: borderStyle?.borderTopRightRadiu || `0px`,
377
377
  borderBottomLeftRadius: borderStyle?.borderBottomLeftRadius || `0px`,
378
378
  borderBottomRightRadius: borderStyle?.borderBottomRightRadius || `0px`,
379
379
  '--container-layout-left-right-margin': `${containerLayoutLeftRightMargin}px`,
380
380
  }}
381
381
  >
382
382
  {typeof item?.insertContainerStartComponent === 'function'
383
383
  ? item?.insertContainerStartComponent(item)
384
384
  : null}
385
385
  {item.floors &&
386
386
  item.floors.length > 0 &&
387
387
  item.floors?.map((floorItem, floorIndex) => {
388
388
  return index > lazyLoadStartIndex ? (
389
389
  <LazyLayoutLoad
390
390
  key={item.containerId}
391
391
  sectionType={sectionType}
392
392
  containerId={getContainerId}
393
393
  height={getFloorSetHeight(floorItem)}
394
394
  floorData={floorItem}
395
395
  >
396
396
  {renderFloorItem(
397
397
  item,
398
398
  floorItem,
399
399
  floorIndex,
400
400
  containerLayoutLeftRightMargin,
401
401
  true,
402
402
  index,
403
403
  borderStyle,
404
404
  )}
405
405
  </LazyLayoutLoad>
406
406
  ) : (
407
407
  renderFloorItem(
408
408
  item,
409
409
  floorItem,
410
410
  floorIndex,
411
411
  containerLayoutLeftRightMargin,
412
412
  false,
413
413
  index,
414
414
  borderStyle,
415
415
  )
416
416
  );
417
417
  })}
418
418
  </View>
419
419
  </React.Fragment>
420
420
  );
421
421
  })
422
422
  ) : !emptyFloorListHidden ? (
423
423
  <View
424
424
  className={classNames(shopContainerListStyle['d-container-list-no-data'], {
425
425
  [shopContainerListStyle['d-sage-shop-no-data']]: hasLiveForSageShop,
426
426
  })}
427
427
  style={getNoDataContainerHeight()}
428
428
  >
429
429
  <NetworkDataError
430
430
  netWorkShowType={NetWorkShowType.PART}
431
431
  netWorkDataType={NETWORK_DATA_TYPE.DATA_ERROR}
432
432
  backgroundColorWhite={hasLiveForSageShop}
433
433
  refreshCallBackFn={refreshFloorListDataFn ? refreshFloorListDataFn : null}
434
434
  btnLabel={refreshFloorListDataBtnLabel || ''}
435
435
  />
436
436
  </View>
437
437
  ) : null}
438
438
  </View>
439
439
  </View>
440
440
  );
441
441
  updateShopDataFn: null,