@conecli/cone-render 0.10.1-shop3.11 → 0.10.1-shop3.111

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 (115) hide show
  1. package/README.md +1 -1
  2. package/dist/api/index.ts +1 -1
  3. package/dist/common/accessibility.h5.ts +1 -0
  4. package/dist/common/accessibility.ts +1 -0
  5. package/dist/common/const.ts +1 -1
  6. package/dist/common/index.h5.ts +1 -1
  7. package/dist/common/index.jd.ts +1 -1
  8. package/dist/common/index.ts +1 -1
  9. package/dist/common/index.weapp.ts +1 -1
  10. package/dist/common/jdplayerSdk.weapp.tsx +1 -0
  11. package/dist/common/jssdk.ts +1 -1
  12. package/dist/common/jssdk.weapp.ts +1 -0
  13. package/dist/common/pageType.ts +1 -1
  14. package/dist/common/token/index.h5.ts +1 -1
  15. package/dist/common/token/token.jd.ts +1 -1
  16. package/dist/common/wxappApi.ascf.ts +1 -0
  17. package/dist/common/wxappApi.ts +1 -1
  18. package/dist/components/ErrorBoundary.tsx +1 -1
  19. package/dist/components/base/CommonFloorHead/index.tsx +1 -1
  20. package/dist/components/base/CountDown/index.tsx +1 -1
  21. package/dist/components/base/CustomScrollView/index.tsx +1 -1
  22. package/dist/components/base/CustomVideo/index.tsx +1 -1
  23. package/dist/components/base/CustomVideo/index.weapp.tsx +1 -0
  24. package/dist/components/base/ExposureSmart/index.h5.tsx +1 -1
  25. package/dist/components/base/ExposureSmart/index.tsx +1 -1
  26. package/dist/components/base/ExposureSmart/reporter.tsx +1 -1
  27. package/dist/components/base/InOrOutViewObserver/index.weapp.tsx +1 -0
  28. package/dist/components/base/ItemViewExposureSmart/index.tsx +1 -1
  29. package/dist/components/base/LazyLayoutLoad/index.tsx +1 -1
  30. package/dist/components/base/LazyLoadImage/index.h5.tsx +1 -1
  31. package/dist/components/base/MobileCommonHeader/index.tsx +1 -1
  32. package/dist/components/base/MobileCommonHeader/index.weapp.tsx +1 -0
  33. package/dist/components/base/NetworkDataError/const.ts +1 -1
  34. package/dist/components/base/NetworkDataError/index.module.scss +118 -72
  35. package/dist/components/base/NetworkDataError/index.tsx +1 -1
  36. package/dist/components/base/Price/Base/index.module.scss +12 -0
  37. package/dist/components/base/Price/Base/index.tsx +1 -1
  38. package/dist/components/base/Price/Double/index.module.scss +25 -1
  39. package/dist/components/base/Price/Double/index.tsx +1 -1
  40. package/dist/components/base/ShopLeGaoTag/index.h5.module.scss +35 -0
  41. package/dist/components/base/ShopLeGaoTag/index.h5.tsx +1 -0
  42. package/dist/components/base/ShopLeGaoTag/index.module.scss +33 -0
  43. package/dist/components/base/ShopLeGaoTag/index.tsx +1 -0
  44. package/dist/components/debug/DebugLayout/index.module.scss +2 -2
  45. package/dist/components/floorItem.tsx +1 -1
  46. package/dist/components/isv/Floor/index.tsx +1 -1
  47. package/dist/components/remoteFloorItem.tsx +1 -1
  48. package/dist/config/env.ts +1 -1
  49. package/dist/interface/common.ts +1 -1
  50. package/dist/interface/component.ts +1 -1
  51. package/dist/interface/jumpEventReport.ts +1 -1
  52. package/dist/interface/service.ts +1 -1
  53. package/dist/jumpEventReport/base.ts +1 -1
  54. package/dist/jumpEventReport/const.ts +1 -1
  55. package/dist/jumpEventReport/createReportFloorData.ts +1 -1
  56. package/dist/jumpEventReport/index.h5.ts +1 -1
  57. package/dist/jumpEventReport/index.jd.ts +1 -1
  58. package/dist/jumpEventReport/index.weapp.ts +1 -1
  59. package/dist/jumpEventReport/jdJumpJdApp.ts +1 -1
  60. package/dist/jumpEventReport/jumpUrlConfig/base.ts +1 -1
  61. package/dist/jumpEventReport/logEventConfig.h5.ts +1 -0
  62. package/dist/jumpEventReport/logEventConfig.ts +1 -1
  63. package/dist/jumpEventReport/web/report.ts +1 -1
  64. package/dist/jumpEventReport/web.base.ts +1 -1
  65. package/dist/jumpEventReport/web.jd.ts +1 -1
  66. package/dist/jumpEventReport/web.pc.ts +1 -1
  67. package/dist/jumpEventReport/web.tjm.ts +1 -1
  68. package/dist/jumpEventReport/web.wxapp.ts +1 -1
  69. package/dist/language/en_US.json +395 -0
  70. package/dist/language/zh_CN.json +395 -0
  71. package/dist/language/zh_HK.json +395 -0
  72. package/dist/libs/openShopBridge.js +161 -0
  73. package/dist/libs/openShopBridge.min.js +1 -0
  74. package/dist/libs/taroAppReport.js +2 -2
  75. package/dist/modules/ContainerFloorList/index.h5.module.scss +16 -2
  76. package/dist/modules/ContainerFloorList/index.h5.tsx +1 -1
  77. package/dist/modules/ContainerFloorList/index.tsx +1 -1
  78. package/dist/modules/DecorateContainerFloorList/index.weapp.tsx +1 -0
  79. package/dist/open/api/environment.ts +1 -1
  80. package/dist/open/api/shopMember.ts +1 -1
  81. package/dist/open/api/shopMember.weapp.ts +1 -0
  82. package/dist/open/api/track.ts +1 -1
  83. package/dist/open/api/util.ts +1 -1
  84. package/dist/open/components/index.ts +1 -1
  85. package/dist/open/index.ts +1 -1
  86. package/dist/sass/app.h5.scss +19 -2
  87. package/dist/sass/base.scss +8 -4
  88. package/dist/service/fetchGateway.ts +1 -1
  89. package/dist/service/fetchGateway.weapp.ts +1 -1
  90. package/dist/service/fetchJsonp.weapp.ts +1 -0
  91. package/dist/service/http/const.ts +1 -1
  92. package/dist/service/http/h5Http.ts +1 -1
  93. package/dist/service/http/httpInterceptors.weapp.ts +1 -0
  94. package/dist/service/requestServer.h5.ts +1 -1
  95. package/dist/service/requestServer.ts +1 -1
  96. package/dist/service/requestServer.weapp.ts +1 -1
  97. package/dist/utils/connectNativeJsBridge.ts +1 -1
  98. package/dist/utils/h5Utils.ts +1 -1
  99. package/dist/utils/harmonyCallRouter.h5.ts +1 -0
  100. package/dist/utils/harmonyCallRouter.ts +0 -0
  101. package/dist/utils/index.h5.ts +1 -1
  102. package/dist/utils/index.ts +1 -1
  103. package/dist/utils/index.weapp.ts +1 -1
  104. package/dist/utils/jumpExtMapUtil.ts +1 -0
  105. package/dist/utils/jumpExtMapUtil.weapp.ts +1 -0
  106. package/dist/utils/log.ts +1 -0
  107. package/dist/utils/{sColor.js → sColor.ts} +1 -1
  108. package/dist/utils/sColor.weapp.ts +1 -0
  109. package/dist/utils/utils.ts +1 -1
  110. package/dist/wxapp/common/address_api/address_api_v2.js +1 -0
  111. package/dist/wxapp/common/user_info.js +1 -1
  112. package/package.json +165 -141
  113. package/dist/jumpEventReport/web/wqshop.report.ts +0 -1
  114. package/dist/utils/priceUtils.js +0 -1
  115. /package/dist/utils/{jumpExtMapUtil.js → jumpExtMapUtil.h5.ts} +0 -0
@@ -1 +1 @@
1
- import React from 'react';
2
1
  NETWORK_DATA_TYPE,
3
2
  M_SHOP_DOWNLOAD_HEADER_NAV_BAR_BOTTOM_MENU_HEIGHT,
4
3
  APP_SHOP_HEADER_NAV_BAR_BOTTOM_MENU_HEIGHT,
5
4
  containerFloorListData: ComponentInterFace.ContainerItemData[];
6
5
  className?: string;
7
6
  containerItemClass?: object;
8
7
  style?: object;
9
8
  hasGoodsFeeds?: boolean;
10
9
  builtInComponents?: object;
11
10
  loadingEndComponentFn?: functionType;
12
11
  sectionType?: string;
13
12
  updateShopFloorDataFn?: functionType;
14
13
  updateContainerFloorListDataFn?: functionType;
15
14
  refreshFloorListDataFn?: functionType;
16
15
  refreshFloorListDataBtnLabel?: string;
17
16
  customErrorIsvFloorModule?: React.ReactElement;
18
17
  componentExtend?: React.ReactElement;
19
18
  luxuryFixedIndex?: number;
20
19
  isContainerListHasMarginBottom?: boolean;
21
20
  switchConfig?: {
22
21
  [key: string]: any;
23
22
  };
24
23
  const { windowHeight } = taroJdBaseInfo.info.sysInfo;
25
24
  const {
26
25
  className,
27
26
  style,
28
27
  containerItemClass = null,
29
28
  containerFloorListData,
30
29
  builtInComponents,
31
30
  loadingEndComponentFn,
32
31
  sectionType,
33
32
  updateShopFloorDataFn,
34
33
  updateContainerFloorListDataFn,
35
34
  refreshFloorListDataFn,
36
35
  refreshFloorListDataBtnLabel,
37
36
  customErrorIsvFloorModule,
38
37
  luxuryFixedIndex = -1,
39
38
  isContainerListHasMarginBottom,
40
39
  switchConfig,
41
40
  } = props;
42
41
  const emptyFloorListHidden = switchConfig?.emptyFloorListHidden || false;
43
42
  const isSageShop = taroJdBaseInfo.info?.pageInfo?.isSageShop;
44
43
  const isHasMarginBottom = isContainerListHasMarginBottom ?? !isSageShop;
45
44
 
46
45
  const hasLiveForSageShop =
47
46
  isSageShop && taroJdBaseInfo.info?.pageInfo?.isJdShowNativeImmersivePlayer;
48
47
 
49
48
  const renderFloorItem = (
50
49
  item,
51
50
  floorItem,
52
51
  floorIndex,
53
52
  containerLayoutLeftRightMargin,
54
53
  lazyLoadState = false,
55
54
  index,
56
55
  borderStyle,
57
56
  ) => {
58
57
  return (
59
58
  <View
60
59
  className={classNames(shopContainerListStyle['d-floor-item'])}
61
60
  data-floor-uid={floorItem?.uid}
62
61
  data-floor-type={floorItem?.floorExtInfo?.moduleFlag || ''}
63
62
  data-lazy-load={lazyLoadState}
64
63
  key={floorItem.uid}
65
64
  id={`J_floor_${floorItem.uid}`}
66
65
  style={borderStyle}
67
66
  >
68
67
  {isChartH5 && (
69
68
  <View
70
69
  className={shopContainerListStyle['d-floor-chart-item']}
71
70
  id={`J_chart_floor_${floorItem?.uid}`}
72
71
  data-floor-uid={floorItem?.uid}
73
72
  data-floor-type={floorItem?.floorExtInfo?.moduleFlag || ''}
74
73
  />
75
74
  )}
76
75
  <FloorListItem
77
76
  floorIndex={floorIndex}
78
77
  floorData={floorItem}
79
78
  layoutLeftRightMargin={containerLayoutLeftRightMargin}
80
79
  containerBorderRadius={borderStyle}
81
80
  updateShopFloorDataFn={updateShopFloorDataFn}
82
81
  loadingEndComponentFn={loadingEndComponentFn}
83
82
  key={floorItem.uid}
84
83
  builtInComponents={builtInComponents}
85
84
  updateContainerFloorListDataFn={updateContainerFloorListDataFn}
86
85
  customErrorIsvFloorModule={customErrorIsvFloorModule}
87
86
  />
88
87
  {index === luxuryFixedIndex ? props.children : null}
89
88
  </View>
90
89
  );
91
90
  };
92
91
 
93
92
  const getFloorSetHeight = (item) => {
94
93
  const getHeight = item?.floorExtInfo?.floorHeight
95
94
  ? Number(item?.floorExtInfo?.floorHeight)
96
95
  : 200;
97
96
  return getHeight > 0 ? getHeight : 200;
98
97
  };
99
98
  const containerFloorListDataLen = containerFloorListData.length;
100
99
 
101
100
  const getNoDataContainerHeight = () => {
102
101
  const changeHeight = hasLiveForSageShop
103
102
  ? windowHeight
104
103
  : windowHeight -
105
104
  (isJdApp
106
105
  ? APP_SHOP_HEADER_NAV_BAR_BOTTOM_MENU_HEIGHT
107
106
  : M_SHOP_DOWNLOAD_HEADER_NAV_BAR_BOTTOM_MENU_HEIGHT);
108
107
  return {
109
108
  height: `${changeHeight}px`,
110
109
  };
111
110
  };
112
111
  return (
113
112
  <View
114
113
  className={classNames(className, shopContainerListStyle['d-shop-container-list'])}
115
114
  style={style}
116
115
  >
117
116
  <View
118
117
  id="J_shopContainerFloorList"
119
118
  className={
120
119
  isHasMarginBottom
121
120
  ? shopContainerListStyle['d-container-list-with-margin-bottom']
122
121
  : shopContainerListStyle['d-container-list-no-margin-bottom']
123
122
  }
124
123
  >
125
124
  {containerFloorListDataLen > 0 ? (
126
125
  containerFloorListData.map((item, index) => {
127
126
  const containerLayoutLeftRightMargin = (item.marginLeft || 0) + (item.marginRight || 0);
128
127
  const getContainerId = `J_container_${item.containerId}`;
129
128
  const borderStyle = getBorderStyle(
130
129
  item,
131
130
  index,
132
131
  containerFloorListData,
133
132
  containerFloorListDataLen,
134
133
  );
135
134
  return (
136
135
  <React.Fragment key={item.containerId + index}>
137
136
  {item.addLuxuryStyle ? (
138
137
  <View className={shopContainerListStyle['d-luxury-header']} />
139
138
  ) : null}
140
139
  {item.addLuxuryBackupStyle ? (
141
140
  <View
142
141
  style={{
143
142
  height: taroJdBaseInfo?.info?.sysInfo?.jdNativeHeaderHeight + 'px',
144
143
  }}
145
144
  className={shopContainerListStyle['d-luxury-header-black']}
146
145
  />
147
146
  ) : null}
148
147
  {typeof item?.renderExtendComponent === 'function'
149
148
  ? item?.renderExtendComponent(item?.floorExtendData)
150
149
  : null}
151
150
  <View
152
151
  className={classNames(
153
152
  shopContainerListStyle['d-container-item'],
154
153
  containerItemClass,
155
154
  )}
156
155
  id={getContainerId}
157
156
  key={item.containerId}
158
157
  data-container-id={item?.containerId}
159
158
  data-container-type={item?.typeCode}
160
159
  style={{
161
160
  marginBottom: item.marginBottom ? `${item.marginBottom}px` : 0,
162
161
  marginTop: item.marginTop ? `${item.marginTop}px` : 0,
163
162
  marginLeft: item.marginLeft ? `${item.marginLeft}px` : 0,
164
163
  marginRight: item.marginRight ? `${item.marginRight}px` : 0,
165
164
  borderTopLeftRadius: borderStyle?.borderTopLeftRadius || `0px`,
166
165
  borderTopRightRadius: borderStyle?.borderTopRightRadiu || `0px`,
167
166
  borderBottomLeftRadius: borderStyle?.borderBottomLeftRadius || `0px`,
168
167
  borderBottomRightRadius: borderStyle?.borderBottomRightRadius || `0px`,
169
168
  '--container-layout-left-right-margin': `${containerLayoutLeftRightMargin}px`,
170
169
  }}
171
170
  >
172
171
  {typeof item?.insertContainerStartComponent === 'function'
173
172
  ? item?.insertContainerStartComponent(item)
174
173
  : null}
175
174
  {item.floors &&
176
175
  item.floors.length > 0 &&
177
176
  item.floors?.map((floorItem, floorIndex) => {
178
177
  return index > lazyLoadStartIndex ? (
179
178
  <LazyLayoutLoad
180
179
  key={item.containerId}
181
180
  sectionType={sectionType}
182
181
  containerId={getContainerId}
183
182
  height={getFloorSetHeight(floorItem)}
184
183
  floorData={floorItem}
185
184
  >
186
185
  {renderFloorItem(
187
186
  item,
188
187
  floorItem,
189
188
  floorIndex,
190
189
  containerLayoutLeftRightMargin,
191
190
  true,
192
191
  index,
193
192
  borderStyle,
194
193
  )}
195
194
  </LazyLayoutLoad>
196
195
  ) : (
197
196
  renderFloorItem(
198
197
  item,
199
198
  floorItem,
200
199
  floorIndex,
201
200
  containerLayoutLeftRightMargin,
202
201
  false,
203
202
  index,
204
203
  borderStyle,
205
204
  )
206
205
  );
207
206
  })}
208
207
  </View>
209
208
  </React.Fragment>
210
209
  );
211
210
  })
212
211
  ) : !emptyFloorListHidden ? (
213
212
  <View
214
213
  className={classNames(shopContainerListStyle['d-container-list-no-data'], {
215
214
  [shopContainerListStyle['d-sage-shop-no-data']]: hasLiveForSageShop,
216
215
  })}
217
216
  style={getNoDataContainerHeight()}
218
217
  >
219
218
  <NetworkDataError
220
219
  netWorkShowType={NetWorkShowType.PART}
221
220
  netWorkDataType={NETWORK_DATA_TYPE.DATA_ERROR}
222
221
  backgroundColorWhite={hasLiveForSageShop}
223
222
  refreshCallBackFn={refreshFloorListDataFn ? refreshFloorListDataFn : null}
224
223
  btnLabel={refreshFloorListDataBtnLabel || ''}
225
224
  />
226
225
  </View>
227
226
  ) : null}
228
227
  </View>
229
228
  </View>
230
229
  );
231
230
  updateShopDataFn: null,
231
+ import React from 'react';
232
232
  NETWORK_DATA_TYPE,
233
233
  M_SHOP_DOWNLOAD_HEADER_NAV_BAR_BOTTOM_MENU_HEIGHT,
234
234
  APP_SHOP_HEADER_NAV_BAR_BOTTOM_MENU_HEIGHT,
235
235
  (window.navigator.userAgent.includes('jdappPuppeteer') && window?.loadPuppeteerPageLocalData) ||
236
236
  window.location.href.includes('loadMasterJsType=xingyun');
237
237
  memberBaseInfo?: {
238
238
  shopId?: string;
239
239
  venderId?: string;
240
240
  channel?: string;
241
241
  venderType?: string;
242
242
  showDefaultModule?: boolean;
243
243
  customerLevel?: string;
244
244
  isUserForMember?: boolean;
245
245
  isLv0?: boolean;
246
246
  levelZeroMenuUrl?: string;
247
247
  totalRefresh?: functionType;
248
248
  callOpenCardPopPage?: functionType;
249
249
  };
250
250
  source?: string;
251
251
  containerFloorListData: ComponentInterFace.ContainerItemData[];
252
252
  extendInfoData?: object;
253
253
  className?: string;
254
254
  containerItemClass?: object;
255
255
  style?: object;
256
256
  hasGoodsFeeds?: boolean;
257
257
  builtInComponents?: object;
258
258
  loadingEndComponentFn?: functionType;
259
259
  sectionType?: string;
260
260
  updateShopFloorDataFn?: functionType;
261
261
  updateContainerFloorListDataFn?: functionType;
262
262
  refreshFloorListDataFn?: functionType;
263
263
  refreshFloorListDataBtnLabel?: string;
264
264
  customErrorIsvFloorModule?: React.ReactElement;
265
265
  componentExtend?: React.ReactElement;
266
266
  luxuryFixedIndex?: number;
267
267
  isContainerListHasMarginBottom?: boolean;
268
268
  switchConfig?: {
269
269
  [key: string]: any;
270
270
  };
271
271
  containerFloorListPageInfo?: {
272
272
  hasNextPage: boolean;
273
273
  isByPage: boolean;
274
274
  };
275
275
  const { windowHeight, screenHeight } = taroJdBaseInfo.info.sysInfo;
276
276
  const {
277
277
  source,
278
278
  className,
279
279
  style,
280
280
  memberBaseInfo,
281
281
  containerItemClass = null,
282
282
  containerFloorListData,
283
283
  extendInfoData,
284
284
  builtInComponents,
285
285
  loadingEndComponentFn,
286
286
  sectionType,
287
287
  updateShopFloorDataFn,
288
288
  updateContainerFloorListDataFn,
289
289
  refreshFloorListDataFn,
290
290
  refreshFloorListDataBtnLabel,
291
291
  customErrorIsvFloorModule,
292
292
  luxuryFixedIndex = -1,
293
293
  isContainerListHasMarginBottom,
294
294
  switchConfig,
295
295
  containerFloorListPageInfo = {
296
296
  hasNextPage: false,
297
297
  isByPage: false,
298
298
  },
299
299
  } = props;
300
300
  const { hasNextPage, isByPage } = containerFloorListPageInfo;
301
301
  const isContainerListHasMore = isCheckFloorListByPage && hasNextPage && isByPage;
302
302
  const emptyFloorListHidden = switchConfig?.emptyFloorListHidden || false;
303
303
  const isSageShop = taroJdBaseInfo.info?.pageInfo?.isSageShop;
304
304
  const isHasMarginBottom = isContainerListHasMarginBottom ?? !isSageShop;
305
305
 
306
306
  const hasLiveForSageShop =
307
307
  isSageShop && taroJdBaseInfo.info?.pageInfo?.isJdShowNativeImmersivePlayer;
308
308
 
309
309
  const renderFloorItem = (
310
310
  item,
311
311
  floorItem,
312
312
  floorIndex,
313
313
  containerLayoutLeftRightMargin,
314
314
  lazyLoadState = false,
315
315
  index,
316
316
  borderStyle,
317
317
  ) => {
318
318
  return (
319
319
  <View
320
320
  className={classNames(shopContainerListStyle['d-floor-item'])}
321
321
  data-floor-uid={floorItem?.uid}
322
322
  data-floor-type={floorItem?.floorExtInfo?.moduleFlag || ''}
323
323
  data-lazy-load={lazyLoadState}
324
324
  key={floorItem.uid}
325
325
  id={`J_floor_${floorItem.uid}`}
326
326
  style={borderStyle}
327
327
  >
328
328
  {isChartH5 && (
329
329
  <View
330
330
  className={shopContainerListStyle['d-floor-chart-item']}
331
331
  id={`J_chart_floor_${floorItem?.uid}`}
332
332
  data-floor-uid={floorItem?.uid}
333
333
  data-floor-type={floorItem?.floorExtInfo?.moduleFlag || ''}
334
334
  />
335
335
  )}
336
336
  <FloorListItem
337
337
  memberBaseInfo={memberBaseInfo}
338
338
  source={source}
339
339
  floorIndex={floorIndex}
340
340
  floorData={floorItem}
341
341
  containerIndex={index}
342
342
  layoutLeftRightMargin={containerLayoutLeftRightMargin}
343
343
  containerBorderRadius={borderStyle}
344
344
  updateShopFloorDataFn={updateShopFloorDataFn}
345
345
  loadingEndComponentFn={loadingEndComponentFn}
346
346
  extendInfoData={
347
347
  passExtendInfoModuleWhiteList.includes(floorItem?.floorExtInfo?.moduleFlag)
348
348
  ? extendInfoData
349
349
  : undefined
350
350
  }
351
351
  key={floorItem.uid}
352
352
  builtInComponents={builtInComponents}
353
353
  updateContainerFloorListDataFn={updateContainerFloorListDataFn}
354
354
  customErrorIsvFloorModule={customErrorIsvFloorModule}
355
355
  />
356
356
  {index === luxuryFixedIndex ? props.children : null}
357
357
  {floorItem?.inspectResult === '1' && (
358
358
  <View className={shopContainerListStyle['d-floor-inspect-mask']} />
359
359
  )}
360
360
  </View>
361
361
  );
362
362
  };
363
363
 
364
364
  const getFloorSetHeight = (item) => {
365
365
  const getHeight = item?.floorExtInfo?.floorHeight
366
366
  ? Number(item?.floorExtInfo?.floorHeight)
367
367
  : 200;
368
368
  return getHeight > 0 ? getHeight : 200;
369
369
  };
370
370
  const containerFloorListDataLen = containerFloorListData.length;
371
371
 
372
372
  const getNoDataContainerHeight = () => {
373
373
  const getWindowHeight = windowHeight > 10 ? windowHeight : screenHeight;
374
374
  const changeHeight = hasLiveForSageShop
375
375
  ? getWindowHeight
376
376
  : getWindowHeight -
377
377
  (isJdApp
378
378
  ? APP_SHOP_HEADER_NAV_BAR_BOTTOM_MENU_HEIGHT
379
379
  : M_SHOP_DOWNLOAD_HEADER_NAV_BAR_BOTTOM_MENU_HEIGHT);
380
380
  return {
381
381
  height: `${changeHeight}px`,
382
382
  };
383
383
  };
384
384
  return (
385
385
  <View
386
386
  id="J_shopContainerFloorList"
387
387
  className={classNames(
388
388
  className,
389
389
  shopContainerListStyle['d-shop-container-list'],
390
390
  isHasMarginBottom
391
391
  ? shopContainerListStyle['d-container-list-with-margin-bottom']
392
392
  : shopContainerListStyle['d-container-list-no-margin-bottom'],
393
393
  )}
394
394
  style={style}
395
395
  >
396
396
  {containerFloorListDataLen > 0 ? (
397
397
  <>
398
398
  {containerFloorListData.map((item, index) => {
399
399
  const containerLayoutLeftRightMargin = (item.marginLeft || 0) + (item.marginRight || 0);
400
400
  const getContainerId = `J_container_${item.containerId}`;
401
401
  const getDealContainerFloorListLen = isContainerListHasMore
402
402
  ? 1000
403
403
  : containerFloorListDataLen;
404
404
  const borderStyle = getBorderStyle(
405
405
  item,
406
406
  index,
407
407
  containerFloorListData,
408
408
  getDealContainerFloorListLen,
409
409
  );
410
410
  return (
411
411
  <React.Fragment key={item.containerId + index}>
412
412
  {item.addLuxuryStyle ? (
413
413
  <View className={shopContainerListStyle['d-luxury-header']} />
414
414
  ) : null}
415
415
  {item.addLuxuryBackupStyle ? (
416
416
  <View
417
417
  style={{
418
418
  height: taroJdBaseInfo?.info?.sysInfo?.jdNativeHeaderHeight + 'px',
419
419
  }}
420
420
  className={shopContainerListStyle['d-luxury-header-black']}
421
421
  />
422
422
  ) : null}
423
423
  {typeof item?.renderExtendComponent === 'function'
424
424
  ? item?.renderExtendComponent(item?.floorExtendData)
425
425
  : null}
426
426
  <View
427
427
  className={classNames(
428
428
  shopContainerListStyle['d-container-item'],
429
429
  containerItemClass,
430
430
  )}
431
431
  id={getContainerId}
432
432
  key={item.containerId}
433
433
  data-container-id={item?.containerId}
434
434
  data-container-type={item?.typeCode}
435
435
  data-container-index={index}
436
436
  style={{
437
437
  marginBottom: item.marginBottom ? `${item.marginBottom}px` : 0,
438
438
  marginTop: item.marginTop ? `${item.marginTop}px` : 0,
439
439
  marginLeft: item.marginLeft ? `${item.marginLeft}px` : 0,
440
440
  marginRight: item.marginRight ? `${item.marginRight}px` : 0,
441
441
  borderTopLeftRadius: borderStyle?.borderTopLeftRadius || `0px`,
442
442
  borderTopRightRadius: borderStyle?.borderTopRightRadiu || `0px`,
443
443
  borderBottomLeftRadius: borderStyle?.borderBottomLeftRadius || `0px`,
444
444
  borderBottomRightRadius: borderStyle?.borderBottomRightRadius || `0px`,
445
445
  '--container-layout-left-right-margin': `${containerLayoutLeftRightMargin}px`,
446
446
  }}
447
447
  >
448
448
  {typeof item?.insertContainerStartComponent === 'function'
449
449
  ? item?.insertContainerStartComponent(item)
450
450
  : null}
451
451
  {item.floors &&
452
452
  item.floors.length > 0 &&
453
453
  item.floors?.map((floorItem, floorIndex) => {
454
454
  return index > lazyLoadStartIndex ? (
455
455
  <LazyLayoutLoad
456
456
  key={item.containerId}
457
457
  sectionType={sectionType}
458
458
  containerId={getContainerId}
459
459
  height={getFloorSetHeight(floorItem)}
460
460
  floorData={floorItem}
461
461
  >
462
462
  {renderFloorItem(
463
463
  item,
464
464
  floorItem,
465
465
  floorIndex,
466
466
  containerLayoutLeftRightMargin,
467
467
  true,
468
468
  index,
469
469
  borderStyle,
470
470
  )}
471
471
  </LazyLayoutLoad>
472
472
  ) : (
473
473
  renderFloorItem(
474
474
  item,
475
475
  floorItem,
476
476
  floorIndex,
477
477
  containerLayoutLeftRightMargin,
478
478
  false,
479
479
  index,
480
480
  borderStyle,
481
481
  )
482
482
  );
483
483
  })}
484
484
  </View>
485
485
  </React.Fragment>
486
486
  );
487
487
  })}
488
488
  </>
489
489
  ) : !emptyFloorListHidden ? (
490
490
  <View
491
491
  className={classNames(shopContainerListStyle['d-container-list-no-data'], {
492
492
  [shopContainerListStyle['d-sage-shop-no-data']]: hasLiveForSageShop,
493
493
  })}
494
494
  style={getNoDataContainerHeight()}
495
495
  >
496
496
  <NetworkDataError
497
497
  netWorkShowType={NetWorkShowType.PART}
498
498
  netWorkDataType={NETWORK_DATA_TYPE.DATA_ERROR}
499
499
  backgroundColorWhite={hasLiveForSageShop}
500
500
  refreshCallBackFn={refreshFloorListDataFn ? refreshFloorListDataFn : null}
501
501
  btnLabel={refreshFloorListDataBtnLabel || ''}
502
502
  />
503
503
  </View>
504
504
  ) : null}
505
505
  </View>
506
506
  );
507
507
  updateShopDataFn: null,