vg-print-vue2 1.0.308 → 1.0.310
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.
- package/dist/style.css +184 -170
- package/dist/vg-print-vue2.es.js +1205 -221
- package/package.json +1 -1
package/dist/vg-print-vue2.es.js
CHANGED
|
@@ -223,6 +223,10 @@ const cn$1 = {
|
|
|
223
223
|
"行/列合并函数": "行/列合并函数",
|
|
224
224
|
"跨页合并是否清除": "跨页合并是否清除",
|
|
225
225
|
"表格脚函数": "表格脚函数",
|
|
226
|
+
"表格头部体外函数": "表格头部体外函数",
|
|
227
|
+
"表格尾部体外函数": "表格尾部体外函数",
|
|
228
|
+
"表格头部体外显示": "表格头部体外显示",
|
|
229
|
+
"表格尾部体外显示": "表格尾部体外显示",
|
|
226
230
|
"分组字段函数": "分组字段函数",
|
|
227
231
|
"分组头格式化函数": "分组头格式化函数",
|
|
228
232
|
"分组头信息": "分组头信息",
|
|
@@ -682,7 +686,11 @@ const cn_tw = {
|
|
|
682
686
|
"每页页尾显示": "每頁頁尾顯示",
|
|
683
687
|
"不跟随": "不跟隨",
|
|
684
688
|
"内容区左上": "內容區左上",
|
|
685
|
-
"内容区左下(贴底)": "內容區左下(貼底)"
|
|
689
|
+
"内容区左下(贴底)": "內容區左下(貼底)",
|
|
690
|
+
"表格头部体外函数": "表格頭部體外函數",
|
|
691
|
+
"表格尾部体外函数": "表格尾部體外函數",
|
|
692
|
+
"表格头部体外显示": "表格頭部體外顯示",
|
|
693
|
+
"表格尾部体外显示": "表格尾部體外顯示"
|
|
686
694
|
};
|
|
687
695
|
const __vite_glob_0_1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
688
696
|
__proto__: null,
|
|
@@ -918,6 +926,10 @@ const en$1 = {
|
|
|
918
926
|
"行/列合并函数": "Row/Column Merge Function",
|
|
919
927
|
"跨页合并是否清除": "Clear Page Break Merge",
|
|
920
928
|
"表格脚函数": "Table Footer Function",
|
|
929
|
+
"表格头部体外函数": "Table Outside Header Function",
|
|
930
|
+
"表格尾部体外函数": "Table Outside Footer Function",
|
|
931
|
+
"表格头部体外显示": "Outside Header Display",
|
|
932
|
+
"表格尾部体外显示": "Outside Footer Display",
|
|
921
933
|
"分组字段函数": "Group Field Function",
|
|
922
934
|
"分组头格式化函数": "Group Header Format Function",
|
|
923
935
|
"分组头信息": "Group Header Info",
|
|
@@ -1378,7 +1390,11 @@ const ja = {
|
|
|
1378
1390
|
"每页页尾显示": "各ページのフッター",
|
|
1379
1391
|
"不跟随": "追従しない",
|
|
1380
1392
|
"内容区左上": "内容領域 左上",
|
|
1381
|
-
"内容区左下(贴底)": "内容領域 左下(下端)"
|
|
1393
|
+
"内容区左下(贴底)": "内容領域 左下(下端)",
|
|
1394
|
+
"表格头部体外函数": "表外ヘッダー関数",
|
|
1395
|
+
"表格尾部体外函数": "表外フッター関数",
|
|
1396
|
+
"表格头部体外显示": "表外ヘッダー表示",
|
|
1397
|
+
"表格尾部体外显示": "表外フッター表示"
|
|
1382
1398
|
};
|
|
1383
1399
|
const __vite_glob_0_3 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
1384
1400
|
__proto__: null,
|
|
@@ -52253,14 +52269,25 @@ var hiprint$3 = function(t4) {
|
|
|
52253
52269
|
this.updateSizeAndPositionOptions(o2, i3, n3, e2);
|
|
52254
52270
|
}, BasePrintElement.prototype.getOrderIndex = function() {
|
|
52255
52271
|
return this.options.getTop();
|
|
52272
|
+
}, BasePrintElement.prototype.parseNumberOption = function(v2) {
|
|
52273
|
+
if (null == v2 || "" === v2)
|
|
52274
|
+
return 0;
|
|
52275
|
+
var n3 = "number" == typeof v2 ? v2 : parseFloat(v2.toString());
|
|
52276
|
+
return Number.isFinite(n3) && n3 > 0 ? n3 : 0;
|
|
52277
|
+
}, BasePrintElement.prototype.getDiffPaperFooter = function(t4) {
|
|
52278
|
+
var e2 = t4 && Object.prototype.hasOwnProperty.call(t4, "diffPaperFooter") ? t4.diffPaperFooter : void 0;
|
|
52279
|
+
return void 0 === e2 && _HiPrintConfig__WEBPACK_IMPORTED_MODULE_1__ && _HiPrintConfig__WEBPACK_IMPORTED_MODULE_1__.a && _HiPrintConfig__WEBPACK_IMPORTED_MODULE_1__.a.instance && Object.prototype.hasOwnProperty.call(_HiPrintConfig__WEBPACK_IMPORTED_MODULE_1__.a.instance, "diffPaperFooter") && (e2 = _HiPrintConfig__WEBPACK_IMPORTED_MODULE_1__.a.instance.diffPaperFooter), this.parseNumberOption(e2);
|
|
52280
|
+
}, BasePrintElement.prototype.getBaseElementPaperFooter = function(t4, e2) {
|
|
52281
|
+
var n3 = t4.getPaperFooter(e2), i3 = this.getDiffPaperFooter(t4);
|
|
52282
|
+
return i3 > 0 && t4 && Number.isFinite(t4.height) ? Math.min(t4.height, n3 + i3) : n3;
|
|
52256
52283
|
}, BasePrintElement.prototype.getHtml = function(t4, e2, n3) {
|
|
52257
52284
|
var i3 = 0;
|
|
52258
52285
|
this.setCurrenttemplateData(e2);
|
|
52259
|
-
var o2 = [], r2 = this.getBeginPrintTopInPaperByReferenceElement(t4), a2 =
|
|
52286
|
+
var o2 = [], r2 = this.getBeginPrintTopInPaperByReferenceElement(t4), a2 = this.getBaseElementPaperFooter(t4, i3);
|
|
52260
52287
|
this.isHeaderOrFooter() || this.isFixed() || r2 > a2 && "none" != t4.panelPageRule && (o2.push(new _dto_PaperHtmlResult__WEBPACK_IMPORTED_MODULE_3__.a({
|
|
52261
52288
|
target: void 0,
|
|
52262
52289
|
printLine: void 0
|
|
52263
|
-
})), r2 = r2 - a2 + t4.paperHeader, i3++, a2 =
|
|
52290
|
+
})), r2 = r2 - a2 + t4.paperHeader, i3++, a2 = this.getBaseElementPaperFooter(t4, i3));
|
|
52264
52291
|
var p2 = this.getData(e2, t4.index), s3 = this.createTarget(this.getTitle(), p2, n3), l2 = this.getEmptyDataDisplayMode(p2);
|
|
52265
52292
|
if ("collapse" == l2)
|
|
52266
52293
|
return o2.push(this.buildEmptyCollapseResult(t4, r2, t4.index + i3)), o2;
|
|
@@ -52319,15 +52346,15 @@ var hiprint$3 = function(t4) {
|
|
|
52319
52346
|
}, BasePrintElement.prototype.getHtml2 = function(t4, e2, n3) {
|
|
52320
52347
|
var i3 = 0;
|
|
52321
52348
|
this.setCurrenttemplateData(e2);
|
|
52322
|
-
var o2 = [], r2 = this.getBeginPrintTopInPaperByReferenceElement(t4), a2 =
|
|
52349
|
+
var o2 = [], r2 = this.getBeginPrintTopInPaperByReferenceElement(t4), a2 = this.getBaseElementPaperFooter(t4, i3);
|
|
52323
52350
|
this.isHeaderOrFooter() || this.isFixed() || ("none" != t4.panelPageRule && r2 > a2 && (o2.push(new _dto_PaperHtmlResult__WEBPACK_IMPORTED_MODULE_3__.a({
|
|
52324
52351
|
target: void 0,
|
|
52325
52352
|
printLine: void 0
|
|
52326
52353
|
// (e && r + this.options.getHeight() > a) --> 设计时拖拽元素高度超过页脚线时,导致报错问题
|
|
52327
|
-
})), r2 = r2 - a2 + t4.paperHeader, i3++, a2 =
|
|
52354
|
+
})), r2 = r2 - a2 + t4.paperHeader, i3++, a2 = this.getBaseElementPaperFooter(t4, i3)), r2 <= a2 && (e2 && r2 + this.options.getHeight() > a2) && "none" != t4.panelPageRule && (o2.push(new _dto_PaperHtmlResult__WEBPACK_IMPORTED_MODULE_3__.a({
|
|
52328
52355
|
target: void 0,
|
|
52329
52356
|
printLine: void 0
|
|
52330
|
-
})), r2 = t4.paperHeader, i3++, a2 =
|
|
52357
|
+
})), r2 = t4.paperHeader, i3++, a2 = this.getBaseElementPaperFooter(t4, i3)));
|
|
52331
52358
|
var p2 = this.getData(e2, t4.index);
|
|
52332
52359
|
var s3 = this.createTarget(this.getTitle(), p2, t4.index);
|
|
52333
52360
|
var l2 = this.getEmptyDataDisplayMode(p2);
|
|
@@ -53250,7 +53277,7 @@ var hiprint$3 = function(t4) {
|
|
|
53250
53277
|
return;
|
|
53251
53278
|
}
|
|
53252
53279
|
target.css("text-align", align);
|
|
53253
|
-
}, TableExcelHelper.createTableHead = function(t4, e2, options2, tableData2,
|
|
53280
|
+
}, TableExcelHelper.createTableHead = function(t4, e2, options2, tableData2, printData4) {
|
|
53254
53281
|
for (var n3 = TableExcelHelper.reconsitutionTableColumnTree(t4), i3 = $$i("<thead></thead>"), o2 = TableExcelHelper.getColumnsWidth(n3, e2), r2 = function r3(t5) {
|
|
53255
53282
|
var e3 = $$i("<tr></tr>");
|
|
53256
53283
|
n3[t5].filter(function(t6) {
|
|
@@ -53262,7 +53289,7 @@ var hiprint$3 = function(t4) {
|
|
|
53262
53289
|
n4.text(ht2), o2[t6.id] ? (t6.hasWidth = true, t6.targetWidth = o2[t6.id], n4.attr("haswidth", "haswidth"), n4.css("width", o2[t6.id] + "pt")) : t6.hasWidth = false;
|
|
53263
53290
|
var s3 = TableExcelHelper.getHeaderStyler(t6);
|
|
53264
53291
|
if (s3) {
|
|
53265
|
-
var l2 = s3(t6, options2, tableData2,
|
|
53292
|
+
var l2 = s3(t6, options2, tableData2, printData4);
|
|
53266
53293
|
if (l2)
|
|
53267
53294
|
Object.keys(l2).forEach(function(t7) {
|
|
53268
53295
|
n4.css(t7, l2[t7]);
|
|
@@ -53384,7 +53411,7 @@ var hiprint$3 = function(t4) {
|
|
|
53384
53411
|
}, TableExcelHelper.tableSummaryTitle = function(column2, title, data3) {
|
|
53385
53412
|
var s3 = column2.tableSummaryTitle == void 0 || column2.tableSummaryTitle == true;
|
|
53386
53413
|
return s3 ? `${title}` : data3 ? `` : `<span style="color:firebrick">${title}</span>`;
|
|
53387
|
-
}, TableExcelHelper.createTableRow = function(t4, e2,
|
|
53414
|
+
}, TableExcelHelper.createTableRow = function(t4, e2, printData4, n3, i3) {
|
|
53388
53415
|
var h2 = this;
|
|
53389
53416
|
var o2 = TableExcelHelper.reconsitutionTableColumnTree(t4), r2 = $$i("<tbody></tbody>");
|
|
53390
53417
|
var isEnabled = function(v2) {
|
|
@@ -53419,20 +53446,20 @@ var hiprint$3 = function(t4) {
|
|
|
53419
53446
|
var groupFormatter2 = h2.getGroupFormatter(n3, i3);
|
|
53420
53447
|
if (groupFormatter2) {
|
|
53421
53448
|
var ee2 = $$i("<tr></tr>");
|
|
53422
|
-
ee2.append(groupFormatter2(o2.colspan, e2,
|
|
53449
|
+
ee2.append(groupFormatter2(o2.colspan, e2, printData4, t5, n3)), r2.append(ee2);
|
|
53423
53450
|
}
|
|
53424
53451
|
var groupFooterFormatter2 = h2.getGroupFooterFormatter(n3, i3);
|
|
53425
53452
|
var groupData = t5;
|
|
53426
53453
|
if (groupData.rows.forEach(function(t6, rowIndex2) {
|
|
53427
53454
|
var si2 = groupSequenceContinueEnabled ? seqIndex2++ : rowIndex2;
|
|
53428
|
-
var e3 = TableExcelHelper.createRowTarget(o2, t6, n3, i3, rowIndex2, groupData.rows,
|
|
53455
|
+
var e3 = TableExcelHelper.createRowTarget(o2, t6, n3, i3, rowIndex2, groupData.rows, printData4, si2);
|
|
53429
53456
|
r2.append(e3);
|
|
53430
53457
|
}), groupFooterFormatter2) {
|
|
53431
53458
|
var a2 = $$i("<tr></tr>");
|
|
53432
|
-
a2.append(groupFooterFormatter2(o2.colspan, e2,
|
|
53459
|
+
a2.append(groupFooterFormatter2(o2.colspan, e2, printData4, t5, n3)), r2.append(a2);
|
|
53433
53460
|
}
|
|
53434
53461
|
}) : e2.forEach(function(t5, rowIndex2) {
|
|
53435
|
-
var row2 = TableExcelHelper.createRowTarget(o2, t5, n3, i3, rowIndex2, e2,
|
|
53462
|
+
var row2 = TableExcelHelper.createRowTarget(o2, t5, n3, i3, rowIndex2, e2, printData4, rowIndex2);
|
|
53436
53463
|
r2.append(row2);
|
|
53437
53464
|
});
|
|
53438
53465
|
blankRowsCount > 0 && "end" === blankRowsPosition && TableExcelHelper.appendBlankRows(r2, t4, n3);
|
|
@@ -53502,6 +53529,42 @@ var hiprint$3 = function(t4) {
|
|
|
53502
53529
|
if ("image" == t.tableTextType) {
|
|
53503
53530
|
r.html("");
|
|
53504
53531
|
if (p) {
|
|
53532
|
+
var normalizeImageSrc = function(src2) {
|
|
53533
|
+
if (src2 == null)
|
|
53534
|
+
return "";
|
|
53535
|
+
src2 = String(src2).trim();
|
|
53536
|
+
if (!src2)
|
|
53537
|
+
return "";
|
|
53538
|
+
if (/^data:/i.test(src2))
|
|
53539
|
+
return src2;
|
|
53540
|
+
if (/^(https?:)?\/\//i.test(src2))
|
|
53541
|
+
return src2;
|
|
53542
|
+
if (/^blob:/i.test(src2) || /^file:/i.test(src2))
|
|
53543
|
+
return src2;
|
|
53544
|
+
if (src2[0] === "/" || src2.indexOf("./") === 0 || src2.indexOf("../") === 0)
|
|
53545
|
+
return src2;
|
|
53546
|
+
if (/^[A-Za-z0-9+/=_-]+$/.test(src2) && src2.length > 80) {
|
|
53547
|
+
var head = src2.slice(0, 10);
|
|
53548
|
+
var m2;
|
|
53549
|
+
if (head.indexOf("iVBORw0") === 0)
|
|
53550
|
+
m2 = "image/png";
|
|
53551
|
+
else if (head.indexOf("/9j/") === 0)
|
|
53552
|
+
m2 = "image/jpeg";
|
|
53553
|
+
else if (head.indexOf("R0lGOD") === 0)
|
|
53554
|
+
m2 = "image/gif";
|
|
53555
|
+
else if (head.indexOf("UklGR") === 0)
|
|
53556
|
+
m2 = "image/webp";
|
|
53557
|
+
else if (head.indexOf("Qk") === 0)
|
|
53558
|
+
m2 = "image/bmp";
|
|
53559
|
+
else if (head.indexOf("PHN2Zy") === 0)
|
|
53560
|
+
m2 = "image/svg+xml";
|
|
53561
|
+
else
|
|
53562
|
+
m2 = "image/png";
|
|
53563
|
+
return "data:" + m2 + ";base64," + src2;
|
|
53564
|
+
}
|
|
53565
|
+
return src2;
|
|
53566
|
+
};
|
|
53567
|
+
p = normalizeImageSrc(p);
|
|
53505
53568
|
var imagebox = $$i('<div><img style = "max-width:100%;max-height:100%"/></div>');
|
|
53506
53569
|
imagebox.find("img").attr("src", p);
|
|
53507
53570
|
console.log(imagebox.find("img").css("width"));
|
|
@@ -56965,6 +57028,31 @@ var hiprint$3 = function(t4) {
|
|
|
56965
57028
|
}, t5.prototype.destroy = function() {
|
|
56966
57029
|
this.target.remove();
|
|
56967
57030
|
}, t5;
|
|
57031
|
+
}(), diffPaperFooterOption = function() {
|
|
57032
|
+
function t5() {
|
|
57033
|
+
this.name = "diffPaperFooter";
|
|
57034
|
+
}
|
|
57035
|
+
return t5.prototype.createTarget = function() {
|
|
57036
|
+
return this.target = $$i(`<div class="hiprint-option-item">
|
|
57037
|
+
<div class="hiprint-option-item-label">
|
|
57038
|
+
${i18n.__("超出页脚")}
|
|
57039
|
+
</div>
|
|
57040
|
+
<div class="hiprint-option-item-field">
|
|
57041
|
+
<input type="text" placeholder="${i18n.__("允许基础元素超出页脚高度pt")}" class="auto-submit">
|
|
57042
|
+
</div>
|
|
57043
|
+
</div>`), this.target;
|
|
57044
|
+
}, t5.prototype.getValue = function() {
|
|
57045
|
+
var t6 = this.target.find("input").val(), e3 = (null == t6 ? "" : t6.toString()).trim();
|
|
57046
|
+
if ("" === e3)
|
|
57047
|
+
return;
|
|
57048
|
+
var n4 = parseFloat(e3);
|
|
57049
|
+
if (!Number.isNaN(n4) && n4 >= 0)
|
|
57050
|
+
return n4;
|
|
57051
|
+
}, t5.prototype.setValue = function(t6) {
|
|
57052
|
+
this.target.find("input").val(t6);
|
|
57053
|
+
}, t5.prototype.destroy = function() {
|
|
57054
|
+
this.target.remove();
|
|
57055
|
+
}, t5;
|
|
56968
57056
|
}(), S2 = function() {
|
|
56969
57057
|
function t5() {
|
|
56970
57058
|
this.name = "leftSpaceRemoved";
|
|
@@ -59405,6 +59493,90 @@ ${i18n.__("转大小写")}
|
|
|
59405
59493
|
}, t5.prototype.destroy = function() {
|
|
59406
59494
|
this.target.remove();
|
|
59407
59495
|
}, t5;
|
|
59496
|
+
}(), tableBeforeFormatterOption = function() {
|
|
59497
|
+
function t5() {
|
|
59498
|
+
this.name = "tableBeforeFormatter";
|
|
59499
|
+
}
|
|
59500
|
+
return t5.prototype.createTarget = function() {
|
|
59501
|
+
return this.target = $$i(`<div class="hiprint-option-item">
|
|
59502
|
+
<div class="hiprint-option-item-label">
|
|
59503
|
+
${i18n.__("表格头部体外函数")}
|
|
59504
|
+
</div>
|
|
59505
|
+
<div class="hiprint-option-item-field">
|
|
59506
|
+
<textarea style="height:80px;" placeholder="function(options,rows,data,pageData,meta){ return '<div></div>' }" class="auto-submit"></textarea>
|
|
59507
|
+
</div>
|
|
59508
|
+
</div>`), this.target;
|
|
59509
|
+
}, t5.prototype.getValue = function() {
|
|
59510
|
+
var t6 = this.target.find("textarea").val();
|
|
59511
|
+
if (t6)
|
|
59512
|
+
return t6;
|
|
59513
|
+
}, t5.prototype.setValue = function(t6) {
|
|
59514
|
+
this.target.find("textarea").val(t6 ? t6.toString() : null);
|
|
59515
|
+
}, t5.prototype.destroy = function() {
|
|
59516
|
+
this.target.remove();
|
|
59517
|
+
}, t5;
|
|
59518
|
+
}(), tableAfterFormatterOption = function() {
|
|
59519
|
+
function t5() {
|
|
59520
|
+
this.name = "tableAfterFormatter";
|
|
59521
|
+
}
|
|
59522
|
+
return t5.prototype.createTarget = function() {
|
|
59523
|
+
return this.target = $$i(`<div class="hiprint-option-item">
|
|
59524
|
+
<div class="hiprint-option-item-label">
|
|
59525
|
+
${i18n.__("表格尾部体外函数")}
|
|
59526
|
+
</div>
|
|
59527
|
+
<div class="hiprint-option-item-field">
|
|
59528
|
+
<textarea style="height:80px;" placeholder="function(options,rows,data,pageData,meta){ return '<div></div>' }" class="auto-submit"></textarea>
|
|
59529
|
+
</div>
|
|
59530
|
+
</div>`), this.target;
|
|
59531
|
+
}, t5.prototype.getValue = function() {
|
|
59532
|
+
var t6 = this.target.find("textarea").val();
|
|
59533
|
+
if (t6)
|
|
59534
|
+
return t6;
|
|
59535
|
+
}, t5.prototype.setValue = function(t6) {
|
|
59536
|
+
this.target.find("textarea").val(t6 ? t6.toString() : null);
|
|
59537
|
+
}, t5.prototype.destroy = function() {
|
|
59538
|
+
this.target.remove();
|
|
59539
|
+
}, t5;
|
|
59540
|
+
}(), tableOutsideRepeatOption = function() {
|
|
59541
|
+
function t5(name2, label) {
|
|
59542
|
+
this.name = name2, this.label = label;
|
|
59543
|
+
}
|
|
59544
|
+
return t5.prototype.createTarget = function() {
|
|
59545
|
+
return this.target = $$i(`<div class="hiprint-option-item">
|
|
59546
|
+
<div class="hiprint-option-item-label">
|
|
59547
|
+
${i18n.__(this.label)}
|
|
59548
|
+
</div>
|
|
59549
|
+
<div class="hiprint-option-item-field">
|
|
59550
|
+
<select class="auto-submit">
|
|
59551
|
+
<option value="" >${i18n.__("默认")}</option>
|
|
59552
|
+
<option value="none" >${i18n.__("不显示")}</option>
|
|
59553
|
+
<option value="page" >${i18n.__("每页显示")}</option>
|
|
59554
|
+
<option value="first" >${i18n.__("首页显示")}</option>
|
|
59555
|
+
<option value="last" >${i18n.__("最后显示")}</option>
|
|
59556
|
+
<option value="odd" >${i18n.__("奇数页")}</option>
|
|
59557
|
+
<option value="even" >${i18n.__("偶数页")}</option>
|
|
59558
|
+
</select>
|
|
59559
|
+
</div>
|
|
59560
|
+
</div>`), this.target;
|
|
59561
|
+
}, t5.prototype.getValue = function() {
|
|
59562
|
+
var t6 = this.target.find("select").val();
|
|
59563
|
+
if (t6)
|
|
59564
|
+
return t6.toString();
|
|
59565
|
+
}, t5.prototype.setValue = function(t6) {
|
|
59566
|
+
this.target.find("select").val(t6);
|
|
59567
|
+
}, t5.prototype.destroy = function() {
|
|
59568
|
+
this.target.remove();
|
|
59569
|
+
}, t5;
|
|
59570
|
+
}(), tableBeforeRepeatOption = function() {
|
|
59571
|
+
function t5() {
|
|
59572
|
+
this.name = "tableBeforeRepeat", this.label = "表格头部体外显示";
|
|
59573
|
+
}
|
|
59574
|
+
return t5.prototype.createTarget = tableOutsideRepeatOption.prototype.createTarget, t5.prototype.getValue = tableOutsideRepeatOption.prototype.getValue, t5.prototype.setValue = tableOutsideRepeatOption.prototype.setValue, t5.prototype.destroy = tableOutsideRepeatOption.prototype.destroy, t5;
|
|
59575
|
+
}(), tableAfterRepeatOption = function() {
|
|
59576
|
+
function t5() {
|
|
59577
|
+
this.name = "tableAfterRepeat", this.label = "表格尾部体外显示";
|
|
59578
|
+
}
|
|
59579
|
+
return t5.prototype.createTarget = tableOutsideRepeatOption.prototype.createTarget, t5.prototype.getValue = tableOutsideRepeatOption.prototype.getValue, t5.prototype.setValue = tableOutsideRepeatOption.prototype.setValue, t5.prototype.destroy = tableOutsideRepeatOption.prototype.destroy, t5;
|
|
59408
59580
|
}(), groupFieldsFormatter2 = function() {
|
|
59409
59581
|
function t5() {
|
|
59410
59582
|
this.name = "groupFieldsFormatter";
|
|
@@ -60756,7 +60928,7 @@ ${i18n.__("转大小写")}
|
|
|
60756
60928
|
t5.init(), t5.printElementOptionItems[e3.name] = e3;
|
|
60757
60929
|
}, t5.getItem = function(e3) {
|
|
60758
60930
|
return t5.init(), t5.printElementOptionItems[e3];
|
|
60759
|
-
}, t5._printElementOptionItems = [new fontFamily2(), new r2(), new scaleOption(), new autoSizeMinOption(), new a2(), new p2(), new i3(), new s3(), new l2(), new pt2(), new u2(), new d3(), new c2(), new h2(), new f2(), new g2(), new m2(), new d22(), new c22(), new v2(), new v22(), new y2(), new b3(), new E2(), new qrCodeLevel(), new T2(), new P2(), new _2(), new w2(), new x2(), new autoField(), new autoFieldFormatter2(), new coordinate(), new widthHeight(), new C2(), new imageFit(), new O2(), new H4(), new D2(), new paperNumberContinue(), new watermarkOptions(), new I2(), new R2(), new unShowInPage(), new pageBreak(), new groupSequenceContinueOption(), new axis(), new followTableModeOption(), new followTableAnchorOption(), new followOffsetXOption(), new followOffsetYOption(), new followOffsetYFromBottomOption(), new followTableMinOverlapPtOption(), new M2(), new M22(), new paperTypeOption(), new paperWidthOption(), new paperHeightOption(), new paperHeaderOption(), new paperFooterOption(), new S2(), new B3(), new F2(), new L2(), new A2(), new z2(), new k2(), new st2(), new N2(), new V2(), new W2(), new j2(), new U2(), new borderRadius(), new zIndex2(), new K2(), new G2(), new q2(), new X2(), new Y2(), new Q2(), new J2(), new Z2(), new tt2(), new et2(), new nt2(), new it2(), new ot2(), new textWrap(), new at2(), new lt2(), new panelLayoutOptions(), new ut2(), new ith(), new dt2(), new ct2(), new ht2(), new ft2(), new gt2(), new wordStyleOption(), new pageBreakHandlerOption(), new mt2(), new rowcolumns(), new rowsColumnsMergeClean(), new groupFieldsFormatter2(), new groupFormatter2(), new groupFooterFormatter2(), new vt2(), new yt2(), new bt2(), new Tt2(), new Et2(), new Pt2(), new stylerHeader2(), new renderFormatter2(), new _t3(), new wt2(), new maxRows2(), new tablePaginationTolerancePxOption(), new blankRowsCountOption(), new blankRowsPositionOption(), new xt2(), new tableColumnH(), new tableE(), new tableQRCodeLevel(), new tablept(), new tableSummaryTitle(), new tableSummaryText(), new tableSummaryColspan(), new tableSummary(), new tableSummaryAlign(), new tableSummaryNumFormat(), new tableSummaryFormatter2(), new showCodeTitle(), new upperCase(), new barcodeType(), new qrcodeType(), new barColor(), new barWidthOption(), new autoBarWidthOption(), new barcodeTextModeOption(), new codeFitOption2(), new barcodeBoxWidthOption2(), new barcodeBoxHeightOption2(), new qrCodeSizeOption2(), new expandCssOption(), new descPosition(), new descAlign(), new showDesc(), new autoWOption(), new autoHOption(), new galleryItemWidth(), new galleryItemHeight(), new galleryAutoWidth(), new hideIfEmpty(), new borderModeOption(), new autoFitTextOption(), new defaultRowHeightOption(), new activeRowHeightOption(), new defaultColWidthOption(), new cellContentTypeOption(), new cellTextOption(), new cellFieldOption(), new cellTextWrapOption(), new cellImageOption(), new cellImageFitOption(), new cellFontSizeOption(), new cellFontWeightOption(), new cellColorOption(), new cellAlignOption(), new cellValignOption(), new cellAutoFitTextOption(), new cellBorderModeOption()], t5;
|
|
60931
|
+
}, t5._printElementOptionItems = [new fontFamily2(), new r2(), new scaleOption(), new autoSizeMinOption(), new a2(), new p2(), new i3(), new s3(), new l2(), new pt2(), new u2(), new d3(), new c2(), new h2(), new f2(), new g2(), new m2(), new d22(), new c22(), new v2(), new v22(), new y2(), new b3(), new E2(), new qrCodeLevel(), new T2(), new P2(), new _2(), new w2(), new x2(), new autoField(), new autoFieldFormatter2(), new coordinate(), new widthHeight(), new C2(), new imageFit(), new O2(), new H4(), new D2(), new paperNumberContinue(), new watermarkOptions(), new I2(), new R2(), new unShowInPage(), new pageBreak(), new groupSequenceContinueOption(), new axis(), new followTableModeOption(), new followTableAnchorOption(), new followOffsetXOption(), new followOffsetYOption(), new followOffsetYFromBottomOption(), new followTableMinOverlapPtOption(), new M2(), new M22(), new paperTypeOption(), new paperWidthOption(), new paperHeightOption(), new paperHeaderOption(), new paperFooterOption(), new diffPaperFooterOption(), new S2(), new B3(), new F2(), new L2(), new A2(), new z2(), new k2(), new st2(), new N2(), new V2(), new W2(), new j2(), new U2(), new borderRadius(), new zIndex2(), new K2(), new G2(), new q2(), new X2(), new Y2(), new Q2(), new J2(), new Z2(), new tt2(), new et2(), new nt2(), new it2(), new ot2(), new textWrap(), new at2(), new lt2(), new panelLayoutOptions(), new ut2(), new ith(), new dt2(), new ct2(), new ht2(), new ft2(), new gt2(), new wordStyleOption(), new pageBreakHandlerOption(), new mt2(), new tableBeforeFormatterOption(), new tableAfterFormatterOption(), new rowcolumns(), new rowsColumnsMergeClean(), new groupFieldsFormatter2(), new groupFormatter2(), new groupFooterFormatter2(), new vt2(), new yt2(), new bt2(), new Tt2(), new Et2(), new Pt2(), new stylerHeader2(), new renderFormatter2(), new _t3(), new wt2(), new maxRows2(), new tablePaginationTolerancePxOption(), new blankRowsCountOption(), new blankRowsPositionOption(), new xt2(), new tableBeforeRepeatOption(), new tableAfterRepeatOption(), new tableColumnH(), new tableE(), new tableQRCodeLevel(), new tablept(), new tableSummaryTitle(), new tableSummaryText(), new tableSummaryColspan(), new tableSummary(), new tableSummaryAlign(), new tableSummaryNumFormat(), new tableSummaryFormatter2(), new showCodeTitle(), new upperCase(), new barcodeType(), new qrcodeType(), new barColor(), new barWidthOption(), new autoBarWidthOption(), new barcodeTextModeOption(), new codeFitOption2(), new barcodeBoxWidthOption2(), new barcodeBoxHeightOption2(), new qrCodeSizeOption2(), new expandCssOption(), new descPosition(), new descAlign(), new showDesc(), new autoWOption(), new autoHOption(), new galleryItemWidth(), new galleryItemHeight(), new galleryAutoWidth(), new hideIfEmpty(), new borderModeOption(), new autoFitTextOption(), new defaultRowHeightOption(), new activeRowHeightOption(), new defaultColWidthOption(), new cellContentTypeOption(), new cellTextOption(), new cellFieldOption(), new cellTextWrapOption(), new cellImageOption(), new cellImageFitOption(), new cellFontSizeOption(), new cellFontWeightOption(), new cellColorOption(), new cellAlignOption(), new cellValignOption(), new cellAutoFitTextOption(), new cellBorderModeOption()], t5;
|
|
60760
60932
|
}();
|
|
60761
60933
|
}, function(t4, e2, n3) {
|
|
60762
60934
|
"use strict";
|
|
@@ -61371,8 +61543,11 @@ ${i18n.__("转大小写")}
|
|
|
61371
61543
|
}
|
|
61372
61544
|
return !!v2;
|
|
61373
61545
|
}(this.options && this.options.pageBreak);
|
|
61546
|
+
var getBasePaperFooter2 = this.getBaseElementPaperFooter.bind(this), getBaseContentHeight = function(pageOffset) {
|
|
61547
|
+
return getBasePaperFooter2(t4, pageOffset) - t4.paperHeader;
|
|
61548
|
+
};
|
|
61374
61549
|
if (e2 && "collapse" == em2 && (!o2 || 0 === o2.length)) {
|
|
61375
|
-
var __top2 = this.getBeginPrintTopInPaperByReferenceElement(t4), __pi2 = 0, __pf2 = t4
|
|
61550
|
+
var __top2 = this.getBeginPrintTopInPaperByReferenceElement(t4), __pi2 = 0, __pf2 = getBasePaperFooter2(t4, __pi2);
|
|
61376
61551
|
if (__top2 > __pf2 && "none" != t4.panelPageRule) {
|
|
61377
61552
|
__top2 = __top2 - __pf2 + t4.paperHeader;
|
|
61378
61553
|
__pi2++;
|
|
@@ -61405,7 +61580,7 @@ ${i18n.__("转大小写")}
|
|
|
61405
61580
|
var tfh = a2.find("tfoot").outerHeight() || 0;
|
|
61406
61581
|
a2.find("tfoot").remove();
|
|
61407
61582
|
for (var p2, s3 = this.getBeginPrintTopInPaperByReferenceElement(t4), l2 = 0, c2 = false; !c2; ) {
|
|
61408
|
-
var u2 = 0, d3 = t4
|
|
61583
|
+
var u2 = 0, d3 = getBasePaperFooter2(t4, l2);
|
|
61409
61584
|
if (e2 && forceBreakEnabled2 && 0 === l2 && "none" != t4.panelPageRule) {
|
|
61410
61585
|
var remainingHeightPt = d3 - s3;
|
|
61411
61586
|
var hasContentBeforeTable = s3 > t4.paperHeader + 0.5;
|
|
@@ -61416,14 +61591,14 @@ ${i18n.__("转大小写")}
|
|
|
61416
61591
|
printLine: void 0
|
|
61417
61592
|
}));
|
|
61418
61593
|
l2++;
|
|
61419
|
-
d3 = t4
|
|
61594
|
+
d3 = getBasePaperFooter2(t4, l2);
|
|
61420
61595
|
}
|
|
61421
61596
|
}
|
|
61422
61597
|
0 == l2 && s3 > d3 && "none" != t4.panelPageRule && (s3 = s3 - d3 + t4.paperHeader, i3.push(new _dto_PaperHtmlResult__WEBPACK_IMPORTED_MODULE_2__.a({
|
|
61423
61598
|
target: void 0,
|
|
61424
61599
|
printLine: void 0
|
|
61425
|
-
})), u2 =
|
|
61426
|
-
var h2 = i3.length > 0 ? i3[i3.length - 1].target : void 0, f2 = this.getRowsInSpecificHeight(e2, u2 > 0 ? u2 : 0 == l2 ? d3 - s3 :
|
|
61600
|
+
})), u2 = getBaseContentHeight(l2) - (s3 - t4.paperHeader), l2++, d3 = getBasePaperFooter2(t4, l2));
|
|
61601
|
+
var h2 = i3.length > 0 ? i3[i3.length - 1].target : void 0, f2 = this.getRowsInSpecificHeight(e2, u2 > 0 ? u2 : 0 == l2 ? d3 - s3 : getBaseContentHeight(l2), a2, r2, l2, h2, tfh);
|
|
61427
61602
|
c2 = f2.isEnd;
|
|
61428
61603
|
if (u2 < 0) {
|
|
61429
61604
|
i3[0].target = $$i(`<div style="position:absolute;background: red;color: white;padding: 0px 4px;">${i18n.__("没有足够空间进行表格分页,请调整页眉/页脚线")}</div>`);
|
|
@@ -61495,6 +61670,7 @@ ${i18n.__("转大小写")}
|
|
|
61495
61670
|
}
|
|
61496
61671
|
n3.find(".hiprint-printElement-tableTarget thead").remove();
|
|
61497
61672
|
}
|
|
61673
|
+
var outsideHeightPx = this.syncTableOutsideBlocks(n3, t4, [], o2, 0 == a2.find("tr").length);
|
|
61498
61674
|
var s3 = n3.outerHeight();
|
|
61499
61675
|
var forceBreakEnabled2 = function(v3) {
|
|
61500
61676
|
if (v3 === true)
|
|
@@ -61528,7 +61704,7 @@ ${i18n.__("转大小写")}
|
|
|
61528
61704
|
c2 = {
|
|
61529
61705
|
height: _assets_plugins_hinnn__WEBPACK_IMPORTED_MODULE_3__.a.px.toPt(s3),
|
|
61530
61706
|
isEnd: true
|
|
61531
|
-
}, t4 && this.options.autoCompletion && (this.autoCompletion(p2, d3, tfhForCalc), s3 = n3.outerHeight());
|
|
61707
|
+
}, t4 && this.options.autoCompletion && (this.autoCompletion(p2, d3, tfhForCalc), outsideHeightPx = that.syncTableOutsideBlocks(n3, t4, h2, o2, true), s3 = n3.outerHeight());
|
|
61532
61708
|
else {
|
|
61533
61709
|
var f2 = a2.find("tr:lt(1)");
|
|
61534
61710
|
if (h2.length == 0 && headTr) {
|
|
@@ -61536,7 +61712,7 @@ ${i18n.__("转大小写")}
|
|
|
61536
61712
|
}
|
|
61537
61713
|
d3.find("tbody").append(f2);
|
|
61538
61714
|
var g2 = f2.data("rowData");
|
|
61539
|
-
l2.push(g2), h2.push(g2), s3 = n3.outerHeight();
|
|
61715
|
+
l2.push(g2), h2.push(g2), outsideHeightPx = that.syncTableOutsideBlocks(n3, t4, h2, o2, 0 == a2.find("tr").length), s3 = n3.outerHeight();
|
|
61540
61716
|
0 == trLen && (a2.prepend(f2), l2.pop(), h2.pop(), c2 = {
|
|
61541
61717
|
height: _assets_plugins_hinnn__WEBPACK_IMPORTED_MODULE_3__.a.px.toPt(s3),
|
|
61542
61718
|
isEnd: false
|
|
@@ -61557,13 +61733,14 @@ ${i18n.__("转大小写")}
|
|
|
61557
61733
|
d3.find("tbody").append(f2);
|
|
61558
61734
|
var isBlankRow = !!f2.data("hiprintBlankRow") || "true" === f2.attr("data-hiprint-blank-row");
|
|
61559
61735
|
var g2 = f2.data("rowData");
|
|
61560
|
-
isBlankRow || (l2.push(g2), h2.push(g2)), ((s3 = d3.outerHeight(), "last" == this.options.tableFooterRepeat ? s3 : s3 += tfhForCalc) > p2 + tolerancePx || this.options.maxRows && d3.find("tbody").children().length > +this.options.maxRows) && (a2.prepend(f2), isBlankRow || (l2.pop(), h2.pop()), s3 = d3.outerHeight(), c2 = {
|
|
61736
|
+
isBlankRow || (l2.push(g2), h2.push(g2)), outsideHeightPx = that.syncTableOutsideBlocks(n3, t4, h2, o2, 0 == a2.find("tr").length), ((s3 = d3.outerHeight() + outsideHeightPx, "last" == this.options.tableFooterRepeat ? s3 : s3 += tfhForCalc) > p2 + tolerancePx || this.options.maxRows && d3.find("tbody").children().length > +this.options.maxRows) && (a2.prepend(f2), isBlankRow || (l2.pop(), h2.pop()), outsideHeightPx = that.syncTableOutsideBlocks(n3, t4, h2, o2, false), s3 = d3.outerHeight() + outsideHeightPx, c2 = {
|
|
61561
61737
|
height: _assets_plugins_hinnn__WEBPACK_IMPORTED_MODULE_3__.a.px.toPt(s3),
|
|
61562
61738
|
isEnd: false
|
|
61563
61739
|
});
|
|
61564
61740
|
}
|
|
61565
61741
|
}
|
|
61566
61742
|
if (c2) {
|
|
61743
|
+
outsideHeightPx = that.syncTableOutsideBlocks(n3, t4, h2, o2, !!c2.isEnd);
|
|
61567
61744
|
if ("last" == this.options.tableFooterRepeat && !c2.isEnd)
|
|
61568
61745
|
break;
|
|
61569
61746
|
if ("no" !== this.options.tableFooterRepeat) {
|
|
@@ -61845,6 +62022,85 @@ ${i18n.__("转大小写")}
|
|
|
61845
62022
|
console.log(t4);
|
|
61846
62023
|
}
|
|
61847
62024
|
return gridColumnsFooterFormatter;
|
|
62025
|
+
}, TablePrintElement.prototype.getTableOutsideFormatter = function(optionKey, typeKey) {
|
|
62026
|
+
var formatter = void 0;
|
|
62027
|
+
if (typeKey && this.printElementType[typeKey] && (formatter = this.printElementType[typeKey]), optionKey && this.options[optionKey])
|
|
62028
|
+
try {
|
|
62029
|
+
var s = "formatter=" + this.options[optionKey];
|
|
62030
|
+
eval(s);
|
|
62031
|
+
} catch (t4) {
|
|
62032
|
+
console.log(t4);
|
|
62033
|
+
}
|
|
62034
|
+
return formatter;
|
|
62035
|
+
}, TablePrintElement.prototype.getTableBeforeFormatter = function() {
|
|
62036
|
+
return this.getTableOutsideFormatter("tableBeforeFormatter", "tableBeforeFormatter");
|
|
62037
|
+
}, TablePrintElement.prototype.getTableAfterFormatter = function() {
|
|
62038
|
+
return this.getTableOutsideFormatter("tableAfterFormatter", "tableAfterFormatter");
|
|
62039
|
+
}, TablePrintElement.prototype.normalizeTableOutsideRepeat = function(repeatMode) {
|
|
62040
|
+
if (null == repeatMode || "" === repeatMode)
|
|
62041
|
+
return "none";
|
|
62042
|
+
var mode = String(repeatMode).trim().toLowerCase();
|
|
62043
|
+
return "no" === mode ? "none" : mode;
|
|
62044
|
+
}, TablePrintElement.prototype.shouldRenderTableOutsideBlock = function(repeatMode, pageIndex, isEnd) {
|
|
62045
|
+
switch (this.normalizeTableOutsideRepeat(repeatMode)) {
|
|
62046
|
+
case "page":
|
|
62047
|
+
case "all":
|
|
62048
|
+
return true;
|
|
62049
|
+
case "first":
|
|
62050
|
+
return 0 === pageIndex;
|
|
62051
|
+
case "last":
|
|
62052
|
+
return !!isEnd;
|
|
62053
|
+
case "odd":
|
|
62054
|
+
return (pageIndex + 1) % 2 == 1;
|
|
62055
|
+
case "even":
|
|
62056
|
+
return (pageIndex + 1) % 2 == 0;
|
|
62057
|
+
default:
|
|
62058
|
+
return false;
|
|
62059
|
+
}
|
|
62060
|
+
}, TablePrintElement.prototype.createTableOutsideBlock = function(position2, printData4, pageData, pageIndex, isEnd) {
|
|
62061
|
+
var isBefore = "before" === position2;
|
|
62062
|
+
var formatter2 = isBefore ? this.getTableBeforeFormatter() : this.getTableAfterFormatter();
|
|
62063
|
+
if (!formatter2)
|
|
62064
|
+
return null;
|
|
62065
|
+
var repeatMode = isBefore ? this.options.tableBeforeRepeat : this.options.tableAfterRepeat;
|
|
62066
|
+
if (!this.shouldRenderTableOutsideBlock(repeatMode, pageIndex, isEnd))
|
|
62067
|
+
return null;
|
|
62068
|
+
var meta = {
|
|
62069
|
+
position: position2,
|
|
62070
|
+
pageIndex,
|
|
62071
|
+
pageNumber: pageIndex + 1,
|
|
62072
|
+
isLast: !!isEnd,
|
|
62073
|
+
repeatMode: this.normalizeTableOutsideRepeat(repeatMode)
|
|
62074
|
+
};
|
|
62075
|
+
try {
|
|
62076
|
+
var html2 = formatter2(this.options, this.getData(printData4), printData4, pageData || [], meta);
|
|
62077
|
+
if (null == html2 || "" === html2 || false === html2)
|
|
62078
|
+
return null;
|
|
62079
|
+
var block = $$i('<div class="hiprint-printElement-tableOutside hiprint-printElement-tableOutside-' + position2 + '" style="width:100%;box-sizing:border-box;"></div>');
|
|
62080
|
+
return block.append(html2), block;
|
|
62081
|
+
} catch (err2) {
|
|
62082
|
+
try {
|
|
62083
|
+
console && console.warn && console.warn(position2 + "TableFormatter error:", err2);
|
|
62084
|
+
} catch (_2) {
|
|
62085
|
+
}
|
|
62086
|
+
return null;
|
|
62087
|
+
}
|
|
62088
|
+
}, TablePrintElement.prototype.syncTableOutsideBlocks = function(target, printData4, pageData, pageIndex, isEnd) {
|
|
62089
|
+
if (!target || !target.length)
|
|
62090
|
+
return 0;
|
|
62091
|
+
target.find(".hiprint-printElement-tableOutside").remove();
|
|
62092
|
+
var firstTable = target.find(".hiprint-printElement-tableTarget:first");
|
|
62093
|
+
var lastTable = target.find(".hiprint-printElement-tableTarget:last");
|
|
62094
|
+
if (!firstTable.length || !lastTable.length)
|
|
62095
|
+
return 0;
|
|
62096
|
+
var beforeBlock = this.createTableOutsideBlock("before", printData4, pageData, pageIndex, isEnd);
|
|
62097
|
+
var afterBlock = this.createTableOutsideBlock("after", printData4, pageData, pageIndex, isEnd);
|
|
62098
|
+
beforeBlock && beforeBlock.insertBefore(firstTable);
|
|
62099
|
+
afterBlock && afterBlock.insertAfter(lastTable);
|
|
62100
|
+
var total = 0;
|
|
62101
|
+
return target.find(".hiprint-printElement-tableOutside").each(function() {
|
|
62102
|
+
total += $$i(this).outerHeight() || 0;
|
|
62103
|
+
}), total;
|
|
61848
62104
|
}, TablePrintElement;
|
|
61849
62105
|
}(_BasePrintElement__WEBPACK_IMPORTED_MODULE_0__.a);
|
|
61850
62106
|
}, function(t4, e2, n3) {
|
|
@@ -64003,6 +64259,44 @@ ${i18n.__("转大小写")}
|
|
|
64003
64259
|
}, e2.prototype.updateDesignViewFromOptions = function() {
|
|
64004
64260
|
this.designTarget && (this.css(this.designTarget, this.getData()), this.updateTargetImage(this.designTarget, this.getTitle(), this.getData()));
|
|
64005
64261
|
}, e2.prototype.updateTargetImage = function(t5, e3, n3) {
|
|
64262
|
+
var normalizeImageSrc2 = function(src2, mime) {
|
|
64263
|
+
if (src2 == null)
|
|
64264
|
+
return "";
|
|
64265
|
+
src2 = String(src2).trim();
|
|
64266
|
+
if (!src2)
|
|
64267
|
+
return "";
|
|
64268
|
+
if (/^data:/i.test(src2))
|
|
64269
|
+
return src2;
|
|
64270
|
+
if (/^(https?:)?\/\//i.test(src2))
|
|
64271
|
+
return src2;
|
|
64272
|
+
if (/^blob:/i.test(src2) || /^file:/i.test(src2))
|
|
64273
|
+
return src2;
|
|
64274
|
+
if (src2[0] === "/" || src2.indexOf("./") === 0 || src2.indexOf("../") === 0)
|
|
64275
|
+
return src2;
|
|
64276
|
+
if (/^[A-Za-z0-9+/=_-]+$/.test(src2) && src2.length > 80) {
|
|
64277
|
+
var head = src2.slice(0, 10);
|
|
64278
|
+
var m2 = mime;
|
|
64279
|
+
if (!m2) {
|
|
64280
|
+
if (head.indexOf("iVBORw0") === 0)
|
|
64281
|
+
m2 = "image/png";
|
|
64282
|
+
else if (head.indexOf("/9j/") === 0)
|
|
64283
|
+
m2 = "image/jpeg";
|
|
64284
|
+
else if (head.indexOf("R0lGOD") === 0)
|
|
64285
|
+
m2 = "image/gif";
|
|
64286
|
+
else if (head.indexOf("UklGR") === 0)
|
|
64287
|
+
m2 = "image/webp";
|
|
64288
|
+
else if (head.indexOf("Qk") === 0)
|
|
64289
|
+
m2 = "image/bmp";
|
|
64290
|
+
else if (head.indexOf("PHN2Zy") === 0)
|
|
64291
|
+
m2 = "image/svg+xml";
|
|
64292
|
+
else
|
|
64293
|
+
m2 = "image/png";
|
|
64294
|
+
}
|
|
64295
|
+
return "data:" + m2 + ";base64," + src2;
|
|
64296
|
+
}
|
|
64297
|
+
return src2;
|
|
64298
|
+
};
|
|
64299
|
+
n3 = normalizeImageSrc2(n3, this.options && (this.options.imageMime || this.options.mime));
|
|
64006
64300
|
var title = t5.find(".hiprint-printElement-image-title");
|
|
64007
64301
|
var hideTitle = this.options.hideTitle;
|
|
64008
64302
|
if (hideTitle === "true")
|
|
@@ -64429,7 +64723,7 @@ ${i18n.__("转大小写")}
|
|
|
64429
64723
|
var i3 = this, o2 = [], r2 = 0, a2 = n3 || this.getData(e3), p2 = this.getText(this.getTitle(), a2), s3 = this.createTarget(this.getTitle(), this.options.testData || ""), em2 = this.getEmptyDataDisplayMode(a2);
|
|
64430
64724
|
this.css(s3, a2), e3 ? this.updateTargetWidth(s3) : this.updateTargetSize(s3), this.getTempContainer().html(""), this.getTempContainer().append(s3);
|
|
64431
64725
|
if (e3 && "collapse" == em2) {
|
|
64432
|
-
var __top2 = this.getBeginPrintTopInPaperByReferenceElement(t5), __pi2 = 0, __pf2 =
|
|
64726
|
+
var __top2 = this.getBeginPrintTopInPaperByReferenceElement(t5), __pi2 = 0, __pf2 = this.getBaseElementPaperFooter(t5, __pi2);
|
|
64433
64727
|
if (__top2 > __pf2 && "none" != t5.panelPageRule) {
|
|
64434
64728
|
__top2 = __top2 - __pf2 + t5.paperHeader;
|
|
64435
64729
|
__pi2++;
|
|
@@ -64455,11 +64749,11 @@ ${i18n.__("转大小写")}
|
|
|
64455
64749
|
})
|
|
64456
64750
|
})), o2;
|
|
64457
64751
|
for (var d3 = this.getBeginPrintTopInPaperByReferenceElement(t5); l2.length > 0; ) {
|
|
64458
|
-
var c2 = 0, h2 =
|
|
64752
|
+
var c2 = 0, h2 = this.getBaseElementPaperFooter(t5, r2);
|
|
64459
64753
|
0 == r2 && d3 > h2 && "none" != t5.panelPageRule && (d3 = d3 - h2 + t5.paperHeader, o2.push(new P.a({
|
|
64460
64754
|
target: void 0,
|
|
64461
64755
|
printLine: void 0
|
|
64462
|
-
})), r2++, c2 = t5.getContentHeight(r2) - (d3 - t5.paperHeader), h2 =
|
|
64756
|
+
})), r2++, c2 = t5.getContentHeight(r2) - (d3 - t5.paperHeader), h2 = this.getBaseElementPaperFooter(t5, r2));
|
|
64463
64757
|
var f2 = this.getStringBySpecificHeight(l2, c2 > 0 ? c2 : 0 == r2 ? h2 - d3 : t5.getContentHeight(r2), s3);
|
|
64464
64758
|
l2.splice(0, f2.length);
|
|
64465
64759
|
var g2 = void 0, m2 = void 0;
|
|
@@ -67063,7 +67357,7 @@ ${i18n.__("转大小写")}
|
|
|
67063
67357
|
}
|
|
67064
67358
|
}
|
|
67065
67359
|
if (e && "collapse" == em) {
|
|
67066
|
-
var __top = this.getBeginPrintTopInPaperByReferenceElement(t), __pi = 0, __pf =
|
|
67360
|
+
var __top = this.getBeginPrintTopInPaperByReferenceElement(t), __pi = 0, __pf = this.getBaseElementPaperFooter(t, __pi);
|
|
67067
67361
|
if (__top > __pf && "none" != t.panelPageRule) {
|
|
67068
67362
|
__top = __top - __pf + t.paperHeader;
|
|
67069
67363
|
__pi++;
|
|
@@ -67207,20 +67501,21 @@ ${i18n.__("转大小写")}
|
|
|
67207
67501
|
var htmlTolPx = typeof window !== "undefined" && window.HIPRINT_CONFIG && window.HIPRINT_CONFIG.htmlPaginationTolerancePx != null ? Number(window.HIPRINT_CONFIG.htmlPaginationTolerancePx) : 0;
|
|
67208
67502
|
var htmlKeepOneRow = !!(typeof window !== "undefined" && window.HIPRINT_CONFIG && window.HIPRINT_CONFIG.htmlTableKeepOneRow);
|
|
67209
67503
|
var htmlOmitHeaderToKeepOneRow = typeof window !== "undefined" && window.HIPRINT_CONFIG && window.HIPRINT_CONFIG.htmlTableOmitHeaderToKeepOneRow != null ? !!window.HIPRINT_CONFIG.htmlTableOmitHeaderToKeepOneRow : true;
|
|
67210
|
-
var
|
|
67504
|
+
var getBasePaperFooter = this.getBaseElementPaperFooter.bind(this);
|
|
67505
|
+
var availablePx = window.hinnn.pt.toPx(getBasePaperFooter(t, r) - d);
|
|
67211
67506
|
if (fullHeight <= availablePx - safetyPx + htmlTolPx) {
|
|
67212
67507
|
"placeholder" == em && s.css("visibility", "hidden");
|
|
67213
67508
|
s.css("left", this.options.displayLeft()), s.css("top", d + "pt");
|
|
67214
67509
|
o.push(new P.a({
|
|
67215
67510
|
target: s,
|
|
67216
|
-
printLine: Math.min(d + window.hinnn.px.toPt(fullHeight),
|
|
67511
|
+
printLine: Math.min(d + window.hinnn.px.toPt(fullHeight), getBasePaperFooter(t, r)),
|
|
67217
67512
|
referenceElement: new E.a({
|
|
67218
67513
|
top: this.options.getTop(),
|
|
67219
67514
|
left: this.options.getLeft(),
|
|
67220
67515
|
height: this.options.getHeight(),
|
|
67221
67516
|
width: this.options.getWidth(),
|
|
67222
67517
|
beginPrintPaperIndex: t.index,
|
|
67223
|
-
bottomInLastPaper: Math.min(d + window.hinnn.px.toPt(fullHeight),
|
|
67518
|
+
bottomInLastPaper: Math.min(d + window.hinnn.px.toPt(fullHeight), getBasePaperFooter(t, r)),
|
|
67224
67519
|
printTopInPaper: d
|
|
67225
67520
|
})
|
|
67226
67521
|
}));
|
|
@@ -67398,7 +67693,7 @@ ${i18n.__("转大小写")}
|
|
|
67398
67693
|
contentDiv.append(pageTable);
|
|
67399
67694
|
pageElement[0].offsetHeight;
|
|
67400
67695
|
var safeCounter = 0;
|
|
67401
|
-
var pageLimit = window.hinnn.pt.toPx(
|
|
67696
|
+
var pageLimit = window.hinnn.pt.toPx(getBasePaperFooter(t, t.index + pageNumber) - currentPageTop) - safetyPx;
|
|
67402
67697
|
var dataRowCount = 0;
|
|
67403
67698
|
while (leftRows.length) {
|
|
67404
67699
|
var row = $$i(leftRows[0]).clone();
|
|
@@ -67533,7 +67828,7 @@ ${i18n.__("转大小写")}
|
|
|
67533
67828
|
pageElement[0].offsetHeight;
|
|
67534
67829
|
}, 0);
|
|
67535
67830
|
var newHeight = Math.max(pageElement[0].scrollHeight, pageElement.outerHeight(true));
|
|
67536
|
-
var limit = window.hinnn.pt.toPx(
|
|
67831
|
+
var limit = window.hinnn.pt.toPx(getBasePaperFooter(t, pageNumber) - currentPageTop) - safetyPx + htmlTolPx;
|
|
67537
67832
|
if (newHeight <= limit) {
|
|
67538
67833
|
pageHeight = newHeight;
|
|
67539
67834
|
elementsToRemove.push(j);
|
|
@@ -67907,14 +68202,14 @@ ${i18n.__("转大小写")}
|
|
|
67907
68202
|
}
|
|
67908
68203
|
o.push(new P.a({
|
|
67909
68204
|
target: finalPageElement,
|
|
67910
|
-
printLine: Math.min(currentPageTop + window.hinnn.px.toPt(pageHeight),
|
|
68205
|
+
printLine: Math.min(currentPageTop + window.hinnn.px.toPt(pageHeight), getBasePaperFooter(t, pageNumber)),
|
|
67911
68206
|
referenceElement: new E.a({
|
|
67912
68207
|
top: this.options.getTop(),
|
|
67913
68208
|
left: this.options.getLeft(),
|
|
67914
68209
|
height: this.options.getHeight(),
|
|
67915
68210
|
width: this.options.getWidth(),
|
|
67916
68211
|
beginPrintPaperIndex: t.index + pageNumber,
|
|
67917
|
-
bottomInLastPaper: Math.min(currentPageTop + window.hinnn.px.toPt(pageHeight),
|
|
68212
|
+
bottomInLastPaper: Math.min(currentPageTop + window.hinnn.px.toPt(pageHeight), getBasePaperFooter(t, pageNumber)),
|
|
67918
68213
|
printTopInPaper: currentPageTop
|
|
67919
68214
|
})
|
|
67920
68215
|
}));
|
|
@@ -68329,7 +68624,7 @@ ${i18n.__("转大小写")}
|
|
|
68329
68624
|
var i3 = [], o2 = n3 || this.getData(e3), r2 = this.createTarget(this.getTitle(), o2), a2 = this.getEmptyDataDisplayMode(o2);
|
|
68330
68625
|
this.css(r2, o2), e3 ? this.updateTargetWidth(r2) : this.updateTargetSize(r2), this.getTempContainer().html(""), this.getTempContainer().append(r2);
|
|
68331
68626
|
if (e3 && "collapse" == a2) {
|
|
68332
|
-
var __top2 = this.getBeginPrintTopInPaperByReferenceElement(t5), __pi2 = 0, __pf2 =
|
|
68627
|
+
var __top2 = this.getBeginPrintTopInPaperByReferenceElement(t5), __pi2 = 0, __pf2 = this.getBaseElementPaperFooter(t5, __pi2);
|
|
68333
68628
|
if (__top2 > __pf2 && "none" != t5.panelPageRule) {
|
|
68334
68629
|
__top2 = __top2 - __pf2 + t5.paperHeader;
|
|
68335
68630
|
__pi2++;
|
|
@@ -68376,6 +68671,7 @@ ${i18n.__("转大小写")}
|
|
|
68376
68671
|
}
|
|
68377
68672
|
}
|
|
68378
68673
|
var m2 = this.getBeginPrintTopInPaperByReferenceElement(t5), v2 = 0, y2 = 24, b3 = this;
|
|
68674
|
+
var getBasePaperFooter2 = this.getBaseElementPaperFooter.bind(this);
|
|
68379
68675
|
var clearHeightConstraints = function(root2) {
|
|
68380
68676
|
if (!root2 || !root2.length)
|
|
68381
68677
|
return;
|
|
@@ -68436,19 +68732,19 @@ ${i18n.__("转大小写")}
|
|
|
68436
68732
|
target.css("visibility", "hidden");
|
|
68437
68733
|
return target;
|
|
68438
68734
|
};
|
|
68439
|
-
while (m2 > t5
|
|
68735
|
+
while (m2 > getBasePaperFooter2(t5, v2) && "none" != t5.panelPageRule) {
|
|
68440
68736
|
i3.push(new P.a({
|
|
68441
68737
|
target: void 0,
|
|
68442
68738
|
printLine: void 0
|
|
68443
68739
|
}));
|
|
68444
|
-
m2 = m2 - t5
|
|
68740
|
+
m2 = m2 - getBasePaperFooter2(t5, v2) + t5.paperHeader;
|
|
68445
68741
|
v2++;
|
|
68446
68742
|
}
|
|
68447
68743
|
while (f2.length > 0) {
|
|
68448
68744
|
var pageRows = [], pageTarget = buildPageTarget([], v2, f2.length > 0);
|
|
68449
68745
|
this.getTempContainer().html("").append(pageTarget);
|
|
68450
68746
|
pageTarget[0].offsetHeight;
|
|
68451
|
-
var pageFooterPt =
|
|
68747
|
+
var pageFooterPt = getBasePaperFooter2(t5, v2);
|
|
68452
68748
|
var usableBottomPt = Math.max(m2, pageFooterPt - y2);
|
|
68453
68749
|
var limitPx = window.hinnn.pt.toPx(usableBottomPt - m2);
|
|
68454
68750
|
if (limitPx <= 0) {
|
|
@@ -68484,7 +68780,7 @@ ${i18n.__("转大小写")}
|
|
|
68484
68780
|
if (!pageRows.length)
|
|
68485
68781
|
break;
|
|
68486
68782
|
var pageHeightPt = window.hinnn.px.toPt(Math.max(pageTarget[0].scrollHeight, pageTarget.outerHeight(true)));
|
|
68487
|
-
var pageFooterPt2 =
|
|
68783
|
+
var pageFooterPt2 = getBasePaperFooter2(t5, v2);
|
|
68488
68784
|
var safeBottomPt = Math.max(m2, pageFooterPt2 - y2);
|
|
68489
68785
|
var printLine = Math.min(m2 + pageHeightPt, safeBottomPt);
|
|
68490
68786
|
i3.push(new P.a({
|
|
@@ -69805,7 +70101,7 @@ ${i18n.__("转大小写")}
|
|
|
69805
70101
|
t4.height ? (this.height = t4.height, this.width = t4.width) : (this.height = e2.height, this.width = e2.width);
|
|
69806
70102
|
} else
|
|
69807
70103
|
this.height = t4.height, this.width = t4.width;
|
|
69808
|
-
this.paperHeader = t4.paperHeader || 0, this.paperFooter = t4.paperFooter || o.a.mm.toPt(this.height), this.printElements = t4.printElements || [], this.paperNumberLeft = t4.paperNumberLeft, this.paperNumberTop = t4.paperNumberTop, this.paperNumberDisabled = t4.paperNumberDisabled, this.paperNumberContinue = t4.paperNumberContinue, this.paperNumberFormat = t4.paperNumberFormat, this.panelPaperRule = t4.panelPaperRule, this.panelPageRule = t4.panelPageRule, this.rotate = t4.rotate || void 0, this.firstPaperFooter = t4.firstPaperFooter, this.evenPaperFooter = t4.evenPaperFooter, this.oddPaperFooter = t4.oddPaperFooter, this.lastPaperFooter = t4.lastPaperFooter, this.topOffset = t4.topOffset, this.fontFamily = t4.fontFamily, this.leftOffset = t4.leftOffset, this.orient = t4.orient, this.scale = t4.scale, this.watermarkOptions = t4.watermarkOptions, this.panelLayoutOptions = t4.panelLayoutOptions, this.backgroundColor = t4.backgroundColor, this.expandCss = t4.expandCss || t4.extCss || "";
|
|
70104
|
+
this.paperHeader = t4.paperHeader || 0, this.paperFooter = t4.paperFooter || o.a.mm.toPt(this.height), this.printElements = t4.printElements || [], this.paperNumberLeft = t4.paperNumberLeft, this.paperNumberTop = t4.paperNumberTop, this.paperNumberDisabled = t4.paperNumberDisabled, this.paperNumberContinue = t4.paperNumberContinue, this.paperNumberFormat = t4.paperNumberFormat, this.panelPaperRule = t4.panelPaperRule, this.panelPageRule = t4.panelPageRule, this.rotate = t4.rotate || void 0, this.firstPaperFooter = t4.firstPaperFooter, this.evenPaperFooter = t4.evenPaperFooter, this.oddPaperFooter = t4.oddPaperFooter, this.lastPaperFooter = t4.lastPaperFooter, this.diffPaperFooter = t4.diffPaperFooter, this.topOffset = t4.topOffset, this.fontFamily = t4.fontFamily, this.leftOffset = t4.leftOffset, this.orient = t4.orient, this.scale = t4.scale, this.watermarkOptions = t4.watermarkOptions, this.panelLayoutOptions = t4.panelLayoutOptions, this.backgroundColor = t4.backgroundColor, this.expandCss = t4.expandCss || t4.extCss || "";
|
|
69809
70105
|
};
|
|
69810
70106
|
}(), at = function() {
|
|
69811
70107
|
function t4(t5, e2, n3, i3) {
|
|
@@ -69821,7 +70117,7 @@ ${i18n.__("转大小写")}
|
|
|
69821
70117
|
}, t4;
|
|
69822
70118
|
}(), pt = function() {
|
|
69823
70119
|
function t(t4, e2) {
|
|
69824
|
-
this.templateId = e2, this.index = t4.index, this.name = t4.name, this.nameField = t4.nameField, this.width = t4.width, this.height = t4.height, this.paperType = t4.paperType, this.paperHeader = t4.paperHeader, this.paperFooter = t4.paperFooter, this.initPrintElements(t4.printElements), this.paperNumberLeft = t4.paperNumberLeft, this.paperNumberTop = t4.paperNumberTop, this.paperNumberDisabled = t4.paperNumberDisabled, this.paperNumberContinue = t4.paperNumberContinue == void 0 ? true : t4.paperNumberContinue, this.paperNumberFormat = t4.paperNumberFormat, this.panelPaperRule = t4.panelPaperRule, this.panelPageRule = t4.panelPageRule, this.firstPaperFooter = t4.firstPaperFooter, this.evenPaperFooter = t4.evenPaperFooter, this.oddPaperFooter = t4.oddPaperFooter, this.lastPaperFooter = t4.lastPaperFooter, this.topOffset = t4.topOffset, this.leftOffset = t4.leftOffset, this.fontFamily = t4.fontFamily, this.orient = t4.orient, this.target = this.createTarget(), this.rotate = t4.rotate, this.scale = t4.scale, this.watermarkOptions = t4.watermarkOptions || {}, this.panelLayoutOptions = t4.panelLayoutOptions || {};
|
|
70120
|
+
this.templateId = e2, this.index = t4.index, this.name = t4.name, this.nameField = t4.nameField, this.width = t4.width, this.height = t4.height, this.paperType = t4.paperType, this.paperHeader = t4.paperHeader, this.paperFooter = t4.paperFooter, this.initPrintElements(t4.printElements), this.paperNumberLeft = t4.paperNumberLeft, this.paperNumberTop = t4.paperNumberTop, this.paperNumberDisabled = t4.paperNumberDisabled, this.paperNumberContinue = t4.paperNumberContinue == void 0 ? true : t4.paperNumberContinue, this.paperNumberFormat = t4.paperNumberFormat, this.panelPaperRule = t4.panelPaperRule, this.panelPageRule = t4.panelPageRule, this.firstPaperFooter = t4.firstPaperFooter, this.evenPaperFooter = t4.evenPaperFooter, this.oddPaperFooter = t4.oddPaperFooter, this.lastPaperFooter = t4.lastPaperFooter, this.diffPaperFooter = t4.diffPaperFooter, this.topOffset = t4.topOffset, this.leftOffset = t4.leftOffset, this.fontFamily = t4.fontFamily, this.orient = t4.orient, this.target = this.createTarget(), this.rotate = t4.rotate, this.scale = t4.scale, this.watermarkOptions = t4.watermarkOptions || {}, this.panelLayoutOptions = t4.panelLayoutOptions || {};
|
|
69825
70121
|
this.backgroundColor = t4.backgroundColor || void 0;
|
|
69826
70122
|
this.expandCss = t4.expandCss || t4.extCss || "";
|
|
69827
70123
|
}
|
|
@@ -69846,6 +70142,7 @@ ${i18n.__("转大小写")}
|
|
|
69846
70142
|
evenPaperFooter: e2.evenPaperFooter,
|
|
69847
70143
|
oddPaperFooter: e2.oddPaperFooter,
|
|
69848
70144
|
lastPaperFooter: e2.lastPaperFooter,
|
|
70145
|
+
diffPaperFooter: e2.diffPaperFooter,
|
|
69849
70146
|
leftOffset: e2.leftOffset,
|
|
69850
70147
|
topOffset: e2.topOffset,
|
|
69851
70148
|
panelLayoutOptions: e2.panelLayoutOptions || {},
|
|
@@ -69886,7 +70183,7 @@ ${i18n.__("转大小写")}
|
|
|
69886
70183
|
e2.nameField = t6 && void 0 !== t6.nameField ? t6.nameField : e2.nameField;
|
|
69887
70184
|
var _needPaginationUpdate = _prevPanelName !== e2.name || _prevPanelNameField !== e2.nameField;
|
|
69888
70185
|
e2.panelLayoutOptions = t6.panelLayoutOptions || {}, e2.watermarkOptions = t6.watermarkOptions || void 0, t6.watermarkOptions && e2.designPaper.createWaterMark(true, 1, t6.watermarkOptions);
|
|
69889
|
-
e2.panelPaperRule = t6.panelPaperRule, e2.panelPageRule = t6.panelPageRule, e2.firstPaperFooter = t6.firstPaperFooter, e2.evenPaperFooter = t6.evenPaperFooter, e2.oddPaperFooter = t6.oddPaperFooter, e2.lastPaperFooter = t6.lastPaperFooter, e2.leftOffset = t6.leftOffset, e2.topOffset = t6.topOffset, e2.fontFamily = t6.fontFamily, e2.orient = t6.orient, e2.paperNumberDisabled = e2.designPaper.paperNumberDisabled = !!t6.paperNumberDisabled || void 0, e2.paperNumberContinue = e2.designPaper.paperNumberContinue = t6.paperNumberContinue, e2.paperNumberFormat = t6.paperNumberFormat, e2.designPaper.paperNumberFormat = t6.paperNumberFormat, t6.paperNumberFormat && (e2.designPaper.paperNumberTarget = e2.designPaper.createPaperNumber(e2.designPaper.formatPaperNumber(1, 1), true)), e2.designPaper.setOffset(e2.leftOffset, e2.topOffset), e2.css(e2.target), e2.designPaper.resetPaperNumber(e2.designPaper.paperNumberTarget), e2.designPaper.triggerOnPaperBaseInfoChanged();
|
|
70186
|
+
e2.panelPaperRule = t6.panelPaperRule, e2.panelPageRule = t6.panelPageRule, e2.firstPaperFooter = t6.firstPaperFooter, e2.evenPaperFooter = t6.evenPaperFooter, e2.oddPaperFooter = t6.oddPaperFooter, e2.lastPaperFooter = t6.lastPaperFooter, e2.diffPaperFooter = t6.diffPaperFooter, e2.designPaper.diffPaperFooter = t6.diffPaperFooter, e2.leftOffset = t6.leftOffset, e2.topOffset = t6.topOffset, e2.fontFamily = t6.fontFamily, e2.orient = t6.orient, e2.paperNumberDisabled = e2.designPaper.paperNumberDisabled = !!t6.paperNumberDisabled || void 0, e2.paperNumberContinue = e2.designPaper.paperNumberContinue = t6.paperNumberContinue, e2.paperNumberFormat = t6.paperNumberFormat, e2.designPaper.paperNumberFormat = t6.paperNumberFormat, t6.paperNumberFormat && (e2.designPaper.paperNumberTarget = e2.designPaper.createPaperNumber(e2.designPaper.formatPaperNumber(1, 1), true)), e2.designPaper.setOffset(e2.leftOffset, e2.topOffset), e2.css(e2.target), e2.designPaper.resetPaperNumber(e2.designPaper.paperNumberTarget), e2.designPaper.triggerOnPaperBaseInfoChanged();
|
|
69890
70187
|
if (t6.paperType) {
|
|
69891
70188
|
try {
|
|
69892
70189
|
var pm2 = s.a.instance[t6.paperType];
|
|
@@ -70209,7 +70506,7 @@ ${i18n.__("转大小写")}
|
|
|
70209
70506
|
p.push(l);
|
|
70210
70507
|
a.append(l.getTarget());
|
|
70211
70508
|
}
|
|
70212
|
-
var renderFollowImagesForTablePage = function(tableElement, paper, tableResult,
|
|
70509
|
+
var renderFollowImagesForTablePage = function(tableElement, paper, tableResult, printData4, isLastSegment) {
|
|
70213
70510
|
try {
|
|
70214
70511
|
if (!tableElement || !paper || !tableResult)
|
|
70215
70512
|
return;
|
|
@@ -70269,7 +70566,7 @@ ${i18n.__("转大小写")}
|
|
|
70269
70566
|
if (!Number.isFinite(dx))
|
|
70270
70567
|
dx = 0;
|
|
70271
70568
|
var imgLeft = contentLeftPt + dx;
|
|
70272
|
-
var imgData = img.getData(
|
|
70569
|
+
var imgData = img.getData(printData4) || "";
|
|
70273
70570
|
var target = img.createTarget(img.getTitle(), imgData, paper.index);
|
|
70274
70571
|
img.updateTargetSize(target);
|
|
70275
70572
|
img.css(target, imgData);
|
|
@@ -70366,8 +70663,10 @@ ${i18n.__("转大小写")}
|
|
|
70366
70663
|
}
|
|
70367
70664
|
}
|
|
70368
70665
|
if (!i) {
|
|
70369
|
-
if (this.lastPaperFooter)
|
|
70370
|
-
p[p.length - 1]
|
|
70666
|
+
if (this.lastPaperFooter) {
|
|
70667
|
+
var __lastPaper = p[p.length - 1], __lastPaperFooterLimit = this.lastPaperFooter, __lastPaperDiff = "number" == typeof __lastPaper.diffPaperFooter ? __lastPaper.diffPaperFooter : parseFloat(__lastPaper.diffPaperFooter);
|
|
70668
|
+
Number.isFinite(__lastPaperDiff) && __lastPaperDiff > 0 && Number.isFinite(__lastPaper.height) && (__lastPaperFooterLimit = Math.min(__lastPaper.height, __lastPaperFooterLimit + __lastPaperDiff)), __lastPaper.printLine > __lastPaperFooterLimit && (l = s.createNewPage(p.length, l.referenceElement), p.push(l), a.append(l.getTarget()));
|
|
70669
|
+
}
|
|
70371
70670
|
this.panelPaperRule && ("odd" == this.panelPaperRule && p.length % 2 == 0 && (l = s.createNewPage(p.length, l.referenceElement), p.push(l), a.append(l.getTarget())), "even" == this.panelPaperRule && p.length % 2 == 1 && (l = s.createNewPage(p.length, l.referenceElement), p.push(l), a.append(l.getTarget())));
|
|
70372
70671
|
p.forEach(function(n) {
|
|
70373
70672
|
n.updatePaperNumber(n.index + 1, p.length, e.paperNumberToggleInEven), r.fillPaperHeaderAndFooter(n, t, p.length), e && (null != e.leftOffset && n.setLeftOffset(e.leftOffset), null != e.topOffset && n.setTopOffset(e.topOffset));
|
|
@@ -70431,6 +70730,7 @@ ${i18n.__("转大小写")}
|
|
|
70431
70730
|
evenPaperFooter: this.evenPaperFooter,
|
|
70432
70731
|
oddPaperFooter: this.oddPaperFooter,
|
|
70433
70732
|
lastPaperFooter: this.lastPaperFooter,
|
|
70733
|
+
diffPaperFooter: this.diffPaperFooter,
|
|
70434
70734
|
topOffset: this.topOffset,
|
|
70435
70735
|
fontFamily: this.fontFamily,
|
|
70436
70736
|
orient: this.orient,
|
|
@@ -70483,7 +70783,7 @@ ${i18n.__("转大小写")}
|
|
|
70483
70783
|
}
|
|
70484
70784
|
}, t.prototype.createNewPage = function(t4, e2) {
|
|
70485
70785
|
var n3 = new T(this.templateId, this.index, this.watermarkOptions, this.backgroundColor, this.panelPageRule, this.scale, this.width, this.height, this.paperHeader, this.paperFooter, this.paperNumberLeft, this.paperNumberTop, this.paperNumberDisabled, this.paperNumberContinue, this.paperNumberFormat, t4, e2);
|
|
70486
|
-
return n3.setFooter(this.firstPaperFooter, this.evenPaperFooter, this.oddPaperFooter, this.lastPaperFooter), n3.setOffset(this.leftOffset, this.topOffset), n3;
|
|
70786
|
+
return n3.setFooter(this.firstPaperFooter, this.evenPaperFooter, this.oddPaperFooter, this.lastPaperFooter), n3.diffPaperFooter = this.diffPaperFooter, n3.setOffset(this.leftOffset, this.topOffset), n3;
|
|
70487
70787
|
}, t.prototype.orderPrintElements = function() {
|
|
70488
70788
|
this.printElements = o.a.orderBy(this.printElements, function(t4) {
|
|
70489
70789
|
return t4.options.getLeft();
|
|
@@ -71320,8 +71620,53 @@ ${i18n.__("转大小写")}
|
|
|
71320
71620
|
const mode = this && this._imgMode ? String(this._imgMode) : "base64";
|
|
71321
71621
|
const imgs = root2 && root2.querySelectorAll ? root2.querySelectorAll("img") : [];
|
|
71322
71622
|
const tasks = [];
|
|
71623
|
+
const normalizeImageSrc2 = function(src2, mime) {
|
|
71624
|
+
if (src2 == null)
|
|
71625
|
+
return "";
|
|
71626
|
+
src2 = String(src2).trim();
|
|
71627
|
+
if (!src2)
|
|
71628
|
+
return "";
|
|
71629
|
+
if (/^data:/i.test(src2))
|
|
71630
|
+
return src2;
|
|
71631
|
+
if (/^(https?:)?\/\//i.test(src2))
|
|
71632
|
+
return src2;
|
|
71633
|
+
if (/^blob:/i.test(src2) || /^file:/i.test(src2))
|
|
71634
|
+
return src2;
|
|
71635
|
+
if (src2[0] === "/" || src2.indexOf("./") === 0 || src2.indexOf("../") === 0)
|
|
71636
|
+
return src2;
|
|
71637
|
+
if (/^[A-Za-z0-9+/=_-]+$/.test(src2) && src2.length > 80) {
|
|
71638
|
+
var head = src2.slice(0, 10);
|
|
71639
|
+
var m2 = mime;
|
|
71640
|
+
if (!m2) {
|
|
71641
|
+
if (head.indexOf("iVBORw0") === 0)
|
|
71642
|
+
m2 = "image/png";
|
|
71643
|
+
else if (head.indexOf("/9j/") === 0)
|
|
71644
|
+
m2 = "image/jpeg";
|
|
71645
|
+
else if (head.indexOf("R0lGOD") === 0)
|
|
71646
|
+
m2 = "image/gif";
|
|
71647
|
+
else if (head.indexOf("UklGR") === 0)
|
|
71648
|
+
m2 = "image/webp";
|
|
71649
|
+
else if (head.indexOf("Qk") === 0)
|
|
71650
|
+
m2 = "image/bmp";
|
|
71651
|
+
else if (head.indexOf("PHN2Zy") === 0)
|
|
71652
|
+
m2 = "image/svg+xml";
|
|
71653
|
+
else
|
|
71654
|
+
m2 = "image/png";
|
|
71655
|
+
}
|
|
71656
|
+
return "data:" + m2 + ";base64," + src2;
|
|
71657
|
+
}
|
|
71658
|
+
return src2;
|
|
71659
|
+
};
|
|
71323
71660
|
imgs.forEach((img) => {
|
|
71324
71661
|
let src2 = img.getAttribute("src") || "";
|
|
71662
|
+
var normalized = normalizeImageSrc2(src2, img.getAttribute("data-hiprint-mime") || img.getAttribute("data-mime"));
|
|
71663
|
+
if (normalized && normalized !== src2) {
|
|
71664
|
+
try {
|
|
71665
|
+
img.setAttribute("src", normalized);
|
|
71666
|
+
} catch (_2) {
|
|
71667
|
+
}
|
|
71668
|
+
src2 = normalized;
|
|
71669
|
+
}
|
|
71325
71670
|
if (!src2 || src2.indexOf("base64") !== -1 || src2 === window.location.href)
|
|
71326
71671
|
return;
|
|
71327
71672
|
tasks.push(async function() {
|
|
@@ -72408,12 +72753,12 @@ ${i18n.__("转大小写")}
|
|
|
72408
72753
|
this.onImageChooseClick = t5;
|
|
72409
72754
|
}, t4.prototype.getOnImageChooseClick = function() {
|
|
72410
72755
|
return this.onImageChooseClick;
|
|
72411
|
-
}, t4.prototype.getHtmlStable = function(
|
|
72756
|
+
}, t4.prototype.getHtmlStable = function(printData4, options2) {
|
|
72412
72757
|
var i3 = this;
|
|
72413
72758
|
return new Promise(function(resolve2) {
|
|
72414
72759
|
var staging = $$i('<div style="position:fixed;left:-10000px;top:-10000px;visibility:hidden;z-index:-1;"></div>');
|
|
72415
72760
|
$$i("body").append(staging);
|
|
72416
|
-
var firstHtml = i3.getHtml(
|
|
72761
|
+
var firstHtml = i3.getHtml(printData4, options2);
|
|
72417
72762
|
staging.empty().append(firstHtml);
|
|
72418
72763
|
var waitImages = function(rootElem, cb) {
|
|
72419
72764
|
var tries = 0;
|
|
@@ -72504,7 +72849,7 @@ ${i18n.__("转大小写")}
|
|
|
72504
72849
|
waitFonts(function() {
|
|
72505
72850
|
waitStable(staging, function() {
|
|
72506
72851
|
waitCodes(staging, function() {
|
|
72507
|
-
var finalHtml = i3.getHtml(
|
|
72852
|
+
var finalHtml = i3.getHtml(printData4, options2);
|
|
72508
72853
|
staging.empty().append(finalHtml);
|
|
72509
72854
|
waitImages(staging, function() {
|
|
72510
72855
|
waitStable(staging, function() {
|
|
@@ -73180,7 +73525,7 @@ var defaultElementTypeProvider$1 = defaultTypeProvider(hiprint$3);
|
|
|
73180
73525
|
if (time2 === void 0) {
|
|
73181
73526
|
time2 = 0;
|
|
73182
73527
|
}
|
|
73183
|
-
var
|
|
73528
|
+
var normalizeImageSrc2 = function(src2, mime) {
|
|
73184
73529
|
if (src2 == null)
|
|
73185
73530
|
return "";
|
|
73186
73531
|
src2 = String(src2).trim();
|
|
@@ -73222,7 +73567,7 @@ var defaultElementTypeProvider$1 = defaultTypeProvider(hiprint$3);
|
|
|
73222
73567
|
for (var i3 = 0; i3 < images.length; i3++) {
|
|
73223
73568
|
var image2 = images[i3];
|
|
73224
73569
|
try {
|
|
73225
|
-
var normalized =
|
|
73570
|
+
var normalized = normalizeImageSrc2(image2 && image2.getAttribute ? image2.getAttribute("src") : image2.src);
|
|
73226
73571
|
if (normalized && image2 && image2.getAttribute && image2.getAttribute("src") !== normalized)
|
|
73227
73572
|
image2.setAttribute("src", normalized);
|
|
73228
73573
|
} catch (_2) {
|
|
@@ -73372,6 +73717,8 @@ var defaultElementTypeProvider$1 = defaultTypeProvider(hiprint$3);
|
|
|
73372
73717
|
//html表格是否省略表头
|
|
73373
73718
|
tablePaginationTolerancePx: 8,
|
|
73374
73719
|
//表格分页容忍距离px
|
|
73720
|
+
diffPaperFooter: 0,
|
|
73721
|
+
//基础元素允许超出页脚的高度pt
|
|
73375
73722
|
showPosition: true,
|
|
73376
73723
|
//显示坐标位置
|
|
73377
73724
|
positionLineMode: false,
|
|
@@ -73410,6 +73757,10 @@ var defaultElementTypeProvider$1 = defaultTypeProvider(hiprint$3);
|
|
|
73410
73757
|
name: "paperFooter",
|
|
73411
73758
|
hidden: false
|
|
73412
73759
|
},
|
|
73760
|
+
{
|
|
73761
|
+
name: "diffPaperFooter",
|
|
73762
|
+
hidden: false
|
|
73763
|
+
},
|
|
73413
73764
|
{
|
|
73414
73765
|
name: "panelPaperRule",
|
|
73415
73766
|
hidden: false
|
|
@@ -74658,6 +75009,22 @@ var defaultElementTypeProvider$1 = defaultTypeProvider(hiprint$3);
|
|
|
74658
75009
|
name: "footerFormatter",
|
|
74659
75010
|
hidden: false
|
|
74660
75011
|
},
|
|
75012
|
+
{
|
|
75013
|
+
name: "tableBeforeRepeat",
|
|
75014
|
+
hidden: false
|
|
75015
|
+
},
|
|
75016
|
+
{
|
|
75017
|
+
name: "tableBeforeFormatter",
|
|
75018
|
+
hidden: false
|
|
75019
|
+
},
|
|
75020
|
+
{
|
|
75021
|
+
name: "tableAfterRepeat",
|
|
75022
|
+
hidden: false
|
|
75023
|
+
},
|
|
75024
|
+
{
|
|
75025
|
+
name: "tableAfterFormatter",
|
|
75026
|
+
hidden: false
|
|
75027
|
+
},
|
|
74661
75028
|
{
|
|
74662
75029
|
name: "rowsColumnsMerge",
|
|
74663
75030
|
hidden: false
|
|
@@ -74838,10 +75205,26 @@ var defaultElementTypeProvider$1 = defaultTypeProvider(hiprint$3);
|
|
|
74838
75205
|
name: "tableFooterRepeat",
|
|
74839
75206
|
hidden: false
|
|
74840
75207
|
},
|
|
75208
|
+
{
|
|
75209
|
+
name: "tableBeforeRepeat",
|
|
75210
|
+
hidden: false
|
|
75211
|
+
},
|
|
75212
|
+
{
|
|
75213
|
+
name: "tableAfterRepeat",
|
|
75214
|
+
hidden: false
|
|
75215
|
+
},
|
|
74841
75216
|
{
|
|
74842
75217
|
name: "footerFormatter",
|
|
74843
75218
|
hidden: false
|
|
74844
75219
|
},
|
|
75220
|
+
{
|
|
75221
|
+
name: "tableBeforeFormatter",
|
|
75222
|
+
hidden: false
|
|
75223
|
+
},
|
|
75224
|
+
{
|
|
75225
|
+
name: "tableAfterFormatter",
|
|
75226
|
+
hidden: false
|
|
75227
|
+
},
|
|
74845
75228
|
{
|
|
74846
75229
|
name: "rowsColumnsMerge",
|
|
74847
75230
|
hidden: false
|
|
@@ -76427,7 +76810,7 @@ async function ensureHttpClient() {
|
|
|
76427
76810
|
}
|
|
76428
76811
|
const name = "vg-print-vue2";
|
|
76429
76812
|
const description = "vg-print supports visual drag and drop design templates, with functions such as previewing and exporting PDFs/images. Silent printing can be achieved in conjunction with a dedicated client";
|
|
76430
|
-
const version = "1.0.
|
|
76813
|
+
const version = "1.0.310";
|
|
76431
76814
|
const author = "gmcSimple";
|
|
76432
76815
|
const license = "MIT";
|
|
76433
76816
|
const main = "dist/vg-print-vue2.cjs.js";
|
|
@@ -81209,6 +81592,19 @@ const printData2 = {
|
|
|
81209
81592
|
}
|
|
81210
81593
|
]
|
|
81211
81594
|
};
|
|
81595
|
+
const printData3 = {
|
|
81596
|
+
groupList: [
|
|
81597
|
+
{ "brand": "Apple", "name": "iPhone 14 Pro Max", "barcode": "190199829853", "amount": 8999 },
|
|
81598
|
+
{ "brand": "Apple", "name": "MacBook Air M2", "barcode": "190199820001", "amount": 7999 },
|
|
81599
|
+
{ "brand": "Apple", "name": "iPad Pro 12.9", "barcode": "190199820003", "amount": 6999 },
|
|
81600
|
+
{ "brand": "Samsung", "name": "Galaxy S23 Ultra", "barcode": "880609820006", "amount": 6999 },
|
|
81601
|
+
{ "brand": "Samsung", "name": "Galaxy Tab S9", "barcode": "880609820007", "amount": 4999 },
|
|
81602
|
+
{ "brand": "Samsung", "name": "Galaxy Watch6", "barcode": "880609820008", "amount": 1999 },
|
|
81603
|
+
{ "brand": "Huawei", "name": "Mate 60 Pro", "barcode": "694148820009", "amount": 6999 },
|
|
81604
|
+
{ "brand": "Huawei", "name": "P60", "barcode": "694148820010", "amount": 4999 },
|
|
81605
|
+
{ "brand": "Huawei", "name": "WiFi AX3", "barcode": "694148820045", "amount": 399 }
|
|
81606
|
+
]
|
|
81607
|
+
};
|
|
81212
81608
|
const template1 = {
|
|
81213
81609
|
"panels": [
|
|
81214
81610
|
{
|
|
@@ -82845,7 +83241,151 @@ const template2 = {
|
|
|
82845
83241
|
}
|
|
82846
83242
|
]
|
|
82847
83243
|
};
|
|
82848
|
-
const
|
|
83244
|
+
const template3 = {
|
|
83245
|
+
"panels": [
|
|
83246
|
+
{
|
|
83247
|
+
"index": 0,
|
|
83248
|
+
"name": "分组序号续编",
|
|
83249
|
+
"height": 297,
|
|
83250
|
+
"width": 210,
|
|
83251
|
+
"paperHeader": 0,
|
|
83252
|
+
"paperFooter": 835.5,
|
|
83253
|
+
"printElements": [
|
|
83254
|
+
{
|
|
83255
|
+
"options": {
|
|
83256
|
+
"left": 18,
|
|
83257
|
+
"top": 27,
|
|
83258
|
+
"height": 24,
|
|
83259
|
+
"width": 555,
|
|
83260
|
+
"title": "分组序号续编示例",
|
|
83261
|
+
"fontSize": 16,
|
|
83262
|
+
"fontWeight": "700",
|
|
83263
|
+
"textAlign": "center",
|
|
83264
|
+
"right": 571.998046875,
|
|
83265
|
+
"bottom": 51.498046875,
|
|
83266
|
+
"vCenter": 294.498046875,
|
|
83267
|
+
"hCenter": 39.498046875,
|
|
83268
|
+
"eid": "6a5a6836-a14a-42d2-bead-c3bc5162ba8c"
|
|
83269
|
+
},
|
|
83270
|
+
"printElementType": {
|
|
83271
|
+
"title": "文本",
|
|
83272
|
+
"type": "text"
|
|
83273
|
+
}
|
|
83274
|
+
},
|
|
83275
|
+
{
|
|
83276
|
+
"options": {
|
|
83277
|
+
"left": 18,
|
|
83278
|
+
"top": 57,
|
|
83279
|
+
"height": 18,
|
|
83280
|
+
"width": 555,
|
|
83281
|
+
"title": "按品牌分组,序号列开启“分组序号续编”后会跨分组连续编号",
|
|
83282
|
+
"fontSize": 10.5,
|
|
83283
|
+
"color": "#d93838",
|
|
83284
|
+
"eid": "74b13c4d-1934-4f07-8850-68ac742b4c00"
|
|
83285
|
+
},
|
|
83286
|
+
"printElementType": {
|
|
83287
|
+
"title": "文本",
|
|
83288
|
+
"type": "text"
|
|
83289
|
+
}
|
|
83290
|
+
},
|
|
83291
|
+
{
|
|
83292
|
+
"options": {
|
|
83293
|
+
"left": 18,
|
|
83294
|
+
"top": 85.5,
|
|
83295
|
+
"height": 745.5,
|
|
83296
|
+
"width": 555,
|
|
83297
|
+
"field": "groupList",
|
|
83298
|
+
"tableHeaderRepeat": "first",
|
|
83299
|
+
"tableFooterRepeat": "no",
|
|
83300
|
+
"groupSequenceContinue": true,
|
|
83301
|
+
"tableHeaderBackground": "#f5f5f5",
|
|
83302
|
+
"tableHeaderFontWeight": "700",
|
|
83303
|
+
"tableHeaderRowHeight": 18,
|
|
83304
|
+
"tableBodyRowHeight": 18,
|
|
83305
|
+
"groupFieldsFormatter": "function(type,options,data){ return ['brand'] }",
|
|
83306
|
+
"groupFormatter": "function(colTotal,tableData,printData,groupData,options){ var key=(groupData&&groupData.key)||{}; var brand=key.brand||''; return `<td colspan='${colTotal}' style='text-align:left;font-weight:700;background:#f5f5f5;padding:2pt 4pt;'>分组:${brand}</td>` }",
|
|
83307
|
+
"right": 571.998046875,
|
|
83308
|
+
"bottom": 504.99609375,
|
|
83309
|
+
"vCenter": 294.498046875,
|
|
83310
|
+
"hCenter": 294.99609375,
|
|
83311
|
+
"eid": "92157472-9920-42fa-8e71-80cce418caa5",
|
|
83312
|
+
"columns": [
|
|
83313
|
+
[
|
|
83314
|
+
{
|
|
83315
|
+
"width": 45,
|
|
83316
|
+
"title": "序号",
|
|
83317
|
+
"field": "seq",
|
|
83318
|
+
"checked": true,
|
|
83319
|
+
"columnId": "seq",
|
|
83320
|
+
"fixed": false,
|
|
83321
|
+
"rowspan": 1,
|
|
83322
|
+
"colspan": 1,
|
|
83323
|
+
"align": "center",
|
|
83324
|
+
"tableTextType": "sequence"
|
|
83325
|
+
},
|
|
83326
|
+
{
|
|
83327
|
+
"width": 120,
|
|
83328
|
+
"title": "品牌",
|
|
83329
|
+
"field": "brand",
|
|
83330
|
+
"checked": true,
|
|
83331
|
+
"columnId": "brand",
|
|
83332
|
+
"fixed": false,
|
|
83333
|
+
"rowspan": 1,
|
|
83334
|
+
"colspan": 1
|
|
83335
|
+
},
|
|
83336
|
+
{
|
|
83337
|
+
"width": 230,
|
|
83338
|
+
"title": "名称",
|
|
83339
|
+
"field": "name",
|
|
83340
|
+
"checked": true,
|
|
83341
|
+
"columnId": "name",
|
|
83342
|
+
"fixed": false,
|
|
83343
|
+
"rowspan": 1,
|
|
83344
|
+
"colspan": 1
|
|
83345
|
+
},
|
|
83346
|
+
{
|
|
83347
|
+
"width": 160,
|
|
83348
|
+
"title": "条码",
|
|
83349
|
+
"field": "barcode",
|
|
83350
|
+
"checked": true,
|
|
83351
|
+
"columnId": "barcode",
|
|
83352
|
+
"fixed": false,
|
|
83353
|
+
"rowspan": 1,
|
|
83354
|
+
"colspan": 1
|
|
83355
|
+
}
|
|
83356
|
+
]
|
|
83357
|
+
]
|
|
83358
|
+
},
|
|
83359
|
+
"printElementType": {
|
|
83360
|
+
"title": "表格",
|
|
83361
|
+
"type": "table",
|
|
83362
|
+
"editable": true,
|
|
83363
|
+
"columnDisplayEditable": true,
|
|
83364
|
+
"columnDisplayIndexEditable": true,
|
|
83365
|
+
"columnTitleEditable": true,
|
|
83366
|
+
"columnResizable": true,
|
|
83367
|
+
"columnAlignEditable": true,
|
|
83368
|
+
"isEnableEditField": true,
|
|
83369
|
+
"isEnableContextMenu": true,
|
|
83370
|
+
"isEnableInsertRow": true,
|
|
83371
|
+
"isEnableDeleteRow": true,
|
|
83372
|
+
"isEnableInsertColumn": true,
|
|
83373
|
+
"isEnableDeleteColumn": true,
|
|
83374
|
+
"isEnableMergeCell": true
|
|
83375
|
+
}
|
|
83376
|
+
}
|
|
83377
|
+
],
|
|
83378
|
+
"paperNumberLeft": 565.5,
|
|
83379
|
+
"paperNumberTop": 819,
|
|
83380
|
+
"paperNumberContinue": true,
|
|
83381
|
+
"watermarkOptions": {},
|
|
83382
|
+
"panelLayoutOptions": {},
|
|
83383
|
+
"backgroundColor": "#fff",
|
|
83384
|
+
"expandCss": ".products {\n display: flex;\n flex-wrap: wrap;\n position: relative;\n box-sizing: border-box;\n border: 1px solid #c8c9cc;\n padding: 5pt;\n margin-bottom: 5pt;\n}\n.products .mg-row {display: flex;margin-bottom: 5pt;}\n\n.col-25{max-width:25%;flex:0 0 25%}\n.col-75{max-width:75%;flex:0 0 75%}\n.col-100{width:100%;flex:0 0 100%}\n.w-9{width:9%}\n.w-10{width:10%}\n.w-20{width:20%}\n.w-40{width:40%}\n.center{text-align:center}\n\n.custom-table {\n width: 100%;\n}\n.custom-table .custom-th div, .custom-table .custom-tr div {\n font-size: 6pt;\n display: inline-block;\n padding: 2pt 0;\n border-left: 1pt solid #000000;\n border-bottom: 1pt solid #000000;\n vertical-align: top;\n }\n.custom-table .custom-th div:last-child, .custom-table .custom-tr div:last-child {\n border-right: 1px solid #000000;\n }\n.custom-table .custom-th, .custom-table .custom-tr {\n display: block;\n font-size: 0;\n }\n.custom-table .custom-th div span, .custom-table .custom-tr div span {\n margin: 0 5pt;\n }\n.custom-table .custom-th div {\n border-top: 1pt solid #000000;\n }"
|
|
83385
|
+
}
|
|
83386
|
+
]
|
|
83387
|
+
};
|
|
83388
|
+
const structureList_vue_vue_type_style_index_0_scoped_abf7d896_lang = "";
|
|
82849
83389
|
const _sfc_main$6 = {
|
|
82850
83390
|
name: "HipStructureList",
|
|
82851
83391
|
props: {
|
|
@@ -82854,6 +83394,9 @@ const _sfc_main$6 = {
|
|
|
82854
83394
|
docked: { type: Boolean, default: false },
|
|
82855
83395
|
propDocked: { type: Boolean, default: false }
|
|
82856
83396
|
},
|
|
83397
|
+
inject: {
|
|
83398
|
+
vgPrintGetViewportRect: { default: null }
|
|
83399
|
+
},
|
|
82857
83400
|
watch: {
|
|
82858
83401
|
docked() {
|
|
82859
83402
|
if (this.isMobile)
|
|
@@ -82894,7 +83437,9 @@ const _sfc_main$6 = {
|
|
|
82894
83437
|
_userPlaced: false,
|
|
82895
83438
|
resizing: false,
|
|
82896
83439
|
resizeDir: "",
|
|
82897
|
-
resizeStart: { x: 0, y: 0, w: 0, h: 0, l: 0, t: 0 }
|
|
83440
|
+
resizeStart: { x: 0, y: 0, w: 0, h: 0, l: 0, t: 0 },
|
|
83441
|
+
_hostResizeObserver: null,
|
|
83442
|
+
_hostResizeRaf: 0
|
|
82898
83443
|
};
|
|
82899
83444
|
},
|
|
82900
83445
|
computed: {
|
|
@@ -82922,6 +83467,7 @@ const _sfc_main$6 = {
|
|
|
82922
83467
|
else {
|
|
82923
83468
|
this.placeDefault();
|
|
82924
83469
|
}
|
|
83470
|
+
this.setupHostResizeObserver();
|
|
82925
83471
|
} catch (e2) {
|
|
82926
83472
|
}
|
|
82927
83473
|
});
|
|
@@ -82932,8 +83478,65 @@ const _sfc_main$6 = {
|
|
|
82932
83478
|
this.unsubscribes.forEach((u2) => ev.off(u2));
|
|
82933
83479
|
}
|
|
82934
83480
|
window.removeEventListener("resize", this.onWindowResize);
|
|
83481
|
+
try {
|
|
83482
|
+
this.teardownHostResizeObserver();
|
|
83483
|
+
} catch (_2) {
|
|
83484
|
+
}
|
|
82935
83485
|
},
|
|
82936
83486
|
methods: {
|
|
83487
|
+
getViewportRect() {
|
|
83488
|
+
try {
|
|
83489
|
+
const injected = this.vgPrintGetViewportRect;
|
|
83490
|
+
const rect = typeof injected === "function" ? injected() : null;
|
|
83491
|
+
if (rect && rect.width && rect.height)
|
|
83492
|
+
return rect;
|
|
83493
|
+
} catch (_2) {
|
|
83494
|
+
}
|
|
83495
|
+
const w2 = window.innerWidth || document.documentElement.clientWidth || 0;
|
|
83496
|
+
const h2 = window.innerHeight || document.documentElement.clientHeight || 0;
|
|
83497
|
+
return { left: 0, top: 0, width: w2, height: h2, right: w2, bottom: h2 };
|
|
83498
|
+
},
|
|
83499
|
+
setupHostResizeObserver() {
|
|
83500
|
+
const host = this.$el && this.$el.closest ? this.$el.closest(".vg-designer-root") : null;
|
|
83501
|
+
if (!host)
|
|
83502
|
+
return;
|
|
83503
|
+
if (this._hostResizeObserver && this._hostResizeObserver.__targetEl === host)
|
|
83504
|
+
return;
|
|
83505
|
+
try {
|
|
83506
|
+
this.teardownHostResizeObserver();
|
|
83507
|
+
} catch (_2) {
|
|
83508
|
+
}
|
|
83509
|
+
const RO = typeof ResizeObserver !== "undefined" ? ResizeObserver : null;
|
|
83510
|
+
if (!RO)
|
|
83511
|
+
return;
|
|
83512
|
+
const onResize = () => {
|
|
83513
|
+
if (this._hostResizeRaf)
|
|
83514
|
+
cancelAnimationFrame(this._hostResizeRaf);
|
|
83515
|
+
this._hostResizeRaf = requestAnimationFrame(() => {
|
|
83516
|
+
this._hostResizeRaf = 0;
|
|
83517
|
+
try {
|
|
83518
|
+
this.onWindowResize();
|
|
83519
|
+
} catch (_2) {
|
|
83520
|
+
}
|
|
83521
|
+
});
|
|
83522
|
+
};
|
|
83523
|
+
const ro2 = new RO(onResize);
|
|
83524
|
+
ro2.__targetEl = host;
|
|
83525
|
+
ro2.observe(host);
|
|
83526
|
+
this._hostResizeObserver = ro2;
|
|
83527
|
+
},
|
|
83528
|
+
teardownHostResizeObserver() {
|
|
83529
|
+
const ro2 = this._hostResizeObserver;
|
|
83530
|
+
this._hostResizeObserver = null;
|
|
83531
|
+
if (this._hostResizeRaf) {
|
|
83532
|
+
cancelAnimationFrame(this._hostResizeRaf);
|
|
83533
|
+
this._hostResizeRaf = 0;
|
|
83534
|
+
}
|
|
83535
|
+
try {
|
|
83536
|
+
ro2 && ro2.disconnect && ro2.disconnect();
|
|
83537
|
+
} catch (_2) {
|
|
83538
|
+
}
|
|
83539
|
+
},
|
|
82937
83540
|
getPanel() {
|
|
82938
83541
|
return this.template && this.template.editingPanel;
|
|
82939
83542
|
},
|
|
@@ -83040,8 +83643,9 @@ const _sfc_main$6 = {
|
|
|
83040
83643
|
onDragMove(e2) {
|
|
83041
83644
|
if (!this.dragging)
|
|
83042
83645
|
return;
|
|
83043
|
-
const
|
|
83044
|
-
const
|
|
83646
|
+
const vp = this.getViewportRect();
|
|
83647
|
+
const ww = vp.width;
|
|
83648
|
+
const wh = vp.height;
|
|
83045
83649
|
let boxW = this.panelSize && this.panelSize.width ? this.panelSize.width : null;
|
|
83046
83650
|
let boxH = this.panelSize && this.panelSize.height ? this.panelSize.height : null;
|
|
83047
83651
|
if (!boxW || !boxH) {
|
|
@@ -83055,10 +83659,12 @@ const _sfc_main$6 = {
|
|
|
83055
83659
|
boxW = 220;
|
|
83056
83660
|
if (!boxH)
|
|
83057
83661
|
boxH = 200;
|
|
83058
|
-
const
|
|
83059
|
-
const
|
|
83060
|
-
|
|
83061
|
-
|
|
83662
|
+
const minLeft = vp.left;
|
|
83663
|
+
const minTop = vp.top;
|
|
83664
|
+
const maxLeft = vp.right - boxW;
|
|
83665
|
+
const maxTop = vp.bottom - boxH;
|
|
83666
|
+
this.pos.left = Math.max(minLeft, Math.min(maxLeft, e2.clientX - this.dragOffset.x));
|
|
83667
|
+
this.pos.top = Math.max(minTop, Math.min(maxTop, e2.clientY - this.dragOffset.y));
|
|
83062
83668
|
},
|
|
83063
83669
|
onDragEnd() {
|
|
83064
83670
|
this.dragging = false;
|
|
@@ -83093,32 +83699,35 @@ const _sfc_main$6 = {
|
|
|
83093
83699
|
placeDefault(skipMark) {
|
|
83094
83700
|
if (this.isMobile)
|
|
83095
83701
|
return;
|
|
83096
|
-
const
|
|
83097
|
-
const
|
|
83702
|
+
const vp = this.getViewportRect();
|
|
83703
|
+
const ww = vp.width || 0;
|
|
83704
|
+
const wh = vp.height || 0;
|
|
83098
83705
|
if (!ww || !wh)
|
|
83099
83706
|
return;
|
|
83100
83707
|
const padding = 12;
|
|
83101
83708
|
const gap = 12;
|
|
83102
83709
|
const structW = this.panelSize && this.panelSize.width ? this.panelSize.width : 220;
|
|
83103
83710
|
const propRect = this.getVisiblePropRect();
|
|
83104
|
-
const propLeft = propRect ? propRect.left :
|
|
83105
|
-
const left = Math.max(padding, Math.min(propLeft - gap - structW,
|
|
83711
|
+
const propLeft = propRect ? propRect.left : vp.right - 320 - 10;
|
|
83712
|
+
const left = Math.max(vp.left + padding, Math.min(propLeft - gap - structW, vp.right - structW - padding));
|
|
83713
|
+
const top = vp.top + Math.max(padding, Math.min(76, wh - 120));
|
|
83106
83714
|
this.pos.left = left;
|
|
83107
|
-
this.pos.top =
|
|
83715
|
+
this.pos.top = top;
|
|
83108
83716
|
if (!skipMark)
|
|
83109
83717
|
this._userPlaced = false;
|
|
83110
83718
|
this.clampToViewport();
|
|
83111
83719
|
},
|
|
83112
83720
|
capturePin() {
|
|
83113
|
-
const
|
|
83114
|
-
const
|
|
83721
|
+
const vp = this.getViewportRect();
|
|
83722
|
+
const ww = vp.width || 0;
|
|
83723
|
+
const wh = vp.height || 0;
|
|
83115
83724
|
if (!ww || !wh)
|
|
83116
83725
|
return;
|
|
83117
83726
|
const rect = this.$el ? this.$el.getBoundingClientRect() : { left: this.pos.left || 0, top: this.pos.top || 0, right: (this.pos.left || 0) + 220, bottom: (this.pos.top || 0) + 360, width: 220, height: 360 };
|
|
83118
|
-
const leftDist = Math.max(0, rect.left);
|
|
83119
|
-
const rightDist = Math.max(0,
|
|
83120
|
-
const topDist = Math.max(0, rect.top);
|
|
83121
|
-
const bottomDist = Math.max(0,
|
|
83727
|
+
const leftDist = Math.max(0, rect.left - vp.left);
|
|
83728
|
+
const rightDist = Math.max(0, vp.right - rect.right);
|
|
83729
|
+
const topDist = Math.max(0, rect.top - vp.top);
|
|
83730
|
+
const bottomDist = Math.max(0, vp.bottom - rect.bottom);
|
|
83122
83731
|
const xMode = leftDist <= rightDist ? "left" : "right";
|
|
83123
83732
|
const yMode = topDist <= bottomDist ? "top" : "bottom";
|
|
83124
83733
|
const x2 = xMode === "right" ? rightDist : leftDist;
|
|
@@ -83128,8 +83737,9 @@ const _sfc_main$6 = {
|
|
|
83128
83737
|
applyDockLayout() {
|
|
83129
83738
|
if (this.isMobile)
|
|
83130
83739
|
return;
|
|
83131
|
-
const
|
|
83132
|
-
const
|
|
83740
|
+
const vp = this.getViewportRect();
|
|
83741
|
+
const ww = vp.width || 0;
|
|
83742
|
+
const wh = vp.height || 0;
|
|
83133
83743
|
if (!ww || !wh)
|
|
83134
83744
|
return;
|
|
83135
83745
|
const padding = 8;
|
|
@@ -83138,26 +83748,29 @@ const _sfc_main$6 = {
|
|
|
83138
83748
|
const yMode = this._dock && this._dock.yMode ? this._dock.yMode : "top";
|
|
83139
83749
|
const x2 = this._dock && typeof this._dock.x === "number" ? this._dock.x : 12;
|
|
83140
83750
|
const y2 = this._dock && typeof this._dock.y === "number" ? this._dock.y : 76;
|
|
83141
|
-
const desiredLeft = xMode === "right" ?
|
|
83142
|
-
const desiredTop = yMode === "bottom" ?
|
|
83143
|
-
this.pos.left = Math.max(padding, Math.min(
|
|
83144
|
-
this.pos.top = Math.max(padding, Math.min(
|
|
83751
|
+
const desiredLeft = xMode === "right" ? vp.right - rect.width - x2 : vp.left + x2;
|
|
83752
|
+
const desiredTop = yMode === "bottom" ? vp.bottom - rect.height - y2 : vp.top + y2;
|
|
83753
|
+
this.pos.left = Math.max(vp.left + padding, Math.min(vp.right - rect.width - padding, desiredLeft));
|
|
83754
|
+
this.pos.top = Math.max(vp.top + padding, Math.min(vp.bottom - rect.height - padding, desiredTop));
|
|
83145
83755
|
this.clampToViewport();
|
|
83146
83756
|
},
|
|
83147
83757
|
clampToViewport() {
|
|
83148
83758
|
const rect = this.$el.getBoundingClientRect();
|
|
83149
|
-
const
|
|
83150
|
-
const
|
|
83759
|
+
const vp = this.getViewportRect();
|
|
83760
|
+
const ww = vp.width;
|
|
83761
|
+
const wh = vp.height;
|
|
83151
83762
|
let width2 = rect.width;
|
|
83152
83763
|
let height = rect.height;
|
|
83153
83764
|
if (width2 > ww)
|
|
83154
83765
|
width2 = ww;
|
|
83155
83766
|
if (height > wh)
|
|
83156
83767
|
height = wh;
|
|
83157
|
-
const
|
|
83158
|
-
const
|
|
83159
|
-
const
|
|
83160
|
-
const
|
|
83768
|
+
const minLeft = vp.left;
|
|
83769
|
+
const minTop = vp.top;
|
|
83770
|
+
const maxLeft = vp.right - width2;
|
|
83771
|
+
const maxTop = vp.bottom - height;
|
|
83772
|
+
const nextLeft = Math.max(minLeft, Math.min(maxLeft, this.pos.left));
|
|
83773
|
+
const nextTop = Math.max(minTop, Math.min(maxTop, this.pos.top));
|
|
83161
83774
|
if (width2 !== rect.width || height !== rect.height) {
|
|
83162
83775
|
this.panelSize = { width: width2, height };
|
|
83163
83776
|
}
|
|
@@ -83186,26 +83799,27 @@ const _sfc_main$6 = {
|
|
|
83186
83799
|
const dx = e2.clientX - this.resizeStart.x;
|
|
83187
83800
|
const dy = e2.clientY - this.resizeStart.y;
|
|
83188
83801
|
const start = this.resizeStart;
|
|
83189
|
-
const
|
|
83190
|
-
const
|
|
83802
|
+
const vp = this.getViewportRect();
|
|
83803
|
+
const ww = vp.width;
|
|
83804
|
+
const wh = vp.height;
|
|
83191
83805
|
const minW = 200;
|
|
83192
83806
|
const minH = 150;
|
|
83193
|
-
const rightEdge = Math.min(start.l + start.w,
|
|
83807
|
+
const rightEdge = Math.min(start.l + start.w, vp.right);
|
|
83194
83808
|
let newW = start.w;
|
|
83195
83809
|
let newH = start.h;
|
|
83196
83810
|
let newL = start.l;
|
|
83197
83811
|
if (this.resizeDir.includes("left")) {
|
|
83198
83812
|
const targetL = start.l + dx;
|
|
83199
|
-
const clampedL = Math.max(
|
|
83813
|
+
const clampedL = Math.max(vp.left, Math.min(targetL, rightEdge - minW));
|
|
83200
83814
|
newL = clampedL;
|
|
83201
83815
|
newW = rightEdge - clampedL;
|
|
83202
83816
|
}
|
|
83203
83817
|
if (this.resizeDir.includes("right")) {
|
|
83204
|
-
const maxW = Math.max(minW,
|
|
83818
|
+
const maxW = Math.max(minW, vp.right - start.l);
|
|
83205
83819
|
newW = Math.min(Math.max(minW, start.w + dx), maxW);
|
|
83206
83820
|
}
|
|
83207
83821
|
if (this.resizeDir.includes("bottom")) {
|
|
83208
|
-
const maxH = Math.max(minH,
|
|
83822
|
+
const maxH = Math.max(minH, vp.bottom - start.t);
|
|
83209
83823
|
newH = Math.min(Math.max(minH, start.h + dy), maxH);
|
|
83210
83824
|
}
|
|
83211
83825
|
this.panelSize = { width: newW, height: newH };
|
|
@@ -83256,7 +83870,7 @@ var __component__$6 = /* @__PURE__ */ normalizeComponent(
|
|
|
83256
83870
|
_sfc_staticRenderFns$6,
|
|
83257
83871
|
false,
|
|
83258
83872
|
null,
|
|
83259
|
-
"
|
|
83873
|
+
"abf7d896",
|
|
83260
83874
|
null,
|
|
83261
83875
|
null
|
|
83262
83876
|
);
|
|
@@ -84154,7 +84768,7 @@ var __component__$5 = /* @__PURE__ */ normalizeComponent(
|
|
|
84154
84768
|
null
|
|
84155
84769
|
);
|
|
84156
84770
|
const SecondaryToolbar = __component__$5.exports;
|
|
84157
|
-
const
|
|
84771
|
+
const HistoryPanel_vue_vue_type_style_index_0_scoped_fe7421b7_lang = "";
|
|
84158
84772
|
const _sfc_main$4 = {
|
|
84159
84773
|
name: "HistoryPanel",
|
|
84160
84774
|
props: {
|
|
@@ -84163,6 +84777,9 @@ const _sfc_main$4 = {
|
|
|
84163
84777
|
docked: { type: Boolean, default: false },
|
|
84164
84778
|
structDocked: { type: Boolean, default: false }
|
|
84165
84779
|
},
|
|
84780
|
+
inject: {
|
|
84781
|
+
vgPrintGetViewportRect: { default: null }
|
|
84782
|
+
},
|
|
84166
84783
|
watch: {
|
|
84167
84784
|
docked() {
|
|
84168
84785
|
if (this.isMobile)
|
|
@@ -84203,7 +84820,9 @@ const _sfc_main$4 = {
|
|
|
84203
84820
|
_userPlaced: false,
|
|
84204
84821
|
resizing: false,
|
|
84205
84822
|
resizeDir: "",
|
|
84206
|
-
resizeStart: { x: 0, y: 0, w: 0, h: 0, l: 0, t: 0 }
|
|
84823
|
+
resizeStart: { x: 0, y: 0, w: 0, h: 0, l: 0, t: 0 },
|
|
84824
|
+
_hostResizeObserver: null,
|
|
84825
|
+
_hostResizeRaf: 0
|
|
84207
84826
|
};
|
|
84208
84827
|
},
|
|
84209
84828
|
computed: {
|
|
@@ -84229,6 +84848,7 @@ const _sfc_main$4 = {
|
|
|
84229
84848
|
else {
|
|
84230
84849
|
this.placeDefault();
|
|
84231
84850
|
}
|
|
84851
|
+
this.setupHostResizeObserver();
|
|
84232
84852
|
} catch (e2) {
|
|
84233
84853
|
}
|
|
84234
84854
|
});
|
|
@@ -84238,8 +84858,65 @@ const _sfc_main$4 = {
|
|
|
84238
84858
|
beforeDestroy() {
|
|
84239
84859
|
historyStore.unsubscribe(this.refreshFromStore);
|
|
84240
84860
|
window.removeEventListener("resize", this.onWindowResize);
|
|
84861
|
+
try {
|
|
84862
|
+
this.teardownHostResizeObserver();
|
|
84863
|
+
} catch (_2) {
|
|
84864
|
+
}
|
|
84241
84865
|
},
|
|
84242
84866
|
methods: {
|
|
84867
|
+
getViewportRect() {
|
|
84868
|
+
try {
|
|
84869
|
+
const injected = this.vgPrintGetViewportRect;
|
|
84870
|
+
const rect = typeof injected === "function" ? injected() : null;
|
|
84871
|
+
if (rect && rect.width && rect.height)
|
|
84872
|
+
return rect;
|
|
84873
|
+
} catch (_2) {
|
|
84874
|
+
}
|
|
84875
|
+
const w2 = window.innerWidth || document.documentElement.clientWidth || 0;
|
|
84876
|
+
const h2 = window.innerHeight || document.documentElement.clientHeight || 0;
|
|
84877
|
+
return { left: 0, top: 0, width: w2, height: h2, right: w2, bottom: h2 };
|
|
84878
|
+
},
|
|
84879
|
+
setupHostResizeObserver() {
|
|
84880
|
+
const host = this.$el && this.$el.closest ? this.$el.closest(".vg-designer-root") : null;
|
|
84881
|
+
if (!host)
|
|
84882
|
+
return;
|
|
84883
|
+
if (this._hostResizeObserver && this._hostResizeObserver.__targetEl === host)
|
|
84884
|
+
return;
|
|
84885
|
+
try {
|
|
84886
|
+
this.teardownHostResizeObserver();
|
|
84887
|
+
} catch (_2) {
|
|
84888
|
+
}
|
|
84889
|
+
const RO = typeof ResizeObserver !== "undefined" ? ResizeObserver : null;
|
|
84890
|
+
if (!RO)
|
|
84891
|
+
return;
|
|
84892
|
+
const onResize = () => {
|
|
84893
|
+
if (this._hostResizeRaf)
|
|
84894
|
+
cancelAnimationFrame(this._hostResizeRaf);
|
|
84895
|
+
this._hostResizeRaf = requestAnimationFrame(() => {
|
|
84896
|
+
this._hostResizeRaf = 0;
|
|
84897
|
+
try {
|
|
84898
|
+
this.onWindowResize();
|
|
84899
|
+
} catch (_2) {
|
|
84900
|
+
}
|
|
84901
|
+
});
|
|
84902
|
+
};
|
|
84903
|
+
const ro2 = new RO(onResize);
|
|
84904
|
+
ro2.__targetEl = host;
|
|
84905
|
+
ro2.observe(host);
|
|
84906
|
+
this._hostResizeObserver = ro2;
|
|
84907
|
+
},
|
|
84908
|
+
teardownHostResizeObserver() {
|
|
84909
|
+
const ro2 = this._hostResizeObserver;
|
|
84910
|
+
this._hostResizeObserver = null;
|
|
84911
|
+
if (this._hostResizeRaf) {
|
|
84912
|
+
cancelAnimationFrame(this._hostResizeRaf);
|
|
84913
|
+
this._hostResizeRaf = 0;
|
|
84914
|
+
}
|
|
84915
|
+
try {
|
|
84916
|
+
ro2 && ro2.disconnect && ro2.disconnect();
|
|
84917
|
+
} catch (_2) {
|
|
84918
|
+
}
|
|
84919
|
+
},
|
|
84243
84920
|
refreshFromStore() {
|
|
84244
84921
|
this.entries = historyStore.getEntries();
|
|
84245
84922
|
this.cursor = historyStore.getCursor();
|
|
@@ -84263,8 +84940,9 @@ const _sfc_main$4 = {
|
|
|
84263
84940
|
onDragMove(e2) {
|
|
84264
84941
|
if (!this.dragging)
|
|
84265
84942
|
return;
|
|
84266
|
-
const
|
|
84267
|
-
const
|
|
84943
|
+
const vp = this.getViewportRect();
|
|
84944
|
+
const ww = vp.width;
|
|
84945
|
+
const wh = vp.height;
|
|
84268
84946
|
let boxW = this.panelSize && this.panelSize.width ? this.panelSize.width : null;
|
|
84269
84947
|
let boxH = this.panelSize && this.panelSize.height ? this.panelSize.height : null;
|
|
84270
84948
|
if (!boxW || !boxH) {
|
|
@@ -84278,10 +84956,12 @@ const _sfc_main$4 = {
|
|
|
84278
84956
|
boxW = 220;
|
|
84279
84957
|
if (!boxH)
|
|
84280
84958
|
boxH = 200;
|
|
84281
|
-
const
|
|
84282
|
-
const
|
|
84283
|
-
|
|
84284
|
-
|
|
84959
|
+
const minLeft = vp.left;
|
|
84960
|
+
const minTop = vp.top;
|
|
84961
|
+
const maxLeft = vp.right - boxW;
|
|
84962
|
+
const maxTop = vp.bottom - boxH;
|
|
84963
|
+
this.pos.left = Math.max(minLeft, Math.min(maxLeft, e2.clientX - this.dragOffset.x));
|
|
84964
|
+
this.pos.top = Math.max(minTop, Math.min(maxTop, e2.clientY - this.dragOffset.y));
|
|
84285
84965
|
},
|
|
84286
84966
|
onDragEnd() {
|
|
84287
84967
|
this.dragging = false;
|
|
@@ -84316,8 +84996,9 @@ const _sfc_main$4 = {
|
|
|
84316
84996
|
placeDefault(skipMark) {
|
|
84317
84997
|
if (this.isMobile)
|
|
84318
84998
|
return;
|
|
84319
|
-
const
|
|
84320
|
-
const
|
|
84999
|
+
const vp = this.getViewportRect();
|
|
85000
|
+
const ww = vp.width || 0;
|
|
85001
|
+
const wh = vp.height || 0;
|
|
84321
85002
|
if (!ww || !wh)
|
|
84322
85003
|
return;
|
|
84323
85004
|
const padding = 12;
|
|
@@ -84326,30 +85007,31 @@ const _sfc_main$4 = {
|
|
|
84326
85007
|
if (struct) {
|
|
84327
85008
|
const rect = struct.getBoundingClientRect();
|
|
84328
85009
|
const panelW = this.panelSize && this.panelSize.width ? this.panelSize.width : rect.width;
|
|
84329
|
-
this.pos.left = Math.max(padding, Math.min(
|
|
84330
|
-
this.pos.top = Math.max(padding, Math.min(
|
|
85010
|
+
this.pos.left = Math.max(vp.left + padding, Math.min(vp.right - panelW - padding, rect.left));
|
|
85011
|
+
this.pos.top = Math.max(vp.top + padding, Math.min(vp.bottom - 150 - padding, rect.bottom + gap));
|
|
84331
85012
|
} else {
|
|
84332
85013
|
const propRect = this.getVisiblePropRect();
|
|
84333
|
-
const propLeft = propRect ? propRect.left :
|
|
85014
|
+
const propLeft = propRect ? propRect.left : vp.right - 320 - 10;
|
|
84334
85015
|
const panelW = this.panelSize && this.panelSize.width ? this.panelSize.width : 220;
|
|
84335
|
-
const left = Math.max(padding, Math.min(propLeft - 12 - panelW,
|
|
85016
|
+
const left = Math.max(vp.left + padding, Math.min(propLeft - 12 - panelW, vp.right - panelW - padding));
|
|
84336
85017
|
this.pos.left = left;
|
|
84337
|
-
this.pos.top = Math.max(padding, Math.min(
|
|
85018
|
+
this.pos.top = Math.max(vp.top + padding, Math.min(vp.bottom - 150 - padding, vp.top + 50));
|
|
84338
85019
|
}
|
|
84339
85020
|
if (!skipMark)
|
|
84340
85021
|
this._userPlaced = false;
|
|
84341
85022
|
this.clampToViewport();
|
|
84342
85023
|
},
|
|
84343
85024
|
capturePin() {
|
|
84344
|
-
const
|
|
84345
|
-
const
|
|
85025
|
+
const vp = this.getViewportRect();
|
|
85026
|
+
const ww = vp.width || 0;
|
|
85027
|
+
const wh = vp.height || 0;
|
|
84346
85028
|
if (!ww || !wh)
|
|
84347
85029
|
return;
|
|
84348
85030
|
const rect = this.$el ? this.$el.getBoundingClientRect() : { left: this.pos.left || 0, top: this.pos.top || 0, right: (this.pos.left || 0) + 220, bottom: (this.pos.top || 0) + 240, width: 220, height: 240 };
|
|
84349
|
-
const leftDist = Math.max(0, rect.left);
|
|
84350
|
-
const rightDist = Math.max(0,
|
|
84351
|
-
const topDist = Math.max(0, rect.top);
|
|
84352
|
-
const bottomDist = Math.max(0,
|
|
85031
|
+
const leftDist = Math.max(0, rect.left - vp.left);
|
|
85032
|
+
const rightDist = Math.max(0, vp.right - rect.right);
|
|
85033
|
+
const topDist = Math.max(0, rect.top - vp.top);
|
|
85034
|
+
const bottomDist = Math.max(0, vp.bottom - rect.bottom);
|
|
84353
85035
|
const xMode = leftDist <= rightDist ? "left" : "right";
|
|
84354
85036
|
const yMode = topDist <= bottomDist ? "top" : "bottom";
|
|
84355
85037
|
const x2 = xMode === "right" ? rightDist : leftDist;
|
|
@@ -84359,8 +85041,9 @@ const _sfc_main$4 = {
|
|
|
84359
85041
|
applyDockLayout() {
|
|
84360
85042
|
if (this.isMobile)
|
|
84361
85043
|
return;
|
|
84362
|
-
const
|
|
84363
|
-
const
|
|
85044
|
+
const vp = this.getViewportRect();
|
|
85045
|
+
const ww = vp.width || 0;
|
|
85046
|
+
const wh = vp.height || 0;
|
|
84364
85047
|
if (!ww || !wh)
|
|
84365
85048
|
return;
|
|
84366
85049
|
const padding = 8;
|
|
@@ -84369,26 +85052,29 @@ const _sfc_main$4 = {
|
|
|
84369
85052
|
const yMode = this._dock && this._dock.yMode ? this._dock.yMode : "top";
|
|
84370
85053
|
const x2 = this._dock && typeof this._dock.x === "number" ? this._dock.x : 12;
|
|
84371
85054
|
const y2 = this._dock && typeof this._dock.y === "number" ? this._dock.y : 76;
|
|
84372
|
-
const desiredLeft = xMode === "right" ?
|
|
84373
|
-
const desiredTop = yMode === "bottom" ?
|
|
84374
|
-
this.pos.left = Math.max(padding, Math.min(
|
|
84375
|
-
this.pos.top = Math.max(padding, Math.min(
|
|
85055
|
+
const desiredLeft = xMode === "right" ? vp.right - r2.width - x2 : vp.left + x2;
|
|
85056
|
+
const desiredTop = yMode === "bottom" ? vp.bottom - r2.height - y2 : vp.top + y2;
|
|
85057
|
+
this.pos.left = Math.max(vp.left + padding, Math.min(vp.right - r2.width - padding, desiredLeft));
|
|
85058
|
+
this.pos.top = Math.max(vp.top + padding, Math.min(vp.bottom - r2.height - padding, desiredTop));
|
|
84376
85059
|
this.clampToViewport();
|
|
84377
85060
|
},
|
|
84378
85061
|
clampToViewport() {
|
|
84379
85062
|
const rect = this.$el.getBoundingClientRect();
|
|
84380
|
-
const
|
|
84381
|
-
const
|
|
85063
|
+
const vp = this.getViewportRect();
|
|
85064
|
+
const ww = vp.width;
|
|
85065
|
+
const wh = vp.height;
|
|
84382
85066
|
let width2 = rect.width;
|
|
84383
85067
|
let height = rect.height;
|
|
84384
85068
|
if (width2 > ww)
|
|
84385
85069
|
width2 = ww;
|
|
84386
85070
|
if (height > wh)
|
|
84387
85071
|
height = wh;
|
|
84388
|
-
const
|
|
84389
|
-
const
|
|
84390
|
-
const
|
|
84391
|
-
const
|
|
85072
|
+
const minLeft = vp.left;
|
|
85073
|
+
const minTop = vp.top;
|
|
85074
|
+
const maxLeft = vp.right - width2;
|
|
85075
|
+
const maxTop = vp.bottom - height;
|
|
85076
|
+
const nextLeft = Math.max(minLeft, Math.min(maxLeft, this.pos.left));
|
|
85077
|
+
const nextTop = Math.max(minTop, Math.min(maxTop, this.pos.top));
|
|
84392
85078
|
if (width2 !== rect.width || height !== rect.height) {
|
|
84393
85079
|
this.panelSize = { width: width2, height };
|
|
84394
85080
|
}
|
|
@@ -84417,26 +85103,27 @@ const _sfc_main$4 = {
|
|
|
84417
85103
|
const dx = e2.clientX - this.resizeStart.x;
|
|
84418
85104
|
const dy = e2.clientY - this.resizeStart.y;
|
|
84419
85105
|
const start = this.resizeStart;
|
|
84420
|
-
const
|
|
84421
|
-
const
|
|
85106
|
+
const vp = this.getViewportRect();
|
|
85107
|
+
const ww = vp.width;
|
|
85108
|
+
const wh = vp.height;
|
|
84422
85109
|
const minW = 200;
|
|
84423
85110
|
const minH = 150;
|
|
84424
|
-
const rightEdge = Math.min(start.l + start.w,
|
|
85111
|
+
const rightEdge = Math.min(start.l + start.w, vp.right);
|
|
84425
85112
|
let newW = start.w;
|
|
84426
85113
|
let newH = start.h;
|
|
84427
85114
|
let newL = start.l;
|
|
84428
85115
|
if (this.resizeDir.includes("left")) {
|
|
84429
85116
|
const targetL = start.l + dx;
|
|
84430
|
-
const clampedL = Math.max(
|
|
85117
|
+
const clampedL = Math.max(vp.left, Math.min(targetL, rightEdge - minW));
|
|
84431
85118
|
newL = clampedL;
|
|
84432
85119
|
newW = rightEdge - clampedL;
|
|
84433
85120
|
}
|
|
84434
85121
|
if (this.resizeDir.includes("right")) {
|
|
84435
|
-
const maxW = Math.max(minW,
|
|
85122
|
+
const maxW = Math.max(minW, vp.right - start.l);
|
|
84436
85123
|
newW = Math.min(Math.max(minW, start.w + dx), maxW);
|
|
84437
85124
|
}
|
|
84438
85125
|
if (this.resizeDir.includes("bottom")) {
|
|
84439
|
-
const maxH = Math.max(minH,
|
|
85126
|
+
const maxH = Math.max(minH, vp.bottom - start.t);
|
|
84440
85127
|
newH = Math.min(Math.max(minH, start.h + dy), maxH);
|
|
84441
85128
|
}
|
|
84442
85129
|
this.panelSize = { width: newW, height: newH };
|
|
@@ -84487,12 +85174,12 @@ var __component__$4 = /* @__PURE__ */ normalizeComponent(
|
|
|
84487
85174
|
_sfc_staticRenderFns$4,
|
|
84488
85175
|
false,
|
|
84489
85176
|
null,
|
|
84490
|
-
"
|
|
85177
|
+
"fe7421b7",
|
|
84491
85178
|
null,
|
|
84492
85179
|
null
|
|
84493
85180
|
);
|
|
84494
85181
|
const HistoryPanel = __component__$4.exports;
|
|
84495
|
-
const
|
|
85182
|
+
const DesignerOverview_vue_vue_type_style_index_0_scoped_25bd53f7_lang = "";
|
|
84496
85183
|
const _sfc_main$3 = {
|
|
84497
85184
|
name: "DesignerOverview",
|
|
84498
85185
|
props: {
|
|
@@ -84507,6 +85194,9 @@ const _sfc_main$3 = {
|
|
|
84507
85194
|
emptyCanvasText: { type: String, default: "暂无画布内容" },
|
|
84508
85195
|
unavailableText: { type: String, default: "概览图暂时不可用" }
|
|
84509
85196
|
},
|
|
85197
|
+
inject: {
|
|
85198
|
+
vgPrintGetViewportRect: { default: null }
|
|
85199
|
+
},
|
|
84510
85200
|
data() {
|
|
84511
85201
|
return {
|
|
84512
85202
|
collapsed: false,
|
|
@@ -84519,6 +85209,8 @@ const _sfc_main$3 = {
|
|
|
84519
85209
|
contentEl: null,
|
|
84520
85210
|
mutationObserver: null,
|
|
84521
85211
|
resizeObserver: null,
|
|
85212
|
+
hostResizeObserver: null,
|
|
85213
|
+
hostResizeRaf: 0,
|
|
84522
85214
|
renderTimer: null,
|
|
84523
85215
|
rafId: 0,
|
|
84524
85216
|
retryTimer: null,
|
|
@@ -84527,8 +85219,16 @@ const _sfc_main$3 = {
|
|
|
84527
85219
|
},
|
|
84528
85220
|
computed: {
|
|
84529
85221
|
panelStyle() {
|
|
84530
|
-
|
|
84531
|
-
|
|
85222
|
+
const vp = this.getViewportRect ? this.getViewportRect() : null;
|
|
85223
|
+
if (!this.pos) {
|
|
85224
|
+
const viewportH = window.innerHeight || document.documentElement.clientHeight || 0;
|
|
85225
|
+
const left = vp && typeof vp.left === "number" ? vp.left + 1 : 1;
|
|
85226
|
+
const bottom = vp && typeof vp.bottom === "number" ? Math.max(0, viewportH - vp.bottom) + 10 : 10;
|
|
85227
|
+
return {
|
|
85228
|
+
left: `${left}px`,
|
|
85229
|
+
bottom: `${bottom}px`
|
|
85230
|
+
};
|
|
85231
|
+
}
|
|
84532
85232
|
return {
|
|
84533
85233
|
left: `${this.pos.left}px`,
|
|
84534
85234
|
top: `${this.pos.top}px`,
|
|
@@ -84570,16 +85270,81 @@ const _sfc_main$3 = {
|
|
|
84570
85270
|
window.addEventListener("resize", this.onWindowResize);
|
|
84571
85271
|
if (this.visible)
|
|
84572
85272
|
this.bindObservers();
|
|
85273
|
+
this.$nextTick(() => {
|
|
85274
|
+
try {
|
|
85275
|
+
this.setupHostResizeObserver();
|
|
85276
|
+
} catch (_2) {
|
|
85277
|
+
}
|
|
85278
|
+
});
|
|
84573
85279
|
},
|
|
84574
85280
|
beforeDestroy() {
|
|
84575
85281
|
this.onDragEnd();
|
|
84576
85282
|
this.clearTimers();
|
|
84577
85283
|
this.unbindObservers();
|
|
84578
85284
|
window.removeEventListener("resize", this.onWindowResize);
|
|
85285
|
+
try {
|
|
85286
|
+
this.teardownHostResizeObserver();
|
|
85287
|
+
} catch (_2) {
|
|
85288
|
+
}
|
|
84579
85289
|
},
|
|
84580
85290
|
methods: {
|
|
85291
|
+
getViewportRect() {
|
|
85292
|
+
try {
|
|
85293
|
+
const injected = this.vgPrintGetViewportRect;
|
|
85294
|
+
const rect = typeof injected === "function" ? injected() : null;
|
|
85295
|
+
if (rect && rect.width && rect.height)
|
|
85296
|
+
return rect;
|
|
85297
|
+
} catch (_2) {
|
|
85298
|
+
}
|
|
85299
|
+
const w2 = window.innerWidth || document.documentElement.clientWidth || 0;
|
|
85300
|
+
const h2 = window.innerHeight || document.documentElement.clientHeight || 0;
|
|
85301
|
+
return { left: 0, top: 0, width: w2, height: h2, right: w2, bottom: h2 };
|
|
85302
|
+
},
|
|
85303
|
+
setupHostResizeObserver() {
|
|
85304
|
+
const root2 = this.$refs.rootRef;
|
|
85305
|
+
const host = root2 && root2.closest ? root2.closest(".vg-designer-root") : null;
|
|
85306
|
+
if (!host)
|
|
85307
|
+
return;
|
|
85308
|
+
if (this.hostResizeObserver && this.hostResizeObserver.__targetEl === host)
|
|
85309
|
+
return;
|
|
85310
|
+
try {
|
|
85311
|
+
this.teardownHostResizeObserver();
|
|
85312
|
+
} catch (_2) {
|
|
85313
|
+
}
|
|
85314
|
+
const RO = typeof ResizeObserver !== "undefined" ? ResizeObserver : null;
|
|
85315
|
+
if (!RO)
|
|
85316
|
+
return;
|
|
85317
|
+
const onResize = () => {
|
|
85318
|
+
if (this.hostResizeRaf)
|
|
85319
|
+
cancelAnimationFrame(this.hostResizeRaf);
|
|
85320
|
+
this.hostResizeRaf = requestAnimationFrame(() => {
|
|
85321
|
+
this.hostResizeRaf = 0;
|
|
85322
|
+
try {
|
|
85323
|
+
this.onWindowResize();
|
|
85324
|
+
} catch (_2) {
|
|
85325
|
+
}
|
|
85326
|
+
});
|
|
85327
|
+
};
|
|
85328
|
+
const ro2 = new RO(onResize);
|
|
85329
|
+
ro2.__targetEl = host;
|
|
85330
|
+
ro2.observe(host);
|
|
85331
|
+
this.hostResizeObserver = ro2;
|
|
85332
|
+
},
|
|
85333
|
+
teardownHostResizeObserver() {
|
|
85334
|
+
const ro2 = this.hostResizeObserver;
|
|
85335
|
+
this.hostResizeObserver = null;
|
|
85336
|
+
if (this.hostResizeRaf) {
|
|
85337
|
+
cancelAnimationFrame(this.hostResizeRaf);
|
|
85338
|
+
this.hostResizeRaf = 0;
|
|
85339
|
+
}
|
|
85340
|
+
try {
|
|
85341
|
+
ro2 && ro2.disconnect && ro2.disconnect();
|
|
85342
|
+
} catch (_2) {
|
|
85343
|
+
}
|
|
85344
|
+
},
|
|
84581
85345
|
isMobileViewport() {
|
|
84582
|
-
|
|
85346
|
+
const vp = this.getViewportRect();
|
|
85347
|
+
return (vp && vp.width ? vp.width : 0) <= 768;
|
|
84583
85348
|
},
|
|
84584
85349
|
getRootRect() {
|
|
84585
85350
|
const root2 = this.$refs.rootRef;
|
|
@@ -84597,15 +85362,18 @@ const _sfc_main$3 = {
|
|
|
84597
85362
|
if (this.isMobileViewport() || !this.pos)
|
|
84598
85363
|
return;
|
|
84599
85364
|
const rect = this.getRootRect();
|
|
84600
|
-
const
|
|
84601
|
-
const
|
|
85365
|
+
const vp = this.getViewportRect();
|
|
85366
|
+
const ww = vp.width || 0;
|
|
85367
|
+
const wh = vp.height || 0;
|
|
84602
85368
|
if (!ww || !wh)
|
|
84603
85369
|
return;
|
|
84604
|
-
const
|
|
84605
|
-
const
|
|
85370
|
+
const minLeft = vp.left;
|
|
85371
|
+
const minTop = vp.top;
|
|
85372
|
+
const maxLeft = vp.right - rect.width;
|
|
85373
|
+
const maxTop = vp.bottom - rect.height;
|
|
84606
85374
|
this.pos = {
|
|
84607
|
-
left: Math.max(
|
|
84608
|
-
top: Math.max(
|
|
85375
|
+
left: Math.max(minLeft, Math.min(maxLeft, this.pos.left)),
|
|
85376
|
+
top: Math.max(minTop, Math.min(maxTop, this.pos.top))
|
|
84609
85377
|
};
|
|
84610
85378
|
},
|
|
84611
85379
|
syncPositionFromRect() {
|
|
@@ -84639,13 +85407,16 @@ const _sfc_main$3 = {
|
|
|
84639
85407
|
if (!this.dragging || this.isMobileViewport())
|
|
84640
85408
|
return;
|
|
84641
85409
|
const rect = this.getRootRect();
|
|
84642
|
-
const
|
|
84643
|
-
const
|
|
84644
|
-
const
|
|
84645
|
-
const
|
|
85410
|
+
const vp = this.getViewportRect();
|
|
85411
|
+
const ww = vp.width || 0;
|
|
85412
|
+
const wh = vp.height || 0;
|
|
85413
|
+
const minLeft = vp.left;
|
|
85414
|
+
const minTop = vp.top;
|
|
85415
|
+
const maxLeft = vp.right - rect.width;
|
|
85416
|
+
const maxTop = vp.bottom - rect.height;
|
|
84646
85417
|
this.pos = {
|
|
84647
|
-
left: Math.max(
|
|
84648
|
-
top: Math.max(
|
|
85418
|
+
left: Math.max(minLeft, Math.min(maxLeft, e2.clientX - this.dragOffset.x)),
|
|
85419
|
+
top: Math.max(minTop, Math.min(maxTop, e2.clientY - this.dragOffset.y))
|
|
84649
85420
|
};
|
|
84650
85421
|
},
|
|
84651
85422
|
onDragEnd() {
|
|
@@ -84975,7 +85746,7 @@ var __component__$3 = /* @__PURE__ */ normalizeComponent(
|
|
|
84975
85746
|
_sfc_staticRenderFns$3,
|
|
84976
85747
|
false,
|
|
84977
85748
|
null,
|
|
84978
|
-
"
|
|
85749
|
+
"25bd53f7",
|
|
84979
85750
|
null,
|
|
84980
85751
|
null
|
|
84981
85752
|
);
|
|
@@ -86287,7 +87058,8 @@ var __component__$1 = /* @__PURE__ */ normalizeComponent(
|
|
|
86287
87058
|
const DataSourceManager = __component__$1.exports;
|
|
86288
87059
|
const builtinTemplateDefs = [
|
|
86289
87060
|
{ tempId: "local-1", name: "报表表格数据单", desc: "内置模板", template: template1, testData: printData1 },
|
|
86290
|
-
{ tempId: "local-2", name: "默认模版", desc: "内置模板", template: template2, testData: printData2 }
|
|
87061
|
+
{ tempId: "local-2", name: "默认模版", desc: "内置模板", template: template2, testData: printData2 },
|
|
87062
|
+
{ tempId: "local-3", name: "分组序号续编", desc: "内置模板", template: template3, testData: printData3 }
|
|
86291
87063
|
];
|
|
86292
87064
|
const THEME_PRESETS = {
|
|
86293
87065
|
light: { label: "light", colors: { accent: "#580df8", headerBg: "#580df8", headerText: "#ffffff", toolbarBg: "#fbf9ff", panelBg: "#f7f8fc", surfaceBg: "#ffffff", text: "#303133", mutedText: "#606266", border: "rgba(0,0,0,0.08)" } },
|
|
@@ -86360,6 +87132,17 @@ const _sfc_main = {
|
|
|
86360
87132
|
logoHtml: { type: String, default: "" },
|
|
86361
87133
|
title: { type: String, default: "" }
|
|
86362
87134
|
},
|
|
87135
|
+
provide() {
|
|
87136
|
+
return {
|
|
87137
|
+
vgPrintGetViewportRect: () => {
|
|
87138
|
+
try {
|
|
87139
|
+
return this.getVgPrintViewportRect();
|
|
87140
|
+
} catch (_2) {
|
|
87141
|
+
return null;
|
|
87142
|
+
}
|
|
87143
|
+
}
|
|
87144
|
+
};
|
|
87145
|
+
},
|
|
86363
87146
|
data() {
|
|
86364
87147
|
const savedLang = normalizeUiLang(ls.get("language"), "");
|
|
86365
87148
|
const initialLang = savedLang || normalizeUiLang(this.defaultLang || "cn");
|
|
@@ -86453,6 +87236,8 @@ const _sfc_main = {
|
|
|
86453
87236
|
_ctxSuppressDrag: false,
|
|
86454
87237
|
footerHeight: 28,
|
|
86455
87238
|
mainLayoutHeight: 0,
|
|
87239
|
+
_mainLayoutResizeObserver: null,
|
|
87240
|
+
_mainLayoutResizeRaf: 0,
|
|
86456
87241
|
activeThemeKey: "light",
|
|
86457
87242
|
// 右侧属性设置悬浮面板状态
|
|
86458
87243
|
propVisible: true,
|
|
@@ -86468,6 +87253,8 @@ const _sfc_main = {
|
|
|
86468
87253
|
_propDragOffset: { x: 0, y: 0 },
|
|
86469
87254
|
// Property Panel Resizing
|
|
86470
87255
|
propSize: { width: 320, height: null },
|
|
87256
|
+
_propDesiredHeight: 0,
|
|
87257
|
+
_propHeightLocked: false,
|
|
86471
87258
|
propResizing: false,
|
|
86472
87259
|
propResizeDir: "",
|
|
86473
87260
|
propResizeStart: { x: 0, y: 0, w: 0, h: 0, l: 0, t: 0 },
|
|
@@ -86528,12 +87315,26 @@ const _sfc_main = {
|
|
|
86528
87315
|
},
|
|
86529
87316
|
// 悬浮属性面板内联样式:初始使用 right 定位,拖拽后使用 left
|
|
86530
87317
|
propStyle() {
|
|
86531
|
-
const
|
|
87318
|
+
const vp = this.getVgPrintViewportRect ? this.getVgPrintViewportRect() : { left: 0, top: 0, width: 0, height: 0, right: 0, bottom: 0 };
|
|
87319
|
+
const vpLeft = vp && typeof vp.left === "number" ? vp.left : 0;
|
|
87320
|
+
const vpTop = vp && typeof vp.top === "number" ? vp.top : 0;
|
|
87321
|
+
const vpBottom = vp && typeof vp.bottom === "number" ? vp.bottom : vpTop + (vp && vp.height ? vp.height : 0);
|
|
87322
|
+
const overlayTop = typeof this.getOverlayBaseTop === "function" ? this.getOverlayBaseTop() : 76;
|
|
87323
|
+
const defaultTop = vpTop + overlayTop;
|
|
87324
|
+
const topNum = this.propPos && typeof this.propPos.top === "number" ? this.propPos.top : defaultTop;
|
|
87325
|
+
const defaultLeft = vpLeft + 10;
|
|
86532
87326
|
const isLeftNum = this.propPos && typeof this.propPos.left === "number";
|
|
86533
|
-
const
|
|
87327
|
+
const leftNum = isLeftNum ? this.propPos.left : defaultLeft;
|
|
86534
87328
|
const width2 = this.propSize && this.propSize.width ? `${this.propSize.width}px` : "320px";
|
|
86535
|
-
const
|
|
86536
|
-
|
|
87329
|
+
const bottomGap = 24;
|
|
87330
|
+
const maxHNum = Math.max(120, vpBottom - bottomGap - defaultTop);
|
|
87331
|
+
const maxHeight = `${maxHNum}px`;
|
|
87332
|
+
const desiredHeight = this.getPropDesiredHeight(vp, overlayTop, bottomGap);
|
|
87333
|
+
let heightNum = desiredHeight;
|
|
87334
|
+
if (this.propSize && typeof this.propSize.height === "number" && this.propSize.height > 0)
|
|
87335
|
+
heightNum = Math.min(this.propSize.height, maxHNum);
|
|
87336
|
+
const height = `${heightNum}px`;
|
|
87337
|
+
return { top: `${topNum}px`, left: `${leftNum}px`, width: width2, height, maxHeight };
|
|
86537
87338
|
},
|
|
86538
87339
|
leftSiderCardStyle() {
|
|
86539
87340
|
const height = this.leftSiderCardHeight > 0 ? `${this.leftSiderCardHeight}px` : "90vh";
|
|
@@ -86706,12 +87507,14 @@ const _sfc_main = {
|
|
|
86706
87507
|
this.$nextTick(() => {
|
|
86707
87508
|
try {
|
|
86708
87509
|
this.syncMainLayoutHeight();
|
|
87510
|
+
this.setupMainLayoutResizeObserver();
|
|
86709
87511
|
if (!this.isMobile)
|
|
86710
87512
|
this.placeDefaultProp();
|
|
86711
87513
|
} catch (_2) {
|
|
86712
87514
|
}
|
|
86713
87515
|
});
|
|
86714
87516
|
window.addEventListener("resize", this.checkMobile);
|
|
87517
|
+
window.addEventListener("resize", this.syncMainLayoutHeight);
|
|
86715
87518
|
document.addEventListener("mousedown", this.onGlobalMouseDown, true);
|
|
86716
87519
|
document.addEventListener("scroll", this.closeCtxMenu, true);
|
|
86717
87520
|
this.templateList = builtinTemplateDefs.slice();
|
|
@@ -86851,9 +87654,29 @@ const _sfc_main = {
|
|
|
86851
87654
|
});
|
|
86852
87655
|
}
|
|
86853
87656
|
},
|
|
87657
|
+
activated() {
|
|
87658
|
+
this.$nextTick(() => {
|
|
87659
|
+
try {
|
|
87660
|
+
this.syncMainLayoutHeight();
|
|
87661
|
+
this.setupMainLayoutResizeObserver();
|
|
87662
|
+
} catch (_2) {
|
|
87663
|
+
}
|
|
87664
|
+
});
|
|
87665
|
+
},
|
|
87666
|
+
deactivated() {
|
|
87667
|
+
try {
|
|
87668
|
+
this.teardownMainLayoutResizeObserver();
|
|
87669
|
+
} catch (_2) {
|
|
87670
|
+
}
|
|
87671
|
+
},
|
|
86854
87672
|
beforeDestroy() {
|
|
87673
|
+
try {
|
|
87674
|
+
this.teardownMainLayoutResizeObserver();
|
|
87675
|
+
} catch (_2) {
|
|
87676
|
+
}
|
|
86855
87677
|
window.removeEventListener("keydown", this.onKeydown);
|
|
86856
87678
|
window.removeEventListener("resize", this.checkMobile);
|
|
87679
|
+
window.removeEventListener("resize", this.syncMainLayoutHeight);
|
|
86857
87680
|
document.removeEventListener("mousemove", this._onPaginationMoveSimple);
|
|
86858
87681
|
document.removeEventListener("mousedown", this.onGlobalMouseDown, true);
|
|
86859
87682
|
document.removeEventListener("pointerdown", this.onDocPointerDownCapture, true);
|
|
@@ -86874,6 +87697,17 @@ const _sfc_main = {
|
|
|
86874
87697
|
} catch (_2) {
|
|
86875
87698
|
}
|
|
86876
87699
|
},
|
|
87700
|
+
beforeRouteLeave(to2, from, next) {
|
|
87701
|
+
try {
|
|
87702
|
+
this.teardownMainLayoutResizeObserver();
|
|
87703
|
+
} catch (_2) {
|
|
87704
|
+
}
|
|
87705
|
+
try {
|
|
87706
|
+
this.$ls && this.$ls.remove && this.$ls.remove("KEY_TEMPLATE_TASKS");
|
|
87707
|
+
} catch (_2) {
|
|
87708
|
+
}
|
|
87709
|
+
next();
|
|
87710
|
+
},
|
|
86877
87711
|
methods: {
|
|
86878
87712
|
tm(key, fallback, params) {
|
|
86879
87713
|
try {
|
|
@@ -87111,19 +87945,136 @@ const _sfc_main = {
|
|
|
87111
87945
|
} catch (_2) {
|
|
87112
87946
|
}
|
|
87113
87947
|
},
|
|
87948
|
+
getOverlayBaseTop() {
|
|
87949
|
+
try {
|
|
87950
|
+
let h2 = 0;
|
|
87951
|
+
if (this.showOpt && this.showOpt.showHeader && this.$refs && this.$refs.headerWrapRef) {
|
|
87952
|
+
h2 += this.$refs.headerWrapRef.offsetHeight || 0;
|
|
87953
|
+
}
|
|
87954
|
+
if (this.showOpt && this.showOpt.showToolbar && this.$refs && this.$refs.toolbarWrapRef) {
|
|
87955
|
+
h2 += this.$refs.toolbarWrapRef.offsetHeight || 0;
|
|
87956
|
+
}
|
|
87957
|
+
if (!h2)
|
|
87958
|
+
return 76;
|
|
87959
|
+
return h2 + 8;
|
|
87960
|
+
} catch (_2) {
|
|
87961
|
+
return 76;
|
|
87962
|
+
}
|
|
87963
|
+
},
|
|
87964
|
+
getPropDesiredHeight(vp, overlayTop, bottomGap) {
|
|
87965
|
+
const minH = 120;
|
|
87966
|
+
const vpTop = vp && typeof vp.top === "number" ? vp.top : 0;
|
|
87967
|
+
const vpBottom = vp && typeof vp.bottom === "number" ? vp.bottom : vpTop + (vp && vp.height ? vp.height : 0);
|
|
87968
|
+
const baseMaxH = Math.max(minH, vpBottom - bottomGap - (vpTop + overlayTop));
|
|
87969
|
+
const defaultHeight = Math.min(600, baseMaxH);
|
|
87970
|
+
if (this._propHeightLocked) {
|
|
87971
|
+
const locked = this._propDesiredHeight && this._propDesiredHeight > 0 ? this._propDesiredHeight : this.propSize && this.propSize.height ? this.propSize.height : defaultHeight;
|
|
87972
|
+
return Math.max(minH, Math.min(locked, baseMaxH));
|
|
87973
|
+
}
|
|
87974
|
+
if (this._propDesiredHeight && this._propDesiredHeight > 0)
|
|
87975
|
+
return Math.max(minH, Math.min(this._propDesiredHeight, baseMaxH));
|
|
87976
|
+
this._propDesiredHeight = defaultHeight;
|
|
87977
|
+
return defaultHeight;
|
|
87978
|
+
},
|
|
87979
|
+
getVgPrintViewportRect() {
|
|
87980
|
+
try {
|
|
87981
|
+
const el2 = this.$refs && this.$refs.pageWrapRef ? this.$refs.pageWrapRef : null;
|
|
87982
|
+
if (el2 && el2.getBoundingClientRect) {
|
|
87983
|
+
const r2 = el2.getBoundingClientRect();
|
|
87984
|
+
if (r2 && r2.width && r2.height) {
|
|
87985
|
+
const left = Number(r2.left) || 0;
|
|
87986
|
+
const top = Number(r2.top) || 0;
|
|
87987
|
+
const width2 = Number(r2.width) || 0;
|
|
87988
|
+
const height = Number(r2.height) || 0;
|
|
87989
|
+
const right = Number(r2.right) || left + width2;
|
|
87990
|
+
const bottom = Number(r2.bottom) || top + height;
|
|
87991
|
+
return { left, top, width: width2, height, right, bottom };
|
|
87992
|
+
}
|
|
87993
|
+
}
|
|
87994
|
+
} catch (_2) {
|
|
87995
|
+
}
|
|
87996
|
+
const w2 = document && document.documentElement && document.documentElement.clientWidth ? document.documentElement.clientWidth : window.innerWidth || 0;
|
|
87997
|
+
const h2 = document && document.documentElement && document.documentElement.clientHeight ? document.documentElement.clientHeight : window.innerHeight || 0;
|
|
87998
|
+
return { left: 0, top: 0, width: w2, height: h2, right: w2, bottom: h2 };
|
|
87999
|
+
},
|
|
88000
|
+
resolveMainLayoutHostEl() {
|
|
88001
|
+
try {
|
|
88002
|
+
const wrap = this.$refs && this.$refs.pageWrapRef ? this.$refs.pageWrapRef : null;
|
|
88003
|
+
let el2 = wrap && wrap.parentElement ? wrap.parentElement : null;
|
|
88004
|
+
while (el2 && el2 !== document.body && el2 !== document.documentElement) {
|
|
88005
|
+
const style2 = window && window.getComputedStyle ? window.getComputedStyle(el2) : null;
|
|
88006
|
+
const overflowY = style2 ? String(style2.overflowY || "") : "";
|
|
88007
|
+
const overflow2 = style2 ? String(style2.overflow || "") : "";
|
|
88008
|
+
const isOverflowCtl = ["auto", "scroll", "hidden"].includes(overflowY) || ["auto", "scroll", "hidden"].includes(overflow2);
|
|
88009
|
+
const hasInlineHeight = !!(el2 && el2.style && (el2.style.height || el2.style.maxHeight));
|
|
88010
|
+
if (isOverflowCtl || hasInlineHeight)
|
|
88011
|
+
return el2;
|
|
88012
|
+
el2 = el2.parentElement;
|
|
88013
|
+
}
|
|
88014
|
+
return null;
|
|
88015
|
+
} catch (_2) {
|
|
88016
|
+
return null;
|
|
88017
|
+
}
|
|
88018
|
+
},
|
|
87114
88019
|
syncMainLayoutHeight() {
|
|
87115
88020
|
try {
|
|
87116
|
-
const
|
|
87117
|
-
|
|
88021
|
+
const host = this.resolveMainLayoutHostEl();
|
|
88022
|
+
const rectH = host && host.getBoundingClientRect ? host.getBoundingClientRect().height || 0 : 0;
|
|
88023
|
+
const viewportH = document && document.documentElement && document.documentElement.clientHeight ? document.documentElement.clientHeight : window.innerHeight || 0;
|
|
88024
|
+
const containerH = rectH > 0 ? rectH : viewportH || 0;
|
|
88025
|
+
if (containerH <= 0)
|
|
87118
88026
|
return;
|
|
87119
88027
|
const headerH = this.showOpt.showHeader && this.$refs.headerWrapRef ? this.$refs.headerWrapRef.offsetHeight || 0 : 0;
|
|
87120
88028
|
const toolbarH = this.showOpt.showToolbar && this.$refs.toolbarWrapRef ? this.$refs.toolbarWrapRef.offsetHeight || 0 : 0;
|
|
87121
|
-
const nextHeight = Math.max(240,
|
|
88029
|
+
const nextHeight = Math.max(240, Math.floor(containerH - headerH - toolbarH));
|
|
87122
88030
|
if (nextHeight !== this.mainLayoutHeight)
|
|
87123
88031
|
this.mainLayoutHeight = nextHeight;
|
|
87124
88032
|
} catch (_2) {
|
|
87125
88033
|
}
|
|
87126
88034
|
},
|
|
88035
|
+
setupMainLayoutResizeObserver() {
|
|
88036
|
+
const wrap = this.$refs && this.$refs.pageWrapRef ? this.$refs.pageWrapRef : null;
|
|
88037
|
+
const host = this.resolveMainLayoutHostEl();
|
|
88038
|
+
const target = host || wrap;
|
|
88039
|
+
if (!target)
|
|
88040
|
+
return;
|
|
88041
|
+
if (this._mainLayoutResizeObserver && this._mainLayoutResizeObserver.__targetEl === target)
|
|
88042
|
+
return;
|
|
88043
|
+
try {
|
|
88044
|
+
this.teardownMainLayoutResizeObserver();
|
|
88045
|
+
} catch (_2) {
|
|
88046
|
+
}
|
|
88047
|
+
const RO = typeof ResizeObserver !== "undefined" ? ResizeObserver : null;
|
|
88048
|
+
if (!RO)
|
|
88049
|
+
return;
|
|
88050
|
+
const onResize = () => {
|
|
88051
|
+
if (this._mainLayoutResizeRaf)
|
|
88052
|
+
cancelAnimationFrame(this._mainLayoutResizeRaf);
|
|
88053
|
+
this._mainLayoutResizeRaf = requestAnimationFrame(() => {
|
|
88054
|
+
this._mainLayoutResizeRaf = 0;
|
|
88055
|
+
try {
|
|
88056
|
+
this.syncMainLayoutHeight();
|
|
88057
|
+
} catch (_2) {
|
|
88058
|
+
}
|
|
88059
|
+
});
|
|
88060
|
+
};
|
|
88061
|
+
const ro2 = new RO(onResize);
|
|
88062
|
+
ro2.__targetEl = target;
|
|
88063
|
+
ro2.observe(target);
|
|
88064
|
+
this._mainLayoutResizeObserver = ro2;
|
|
88065
|
+
},
|
|
88066
|
+
teardownMainLayoutResizeObserver() {
|
|
88067
|
+
const ro2 = this._mainLayoutResizeObserver;
|
|
88068
|
+
this._mainLayoutResizeObserver = null;
|
|
88069
|
+
if (this._mainLayoutResizeRaf) {
|
|
88070
|
+
cancelAnimationFrame(this._mainLayoutResizeRaf);
|
|
88071
|
+
this._mainLayoutResizeRaf = 0;
|
|
88072
|
+
}
|
|
88073
|
+
try {
|
|
88074
|
+
ro2 && ro2.disconnect && ro2.disconnect();
|
|
88075
|
+
} catch (_2) {
|
|
88076
|
+
}
|
|
88077
|
+
},
|
|
87127
88078
|
getDataSourceStorageKey() {
|
|
87128
88079
|
return "KEY_VG_DATASOURCES";
|
|
87129
88080
|
},
|
|
@@ -87624,13 +88575,14 @@ const _sfc_main = {
|
|
|
87624
88575
|
if (!el2)
|
|
87625
88576
|
return;
|
|
87626
88577
|
const rect = el2.getBoundingClientRect();
|
|
87627
|
-
const
|
|
87628
|
-
const
|
|
88578
|
+
const vp = this.getVgPrintViewportRect();
|
|
88579
|
+
const ww = vp && vp.width ? vp.width : 0;
|
|
88580
|
+
const wh = vp && vp.height ? vp.height : 0;
|
|
87629
88581
|
if (!ww || !wh)
|
|
87630
88582
|
return;
|
|
87631
88583
|
const padding = 8;
|
|
87632
|
-
const nx = Math.max(padding, Math.min(
|
|
87633
|
-
const ny = Math.max(padding, Math.min(
|
|
88584
|
+
const nx = Math.max(vp.left + padding, Math.min(vp.right - rect.width - padding, this.ctxMenuPos.x));
|
|
88585
|
+
const ny = Math.max(vp.top + padding, Math.min(vp.bottom - rect.height - padding, this.ctxMenuPos.y));
|
|
87634
88586
|
this.ctxMenuPos = { x: nx, y: ny };
|
|
87635
88587
|
} catch (_2) {
|
|
87636
88588
|
}
|
|
@@ -88225,14 +89177,16 @@ const _sfc_main = {
|
|
|
88225
89177
|
placeDefaultProp(skipMark) {
|
|
88226
89178
|
if (this.isMobile || !this.propVisible)
|
|
88227
89179
|
return;
|
|
88228
|
-
const
|
|
88229
|
-
const
|
|
89180
|
+
const vp = this.getVgPrintViewportRect();
|
|
89181
|
+
const ww = vp && vp.width ? vp.width : 0;
|
|
89182
|
+
const wh = vp && vp.height ? vp.height : 0;
|
|
88230
89183
|
if (!ww || !wh)
|
|
88231
89184
|
return;
|
|
88232
89185
|
const padding = 8;
|
|
89186
|
+
const overlayTop = typeof this.getOverlayBaseTop === "function" ? this.getOverlayBaseTop() : 76;
|
|
88233
89187
|
const w2 = this.propSize && this.propSize.width ? this.propSize.width : 320;
|
|
88234
|
-
const left = Math.max(padding, Math.min(ww - w2 - padding, ww - w2 - 10));
|
|
88235
|
-
const top =
|
|
89188
|
+
const left = vp.left + Math.max(padding, Math.min(ww - w2 - padding, ww - w2 - 10));
|
|
89189
|
+
const top = vp.top + overlayTop;
|
|
88236
89190
|
this.propPos = { top, left };
|
|
88237
89191
|
if (!skipMark)
|
|
88238
89192
|
this.propUserPlaced = false;
|
|
@@ -88245,15 +89199,18 @@ const _sfc_main = {
|
|
|
88245
89199
|
if (!el2)
|
|
88246
89200
|
return;
|
|
88247
89201
|
const rect = el2.getBoundingClientRect();
|
|
88248
|
-
const
|
|
88249
|
-
const
|
|
89202
|
+
const vp = this.getVgPrintViewportRect();
|
|
89203
|
+
const ww = vp && vp.width ? vp.width : 0;
|
|
89204
|
+
const wh = vp && vp.height ? vp.height : 0;
|
|
88250
89205
|
if (!ww || !wh)
|
|
88251
89206
|
return;
|
|
88252
89207
|
const padding = 8;
|
|
89208
|
+
const bottomGap = 24;
|
|
89209
|
+
const overlayTop = typeof this.getOverlayBaseTop === "function" ? this.getOverlayBaseTop() : 76;
|
|
88253
89210
|
let width2 = rect.width;
|
|
88254
89211
|
let height = rect.height;
|
|
88255
89212
|
const maxW = Math.max(200, ww - padding * 2);
|
|
88256
|
-
const maxH = Math.max(120,
|
|
89213
|
+
const maxH = Math.max(120, vp.bottom - bottomGap - (vp.top + overlayTop) - padding * 2);
|
|
88257
89214
|
if (width2 > maxW)
|
|
88258
89215
|
width2 = maxW;
|
|
88259
89216
|
if (height > maxH)
|
|
@@ -88262,10 +89219,12 @@ const _sfc_main = {
|
|
|
88262
89219
|
this.propSize.width = width2;
|
|
88263
89220
|
if (this.propSize.height != null && height !== rect.height)
|
|
88264
89221
|
this.propSize.height = height;
|
|
88265
|
-
const
|
|
88266
|
-
const
|
|
88267
|
-
const
|
|
88268
|
-
const
|
|
89222
|
+
const minLeft = vp.left + padding;
|
|
89223
|
+
const minTop = vp.top + overlayTop;
|
|
89224
|
+
const maxLeft = vp.right - width2 - padding;
|
|
89225
|
+
const maxTop = vp.bottom - bottomGap - height - padding;
|
|
89226
|
+
const nextLeft = Math.max(minLeft, Math.min(maxLeft, this.propPos.left || 0));
|
|
89227
|
+
const nextTop = Math.max(minTop, Math.min(maxTop, this.propPos.top || 0));
|
|
88269
89228
|
this.propPos = { top: nextTop, left: nextLeft };
|
|
88270
89229
|
},
|
|
88271
89230
|
capturePropDock() {
|
|
@@ -88275,14 +89234,17 @@ const _sfc_main = {
|
|
|
88275
89234
|
if (!el2)
|
|
88276
89235
|
return;
|
|
88277
89236
|
const rect = el2.getBoundingClientRect();
|
|
88278
|
-
const
|
|
88279
|
-
const
|
|
89237
|
+
const vp = this.getVgPrintViewportRect();
|
|
89238
|
+
const ww = vp && vp.width ? vp.width : 0;
|
|
89239
|
+
const wh = vp && vp.height ? vp.height : 0;
|
|
88280
89240
|
if (!ww || !wh)
|
|
88281
89241
|
return;
|
|
88282
|
-
const
|
|
88283
|
-
const
|
|
88284
|
-
const
|
|
88285
|
-
const
|
|
89242
|
+
const bottomGap = 24;
|
|
89243
|
+
const overlayTop = typeof this.getOverlayBaseTop === "function" ? this.getOverlayBaseTop() : 76;
|
|
89244
|
+
const leftDist = Math.max(0, rect.left - vp.left);
|
|
89245
|
+
const rightDist = Math.max(0, vp.right - rect.right);
|
|
89246
|
+
const topDist = Math.max(0, rect.top - (vp.top + overlayTop));
|
|
89247
|
+
const bottomDist = Math.max(0, vp.bottom - bottomGap - rect.bottom);
|
|
88286
89248
|
const xMode = leftDist <= rightDist ? "left" : "right";
|
|
88287
89249
|
const yMode = topDist <= bottomDist ? "top" : "bottom";
|
|
88288
89250
|
const x2 = xMode === "right" ? rightDist : leftDist;
|
|
@@ -88297,19 +89259,22 @@ const _sfc_main = {
|
|
|
88297
89259
|
if (!el2)
|
|
88298
89260
|
return;
|
|
88299
89261
|
const rect = el2.getBoundingClientRect();
|
|
88300
|
-
const
|
|
88301
|
-
const
|
|
89262
|
+
const vp = this.getVgPrintViewportRect();
|
|
89263
|
+
const ww = vp && vp.width ? vp.width : 0;
|
|
89264
|
+
const wh = vp && vp.height ? vp.height : 0;
|
|
88302
89265
|
if (!ww || !wh)
|
|
88303
89266
|
return;
|
|
88304
89267
|
const padding = 8;
|
|
89268
|
+
const bottomGap = 24;
|
|
89269
|
+
const overlayTop = typeof this.getOverlayBaseTop === "function" ? this.getOverlayBaseTop() : 76;
|
|
88305
89270
|
const xMode = this._propDock && this._propDock.xMode ? this._propDock.xMode : "right";
|
|
88306
89271
|
const yMode = this._propDock && this._propDock.yMode ? this._propDock.yMode : "top";
|
|
88307
89272
|
const x2 = this._propDock && typeof this._propDock.x === "number" ? this._propDock.x : 10;
|
|
88308
89273
|
const y2 = this._propDock && typeof this._propDock.y === "number" ? this._propDock.y : 76;
|
|
88309
|
-
const desiredLeft = xMode === "right" ?
|
|
88310
|
-
const desiredTop = yMode === "bottom" ?
|
|
88311
|
-
const left = Math.max(padding, Math.min(
|
|
88312
|
-
const top = Math.max(
|
|
89274
|
+
const desiredLeft = xMode === "right" ? vp.right - rect.width - x2 : vp.left + x2;
|
|
89275
|
+
const desiredTop = yMode === "bottom" ? vp.bottom - bottomGap - rect.height - y2 : vp.top + overlayTop + y2;
|
|
89276
|
+
const left = Math.max(vp.left + padding, Math.min(vp.right - rect.width - padding, desiredLeft));
|
|
89277
|
+
const top = Math.max(vp.top + overlayTop, Math.min(vp.bottom - bottomGap - rect.height - padding, desiredTop));
|
|
88313
89278
|
this.propPos = { top, left };
|
|
88314
89279
|
this.clampPropToViewport();
|
|
88315
89280
|
},
|
|
@@ -88378,15 +89343,35 @@ const _sfc_main = {
|
|
|
88378
89343
|
_onPropMoveSimple(e2) {
|
|
88379
89344
|
if (!this._propDragging)
|
|
88380
89345
|
return;
|
|
89346
|
+
const vp = this.getVgPrintViewportRect();
|
|
88381
89347
|
const nextLeft = e2.clientX - this._propDragOffset.x;
|
|
88382
89348
|
const nextTop = e2.clientY - this._propDragOffset.y;
|
|
88383
|
-
const ww =
|
|
88384
|
-
const wh =
|
|
89349
|
+
const ww = vp && vp.width ? vp.width : 0;
|
|
89350
|
+
const wh = vp && vp.height ? vp.height : 0;
|
|
88385
89351
|
const boxW = this._propBoxSize && this._propBoxSize.width ? this._propBoxSize.width : 320;
|
|
88386
|
-
const
|
|
89352
|
+
const minLeft = vp.left;
|
|
89353
|
+
const bottomGap = 24;
|
|
89354
|
+
const overlayTop = typeof this.getOverlayBaseTop === "function" ? this.getOverlayBaseTop() : 76;
|
|
89355
|
+
const minTop = vp.top + overlayTop;
|
|
89356
|
+
const maxLeft = vp.right - boxW;
|
|
89357
|
+
const minH = 120;
|
|
89358
|
+
const maxTop = vp.bottom - bottomGap - minH;
|
|
89359
|
+
const clampedTop = Math.max(minTop, Math.min(maxTop, nextTop));
|
|
89360
|
+
const desiredHeight = this.getPropDesiredHeight(vp, overlayTop, bottomGap);
|
|
89361
|
+
const availHeight = Math.max(minH, vp.bottom - bottomGap - clampedTop);
|
|
89362
|
+
const height = Math.max(minH, Math.min(desiredHeight, availHeight));
|
|
89363
|
+
if (!this.propSize)
|
|
89364
|
+
this.propSize = {};
|
|
89365
|
+
this.propSize.height = height;
|
|
89366
|
+
this._propBoxSize = { width: boxW, height };
|
|
89367
|
+
const clampedLeft = Math.max(minLeft, Math.min(maxLeft, nextLeft));
|
|
89368
|
+
if (clampedTop !== nextTop)
|
|
89369
|
+
this._propDragOffset.y = e2.clientY - clampedTop;
|
|
89370
|
+
if (clampedLeft !== nextLeft)
|
|
89371
|
+
this._propDragOffset.x = e2.clientX - clampedLeft;
|
|
88387
89372
|
this.propPos = {
|
|
88388
|
-
top:
|
|
88389
|
-
left:
|
|
89373
|
+
top: clampedTop,
|
|
89374
|
+
left: clampedLeft
|
|
88390
89375
|
};
|
|
88391
89376
|
},
|
|
88392
89377
|
// 悬浮属性面板拖拽结束
|
|
@@ -88426,46 +89411,45 @@ const _sfc_main = {
|
|
|
88426
89411
|
return;
|
|
88427
89412
|
const dx = e2.clientX - this.propResizeStart.x;
|
|
88428
89413
|
const dy = e2.clientY - this.propResizeStart.y;
|
|
88429
|
-
|
|
88430
|
-
let newH = this.propResizeStart.h;
|
|
88431
|
-
let newL = this.propResizeStart.l;
|
|
88432
|
-
if (this.propResizeDir === "left") {
|
|
88433
|
-
newW = Math.max(200, this.propResizeStart.w - dx);
|
|
88434
|
-
newL = this.propResizeStart.l + dx;
|
|
88435
|
-
if (newW === 200) {
|
|
88436
|
-
newL = this.propResizeStart.l + (this.propResizeStart.w - 200);
|
|
88437
|
-
}
|
|
88438
|
-
} else if (this.propResizeDir === "right") {
|
|
88439
|
-
newW = Math.max(200, this.propResizeStart.w + dx);
|
|
88440
|
-
} else if (this.propResizeDir === "bottom") {
|
|
88441
|
-
newH = Math.max(100, this.propResizeStart.h + dy);
|
|
88442
|
-
}
|
|
88443
|
-
const ww = window.innerWidth || 0;
|
|
88444
|
-
const wh = window.innerHeight || 0;
|
|
89414
|
+
const vp = this.getVgPrintViewportRect();
|
|
88445
89415
|
const minW = 200;
|
|
88446
89416
|
const minH = 120;
|
|
88447
|
-
const
|
|
88448
|
-
const
|
|
89417
|
+
const bottomGap = 24;
|
|
89418
|
+
const start = this.propResizeStart;
|
|
89419
|
+
const rightEdge = Math.min(start.l + start.w, vp.right);
|
|
89420
|
+
let newW = start.w;
|
|
89421
|
+
let newH = start.h;
|
|
89422
|
+
let newL = start.l;
|
|
88449
89423
|
if (this.propResizeDir === "left") {
|
|
88450
|
-
|
|
88451
|
-
|
|
89424
|
+
const targetL = start.l + dx;
|
|
89425
|
+
const clampedL = Math.max(vp.left, Math.min(targetL, rightEdge - minW));
|
|
89426
|
+
newL = clampedL;
|
|
89427
|
+
newW = rightEdge - clampedL;
|
|
88452
89428
|
this.propPos.left = newL;
|
|
88453
|
-
this.propSize.width =
|
|
89429
|
+
this.propSize.width = newW;
|
|
88454
89430
|
} else if (this.propResizeDir === "right") {
|
|
88455
|
-
const
|
|
88456
|
-
newW = Math.max(minW,
|
|
88457
|
-
this.propSize.width =
|
|
89431
|
+
const maxW = Math.max(minW, vp.right - start.l);
|
|
89432
|
+
newW = Math.min(Math.max(minW, start.w + dx), maxW);
|
|
89433
|
+
this.propSize.width = newW;
|
|
88458
89434
|
} else if (this.propResizeDir === "bottom") {
|
|
88459
|
-
const
|
|
88460
|
-
newH = Math.max(minH,
|
|
88461
|
-
this.propSize.height =
|
|
89435
|
+
const maxH = Math.max(minH, vp.bottom - bottomGap - start.t);
|
|
89436
|
+
newH = Math.min(Math.max(minH, start.h + dy), maxH);
|
|
89437
|
+
this.propSize.height = newH;
|
|
88462
89438
|
}
|
|
89439
|
+
this.clampPropToViewport();
|
|
88463
89440
|
},
|
|
88464
89441
|
// 悬浮属性面板拖拽缩放结束
|
|
88465
89442
|
_onPropResizeUp() {
|
|
88466
89443
|
this.propResizing = false;
|
|
88467
89444
|
document.removeEventListener("mousemove", this._onPropResizeMove);
|
|
88468
89445
|
this.propUserPlaced = true;
|
|
89446
|
+
if (this.propResizeDir === "bottom") {
|
|
89447
|
+
const h2 = this.propSize && typeof this.propSize.height === "number" ? this.propSize.height : 0;
|
|
89448
|
+
if (h2 > 0) {
|
|
89449
|
+
this._propDesiredHeight = h2;
|
|
89450
|
+
this._propHeightLocked = true;
|
|
89451
|
+
}
|
|
89452
|
+
}
|
|
88469
89453
|
},
|
|
88470
89454
|
// 重置分页悬浮位置
|
|
88471
89455
|
resetPaginationFloatingPos() {
|
|
@@ -89193,7 +90177,7 @@ const _sfc_main = {
|
|
|
89193
90177
|
const self2 = this || window;
|
|
89194
90178
|
console.log("tasksPrint self:", self2);
|
|
89195
90179
|
console.log("tasksPrint self._taskCancelRegistry:", self2._taskCancelRegistry);
|
|
89196
|
-
const
|
|
90180
|
+
const printData4 = self2.printDataVar;
|
|
89197
90181
|
const runner2 = new TaskRunner();
|
|
89198
90182
|
runner2.setConcurrency(1);
|
|
89199
90183
|
const task2 = [];
|
|
@@ -89210,7 +90194,7 @@ const _sfc_main = {
|
|
|
89210
90194
|
for (let i3 = 1; i3 <= self2.printCount; i3++) {
|
|
89211
90195
|
const key = `${tasksKey}-task${i3}`;
|
|
89212
90196
|
task2.push((done) => {
|
|
89213
|
-
self2.realPrint(runner2, done, key, i3,
|
|
90197
|
+
self2.realPrint(runner2, done, key, i3, printData4, tasksKey, self2.printCount, cancelToken);
|
|
89214
90198
|
});
|
|
89215
90199
|
}
|
|
89216
90200
|
runner2.addMultiple(task2);
|
|
@@ -90051,11 +91035,11 @@ const _sfc_main = {
|
|
|
90051
91035
|
}
|
|
90052
91036
|
};
|
|
90053
91037
|
const __$_require_efe955b8__ = "data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgFBgcGBQgHBgcJCAgJDBMMDAsLDBgREg4THBgdHRsYGxofIywlHyEqIRobJjQnKi4vMTIxHiU2OjYwOiwwMTD/2wBDAQgJCQwKDBcMDBcwIBsgMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDD/wAARCAMoAvwDASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD3+iiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKA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RRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFGKKKQBRRRQAYoxRRQAUUUUAFFFFABRRRQAUUUUAFGKKKACiiigAooooAKKKKACiiigAooooAKKKKYBiiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACimCVPMMe5d4GduecU+gAooooAKKKKACioxKrOyKw3rjIzyM1IKACiiigAoqOORZFDxsGU8gg5BqSgAopu5f7w/Ojcv94fnQA6ikGD0NMWVGcpuBZQCVzyM0ASUVHvTzdm4b8btuecdOnpUlABRRRQAUUUxJEkZlVgShwQD0oAfRUPnxcfvU5bYPmH3vT6+1TCgAxRQTTC1AD6Kbmk3r6j86AHYopN6+tGQaAHUUxpFRSzsFVRkk8AUqsGAIIIPQigB1FFFABRRRQAUVGkiSbhG4JQ4bBzg1JQAUUUx5ETG9guTgZOM0APoqJZo2JAkQkHBG4cH0qUmgAoqOWWOOPfI6qn95jgVJQAUUZpnmJ/eH50APopu9f7w/OlyD3oAWio2lRGVGYBn4UE8mpB0oAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKK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EXAAGcdz61dooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigD//Z9ysanAAAAAC3naLzhUr4sTBR4eIjr9IW";
|
|
90054
|
-
const
|
|
90055
|
-
const
|
|
91038
|
+
const index_vue_vue_type_style_index_0_scoped_dc7d0df1_lang = "";
|
|
91039
|
+
const index_vue_vue_type_style_index_1_scoped_dc7d0df1_lang = "";
|
|
90056
91040
|
var _sfc_render = function render15() {
|
|
90057
91041
|
var _vm = this, _c = _vm._self._c;
|
|
90058
|
-
return _c("div", { staticClass: "vg-designer-root" }, [_vm.showOpt.showHeader ? _c("div", { ref: "headerWrapRef" }, [_vm._t("header", function() {
|
|
91042
|
+
return _c("div", { ref: "pageWrapRef", staticClass: "vg-designer-root" }, [_vm.showOpt.showHeader ? _c("div", { ref: "headerWrapRef" }, [_vm._t("header", function() {
|
|
90059
91043
|
return [_c("Header", { attrs: { "print-count": _vm.printCount, "printer-name": _vm.printerName, "printerList": _vm.printerList, "languages": _vm.languages, "lang-value": _vm.lang, "logoHtml": _vm.logoHtml, "title": _vm.title }, on: { "update:printCount": function($event) {
|
|
90060
91044
|
_vm.printCount = $event;
|
|
90061
91045
|
}, "update:printerName": function($event) {
|
|
@@ -90226,7 +91210,7 @@ var __component__ = /* @__PURE__ */ normalizeComponent(
|
|
|
90226
91210
|
_sfc_staticRenderFns,
|
|
90227
91211
|
false,
|
|
90228
91212
|
null,
|
|
90229
|
-
"
|
|
91213
|
+
"dc7d0df1",
|
|
90230
91214
|
null,
|
|
90231
91215
|
null
|
|
90232
91216
|
);
|