@conecli/cone-render 0.9.1-shop2.4 → 0.9.1-shop2.40

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