@conecli/cone-render 0.10.1-shop-beta.4 → 0.10.1-shop-beta.6

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 (102) hide show
  1. package/dist/api/index.ts +1 -1
  2. package/dist/common/const.ts +1 -1
  3. package/dist/common/environmentType.ts +1 -1
  4. package/dist/common/index.h5.ts +1 -1
  5. package/dist/common/index.jd.ts +1 -1
  6. package/dist/common/index.ts +1 -1
  7. package/dist/common/index.weapp.ts +1 -1
  8. package/dist/common/pageType.ts +1 -1
  9. package/dist/common/sgmCustomCode.ts +1 -1
  10. package/dist/common/token/token.jd.ts +1 -1
  11. package/dist/components/ErrorBoundary.tsx +1 -1
  12. package/dist/components/base/CommonFloorHead/index.module.scss +126 -111
  13. package/dist/components/base/CommonFloorHead/index.tsx +1 -1
  14. package/dist/components/base/CountDown/index.module.scss +49 -44
  15. package/dist/components/base/CountDown/index.tsx +1 -1
  16. package/dist/components/base/CustomScrollView/index-back.tsx +1 -0
  17. package/dist/components/base/CustomScrollView/index.tsx +1 -1
  18. package/dist/components/base/CustomVideo/common.ts +1 -0
  19. package/dist/components/base/CustomVideo/index.tsx +1 -1
  20. package/dist/components/base/Dialog/index.module.scss +11 -0
  21. package/dist/components/base/ExposureSmart/index.h5.module.scss +12 -2
  22. package/dist/components/base/ExposureSmart/index.h5.tsx +1 -1
  23. package/dist/components/base/ExposureSmart/reporter.tsx +1 -1
  24. package/dist/components/base/InOrOutViewObserver/index.tsx +1 -1
  25. package/dist/components/base/InViewRender/index.tsx +1 -1
  26. package/dist/components/base/InViewRender/index.weapp.tsx +1 -1
  27. package/dist/components/base/ItemViewExposureSmart/index.module.scss +2 -2
  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/LazyLayoutLoad/index.weapp.tsx +1 -1
  31. package/dist/components/base/LazyLoadImage/index.h5.module.scss +11 -3
  32. package/dist/components/base/LazyLoadImage/index.h5.tsx +1 -1
  33. package/dist/components/base/LazyLoadImage/index.tsx +1 -1
  34. package/dist/components/base/MobileCommonHeader/index.tsx +1 -1
  35. package/dist/components/base/NetworkDataError/index.module.scss +3 -0
  36. package/dist/components/base/NetworkDataError/index.tsx +1 -1
  37. package/dist/components/base/Price/Base/index.tsx +1 -1
  38. package/dist/components/base/Price/Double/index.module.scss +8 -0
  39. package/dist/components/base/Price/Double/index.tsx +1 -1
  40. package/dist/components/decorate/DecorateFloorModule/index.module.scss +11 -0
  41. package/dist/components/decorate/DecorateFloorModule/index.tsx +1 -1
  42. package/dist/components/decorate/EmptyFloorModule/index.tsx +1 -1
  43. package/dist/components/decorate/PlaceHolder/index.tsx +1 -1
  44. package/dist/components/floorItem.jd.tsx +1 -1
  45. package/dist/components/floorItem.tsx +1 -1
  46. package/dist/components/floorItem.weapp.tsx +1 -1
  47. package/dist/components/isv/Floor/index.tsx +1 -1
  48. package/dist/components/remoteFloorItem.tsx +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/index.jd.ts +1 -1
  56. package/dist/jumpEventReport/index.weapp.ts +1 -1
  57. package/dist/jumpEventReport/jdJumpJdApp.ts +1 -1
  58. package/dist/jumpEventReport/jumpUrlConfig/base.ts +1 -1
  59. package/dist/jumpEventReport/logEventConfig.ts +1 -1
  60. package/dist/jumpEventReport/web/report.ts +1 -1
  61. package/dist/jumpEventReport/web.base.ts +1 -1
  62. package/dist/jumpEventReport/web.jd.ts +1 -1
  63. package/dist/jumpEventReport/web.jdb.ts +1 -1
  64. package/dist/jumpEventReport/web.jdjch.ts +1 -1
  65. package/dist/jumpEventReport/web.jxwxapp.ts +1 -1
  66. package/dist/jumpEventReport/web.pc.ts +1 -1
  67. package/dist/jumpEventReport/web.tjapp.ts +1 -1
  68. package/dist/jumpEventReport/web.tjm.ts +1 -1
  69. package/dist/jumpEventReport/web.wxapp.ts +1 -1
  70. package/dist/libs/taroAppReport.js +2 -2
  71. package/dist/modules/ContainerFloorList/index.h5.module.scss +66 -52
  72. package/dist/modules/ContainerFloorList/index.h5.tsx +1 -1
  73. package/dist/modules/ContainerFloorList/index.tsx +1 -1
  74. package/dist/open/api/device.ts +1 -1
  75. package/dist/open/api/request.ts +1 -1
  76. package/dist/open/api/shopMember.ts +1 -1
  77. package/dist/open/api/util.ts +1 -1
  78. package/dist/open/components/index.ts +1 -1
  79. package/dist/sass/app.h5.scss +275 -221
  80. package/dist/sass/base.scss +183 -137
  81. package/dist/service/fetchGateway.ts +1 -1
  82. package/dist/service/fetchGateway.weapp.ts +1 -0
  83. package/dist/service/http/colorSign.ts +1 -1
  84. package/dist/service/http/const.ts +1 -1
  85. package/dist/service/http/h5Http.ts +1 -0
  86. package/dist/service/http/index.h5.ts +1 -0
  87. package/dist/service/requestServer.h5.ts +1 -0
  88. package/dist/service/requestServer.ts +1 -1
  89. package/dist/service/requestServer.weapp.ts +1 -0
  90. package/dist/utils/connectNativeJsBridge.ts +1 -1
  91. package/dist/utils/connectNativeJsBridge.weapp.ts +1 -1
  92. package/dist/utils/h5Utils.ts +1 -1
  93. package/dist/utils/index.h5.ts +1 -1
  94. package/dist/utils/index.ts +1 -1
  95. package/dist/utils/index.weapp.ts +1 -1
  96. package/dist/utils/jumpExtMapUtil.js +1 -0
  97. package/dist/utils/sColor.js +1 -0
  98. package/dist/utils/sgmCodeUtils.ts +1 -1
  99. package/dist/utils/taroRenderUtil.ts +1 -1
  100. package/dist/utils/utils.ts +1 -1
  101. package/package.json +53 -28
  102. package/dist/utils/memberFormatUtils.js +0 -1
@@ -1 +1 @@
1
- import Taro from '@tarojs/taro'
2
1
  console.log('PageScrollEnd fire')
3
2
  Taro.eventCenter.trigger(TaroEventType.PAGE_SCROLL_END, options)
4
3
  Taro.eventCenter.trigger(TaroEventType.PAGE_INIT_EXPOSURE, options)
4
+ import Taro from '@tarojs/taro'
5
5
  console.log('PageScrollEnd fire')
6
6
  Taro.eventCenter.trigger(TaroEventType.PAGE_SCROLL_END, options)
7
7
  Taro.eventCenter.trigger(TaroEventType.PAGE_INIT_EXPOSURE, options)
@@ -1 +1 @@
1
- import {
2
1
  isApp,
3
2
  isIOS,
4
3
  getAppVersion,
5
4
  version,
6
5
  getUUID,
7
6
  getUrlQuery,
8
7
  assign,
9
8
  isString,
10
9
  isObject,
11
10
  serialize,
12
11
  isAndroid,
13
12
  versionCompare,
14
13
  CHANNEL_TYPE,
15
14
  JDShopViewBusinessPathType,
16
15
  JDShopViewBusinessPathList,
17
16
  SECTION_HOME_TAB_NAME_TYPE,
18
17
  SECTION_HOME_TAB_TYPE,
19
18
  parseQueryUrlObj,
20
19
  if (window?.__sgm__) {
21
20
  resolve(true)
22
21
  } else {
23
22
  if (isSgmReadyError) {
24
23
  console.log("当前sgm初始化失败")
25
24
  reject(false)
26
25
  } else {
27
26
  ready('__sgm__', 2000).then(() => {
28
27
  isSgmReadyError = false
29
28
  console.log("当前sgm初始化成功")
30
29
  resolve(true)
31
30
  }).catch(() => {
32
31
  isSgmReadyError = true
33
32
  console.log("当前sgm初始化失败")
34
33
  reject(false)
35
34
  })
36
35
  }
37
36
  }
38
37
  try {
39
38
  return JSON.parse(decodeURIComponent(getUrlQuery('cookie')))
40
39
  } catch (e) {
41
40
  return {}
42
41
  }
43
42
  isWxMiniH5View && urlCookie['wxapp_type'] == '1'
44
43
  if (isH5AdnJxMini) {
45
44
  return 'jxxcx'
46
45
  } else if (isTJApp) {
47
46
  return 'tjapp'
48
47
  } else if (isTjM) {
49
48
  return 'tjm'
50
49
  } else if (isTjJxM) {
51
50
  return 'jxh5'
52
51
  }
53
52
  return ''
54
53
  if (isJdApp) {
55
54
  isIosDevice
56
55
  ? e && e.stopPropagation()
57
56
  : androidDeviceStopNativeScrollEvent(state)
58
57
  }
59
58
  isJdApp &&
60
59
  isAndroidDevice &&
61
60
  window?.JdAndroid &&
62
61
  window?.JdAndroid.requestEvent(state)
63
62
  if (isH5AndJdShopView) {
64
63
  return (
65
64
  CHANNEL_TYPE[currentChannel] ||
66
65
  CHANNEL_TYPE[JDShopViewBusinessPathType.HOME]
67
66
  )
68
67
  }
69
68
  return null
70
69
  isH5 && isJdApp && ['/app/home', '/app/classify', '/member/shopcard','/favorite/list', '/favorite/home'].includes(urlPathname)
71
70
  isH5 && isJdApp && !['/app/home'].includes(urlPathname)
72
71
  return isJdApp ? versionCompare(nowVersion, compareVersion) : -2
73
72
  getSgmReadyPromise().then(() => {
74
73
  if (
75
74
  customObj.hasOwnProperty('code') &&
76
75
  customObj.code.indexOf(NO_ENVIRONMENT_AND_PAGE_TYPE_FLAG) !== -1
77
76
  ) {
78
77
  const originCode = customObj.code.substring(
79
78
  NO_ENVIRONMENT_AND_PAGE_TYPE_FLAG.length,
80
79
  customObj.code.length,
81
80
  )
82
81
  customObj['code'] = getSgmCustomCode(originCode)
83
82
  }
84
83
  const getCustomObj = {
85
84
  type: 1,
86
85
  code: 'all',
87
86
  cost1: 1,
88
87
  ...customObj
89
88
  }
90
89
  try {
91
90
  window.__sgm__.custom(getCustomObj, '9HwAEg@fTtWBB3EnwA5VgLT')
92
91
  } catch (e) {
93
92
  console.log("当前sgm上报异常, 原始数据为",JSON.stringify(customObj))
94
93
  }
95
94
  }).catch(() => {
96
95
  console.error("当前页面sgm加载异常,无法进行异常上报, 原始数据为",JSON.stringify(customObj))
97
96
  })
98
97
  if(isJdAndAndroidDevice && typeof displayObj === 'object'){
99
98
  const deviceRatio = window?.devicePixelRatio
100
99
  Object.keys(displayObj).forEach(key => {
101
100
  if(key === 'nativeHeaderHeight'){
102
101
  displayObj[key] = Math.ceil(displayObj[key] / (deviceRatio * deviceRatio) - 2)
103
102
  }else {
104
103
  displayObj[key] = Math.ceil(displayObj[key] / deviceRatio)
105
104
  }
106
105
  })
107
106
  }
108
107
  return displayObj
108
+ import {
109
109
  isApp,
110
110
  isIOS,
111
111
  getAppVersion,
112
112
  version,
113
113
  getUUID,
114
114
  getUrlQuery,
115
115
  assign,
116
116
  isString,
117
117
  isObject,
118
118
  serialize,
119
119
  isAndroid,
120
120
  versionCompare,
121
121
  isIPad,
122
122
  isTablet,
123
123
  CHANNEL_TYPE,
124
124
  JDShopViewBusinessPathType,
125
125
  SECTION_HOME_TAB_NAME_TYPE,
126
126
  SECTION_HOME_TAB_TYPE,
127
127
  DraBuryPointFlags,
128
128
  MPAAS_CONFIG_APP_VERSION,
129
129
  new Promise((resolve, reject) => {
130
130
  if (window?.__sgm__) {
131
131
  resolve(true);
132
132
  } else {
133
133
  if (isSgmReadyError) {
134
134
  console.log('当前sgm初始化失败');
135
135
  reject(false);
136
136
  } else {
137
137
  ready('__sgm__', 2000)
138
138
  .then(() => {
139
139
  isSgmReadyError = false;
140
140
  console.log('当前sgm初始化成功');
141
141
  resolve(true);
142
142
  })
143
143
  .catch(() => {
144
144
  isSgmReadyError = true;
145
145
  console.log('当前sgm初始化失败');
146
146
  reject(false);
147
147
  });
148
148
  }
149
149
  }
150
150
  });
151
151
  console.log(message);
152
152
  reject(new Error(message));
153
153
  return ready('dra', 2000)
154
154
  .then(() => {
155
155
  isNewDraSdkReadyError = false;
156
156
  console.log('当前新版烛龙sdk初始化成功');
157
157
  return true;
158
158
  })
159
159
  .catch(() => {
160
160
  isNewDraSdkReadyError = true;
161
161
  throw new Error('当前新版烛龙sdk初始化失败');
162
162
  });
163
163
  return new Promise((resolve, reject) => {
164
164
  if (window?.dra) {
165
165
  resolve(true);
166
166
  } else if (isNewDraSdkReadyError) {
167
167
  logAndReject('当前新版烛龙sdk初始化失败', reject);
168
168
  } else {
169
169
  initializeDraSdk()
170
170
  .then(resolve)
171
171
  .catch((error) => logAndReject(error.message, reject));
172
172
  }
173
173
  });
174
174
  if (window.screen?.orientation?.type) {
175
175
  console.info(
176
176
  '通过window.screen?.orientation?.type方式获取当前pad屏幕是否是横屏',
177
177
  window.screen?.orientation?.type,
178
178
  '测试低版本通过window?.orientation方式获取当前pad屏幕是否是横屏,角度[90, -90]',
179
179
  window?.orientation,
180
180
  );
181
181
  return /landscape/i.test(window.screen.orientation.type);
182
182
  } else if (window?.orientation) {
183
183
  console.info(
184
184
  '通过window?.orientation方式获取当前pad屏幕是否是横屏,角度[90, -90]',
185
185
  window?.orientation,
186
186
  );
187
187
  return [90, -90].includes(window?.orientation);
188
188
  } else {
189
189
  console.info(
190
190
  '通过window.matchMedia((orientation: landscape))?.matches方式获取当前pad屏幕是否是横屏',
191
191
  window.matchMedia('(orientation: landscape)')?.matches,
192
192
  );
193
193
  return window.matchMedia('(orientation: landscape)')?.matches;
194
194
  }
195
195
  try {
196
196
  return JSON.parse(decodeURIComponent(getUrlQuery('cookie')));
197
197
  } catch (e) {
198
198
  return {};
199
199
  }
200
200
  window.shopGlobalSwitch?.isH5AndJdShopViewH5ScrollVersion || '';
201
201
  !!document.getElementById('mallType') &&
202
202
  !!document.getElementById('pageInstance_id') &&
203
203
  !!document.getElementById('pageInstance_appId');
204
204
  isTjScence &&
205
205
  isWxMiniH5View &&
206
206
  (urlCookie['wxapp_type'] == '2' ||
207
207
  cookie.get('wxapp_type') == '2' ||
208
208
  parseQueryUrlObj['tjChannel'] === 'jxxcx');
209
209
  isTjScence && isWxMiniH5View && parseQueryUrlObj['sourceApp'] === 'haowujie';
210
210
  isTjScence &&
211
211
  (parseQueryUrlObj['appCode'] === 'ms27cba806' ||
212
212
  document.referrer?.match(/(?:https?:)?\/\/(?:kpl\.m|css|cs)\.jd\.com/i)?.length ||
213
213
  (parseQueryUrlObj['sourceApp'] == 'jsb-m' && parseQueryUrlObj['appCode'] === '') ||
214
214
  parseQueryUrlObj['tjChannel'] === 'tjm');
215
215
  if (isH5AdnJxMini) {
216
216
  return 'jxxcx';
217
217
  } else if (isTJApp) {
218
218
  return 'tjapp';
219
219
  } else if (isTjM) {
220
220
  return 'tjm';
221
221
  } else if (isTjJxM) {
222
222
  return 'jxh5';
223
223
  }
224
224
  return '';
225
225
  START: 'start',
226
226
  MOVE: 'move',
227
227
  END: 'end',
228
228
  x: 0,
229
229
  y: 0,
230
230
  const startX = startPos.x;
231
231
  const startY = startPos.y;
232
232
  const endX = touchEvent.clientX;
233
233
  const endY = touchEvent.clientY;
234
234
  const dy = startY - endY;
235
235
  const dx = endX - startX;
236
236
  let result = 0;
237
237
  if (Math.abs(dx) < 2 && Math.abs(dy) < 2) {
238
238
  return result;
239
239
  }
240
240
  const angle = (Math.atan2(dy, dx) * 180) / Math.PI;
241
241
  if (angle >= -45 && angle < 45) {
242
242
  result = 4;
243
243
  } else if (angle >= 45 && angle < 135) {
244
244
  result = 1;
245
245
  } else if (angle >= -135 && angle < -45) {
246
246
  result = 2;
247
247
  } else if ((angle >= 135 && angle <= 180) || (angle >= -180 && angle < -135)) {
248
248
  result = 3;
249
249
  }
250
250
  return result;
251
251
  e: Event,
252
252
  touchType = TouchType.START,
253
253
  stopTouchDocumentScrollState = false,
254
254
  if (isJdApp && e) {
255
255
  const touchEvent = e?.originalEvent?.targetTouches[0] || e?.targetTouches[0];
256
256
  let _touchState = touchType;
257
257
  let _getDirectionState = false;
258
258
  if (touchType === TouchType.START) {
259
259
  StopNativeScrollEventPos.x = touchEvent.clientX;
260
260
  StopNativeScrollEventPos.y = touchEvent.clientY;
261
261
  } else if (touchType === TouchType.MOVE) {
262
262
  _getDirectionState = [1, 2].includes(
263
263
  touchMoveGetSlideDirection(StopNativeScrollEventPos, touchEvent),
264
264
  );
265
265
  if (_getDirectionState) {
266
266
  _touchState = TouchType.END;
267
267
  }
268
268
  console.log(
269
269
  '对外提供阻止横滑方法,当前touchType为move,设定1、2向上或向下方向,当前计算后的滑动是否为纵向',
270
270
  _getDirectionState,
271
271
  );
272
272
  } else if (touchType === TouchType.END) {
273
273
  StopNativeScrollEventPos.x = 0;
274
274
  StopNativeScrollEventPos.y = 0;
275
275
  }
276
276
  isIosDevice
277
277
  ? iosDeviceStopNativeScrollEvent(e, _touchState, stopTouchDocumentScrollState)
278
278
  : androidDeviceStopNativeScrollEvent(_touchState, stopTouchDocumentScrollState);
279
279
  if (
280
280
  !isAppHomeForMarketPage &&
281
281
  stopTouchDocumentScrollState &&
282
282
  _touchState === TouchType.START
283
283
  ) {
284
284
  rootEleNode && rootEleNode.classList.add('over-hidden');
285
285
  }
286
286
  if (_touchState === TouchType.MOVE && _getDirectionState) {
287
287
  rootEleNode &&
288
288
  rootEleNode.classList.contains('over-hidden') &&
289
289
  rootEleNode.classList.remove('over-hidden');
290
290
  } else if (_touchState === TouchType.END) {
291
291
  setTimeout(
292
292
  () => {
293
293
  rootEleNode &&
294
294
  rootEleNode.classList.contains('over-hidden') &&
295
295
  rootEleNode.classList.remove('over-hidden');
296
296
  },
297
297
  isAppHomeForMarketPage || _getDirectionState ? 0 : 200,
298
298
  );
299
299
  }
300
300
  }
301
301
  touchType = TouchType.START,
302
302
  stopTouchDocumentScrollState = false,
303
303
  isJdApp &&
304
304
  touchType !== TouchType.MOVE &&
305
305
  isAndroidDevice &&
306
306
  window?.JdAndroid &&
307
307
  window?.JdAndroid?.requestEvent &&
308
308
  window.JdAndroid.requestEvent(touchType === TouchType.START);
309
309
  console.log(
310
310
  '对外提供阻止安卓横滑方法,true-禁止外部事件H5可滑动,false-外部拦截h5事件,当前touchType为',
311
311
  touchType,
312
312
  '当前非move触发requestEvent状态为',
313
313
  touchType === TouchType.START,
314
314
  '当前stopTouchDocumentScrollState为',
315
315
  stopTouchDocumentScrollState,
316
316
  );
317
317
  e,
318
318
  touchType = TouchType.START,
319
319
  stopTouchDocumentScrollState = false,
320
320
  e && e.stopPropagation();
321
321
  console.log(
322
322
  '对外提供阻止ios横滑方法,当前touchType为',
323
323
  touchType,
324
324
  '当前stopTouchDocumentScrollState为',
325
325
  stopTouchDocumentScrollState,
326
326
  );
327
327
  window?.webkit?.messageHandlers?.MobileNavi?.postMessage?.({
328
328
  method: 'callRouterModuleWithParams',
329
329
  params: {
330
330
  routerURL: 'router://JDShopModule/processShoph5SlideState',
331
331
  routerParam: {
332
332
  slideDirection: 'horizontal',
333
333
  state: touchType,
334
334
  },
335
335
  callBackId: new Date().getTime(),
336
336
  },
337
337
  });
338
338
  if (isH5AndJdShopView) {
339
339
  return CHANNEL_TYPE[currentChannel] || CHANNEL_TYPE[JDShopViewBusinessPathType.HOME];
340
340
  }
341
341
  return null;
342
342
  isH5 &&
343
343
  isJdApp &&
344
344
  ['/app/home', '/app/classify', '/member/shopcard', '/favorite/home'].includes(urlPathname);
345
345
  isH5 && isJdApp && !['/app/home'].includes(urlPathname);
346
346
  ['/app/home'].includes(urlPathname) &&
347
347
  menuObj.tabActiveType != SECTION_HOME_TAB_TYPE.HOME_PROMOTION &&
348
348
  menuObj.tabActiveType != SECTION_HOME_TAB_TYPE.HOME_MEMBER;
349
349
  isAppHomePage && parseQueryUrlObj['source'] === 'app-marketing';
350
350
  isH5 &&
351
351
  isAppHomePage &&
352
352
  versionCompare(jdAppVersion?.full ? jdAppVersion.full : '', isH5AndJdShopViewH5ScrollVersion) >=
353
353
  0;
354
354
  return isJdApp ? versionCompare(nowVersion, compareVersion) : -2;
355
355
  getSgmReadyPromise()
356
356
  .then(() => {
357
357
  if (
358
358
  customObj.hasOwnProperty('code') &&
359
359
  customObj.code.indexOf(NO_ENVIRONMENT_AND_PAGE_TYPE_FLAG) !== -1
360
360
  ) {
361
361
  const originCode = customObj.code.substring(
362
362
  NO_ENVIRONMENT_AND_PAGE_TYPE_FLAG.length,
363
363
  customObj.code.length,
364
364
  );
365
365
  customObj['code'] = getSgmCustomCode(handleSgmCodeTaroVersion(originCode));
366
366
  }
367
367
  const getCustomObj = {
368
368
  type: 1,
369
369
  code: 'all',
370
370
  cost1: 1,
371
371
  ...customObj,
372
372
  };
373
373
  try {
374
374
  window.__sgm__.custom(getCustomObj, '9HwAEg@fTtWBB3EnwA5VgLT');
375
375
  } catch (e) {
376
376
  console.log('当前sgm上报异常, 原始数据为', JSON.stringify(customObj));
377
377
  }
378
378
  })
379
379
  .catch(() => {
380
380
  console.error('当前页面sgm加载异常,无法进行异常上报, 原始数据为', JSON.stringify(customObj));
381
381
  });
382
382
  try {
383
383
  await getNewDraSdkReadyPromise();
384
384
  const draBurypointFlag = name ?? DraBuryPointFlags.BUSINESS;
385
385
  const commonObj = {
386
386
  shopId: `${global.info.queryInfo.shopId || ''}`,
387
387
  venderId: `${global.info.queryInfo.venderId || ''}`,
388
388
  taroRenderVersion: window?.taroRenderVersion,
389
389
  environmentType: getEnvironmentType(),
390
390
  pageType: getPageType(),
391
391
  };
392
392
  try {
393
393
  window.dra.sendCustomEvent(
394
394
  {
395
395
  name: draBurypointFlag,
396
396
  metrics: {
397
397
  timeStamp: Date.now(),
398
398
  ...customMetricsObj,
399
399
  },
400
400
  context: {
401
401
  ...commonObj,
402
402
  ...customContextObj,
403
403
  },
404
404
  },
405
405
  true,
406
406
  );
407
407
  } catch (e) {
408
408
  console.error(
409
409
  '当前新版烛龙sdk上报异常, 原始数据为',
410
410
  JSON.stringify({ ...customContextObj, ...customMetricsObj }),
411
411
  'e',
412
412
  e,
413
413
  );
414
414
  }
415
415
  } catch (e) {
416
416
  console.error(
417
417
  '当前页面新版烛龙sdk加载异常,无法进行异常上报, 原始数据为',
418
418
  JSON.stringify({ ...customContextObj, ...customMetricsObj }),
419
419
  'e',
420
420
  e,
421
421
  );
422
422
  }
423
423
  draCustomReport(customContextObj, customMetricsObj, DraBuryPointFlags.REMOTE);
424
424
  draCustomReport(customContextObj, customMetricsObj, DraBuryPointFlags.INTERFACE);
425
425
  draCustomReport(customContextObj, customMetricsObj, DraBuryPointFlags.BUSINESS);
426
426
  if (isJdAndAndroidDevice && typeof displayObj === 'object') {
427
427
  const deviceRatio = window?.devicePixelRatio ?? 2;
428
428
  Object.keys(displayObj).forEach((key) => {
429
429
  if (key === 'nativeHeaderHeight') {
430
430
  displayObj[key] = Math.ceil(displayObj[key] / (deviceRatio * deviceRatio) - 2);
431
431
  } else {
432
432
  displayObj[key] = Math.ceil(displayObj[key] / deviceRatio);
433
433
  }
434
434
  });
435
435
  }
436
436
  return displayObj;
437
437
  isJdAndAndroidDevice && /TBS\/\d+/.test(window?.navigator?.userAgent);
438
438
  rootEleNode &&
439
439
  !rootEleNode.classList.contains('d-shop-lang-for-en') &&
440
440
  rootEleNode.classList.add('d-shop-lang-for-en');
441
441
  customContextObj = {},
442
442
  customMetricsObj = {},
443
443
  name?,
444
444
  try {
445
445
  const draBurypointFlag = name ?? DraBuryPointFlags.DECOSDM;
446
446
  try {
447
447
  let dra = null;
448
448
  const iframe = window?.top?.document?.getElementsByTagName('iframe')[0];
449
449
  if (iframe && iframe.contentWindow) {
450
450
  dra = iframe.contentWindow?.dra;
451
451
  }
452
452
  if (window.dra) {
453
453
  dra = window.dra;
454
454
  }
455
455
  dra &&
456
456
  dra.sendCustomEvent(
457
457
  {
458
458
  name: draBurypointFlag,
459
459
  metrics: {
460
460
  timeStamp: Date.now(),
461
461
  },
462
462
  context: {
463
463
  ...customContextObj,
464
464
  },
465
465
  },
466
466
  true,
467
467
  );
468
468
  } catch (e) {
469
469
  console.error(
470
470
  '当前新版烛龙sdk上报异常, 原始数据为',
471
471
  JSON.stringify({ ...customContextObj }),
472
472
  'e',
473
473
  e,
474
474
  );
475
475
  }
476
476
  } catch (e) {
477
477
  console.error(
478
478
  '当前页面新版烛龙sdk加载异常,无法进行异常上报, 原始数据为',
479
479
  JSON.stringify({ ...customContextObj }),
480
480
  'e',
481
481
  e,
482
482
  );
483
483
  }