ztxkutils 2.10.66-25 → 2.10.66-25-beta

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 (2) hide show
  1. package/dist/print.js +297 -261
  2. package/package.json +1 -1
package/dist/print.js CHANGED
@@ -1,4 +1,4 @@
1
- import { d as __spreadArray, _ as __assign, b as __awaiter, c as __generator } from './tslib.es6-35653116.js';
1
+ import { d as __spreadArray, b as __awaiter, c as __generator, _ as __assign } from './tslib.es6-35653116.js';
2
2
  import { jsPDF } from 'jspdf';
3
3
  import html2canvas from 'html2canvas';
4
4
 
@@ -173,179 +173,193 @@ function createPdf(canvas, pdf, noWater, positionX, options) {
173
173
  }
174
174
  function htmlToPdf(_a) {
175
175
  var pageClassName = _a.pageClassName, dom = _a.dom, pdfName = _a.pdfName, isShowPage = _a.isShowPage, noWater = _a.noWater, pdfOptions = _a.pdfOptions, imgPositionX = _a.imgPositionX, waterText = _a.waterText;
176
- var allDom = document.querySelectorAll(pageClassName ? pageClassName : '.html2canvas-container-page');
177
- var format = (pdfOptions === null || pdfOptions === void 0 ? void 0 : pdfOptions.format) || [632.28, 841.89];
178
- var pdf = new jsPDF(__assign({ unit: 'pt', format: format }, (pdfOptions || {})));
179
- if (allDom.length > 0 && isShowPage) {
180
- var allDomArray = Array.prototype.slice.call(allDom);
181
- var promiseAllDomArray_1 = allDomArray.map(function (dom) {
182
- return html2canvas(dom, {
183
- scale: 2,
184
- });
185
- });
186
- return (function () {
187
- return __awaiter(this, void 0, void 0, function () {
188
- var i, _i, promiseAllDomArray_2, item, canvas;
189
- return __generator(this, function (_a) {
190
- switch (_a.label) {
191
- case 0:
192
- i = 0;
193
- _i = 0, promiseAllDomArray_2 = promiseAllDomArray_1;
194
- _a.label = 1;
195
- case 1:
196
- if (!(_i < promiseAllDomArray_2.length)) return [3 /*break*/, 4];
197
- item = promiseAllDomArray_2[_i];
198
- i++;
199
- return [4 /*yield*/, item];
200
- case 2:
201
- canvas = _a.sent();
202
- createPdf(canvas, pdf, noWater, imgPositionX, {
203
- width: format === null || format === void 0 ? void 0 : format[0],
204
- height: format === null || format === void 0 ? void 0 : format[1],
205
- waterText: waterText,
176
+ return __awaiter(this, void 0, void 0, function () {
177
+ var allDom, format, pdf, promiseAllDomArray_1;
178
+ return __generator(this, function (_b) {
179
+ switch (_b.label) {
180
+ case 0:
181
+ allDom = document.querySelectorAll(pageClassName ? pageClassName : '.html2canvas-container-page');
182
+ format = (pdfOptions === null || pdfOptions === void 0 ? void 0 : pdfOptions.format) || [632.28, 841.89];
183
+ pdf = new jsPDF(__assign({ unit: 'pt', format: format }, (pdfOptions || {})));
184
+ if (!(allDom.length > 0 && isShowPage)) return [3 /*break*/, 2];
185
+ return [4 /*yield*/, reduceDom(allDom, dom, function (child) {
186
+ return html2canvas(child, {
187
+ scale: 2,
206
188
  });
207
- if (i < promiseAllDomArray_1.length) {
208
- pdf.addPage();
209
- }
210
- _a.label = 3;
211
- case 3:
212
- _i++;
213
- return [3 /*break*/, 1];
214
- case 4:
215
- pdf.save(pdfName + ".pdf");
216
- return [2 /*return*/, Promise.resolve(pdf)];
217
- }
218
- });
219
- });
220
- })();
221
- }
222
- else {
223
- return html2canvas(dom, { scale: 2 }).then(function (canvas) {
224
- createPdf(canvas, pdf, noWater, imgPositionX, {
225
- width: format === null || format === void 0 ? void 0 : format[0],
226
- height: format === null || format === void 0 ? void 0 : format[1],
227
- waterText: waterText,
228
- });
229
- pdf.save(pdfName + ".pdf");
230
- return pdf;
189
+ })];
190
+ case 1:
191
+ promiseAllDomArray_1 = _b.sent();
192
+ return [2 /*return*/, (function () {
193
+ return __awaiter(this, void 0, void 0, function () {
194
+ var i, _i, promiseAllDomArray_2, item, canvas;
195
+ return __generator(this, function (_a) {
196
+ switch (_a.label) {
197
+ case 0:
198
+ i = 0;
199
+ _i = 0, promiseAllDomArray_2 = promiseAllDomArray_1;
200
+ _a.label = 1;
201
+ case 1:
202
+ if (!(_i < promiseAllDomArray_2.length)) return [3 /*break*/, 4];
203
+ item = promiseAllDomArray_2[_i];
204
+ i++;
205
+ return [4 /*yield*/, item];
206
+ case 2:
207
+ canvas = _a.sent();
208
+ createPdf(canvas, pdf, noWater, imgPositionX, {
209
+ width: format === null || format === void 0 ? void 0 : format[0],
210
+ height: format === null || format === void 0 ? void 0 : format[1],
211
+ waterText: waterText,
212
+ });
213
+ if (i < promiseAllDomArray_1.length) {
214
+ pdf.addPage();
215
+ }
216
+ _a.label = 3;
217
+ case 3:
218
+ _i++;
219
+ return [3 /*break*/, 1];
220
+ case 4:
221
+ pdf.save(pdfName + ".pdf");
222
+ return [2 /*return*/, Promise.resolve(pdf)];
223
+ }
224
+ });
225
+ });
226
+ })()];
227
+ case 2: return [2 /*return*/, html2canvas(dom, { scale: 2 }).then(function (canvas) {
228
+ createPdf(canvas, pdf, noWater, imgPositionX, {
229
+ width: format === null || format === void 0 ? void 0 : format[0],
230
+ height: format === null || format === void 0 ? void 0 : format[1],
231
+ waterText: waterText,
232
+ });
233
+ pdf.save(pdfName + ".pdf");
234
+ return pdf;
235
+ })];
236
+ }
231
237
  });
232
- }
238
+ });
233
239
  }
234
240
  function htmlToPdfUseCanvas(_a) {
235
241
  var pageClassName = _a.pageClassName, dom = _a.dom, pdfName = _a.pdfName, isShowPage = _a.isShowPage, isOnlyOne = _a.isOnlyOne, noWater = _a.noWater, pdfOptions = _a.pdfOptions, imgPositionX = _a.imgPositionX, isDownload = _a.isDownload; _a.isAutoPageCount;
236
- var allDom = document.querySelectorAll(pageClassName ? pageClassName : '.html2canvas-container-page');
237
- var format = (pdfOptions === null || pdfOptions === void 0 ? void 0 : pdfOptions.format) || [632.28, 841.89];
238
- var _pdfOptions = __assign({ unit: 'pt', format: format }, (pdfOptions || {}));
239
- if (allDom.length > 0 && isShowPage) {
240
- var allDomArray = Array.prototype.slice.call(allDom);
241
- var pdfBase64_1 = [];
242
- var pdfs_1 = [];
243
- var promiseAllDomArray_3 = allDomArray.map(function (dom) {
244
- return html2canvas(dom, {
245
- scale: 2,
246
- });
247
- });
248
- if (isOnlyOne) {
249
- var pdf_1 = new jsPDF(_pdfOptions);
250
- return (function () {
251
- return __awaiter(this, void 0, void 0, function () {
252
- var i, _i, promiseAllDomArray_4, item, canvas;
253
- return __generator(this, function (_a) {
254
- switch (_a.label) {
255
- case 0:
256
- i = 0;
257
- _i = 0, promiseAllDomArray_4 = promiseAllDomArray_3;
258
- _a.label = 1;
259
- case 1:
260
- if (!(_i < promiseAllDomArray_4.length)) return [3 /*break*/, 4];
261
- item = promiseAllDomArray_4[_i];
262
- i++;
263
- return [4 /*yield*/, item];
264
- case 2:
265
- canvas = _a.sent();
266
- createPdf(canvas, pdf_1, noWater, imgPositionX, {
267
- width: format === null || format === void 0 ? void 0 : format[0],
268
- height: format === null || format === void 0 ? void 0 : format[1],
242
+ return __awaiter(this, void 0, void 0, function () {
243
+ var allDom, format, _pdfOptions, pdfBase64_1, pdfs_1, promiseAllDomArray_3, pdf_1, pdf_2;
244
+ return __generator(this, function (_b) {
245
+ switch (_b.label) {
246
+ case 0:
247
+ allDom = document.querySelectorAll(pageClassName ? pageClassName : '.html2canvas-container-page');
248
+ format = (pdfOptions === null || pdfOptions === void 0 ? void 0 : pdfOptions.format) || [632.28, 841.89];
249
+ _pdfOptions = __assign({ unit: 'pt', format: format }, (pdfOptions || {}));
250
+ if (!(allDom.length > 0 && isShowPage)) return [3 /*break*/, 2];
251
+ pdfBase64_1 = [];
252
+ pdfs_1 = [];
253
+ return [4 /*yield*/, reduceDom(allDom, dom, function (child) {
254
+ return html2canvas(child, {
255
+ scale: 2,
256
+ });
257
+ })];
258
+ case 1:
259
+ promiseAllDomArray_3 = _b.sent();
260
+ if (isOnlyOne) {
261
+ pdf_1 = new jsPDF(_pdfOptions);
262
+ return [2 /*return*/, (function () {
263
+ return __awaiter(this, void 0, void 0, function () {
264
+ var i, _i, promiseAllDomArray_4, item, canvas;
265
+ return __generator(this, function (_a) {
266
+ switch (_a.label) {
267
+ case 0:
268
+ i = 0;
269
+ _i = 0, promiseAllDomArray_4 = promiseAllDomArray_3;
270
+ _a.label = 1;
271
+ case 1:
272
+ if (!(_i < promiseAllDomArray_4.length)) return [3 /*break*/, 4];
273
+ item = promiseAllDomArray_4[_i];
274
+ i++;
275
+ return [4 /*yield*/, item];
276
+ case 2:
277
+ canvas = _a.sent();
278
+ createPdf(canvas, pdf_1, noWater, imgPositionX, {
279
+ width: format === null || format === void 0 ? void 0 : format[0],
280
+ height: format === null || format === void 0 ? void 0 : format[1],
281
+ });
282
+ if (i < promiseAllDomArray_3.length) {
283
+ pdf_1.addPage();
284
+ }
285
+ _a.label = 3;
286
+ case 3:
287
+ _i++;
288
+ return [3 /*break*/, 1];
289
+ case 4:
290
+ if (isDownload) {
291
+ pdf_1.save(pdfName + ".pdf");
292
+ }
293
+ return [2 /*return*/, Promise.resolve({
294
+ pdfs: [pdf_1],
295
+ pdfBase64: [pdf_1.output('dataurlstring')],
296
+ })];
297
+ }
298
+ });
269
299
  });
270
- if (i < promiseAllDomArray_3.length) {
271
- pdf_1.addPage();
272
- }
273
- _a.label = 3;
274
- case 3:
275
- _i++;
276
- return [3 /*break*/, 1];
277
- case 4:
278
- if (isDownload) {
279
- pdf_1.save(pdfName + ".pdf");
280
- }
281
- return [2 /*return*/, Promise.resolve({
282
- pdfs: [pdf_1],
283
- pdfBase64: [pdf_1.output('dataurlstring')],
284
- })];
285
- }
286
- });
287
- });
288
- })();
289
- }
290
- return (function () {
291
- return __awaiter(this, void 0, void 0, function () {
292
- var _i, promiseAllDomArray_5, item, pdf, canvas;
293
- return __generator(this, function (_a) {
294
- switch (_a.label) {
295
- case 0:
296
- _i = 0, promiseAllDomArray_5 = promiseAllDomArray_3;
297
- _a.label = 1;
298
- case 1:
299
- if (!(_i < promiseAllDomArray_5.length)) return [3 /*break*/, 4];
300
- item = promiseAllDomArray_5[_i];
301
- pdf = new jsPDF(_pdfOptions);
302
- return [4 /*yield*/, item];
303
- case 2:
304
- canvas = _a.sent();
305
- createPdf(canvas, pdf, noWater, imgPositionX, {
300
+ })()];
301
+ }
302
+ return [2 /*return*/, (function () {
303
+ return __awaiter(this, void 0, void 0, function () {
304
+ var _i, promiseAllDomArray_5, item, pdf, canvas;
305
+ return __generator(this, function (_a) {
306
+ switch (_a.label) {
307
+ case 0:
308
+ _i = 0, promiseAllDomArray_5 = promiseAllDomArray_3;
309
+ _a.label = 1;
310
+ case 1:
311
+ if (!(_i < promiseAllDomArray_5.length)) return [3 /*break*/, 4];
312
+ item = promiseAllDomArray_5[_i];
313
+ pdf = new jsPDF(_pdfOptions);
314
+ pdf.setCompression(true);
315
+ return [4 /*yield*/, item];
316
+ case 2:
317
+ canvas = _a.sent();
318
+ createPdf(canvas, pdf, noWater, imgPositionX, {
319
+ width: format === null || format === void 0 ? void 0 : format[0],
320
+ height: format === null || format === void 0 ? void 0 : format[1],
321
+ });
322
+ if (isDownload) {
323
+ pdf.save(pdfName + ".pdf");
324
+ }
325
+ pdfBase64_1.push(pdf.output('dataurlstring'));
326
+ pdfs_1.push(pdf);
327
+ _a.label = 3;
328
+ case 3:
329
+ _i++;
330
+ return [3 /*break*/, 1];
331
+ case 4: return [2 /*return*/, Promise.resolve({
332
+ pdfs: pdfs_1,
333
+ pdfBase64: pdfBase64_1,
334
+ })];
335
+ }
336
+ });
337
+ });
338
+ })()];
339
+ case 2:
340
+ pdf_2 = new jsPDF(_pdfOptions);
341
+ return [2 /*return*/, html2canvas(dom, { scale: 2 }).then(function (canvas) {
342
+ createPdf(canvas, pdf_2, noWater, imgPositionX, {
306
343
  width: format === null || format === void 0 ? void 0 : format[0],
307
344
  height: format === null || format === void 0 ? void 0 : format[1],
308
345
  });
309
346
  if (isDownload) {
310
- pdf.save(pdfName + ".pdf");
347
+ pdf_2.save(pdfName + ".pdf");
311
348
  }
312
- pdfBase64_1.push(pdf.output('dataurlstring'));
313
- pdfs_1.push(pdf);
314
- _a.label = 3;
315
- case 3:
316
- _i++;
317
- return [3 /*break*/, 1];
318
- case 4: return [2 /*return*/, Promise.resolve({
319
- pdfs: pdfs_1,
320
- pdfBase64: pdfBase64_1,
321
- })];
322
- }
323
- });
324
- });
325
- })();
326
- }
327
- else {
328
- var pdf_2 = new jsPDF(_pdfOptions);
329
- return html2canvas(dom, { scale: 2 }).then(function (canvas) {
330
- createPdf(canvas, pdf_2, noWater, imgPositionX, {
331
- width: format === null || format === void 0 ? void 0 : format[0],
332
- height: format === null || format === void 0 ? void 0 : format[1],
333
- });
334
- if (isDownload) {
335
- pdf_2.save(pdfName + ".pdf");
349
+ return {
350
+ pdfs: [pdf_2],
351
+ pdfBase64: [pdf_2.output('dataurlstring')],
352
+ };
353
+ })];
336
354
  }
337
- return {
338
- pdfs: [pdf_2],
339
- pdfBase64: [pdf_2.output('dataurlstring')],
340
- };
341
355
  });
342
- }
356
+ });
343
357
  }
344
358
  function htmlToPdfNoCanvas(_a) {
345
359
  var _b, _c;
346
360
  var pageClassName = _a.pageClassName, dom = _a.dom, isShowPage = _a.isShowPage, fileBinary = _a.fileBinary, pdfName = _a.pdfName, isDownload = _a.isDownload, pdfOption = _a.pdfOption, isAddWater = _a.isAddWater, waterBase64 = _a.waterBase64, imgWidth = _a.imgWidth, imgHeight = _a.imgHeight, isCompress = _a.isCompress; _a.waterText;
347
361
  return __awaiter(this, void 0, void 0, function () {
348
- var allDom, pageFormat, pageOrient, pageMarginX, pageMarginY, pdfOptions, allDomArray_1, pdfBase64_2, pdfs_2, pdf_3, pageWidth_1;
362
+ var allDom, pageFormat, pageOrient, pageMarginX, pageMarginY, pdfOptions, pdfBase64_2, pdf_3, pageWidth_1;
349
363
  return __generator(this, function (_d) {
350
364
  allDom = dom.querySelectorAll(pageClassName ? pageClassName : '.html2canvas-container-page');
351
365
  pageFormat = (pdfOption === null || pdfOption === void 0 ? void 0 : pdfOption.pageFormat) ? pdfOption.pageFormat : 'a4';
@@ -366,118 +380,52 @@ function htmlToPdfNoCanvas(_a) {
366
380
  };
367
381
  // 如果需要分页
368
382
  if (allDom.length > 0 && isShowPage) {
369
- allDomArray_1 = Array.prototype.slice.call(allDom);
370
383
  pdfBase64_2 = [];
371
- pdfs_2 = [];
372
384
  return [2 /*return*/, (function () {
373
385
  return __awaiter(this, void 0, void 0, function () {
374
- var i, _loop_1, _i, allDomArray_2, item;
386
+ var pdfs;
375
387
  return __generator(this, function (_a) {
376
388
  switch (_a.label) {
377
- case 0:
378
- i = 0;
379
- _loop_1 = function (item) {
380
- var pdf, pageWidth;
381
- return __generator(this, function (_b) {
382
- switch (_b.label) {
383
- case 0:
384
- i++;
385
- pdf = new jsPDF(pdfOptions);
386
- pageWidth = pdf.internal.pageSize.width - pageMarginX * 2;
387
- setPdfVersion(pdf);
388
- supportJsPdfChinese(pdf, fileBinary);
389
- return [4 /*yield*/, new Promise(function (resolve) {
390
- // 正确呈现文档
391
- pdf.html(item, {
392
- autoPaging: 'text',
393
- margin: [pageMarginY, pageMarginX, pageMarginY, pageMarginX],
394
- width: pageWidth,
395
- windowWidth: pageWidth,
396
- callback: function (res) {
397
- // 添加呈现的HTML所需的页面(从第2页开始)
398
- for (var i_1 = 2, j = res.internal.getNumberOfPages(); i_1 <= j; i_1++) {
399
- pdf.addPage(pageFormat, pageOrient);
400
- }
401
- for (var i_2 = 1, j = res.internal.getNumberOfPages(); i_2 <= j; i_2++) {
402
- pdf.setPage(i_2);
403
- // 添加水印
404
- if (isAddWater) {
405
- setPdfWater(pdf, waterBase64, imgWidth, imgHeight);
406
- }
407
- }
408
- if (isDownload) {
409
- pdf.save(pdfName + "_" + i + ".pdf");
410
- }
411
- pdfBase64_2.push(pdf.output('dataurlstring'));
412
- pdfs_2.push(pdf);
413
- resolve({});
414
- },
415
- });
416
- // new jsPDF(pdfOptions).html(item, {
417
- // autoPaging: 'text',
418
- // margin: [pageMarginY, pageMarginX, pageMarginY, pageMarginX],
419
- // width: pageWidth,
420
- // windowWidth: pageWidth,
421
- // callback: function (res) {
422
- // // 添加呈现的HTML所需的页面(从第2页开始)
423
- // for (
424
- // let i = 2, j = (res as any).internal.getNumberOfPages();
425
- // i <= j;
426
- // i++
427
- // ) {
428
- // pdf.addPage(pageFormat, pageOrient);
429
- // }
430
- // // 正确呈现文档
431
- // pdf.html(item, {
432
- // autoPaging: 'text',
433
- // margin: [pageMarginY, pageMarginX, pageMarginY, pageMarginX],
434
- // width: pageWidth,
435
- // windowWidth: pageWidth,
436
- // callback: function () {
437
- // for (
438
- // let i = 1, j = (res as any).internal.getNumberOfPages();
439
- // i <= j;
440
- // i++
441
- // ) {
442
- // pdf.setPage(i);
443
- // // 添加水印
444
- // if (isAddWater) {
445
- // setPdfWater(pdf, waterBase64, imgWidth, imgHeight);
446
- // }
447
- // }
448
- // if (isDownload) {
449
- // pdf.save(`${pdfName}_${i}.pdf`);
450
- // }
451
- // pdfBase64.push(pdf.output('dataurlstring'));
452
- // pdfs.push(pdf);
453
- // resolve({});
454
- // },
455
- // });
456
- // },
457
- // });
458
- })];
459
- case 1:
460
- _b.sent();
461
- return [2 /*return*/];
462
- }
389
+ case 0: return [4 /*yield*/, reduceDom(allDom, dom, function (item, i) {
390
+ return new Promise(function (resolve) {
391
+ // 每页都创建一个pdf实例
392
+ var pdf = new jsPDF(pdfOptions);
393
+ var pageWidth = pdf.internal.pageSize.width - pageMarginX * 2;
394
+ setPdfVersion(pdf);
395
+ supportJsPdfChinese(pdf, fileBinary);
396
+ // 正确呈现文档
397
+ pdf.html(item, {
398
+ autoPaging: 'text',
399
+ margin: [pageMarginY, pageMarginX, pageMarginY, pageMarginX],
400
+ width: pageWidth,
401
+ windowWidth: pageWidth,
402
+ callback: function (res) {
403
+ // 添加呈现的HTML所需的页面(从第2页开始)
404
+ for (var i_1 = 2, j = res.internal.getNumberOfPages(); i_1 <= j; i_1++) {
405
+ pdf.addPage(pageFormat, pageOrient);
406
+ }
407
+ for (var i_2 = 1, j = res.internal.getNumberOfPages(); i_2 <= j; i_2++) {
408
+ pdf.setPage(i_2);
409
+ // 添加水印
410
+ if (isAddWater) {
411
+ setPdfWater(pdf, waterBase64, imgWidth, imgHeight);
412
+ }
413
+ }
414
+ if (isDownload) {
415
+ pdf.save(pdfName + "_" + i + ".pdf");
416
+ }
417
+ pdfBase64_2.push(pdf.output('dataurlstring'));
418
+ resolve(pdf);
419
+ },
420
+ });
463
421
  });
464
- };
465
- _i = 0, allDomArray_2 = allDomArray_1;
466
- _a.label = 1;
467
- case 1:
468
- if (!(_i < allDomArray_2.length)) return [3 /*break*/, 4];
469
- item = allDomArray_2[_i];
470
- return [5 /*yield**/, _loop_1(item)];
471
- case 2:
472
- _a.sent();
473
- _a.label = 3;
474
- case 3:
475
- _i++;
476
- return [3 /*break*/, 1];
477
- case 4: return [2 /*return*/, Promise.resolve({
478
- pdfs: pdfs_2,
479
- pdfBase64: pdfBase64_2,
480
422
  })];
423
+ case 1:
424
+ pdfs = _a.sent();
425
+ return [2 /*return*/, Promise.resolve({
426
+ pdfs: pdfs,
427
+ pdfBase64: pdfBase64_2,
428
+ })];
481
429
  }
482
430
  });
483
431
  });
@@ -602,6 +550,94 @@ function setPdfWater(pdf, waterBase64, imgWidth, imgHeight) {
602
550
  pdf.addImage(waterBase64, 'PNG', 20, 20 + imgHeight + imgHeight, imgWidth, imgHeight, '5');
603
551
  pdf.addImage(waterBase64, 'PNG', 20 + imgWidth, 20 + imgHeight + imgHeight, imgWidth, imgHeight, '6');
604
552
  }
553
+ }
554
+ /**
555
+ * @author xjy
556
+ * @description 性能优化,减少页面dom数量
557
+ * @param allDom 需要打印的dom节点,parentDom 需要打印的dom的父节点
558
+ * @param handler 处理每个dom节点的函数,返回Promise
559
+ */
560
+ function reduceDom(allDom, parentDom, handler) {
561
+ return __awaiter(this, void 0, void 0, function () {
562
+ var domList, children, spinning, fragment, _i, children_1, element, promiseAllDomArray, _a, _b, _c, i_3, element, _d, _e, i, timer;
563
+ return __generator(this, function (_f) {
564
+ switch (_f.label) {
565
+ case 0:
566
+ domList = Array.from(allDom);
567
+ children = Array.from(parentDom.children);
568
+ return [4 /*yield*/, getSpinning()];
569
+ case 1:
570
+ spinning = _f.sent();
571
+ if (spinning) {
572
+ console.log('spinning', spinning);
573
+ spinning.style.display = 'flex';
574
+ spinning.style.flexDirection = 'column';
575
+ spinning.style.justifyContent = 'center';
576
+ spinning.style.alignItems = 'center';
577
+ spinning.innerHTML = '正在生成PDF...';
578
+ }
579
+ fragment = document.createDocumentFragment();
580
+ // 卸载dom
581
+ for (_i = 0, children_1 = children; _i < children_1.length; _i++) {
582
+ element = children_1[_i];
583
+ parentDom.removeChild(element);
584
+ fragment.appendChild(element);
585
+ }
586
+ promiseAllDomArray = [];
587
+ _a = [];
588
+ for (_b in domList)
589
+ _a.push(_b);
590
+ _c = 0;
591
+ _f.label = 2;
592
+ case 2:
593
+ if (!(_c < _a.length)) return [3 /*break*/, 5];
594
+ i_3 = _a[_c];
595
+ if (spinning) {
596
+ spinning.innerHTML = "<p>\u6B63\u5728\u751F\u6210PDF...</p><p>\u5F53\u524D\u8FDB\u5EA6" + (1 + Number(i_3)) + "/" + domList.length + "\u9875</p>";
597
+ }
598
+ element = domList[i_3].cloneNode(true);
599
+ parentDom.appendChild(element);
600
+ _e = (_d = promiseAllDomArray).push;
601
+ return [4 /*yield*/, handler(element, i_3)];
602
+ case 3:
603
+ _e.apply(_d, [_f.sent()]);
604
+ parentDom.removeChild(element);
605
+ _f.label = 4;
606
+ case 4:
607
+ _c++;
608
+ return [3 /*break*/, 2];
609
+ case 5:
610
+ // 添加dom
611
+ // for (let element of children) {
612
+ // parentDom.appendChild(element);
613
+ // }
614
+ parentDom.appendChild(fragment);
615
+ i = 0;
616
+ if (spinning) {
617
+ spinning.innerHTML = "<p>\u6B63\u5728\u5BFC\u51FAPDF...</p><p>\u7B49\u5F85" + (1 + i) + "\u79D2";
618
+ }
619
+ timer = setInterval(function () {
620
+ var spinning = document.querySelector('.ant-spin-spinning');
621
+ if (spinning) {
622
+ spinning.innerHTML = "<p>\u6B63\u5728\u5BFC\u51FAPDF...</p><p>\u7B49\u5F85" + (1 + i) + "\u79D2";
623
+ i++;
624
+ }
625
+ else {
626
+ timer && clearInterval(timer);
627
+ }
628
+ }, 1000);
629
+ return [2 /*return*/, promiseAllDomArray];
630
+ }
631
+ });
632
+ });
633
+ }
634
+ function getSpinning() {
635
+ return new Promise(function (resolve) {
636
+ setTimeout(function () {
637
+ var spinning = document.querySelector('.ant-spin-spinning');
638
+ resolve(spinning);
639
+ }, 0);
640
+ });
605
641
  }
606
642
 
607
643
  export { addWaterHandle, htmlToPdf, htmlToPdfNoCanvas, htmlToPdfUseCanvas, printCurrentDom, removeWaterHandle };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ztxkutils",
3
- "version": "2.10.66-25",
3
+ "version": "2.10.66-25-beta",
4
4
  "description": "",
5
5
  "main": "./dist/index.js",
6
6
  "module": "./dist/index.js",