ydb-components-material 0.1.183 → 0.1.185

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.
@@ -357,6 +357,7 @@ var FileItem = function FileItem(_ref) {
357
357
  return _context2.abrupt("return");
358
358
  case 1:
359
359
  console.log('fileUrl', fileUrl, fileId);
360
+ captureComponentTop();
360
361
  setPreviewIframeUrl(fileUrl);
361
362
  setIsShowPreview(true);
362
363
  // if (!fileId) return;
@@ -411,6 +412,7 @@ var FileItem = function FileItem(_ref) {
411
412
  return _regeneratorRuntime.wrap(function (_context3) {
412
413
  while (1) switch (_context3.prev = _context3.next) {
413
414
  case 0:
415
+ captureComponentTop();
414
416
  if (!materialUrlMap[id]) {
415
417
  _context3.next = 1;
416
418
  break;
@@ -579,11 +581,16 @@ var FileItem = function FileItem(_ref) {
579
581
  };
580
582
  }();
581
583
 
582
- // 打开维护签署人信息弹窗,同时记录当前组件距离浏览器窗口顶部的距离,用于弹窗定位
583
- var openSignerInfo = function openSignerInfo() {
584
+ // 记录当前组件距离浏览器窗口顶部的距离,用于弹窗/预览定位
585
+ var captureComponentTop = function captureComponentTop() {
584
586
  if (rootRef.current) {
585
587
  setComponentTop(rootRef.current.getBoundingClientRect().top);
586
588
  }
589
+ };
590
+
591
+ // 打开维护签署人信息弹窗
592
+ var openSignerInfo = function openSignerInfo() {
593
+ captureComponentTop();
587
594
  setShowSignerInfo(true);
588
595
  };
589
596
  var signAndSeal = function signAndSeal() {
@@ -723,6 +730,7 @@ var FileItem = function FileItem(_ref) {
723
730
  case 2:
724
731
  guideImgRes = _context5.sent;
725
732
  if (guideImgRes.presignedUrlList.length && guideImgRes.presignedUrlList[2]) {
733
+ captureComponentTop();
726
734
  setGuideurl(guideImgRes.presignedUrlList[2]);
727
735
  setIsShowGuide(true);
728
736
  }
@@ -1244,7 +1252,9 @@ var FileItem = function FileItem(_ref) {
1244
1252
  }), isShowPreview && /*#__PURE__*/React.createElement("div", {
1245
1253
  className: "preview",
1246
1254
  style: isPC ? {
1247
- height: '40vh'
1255
+ height: '100vh',
1256
+ paddingTop: componentTop - 200,
1257
+ justifyContent: 'flex-start'
1248
1258
  } : undefined
1249
1259
  }, /*#__PURE__*/React.createElement("img", {
1250
1260
  className: "close",
@@ -1252,7 +1262,10 @@ var FileItem = function FileItem(_ref) {
1252
1262
  alt: "",
1253
1263
  onClick: function onClick() {
1254
1264
  return setIsShowPreview(false);
1255
- }
1265
+ },
1266
+ style: isPC ? {
1267
+ top: componentTop - 220
1268
+ } : undefined
1256
1269
  }), /*#__PURE__*/React.createElement("iframe", {
1257
1270
  src: previewIframeUrl + '#toolbar=0&navpanes=0&scrollbar=0&messages=0&statusbar=0',
1258
1271
  frameborder: "0",
@@ -1261,7 +1274,9 @@ var FileItem = function FileItem(_ref) {
1261
1274
  })), isShowMaterialPreview && /*#__PURE__*/React.createElement("div", {
1262
1275
  className: "preview",
1263
1276
  style: isPC ? {
1264
- height: '40vh'
1277
+ height: '100vh',
1278
+ paddingTop: componentTop - 200,
1279
+ justifyContent: 'flex-start'
1265
1280
  } : undefined
1266
1281
  }, /*#__PURE__*/React.createElement("img", {
1267
1282
  className: "close",
@@ -1269,7 +1284,10 @@ var FileItem = function FileItem(_ref) {
1269
1284
  alt: "",
1270
1285
  onClick: function onClick() {
1271
1286
  return setIsShowMaterialPreview(false);
1272
- }
1287
+ },
1288
+ style: isPC ? {
1289
+ top: componentTop - 220
1290
+ } : undefined
1273
1291
  }), /*#__PURE__*/React.createElement("iframe", {
1274
1292
  src: materialPreviewUrl,
1275
1293
  frameborder: "0",
@@ -1278,7 +1296,9 @@ var FileItem = function FileItem(_ref) {
1278
1296
  })), isShowGuide && /*#__PURE__*/React.createElement("div", {
1279
1297
  className: "preview",
1280
1298
  style: isPC ? {
1281
- height: '40vh'
1299
+ height: '100vh',
1300
+ paddingTop: componentTop - 200,
1301
+ justifyContent: 'flex-start'
1282
1302
  } : undefined
1283
1303
  }, /*#__PURE__*/React.createElement("img", {
1284
1304
  className: "close",
@@ -1286,7 +1306,10 @@ var FileItem = function FileItem(_ref) {
1286
1306
  alt: "",
1287
1307
  onClick: function onClick() {
1288
1308
  return setIsShowGuide(false);
1289
- }
1309
+ },
1310
+ style: isPC ? {
1311
+ top: componentTop - 220
1312
+ } : undefined
1290
1313
  }), /*#__PURE__*/React.createElement("div", {
1291
1314
  className: "view"
1292
1315
  }, /*#__PURE__*/React.createElement("img", {
@@ -38,6 +38,7 @@ function SignerInfo(props) {
38
38
  showQRcode = _useState[0],
39
39
  setShowQRcode = _useState[1];
40
40
  var canvasRef = useRef(null);
41
+ var qrcodeRef = useRef(null);
41
42
  var _useState2 = useState(''),
42
43
  url = _useState2[0],
43
44
  setUrl = _useState2[1];
@@ -178,6 +179,25 @@ function SignerInfo(props) {
178
179
  });
179
180
  setSignerInfoList(newList);
180
181
  };
182
+
183
+ // 显示复制成功提示,并把它定位到 qrcode 弹窗上方
184
+ var showSuccessAboveQRcode = function showSuccessAboveQRcode() {
185
+ if (isPC && qrcodeRef.current) {
186
+ // 测量 qrcode 弹窗顶部距视口顶部的距离
187
+ var qrcodeTop = qrcodeRef.current.getBoundingClientRect().top;
188
+ // Message toast 的 wrapper 固定定位在视口 top 处,这里把 top 设为 qrcode 上方 20px
189
+ _Message.config({
190
+ top: qrcodeTop - 20
191
+ });
192
+ _Message.success('复制成功');
193
+ // Message.config 是全局单例配置,渲染完成后再恢复默认值,避免影响后续消息的显示位置
194
+ _Message.config({
195
+ top: 8
196
+ });
197
+ } else {
198
+ _Message.success('复制成功');
199
+ }
200
+ };
181
201
  var onCopy = function onCopy() {
182
202
  var _navigator$clipboard;
183
203
  if ((_navigator$clipboard = navigator.clipboard) !== null && _navigator$clipboard !== void 0 && _navigator$clipboard.writeText) {
@@ -192,7 +212,7 @@ function SignerInfo(props) {
192
212
  document.execCommand('copy');
193
213
  document.body.removeChild(textarea);
194
214
  }
195
- _Message.success('复制成功');
215
+ showSuccessAboveQRcode();
196
216
  };
197
217
  useEffect(function () {
198
218
  if (signInfoMap && file) {
@@ -436,7 +456,8 @@ function SignerInfo(props) {
436
456
  className: "qrcode" + (isPC ? ' qrcode-pc' : ''),
437
457
  style: isPC && componentTop ? {
438
458
  top: componentTop - 200
439
- } : undefined
459
+ } : undefined,
460
+ ref: qrcodeRef
440
461
  }, /*#__PURE__*/React.createElement("img", {
441
462
  className: "qrcode-close",
442
463
  src: closeIcon,
@@ -363,6 +363,7 @@ var FileItem = function FileItem(_ref) {
363
363
  return _context2.abrupt("return");
364
364
  case 1:
365
365
  console.log('fileUrl', fileUrl, fileId);
366
+ captureComponentTop();
366
367
  setPreviewIframeUrl(fileUrl);
367
368
  setIsShowPreview(true);
368
369
  // if (!fileId) return;
@@ -417,6 +418,7 @@ var FileItem = function FileItem(_ref) {
417
418
  return _regenerator["default"].wrap(function (_context3) {
418
419
  while (1) switch (_context3.prev = _context3.next) {
419
420
  case 0:
421
+ captureComponentTop();
420
422
  if (!materialUrlMap[id]) {
421
423
  _context3.next = 1;
422
424
  break;
@@ -585,11 +587,16 @@ var FileItem = function FileItem(_ref) {
585
587
  };
586
588
  }();
587
589
 
588
- // 打开维护签署人信息弹窗,同时记录当前组件距离浏览器窗口顶部的距离,用于弹窗定位
589
- var openSignerInfo = function openSignerInfo() {
590
+ // 记录当前组件距离浏览器窗口顶部的距离,用于弹窗/预览定位
591
+ var captureComponentTop = function captureComponentTop() {
590
592
  if (rootRef.current) {
591
593
  setComponentTop(rootRef.current.getBoundingClientRect().top);
592
594
  }
595
+ };
596
+
597
+ // 打开维护签署人信息弹窗
598
+ var openSignerInfo = function openSignerInfo() {
599
+ captureComponentTop();
593
600
  setShowSignerInfo(true);
594
601
  };
595
602
  var signAndSeal = function signAndSeal() {
@@ -729,6 +736,7 @@ var FileItem = function FileItem(_ref) {
729
736
  case 2:
730
737
  guideImgRes = _context5.sent;
731
738
  if (guideImgRes.presignedUrlList.length && guideImgRes.presignedUrlList[2]) {
739
+ captureComponentTop();
732
740
  setGuideurl(guideImgRes.presignedUrlList[2]);
733
741
  setIsShowGuide(true);
734
742
  }
@@ -1250,7 +1258,9 @@ var FileItem = function FileItem(_ref) {
1250
1258
  }), isShowPreview && /*#__PURE__*/_react["default"].createElement("div", {
1251
1259
  className: "preview",
1252
1260
  style: isPC ? {
1253
- height: '40vh'
1261
+ height: '100vh',
1262
+ paddingTop: componentTop - 200,
1263
+ justifyContent: 'flex-start'
1254
1264
  } : undefined
1255
1265
  }, /*#__PURE__*/_react["default"].createElement("img", {
1256
1266
  className: "close",
@@ -1258,7 +1268,10 @@ var FileItem = function FileItem(_ref) {
1258
1268
  alt: "",
1259
1269
  onClick: function onClick() {
1260
1270
  return setIsShowPreview(false);
1261
- }
1271
+ },
1272
+ style: isPC ? {
1273
+ top: componentTop - 220
1274
+ } : undefined
1262
1275
  }), /*#__PURE__*/_react["default"].createElement("iframe", {
1263
1276
  src: previewIframeUrl + '#toolbar=0&navpanes=0&scrollbar=0&messages=0&statusbar=0',
1264
1277
  frameborder: "0",
@@ -1267,7 +1280,9 @@ var FileItem = function FileItem(_ref) {
1267
1280
  })), isShowMaterialPreview && /*#__PURE__*/_react["default"].createElement("div", {
1268
1281
  className: "preview",
1269
1282
  style: isPC ? {
1270
- height: '40vh'
1283
+ height: '100vh',
1284
+ paddingTop: componentTop - 200,
1285
+ justifyContent: 'flex-start'
1271
1286
  } : undefined
1272
1287
  }, /*#__PURE__*/_react["default"].createElement("img", {
1273
1288
  className: "close",
@@ -1275,7 +1290,10 @@ var FileItem = function FileItem(_ref) {
1275
1290
  alt: "",
1276
1291
  onClick: function onClick() {
1277
1292
  return setIsShowMaterialPreview(false);
1278
- }
1293
+ },
1294
+ style: isPC ? {
1295
+ top: componentTop - 220
1296
+ } : undefined
1279
1297
  }), /*#__PURE__*/_react["default"].createElement("iframe", {
1280
1298
  src: materialPreviewUrl,
1281
1299
  frameborder: "0",
@@ -1284,7 +1302,9 @@ var FileItem = function FileItem(_ref) {
1284
1302
  })), isShowGuide && /*#__PURE__*/_react["default"].createElement("div", {
1285
1303
  className: "preview",
1286
1304
  style: isPC ? {
1287
- height: '40vh'
1305
+ height: '100vh',
1306
+ paddingTop: componentTop - 200,
1307
+ justifyContent: 'flex-start'
1288
1308
  } : undefined
1289
1309
  }, /*#__PURE__*/_react["default"].createElement("img", {
1290
1310
  className: "close",
@@ -1292,7 +1312,10 @@ var FileItem = function FileItem(_ref) {
1292
1312
  alt: "",
1293
1313
  onClick: function onClick() {
1294
1314
  return setIsShowGuide(false);
1295
- }
1315
+ },
1316
+ style: isPC ? {
1317
+ top: componentTop - 220
1318
+ } : undefined
1296
1319
  }), /*#__PURE__*/_react["default"].createElement("div", {
1297
1320
  className: "view"
1298
1321
  }, /*#__PURE__*/_react["default"].createElement("img", {
@@ -44,6 +44,7 @@ function SignerInfo(props) {
44
44
  showQRcode = _useState[0],
45
45
  setShowQRcode = _useState[1];
46
46
  var canvasRef = (0, _react.useRef)(null);
47
+ var qrcodeRef = (0, _react.useRef)(null);
47
48
  var _useState2 = (0, _react.useState)(''),
48
49
  url = _useState2[0],
49
50
  setUrl = _useState2[1];
@@ -184,6 +185,25 @@ function SignerInfo(props) {
184
185
  });
185
186
  setSignerInfoList(newList);
186
187
  };
188
+
189
+ // 显示复制成功提示,并把它定位到 qrcode 弹窗上方
190
+ var showSuccessAboveQRcode = function showSuccessAboveQRcode() {
191
+ if (isPC && qrcodeRef.current) {
192
+ // 测量 qrcode 弹窗顶部距视口顶部的距离
193
+ var qrcodeTop = qrcodeRef.current.getBoundingClientRect().top;
194
+ // Message toast 的 wrapper 固定定位在视口 top 处,这里把 top 设为 qrcode 上方 20px
195
+ _message["default"].config({
196
+ top: qrcodeTop - 20
197
+ });
198
+ _message["default"].success('复制成功');
199
+ // Message.config 是全局单例配置,渲染完成后再恢复默认值,避免影响后续消息的显示位置
200
+ _message["default"].config({
201
+ top: 8
202
+ });
203
+ } else {
204
+ _message["default"].success('复制成功');
205
+ }
206
+ };
187
207
  var onCopy = function onCopy() {
188
208
  var _navigator$clipboard;
189
209
  if ((_navigator$clipboard = navigator.clipboard) !== null && _navigator$clipboard !== void 0 && _navigator$clipboard.writeText) {
@@ -198,7 +218,7 @@ function SignerInfo(props) {
198
218
  document.execCommand('copy');
199
219
  document.body.removeChild(textarea);
200
220
  }
201
- _message["default"].success('复制成功');
221
+ showSuccessAboveQRcode();
202
222
  };
203
223
  (0, _react.useEffect)(function () {
204
224
  if (signInfoMap && file) {
@@ -442,7 +462,8 @@ function SignerInfo(props) {
442
462
  className: "qrcode" + (isPC ? ' qrcode-pc' : ''),
443
463
  style: isPC && componentTop ? {
444
464
  top: componentTop - 200
445
- } : undefined
465
+ } : undefined,
466
+ ref: qrcodeRef
446
467
  }, /*#__PURE__*/_react["default"].createElement("img", {
447
468
  className: "qrcode-close",
448
469
  src: _close_black["default"],
@@ -98,7 +98,7 @@ function fillRealVersion(meta, packageName, version, basicLibraryVersion) {
98
98
  packageName = 'ydb-components-material';
99
99
  }
100
100
  if (version === void 0) {
101
- version = '0.1.183';
101
+ version = '0.1.185';
102
102
  }
103
103
  if (basicLibraryVersion === void 0) {
104
104
  basicLibraryVersion = {
@@ -103,7 +103,7 @@ function fillRealVersion(meta, packageName, version, basicLibraryVersion) {
103
103
  packageName = 'ydb-components-material';
104
104
  }
105
105
  if (version === void 0) {
106
- version = '0.1.183';
106
+ version = '0.1.185';
107
107
  }
108
108
  if (basicLibraryVersion === void 0) {
109
109
  basicLibraryVersion = {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ydb-components-material",
3
- "version": "0.1.183",
3
+ "version": "0.1.185",
4
4
  "description": "ydb-components-material",
5
5
  "main": "lib/index.js",
6
6
  "module": "es/index.js",
@@ -102,10 +102,10 @@
102
102
  },
103
103
  "componentConfig": {
104
104
  "isComponentLibrary": true,
105
- "materialSchema": "https://unpkg.com/ydb-components-material@0.1.183/build/lowcode/assets-prod.json"
105
+ "materialSchema": "https://unpkg.com/ydb-components-material@0.1.185/build/lowcode/assets-prod.json"
106
106
  },
107
107
  "lcMeta": {
108
108
  "type": "component"
109
109
  },
110
- "homepage": "https://unpkg.com/ydb-components-material@0.1.183/build/index.html"
110
+ "homepage": "https://unpkg.com/ydb-components-material@0.1.185/build/index.html"
111
111
  }