ztxkutils 2.7.16 → 2.7.19

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.
@@ -24,6 +24,12 @@ export declare function downloadPublicFile(apiUrl: string, fileId: string, fileN
24
24
  * @param {string} fileId 文件id
25
25
  */
26
26
  export declare function createDownloadUrl(apiUrl: string, fileId: string, authToken?: string): string;
27
+ /**
28
+ * @description 生成文件下载路径
29
+ * @param {string} apiUrl api服务器ip端口
30
+ * @param {string} fileId 文件id
31
+ */
32
+ export declare function createDownloadUrlNoBase(fileId: string, authToken?: string): string;
27
33
  /**
28
34
  * @description 生成公共文件下载路径
29
35
  * @param {string} apiUrl api服务器ip端口
@@ -97,6 +97,15 @@ function createDownloadUrl(apiUrl, fileId, authToken) {
97
97
  : apiUrl;
98
98
  return _apiUrl + "/api/zmdms-resource/oss/endpoint/download-file/" + fileId + "?Zmdms-Auth=bearer " + token;
99
99
  }
100
+ /**
101
+ * @description 生成文件下载路径
102
+ * @param {string} apiUrl api服务器ip端口
103
+ * @param {string} fileId 文件id
104
+ */
105
+ function createDownloadUrlNoBase(fileId, authToken) {
106
+ var token = getToken() || authToken;
107
+ return "/api/zmdms-resource/oss/endpoint/download-file/" + fileId + "?Zmdms-Auth=bearer " + token;
108
+ }
100
109
  /**
101
110
  * @description 生成公共文件下载路径
102
111
  * @param {string} apiUrl api服务器ip端口
@@ -167,4 +176,4 @@ function createThumbnailUrl(apiUrl, fileId, scale, otherOption) {
167
176
  return _apiUrl + "/api/zmdms-resource/oss/endpoint/thumbnail/" + fileId + "?scale=" + scale + "&Zmdms-Auth=bearer " + token;
168
177
  }
169
178
 
170
- export { createDownloadUrl, createOriginalUrl, createPublicDownloadUrl, createThumbnailUrl, downloadFile, downloadFileCallBack, downloadPublicFile, previewFile };
179
+ export { createDownloadUrl, createDownloadUrlNoBase, createOriginalUrl, createPublicDownloadUrl, createThumbnailUrl, downloadFile, downloadFileCallBack, downloadPublicFile, previewFile };
package/dist/print.d.ts CHANGED
@@ -21,17 +21,25 @@ interface IParams {
21
21
  hiddenClassNames?: string[];
22
22
  }
23
23
  export declare function printCurrentDom({ hiddenClassNames }?: IParams): void;
24
- export declare function htmlToPdf({ pageClassName, dom, pdfName, isShowPage, noDownload, }: {
24
+ export declare function htmlToPdf({ pageClassName, dom, pdfName, isShowPage, }: {
25
25
  pageClassName?: string;
26
26
  dom: HTMLElement;
27
27
  pdfName: string;
28
28
  isShowPage?: boolean;
29
- noDownload?: boolean;
29
+ }): Promise<jsPDF>;
30
+ export declare function htmlToPdfForExport({ pageClassName, dom, isShowPage, }: {
31
+ pageClassName?: string;
32
+ dom?: HTMLElement;
33
+ isShowPage?: boolean;
30
34
  }): Promise<{
31
- pdf: jsPDF;
32
- pdfBase64: any[];
33
- }> | Promise<{
34
- pdf: jsPDF;
35
- pdfBase64: string;
35
+ pdfs: any;
36
+ pdfBase64: any;
36
37
  }>;
38
+ export declare function htmlToPdfForAutoSeal({ pageClassName, dom, isShowPage, request, fileId, }: {
39
+ pageClassName?: string;
40
+ dom: HTMLElement;
41
+ isShowPage?: boolean;
42
+ request?: any;
43
+ fileId?: string;
44
+ }): Promise<unknown>;
37
45
  export {};
package/dist/print.js CHANGED
@@ -1,6 +1,8 @@
1
1
  import { a as __spreadArray, c as __awaiter, d as __generator } from './tslib.es6-f9459658.js';
2
2
  import { jsPDF } from 'jspdf';
3
3
  import html2canvas from 'html2canvas';
4
+ import { createDownloadUrlNoBase } from './fileOperation.js';
5
+ import './authority-fad2028d.js';
4
6
 
5
7
  /**
6
8
  * 添加水印
@@ -102,13 +104,12 @@ function createPdf(canvas, pdf) {
102
104
  }
103
105
  }
104
106
  function htmlToPdf(_a) {
105
- var pageClassName = _a.pageClassName, dom = _a.dom, pdfName = _a.pdfName, isShowPage = _a.isShowPage, noDownload = _a.noDownload;
107
+ var pageClassName = _a.pageClassName, dom = _a.dom, pdfName = _a.pdfName, isShowPage = _a.isShowPage;
106
108
  var pdf = new jsPDF(undefined, 'pt', 'a4');
107
109
  var allDom = document.querySelectorAll(pageClassName ? pageClassName : '.html2canvas-container-page');
108
110
  if (allDom.length > 0 && isShowPage) {
109
111
  var allDomArray = Array.prototype.slice.call(allDom);
110
112
  var promiseAllDomArray_1 = allDomArray.map(function (dom) { return html2canvas(dom); });
111
- var pdfBase64_1 = [];
112
113
  return (function () {
113
114
  return __awaiter(this, void 0, void 0, function () {
114
115
  var i, _i, promiseAllDomArray_2, item, canvas;
@@ -129,19 +130,13 @@ function htmlToPdf(_a) {
129
130
  if (i < promiseAllDomArray_1.length) {
130
131
  pdf.addPage();
131
132
  }
132
- pdfBase64_1.push(pdf.output('dataurlstring'));
133
133
  _a.label = 3;
134
134
  case 3:
135
135
  _i++;
136
136
  return [3 /*break*/, 1];
137
137
  case 4:
138
- if (!noDownload) {
139
- pdf.save(pdfName + ".pdf");
140
- }
141
- return [2 /*return*/, Promise.resolve({
142
- pdf: pdf,
143
- pdfBase64: pdfBase64_1,
144
- })];
138
+ pdf.save(pdfName + ".pdf");
139
+ return [2 /*return*/, Promise.resolve(pdf)];
145
140
  }
146
141
  });
147
142
  });
@@ -150,15 +145,156 @@ function htmlToPdf(_a) {
150
145
  else {
151
146
  return html2canvas(dom).then(function (canvas) {
152
147
  createPdf(canvas, pdf);
153
- if (!noDownload) {
154
- pdf.save(pdfName + ".pdf");
155
- }
148
+ pdf.save(pdfName + ".pdf");
149
+ return pdf;
150
+ });
151
+ }
152
+ }
153
+ // html转pdf,为了上传用
154
+ function htmlToPdfForExport(_a) {
155
+ var pageClassName = _a.pageClassName, dom = _a.dom, isShowPage = _a.isShowPage;
156
+ // 看是否需要分页
157
+ var allDom = document.querySelectorAll(pageClassName ? pageClassName : '.html2canvas-container-page');
158
+ // 如果需要分页
159
+ if (allDom.length > 0 && isShowPage) {
160
+ // 类数组转为数组
161
+ var allDomArray = Array.prototype.slice.call(allDom);
162
+ // 每个dom添加canvas处理
163
+ var promiseAllDomArray_3 = allDomArray.map(function (dom) { return html2canvas(dom); });
164
+ var pdfBase64_1 = [];
165
+ var pdfs_1 = [];
166
+ return (function () {
167
+ return __awaiter(this, void 0, void 0, function () {
168
+ var _i, promiseAllDomArray_4, item, pdf, canvas;
169
+ return __generator(this, function (_a) {
170
+ switch (_a.label) {
171
+ case 0:
172
+ _i = 0, promiseAllDomArray_4 = promiseAllDomArray_3;
173
+ _a.label = 1;
174
+ case 1:
175
+ if (!(_i < promiseAllDomArray_4.length)) return [3 /*break*/, 4];
176
+ item = promiseAllDomArray_4[_i];
177
+ pdf = new jsPDF(undefined, 'pt', 'a4');
178
+ return [4 /*yield*/, item];
179
+ case 2:
180
+ canvas = _a.sent();
181
+ createPdf(canvas, pdf);
182
+ pdfBase64_1.push(pdf.output('dataurlstring'));
183
+ pdfs_1.push(pdf);
184
+ _a.label = 3;
185
+ case 3:
186
+ _i++;
187
+ return [3 /*break*/, 1];
188
+ case 4: return [2 /*return*/, Promise.resolve({
189
+ pdfs: pdfs_1,
190
+ pdfBase64: pdfBase64_1,
191
+ })];
192
+ }
193
+ });
194
+ });
195
+ })();
196
+ }
197
+ else {
198
+ var pdf_1 = new jsPDF(undefined, 'pt', 'a4');
199
+ return html2canvas(dom).then(function (canvas) {
200
+ createPdf(canvas, pdf_1);
156
201
  return {
157
- pdf: pdf,
158
- pdfBase64: pdf.output('dataurlstring'),
202
+ pdfs: [pdf_1],
203
+ pdfBase64: [pdf_1.output('dataurlstring')],
159
204
  };
160
205
  });
161
206
  }
207
+ }
208
+ function htmlToPdfForAutoSeal(_a) {
209
+ var pageClassName = _a.pageClassName, dom = _a.dom, isShowPage = _a.isShowPage, request = _a.request, fileId = _a.fileId;
210
+ return __awaiter(this, void 0, void 0, function () {
211
+ var allDom, fileBinary, allDomArray_1, pdfBase64_2, pdfs_2, pdf_2;
212
+ return __generator(this, function (_b) {
213
+ switch (_b.label) {
214
+ case 0:
215
+ allDom = document.querySelectorAll(pageClassName ? pageClassName : '.html2canvas-container-page');
216
+ return [4 /*yield*/, request({
217
+ url: createDownloadUrlNoBase(fileId),
218
+ method: 'GET',
219
+ })];
220
+ case 1:
221
+ fileBinary = (_b.sent()).data;
222
+ // 如果需要分页
223
+ if (allDom.length > 0 && isShowPage) {
224
+ allDomArray_1 = Array.prototype.slice.call(allDom);
225
+ pdfBase64_2 = [];
226
+ pdfs_2 = [];
227
+ return [2 /*return*/, (function () {
228
+ return __awaiter(this, void 0, void 0, function () {
229
+ var _loop_1, _i, allDomArray_2, item;
230
+ return __generator(this, function (_a) {
231
+ switch (_a.label) {
232
+ case 0:
233
+ _loop_1 = function (item) {
234
+ var pdf;
235
+ return __generator(this, function (_b) {
236
+ switch (_b.label) {
237
+ case 0:
238
+ pdf = new jsPDF(undefined, 'pt', [1000, 1800]);
239
+ pdf.addFileToVFS('microsoft-yahei.ttf', fileBinary.data);
240
+ pdf.addFont('microsoft-yahei.ttf', 'microsoft-yahei', 'normal');
241
+ pdf.setFont('microsoft-yahei');
242
+ return [4 /*yield*/, new Promise(function (resolve) {
243
+ pdf.html(item, {
244
+ callback: function (doc) {
245
+ pdfBase64_2.push(doc.output('dataurlstring'));
246
+ pdfs_2.push(doc);
247
+ doc.save();
248
+ resolve({});
249
+ },
250
+ });
251
+ })];
252
+ case 1:
253
+ _b.sent();
254
+ return [2 /*return*/];
255
+ }
256
+ });
257
+ };
258
+ _i = 0, allDomArray_2 = allDomArray_1;
259
+ _a.label = 1;
260
+ case 1:
261
+ if (!(_i < allDomArray_2.length)) return [3 /*break*/, 4];
262
+ item = allDomArray_2[_i];
263
+ return [5 /*yield**/, _loop_1(item)];
264
+ case 2:
265
+ _a.sent();
266
+ _a.label = 3;
267
+ case 3:
268
+ _i++;
269
+ return [3 /*break*/, 1];
270
+ case 4: return [2 /*return*/, Promise.resolve({
271
+ pdfs: pdfs_2,
272
+ pdfBase64: pdfBase64_2,
273
+ })];
274
+ }
275
+ });
276
+ });
277
+ })()];
278
+ }
279
+ else {
280
+ pdf_2 = new jsPDF(undefined, 'pt', 'a4');
281
+ pdf_2.addFileToVFS('microsoft-yahei.ttf', fileBinary.data);
282
+ pdf_2.addFont('microsoft-yahei.ttf', 'microsoft-yahei', 'normal');
283
+ pdf_2.setFont('microsoft-yahei');
284
+ return [2 /*return*/, new Promise(function (resolve) {
285
+ pdf_2.html(dom, {
286
+ callback: function (doc) {
287
+ resolve({
288
+ pdfs: [doc],
289
+ pdfBase64: [doc.output('dataurlstring')],
290
+ });
291
+ },
292
+ });
293
+ })];
294
+ }
295
+ }
296
+ });
297
+ });
162
298
  }
163
299
 
164
- export { addWaterHandle, htmlToPdf, printCurrentDom, removeWaterHandle };
300
+ export { addWaterHandle, htmlToPdf, htmlToPdfForAutoSeal, htmlToPdfForExport, printCurrentDom, removeWaterHandle };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ztxkutils",
3
- "version": "2.7.16",
3
+ "version": "2.7.19",
4
4
  "description": "",
5
5
  "main": "./dist/index.js",
6
6
  "module": "./dist/index.js",