print-design-myprint 1.0.21 → 1.0.23
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/index.full.js +17 -7
- package/dist/index.full.mjs +17 -5
- package/es/components/preview/preview-panel.vue.mjs +3 -1
- package/es/components/preview/preview-panel.vue.mjs.map +1 -1
- package/es/components/preview/preview-panel.vue2.mjs +8 -2
- package/es/components/preview/preview-panel.vue2.mjs.map +1 -1
- package/es/utils/elementUtil.mjs +3 -1
- package/es/utils/elementUtil.mjs.map +1 -1
- package/es/version.d.ts +1 -1
- package/es/version.mjs +1 -1
- package/es/version.mjs.map +1 -1
- package/lib/components/preview/preview-panel.vue.js +3 -1
- package/lib/components/preview/preview-panel.vue.js.map +1 -1
- package/lib/components/preview/preview-panel.vue2.js +8 -2
- package/lib/components/preview/preview-panel.vue2.js.map +1 -1
- package/lib/utils/elementUtil.js +3 -1
- package/lib/utils/elementUtil.js.map +1 -1
- package/lib/version.d.ts +1 -1
- package/lib/version.js +1 -1
- package/lib/version.js.map +1 -1
- package/package.json +1 -1
package/dist/index.full.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
(function (global, factory) {
|
|
2
|
-
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('vue'), require('pinia'), require('vue-cropper/dist/index.css'), require('/Users/miro/Desktop/project/myprint/packages/design/src/components/design/image/image.vue?vue&type=style&index=0&scoped=923ed041&lang.css'), require('vue3-colorpicker/style.css')) :
|
|
3
|
-
typeof define === 'function' && define.amd ? define(['exports', 'vue', 'pinia', 'vue-cropper/dist/index.css', '/Users/miro/Desktop/project/myprint/packages/design/src/components/design/image/image.vue?vue&type=style&index=0&scoped=923ed041&lang.css', 'vue3-colorpicker/style.css'], factory) :
|
|
2
|
+
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('vue'), require('pinia'), require('vue-cropper/dist/index.css'), require('/Users/miro/Desktop/project/myprint/packages/design/src/components/design/image/image.vue?vue&type=style&index=0&scoped=923ed041&lang.css'), require('/Users/miro/Desktop/project/myprint/packages/design/src/components/preview/preview-panel.vue?vue&type=style&index=0&scoped=db6b136a&lang.css'), require('/Users/miro/Desktop/project/myprint/packages/design/src/components/preview/preview-panel.vue?vue&type=style&index=1&lang.css'), require('vue3-colorpicker/style.css')) :
|
|
3
|
+
typeof define === 'function' && define.amd ? define(['exports', 'vue', 'pinia', 'vue-cropper/dist/index.css', '/Users/miro/Desktop/project/myprint/packages/design/src/components/design/image/image.vue?vue&type=style&index=0&scoped=923ed041&lang.css', '/Users/miro/Desktop/project/myprint/packages/design/src/components/preview/preview-panel.vue?vue&type=style&index=0&scoped=db6b136a&lang.css', '/Users/miro/Desktop/project/myprint/packages/design/src/components/preview/preview-panel.vue?vue&type=style&index=1&lang.css', 'vue3-colorpicker/style.css'], factory) :
|
|
4
4
|
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global.MyPrinterDesign = {}, global.Vue, global.pinia));
|
|
5
5
|
})(this, (function (exports, vue, pinia) { 'use strict';
|
|
6
6
|
|
|
@@ -34716,10 +34716,13 @@
|
|
|
34716
34716
|
mitt.emit("changeElement");
|
|
34717
34717
|
}
|
|
34718
34718
|
function valueUnit(value, panel) {
|
|
34719
|
+
var _a;
|
|
34719
34720
|
if (value == null || Number.isNaN(value)) {
|
|
34720
34721
|
return void 0;
|
|
34721
34722
|
}
|
|
34722
|
-
|
|
34723
|
+
const p = getCurrentPanel(panel);
|
|
34724
|
+
const unit = (_a = p == null ? void 0 : p.pageUnit) != null ? _a : "mm";
|
|
34725
|
+
return `${value}${unit}`;
|
|
34723
34726
|
}
|
|
34724
34727
|
const BORDER_RECT_LIKE_TYPES = /* @__PURE__ */ new Set(["Rect", "Container", "PageHeader", "PageFooter"]);
|
|
34725
34728
|
function ensureElementBorderDefaults(element) {
|
|
@@ -84421,9 +84424,16 @@
|
|
|
84421
84424
|
let designPanelSnapshot = null;
|
|
84422
84425
|
let itemRefs = {};
|
|
84423
84426
|
function pageStyle(page) {
|
|
84427
|
+
var _a, _b, _c, _d, _e, _f, _g;
|
|
84428
|
+
const p = panel.value;
|
|
84429
|
+
const wNum = (_b = (_a = page.width) != null ? _a : p == null ? void 0 : p.width) != null ? _b : 210;
|
|
84430
|
+
const hNum = (_d = (_c = page.height) != null ? _c : p == null ? void 0 : p.height) != null ? _d : 297;
|
|
84431
|
+
const unit = (_e = p == null ? void 0 : p.pageUnit) != null ? _e : "mm";
|
|
84432
|
+
const w = (_f = valueUnit(wNum, p)) != null ? _f : `${wNum}${unit}`;
|
|
84433
|
+
const h = (_g = valueUnit(hNum, p)) != null ? _g : `${hNum}${unit}`;
|
|
84424
84434
|
return {
|
|
84425
|
-
width:
|
|
84426
|
-
minHeight:
|
|
84435
|
+
width: w,
|
|
84436
|
+
minHeight: h
|
|
84427
84437
|
};
|
|
84428
84438
|
}
|
|
84429
84439
|
function syncDesignTextDataFromDom(source) {
|
|
@@ -84813,7 +84823,7 @@
|
|
|
84813
84823
|
}
|
|
84814
84824
|
});
|
|
84815
84825
|
|
|
84816
|
-
var previewPanelView = /* @__PURE__ */ _export_sfc(_sfc_main$a, [["__file", "preview-panel.vue"]]);
|
|
84826
|
+
var previewPanelView = /* @__PURE__ */ _export_sfc(_sfc_main$a, [["__scopeId", "data-v-db6b136a"], ["__file", "preview-panel.vue"]]);
|
|
84817
84827
|
|
|
84818
84828
|
let previewNode = null;
|
|
84819
84829
|
let handleChromePreview = null;
|
|
@@ -94925,7 +94935,7 @@ ${$$g(r2)}`), n2;
|
|
|
94925
94935
|
}
|
|
94926
94936
|
}
|
|
94927
94937
|
|
|
94928
|
-
const version$1 = "1.0.
|
|
94938
|
+
const version$1 = "1.0.23";
|
|
94929
94939
|
|
|
94930
94940
|
function isDataTableWidget(d) {
|
|
94931
94941
|
return d.type === "DataTable";
|
package/dist/index.full.mjs
CHANGED
|
@@ -2,6 +2,8 @@ import { defineComponent, h as h$5, getCurrentInstance as getCurrentInstance$1,
|
|
|
2
2
|
import { defineStore, createPinia } from 'pinia';
|
|
3
3
|
import 'vue-cropper/dist/index.css';
|
|
4
4
|
import '/Users/miro/Desktop/project/myprint/packages/design/src/components/design/image/image.vue?vue&type=style&index=0&scoped=923ed041&lang.css';
|
|
5
|
+
import '/Users/miro/Desktop/project/myprint/packages/design/src/components/preview/preview-panel.vue?vue&type=style&index=0&scoped=db6b136a&lang.css';
|
|
6
|
+
import '/Users/miro/Desktop/project/myprint/packages/design/src/components/preview/preview-panel.vue?vue&type=style&index=1&lang.css';
|
|
5
7
|
import 'vue3-colorpicker/style.css';
|
|
6
8
|
|
|
7
9
|
const MathCalc = {
|
|
@@ -34716,10 +34718,13 @@ function setCurrentElement(element) {
|
|
|
34716
34718
|
mitt.emit("changeElement");
|
|
34717
34719
|
}
|
|
34718
34720
|
function valueUnit(value, panel) {
|
|
34721
|
+
var _a;
|
|
34719
34722
|
if (value == null || Number.isNaN(value)) {
|
|
34720
34723
|
return void 0;
|
|
34721
34724
|
}
|
|
34722
|
-
|
|
34725
|
+
const p = getCurrentPanel(panel);
|
|
34726
|
+
const unit = (_a = p == null ? void 0 : p.pageUnit) != null ? _a : "mm";
|
|
34727
|
+
return `${value}${unit}`;
|
|
34723
34728
|
}
|
|
34724
34729
|
const BORDER_RECT_LIKE_TYPES = /* @__PURE__ */ new Set(["Rect", "Container", "PageHeader", "PageFooter"]);
|
|
34725
34730
|
function ensureElementBorderDefaults(element) {
|
|
@@ -84421,9 +84426,16 @@ var _sfc_main$a = /* @__PURE__ */ defineComponent({
|
|
|
84421
84426
|
let designPanelSnapshot = null;
|
|
84422
84427
|
let itemRefs = {};
|
|
84423
84428
|
function pageStyle(page) {
|
|
84429
|
+
var _a, _b, _c, _d, _e, _f, _g;
|
|
84430
|
+
const p = panel.value;
|
|
84431
|
+
const wNum = (_b = (_a = page.width) != null ? _a : p == null ? void 0 : p.width) != null ? _b : 210;
|
|
84432
|
+
const hNum = (_d = (_c = page.height) != null ? _c : p == null ? void 0 : p.height) != null ? _d : 297;
|
|
84433
|
+
const unit = (_e = p == null ? void 0 : p.pageUnit) != null ? _e : "mm";
|
|
84434
|
+
const w = (_f = valueUnit(wNum, p)) != null ? _f : `${wNum}${unit}`;
|
|
84435
|
+
const h = (_g = valueUnit(hNum, p)) != null ? _g : `${hNum}${unit}`;
|
|
84424
84436
|
return {
|
|
84425
|
-
width:
|
|
84426
|
-
minHeight:
|
|
84437
|
+
width: w,
|
|
84438
|
+
minHeight: h
|
|
84427
84439
|
};
|
|
84428
84440
|
}
|
|
84429
84441
|
function syncDesignTextDataFromDom(source) {
|
|
@@ -84813,7 +84825,7 @@ var _sfc_main$a = /* @__PURE__ */ defineComponent({
|
|
|
84813
84825
|
}
|
|
84814
84826
|
});
|
|
84815
84827
|
|
|
84816
|
-
var previewPanelView = /* @__PURE__ */ _export_sfc(_sfc_main$a, [["__file", "preview-panel.vue"]]);
|
|
84828
|
+
var previewPanelView = /* @__PURE__ */ _export_sfc(_sfc_main$a, [["__scopeId", "data-v-db6b136a"], ["__file", "preview-panel.vue"]]);
|
|
84817
84829
|
|
|
84818
84830
|
let previewNode = null;
|
|
84819
84831
|
let handleChromePreview = null;
|
|
@@ -94925,7 +94937,7 @@ function mountDesign(app, props, element) {
|
|
|
94925
94937
|
}
|
|
94926
94938
|
}
|
|
94927
94939
|
|
|
94928
|
-
const version$1 = "1.0.
|
|
94940
|
+
const version$1 = "1.0.23";
|
|
94929
94941
|
|
|
94930
94942
|
function isDataTableWidget(d) {
|
|
94931
94943
|
return d.type === "DataTable";
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import _sfc_main from './preview-panel.vue2.mjs';
|
|
2
|
+
import '/Users/miro/Desktop/project/myprint/packages/design/src/components/preview/preview-panel.vue?vue&type=style&index=0&scoped=d2112c84&lang.css';
|
|
3
|
+
import '/Users/miro/Desktop/project/myprint/packages/design/src/components/preview/preview-panel.vue?vue&type=style&index=1&lang.css';
|
|
2
4
|
import _export_sfc from '../../_virtual/_plugin-vue_export-helper.mjs';
|
|
3
5
|
|
|
4
|
-
var previewPanelView = /* @__PURE__ */ _export_sfc(_sfc_main, [["__file", "preview-panel.vue"]]);
|
|
6
|
+
var previewPanelView = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-d2112c84"], ["__file", "preview-panel.vue"]]);
|
|
5
7
|
|
|
6
8
|
export { previewPanelView as default };
|
|
7
9
|
//# sourceMappingURL=preview-panel.vue.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"preview-panel.vue.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"preview-panel.vue.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;"}
|
|
@@ -66,9 +66,15 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
66
66
|
let designPanelSnapshot = null;
|
|
67
67
|
let itemRefs = {};
|
|
68
68
|
function pageStyle(page) {
|
|
69
|
+
const p = panel.value;
|
|
70
|
+
const wNum = page.width ?? p?.width ?? 210;
|
|
71
|
+
const hNum = page.height ?? p?.height ?? 297;
|
|
72
|
+
const unit = p?.pageUnit ?? "mm";
|
|
73
|
+
const w = valueUnit(wNum, p) ?? `${wNum}${unit}`;
|
|
74
|
+
const h = valueUnit(hNum, p) ?? `${hNum}${unit}`;
|
|
69
75
|
return {
|
|
70
|
-
width:
|
|
71
|
-
minHeight:
|
|
76
|
+
width: w,
|
|
77
|
+
minHeight: h
|
|
72
78
|
};
|
|
73
79
|
}
|
|
74
80
|
function syncDesignTextDataFromDom(source) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"preview-panel.vue2.mjs","sources":["../../../../../src/components/preview/preview-panel.vue"],"sourcesContent":["<template>\n <div\n v-if=\"data.measuring\"\n class=\"my-print-print_hidden\"\n aria-hidden=\"true\">\n <div class=\"my-print-preview-panel__wrap\">\n <div class=\"my-print-preview-panel__content\">\n <div\n v-for=\"(page, index) in data.pageList\"\n :key=\"'measure-' + (page.id ?? index)\"\n ref=\"previewContentRef\"\n class=\"my-print-preview-panel__content_page preview-page-top\"\n :style=\"pageStyle(page)\">\n <preview\n v-for=\"(element, elIndex) in (page.previewWrapperList ?? [])\"\n :key=\"element.id ?? elIndex\"\n :preview=\"element\"\n :page-panel=\"resolvedPagePanel\" />\n </div>\n </div>\n </div>\n </div>\n\n <my-dialog\n v-model=\"data.dialogVisible\"\n class=\"preview-dialog\"\n fullscreen\n :showHeader=\"false\"\n @close=\"closePreviewPanel\">\n <div class=\"preview-panel\">\n <my-scrollbar\n v-if=\"!data.measuring\"\n ref=\"scrollbarRef\"\n height=\"100%\"\n class=\"preview-panel__scrollbar\"\n :style=\"{ minWidth: valueUnit(panel.width, panel) }\">\n <div class=\"my-print-preview-panel__wrap\">\n <div class=\"preview-panel__model\">\n <div class=\"my-print-preview-panel__content\">\n <div\n v-for=\"(page, index) in data.pageList\"\n :key=\"page.id ?? index\"\n ref=\"previewContentRef\"\n class=\"my-print-preview-panel__content_page preview-page-top\"\n :style=\"pageStyle(page)\">\n <preview\n v-for=\"(element, elIndex) in (page.previewWrapperList ?? [])\"\n :ref=\"(el) => setItemRef(el, element)\"\n :key=\"element.id ?? elIndex\"\n :preview=\"element\"\n :page-panel=\"resolvedPagePanel\" />\n </div>\n </div>\n </div>\n </div>\n </my-scrollbar>\n <div v-else class=\"preview-panel__scrollbar preview-panel__measuring\">\n 正在生成预览…\n </div>\n <div class=\"preview-panel__tool display-flex-column display-flex-wrap\">\n <div>名称:{{ panel.name }}</div>\n <template v-if=\"clientConnectIs\">\n <div>{{ i18n('toolbar.printer') }}:\n <my-select v-model=\"data.printer\" placeholder=\"请选择\" size=\"middle\"\n :data-list=\"printList\" />\n </div>\n <my-button style=\"margin-top: 40px\" :disabled=\"!data.printer\" @click=\"print\">\n {{ i18n('toolbar.print') }}\n </my-button>\n </template>\n <div v-else>客户端未连接,无法使用直接打印功能,去下载</div>\n\n <my-button class=\"preview-panel__tool_button\" @click=\"printChromePdf\">\n {{ i18n('toolbar.chrome.print') }}\n </my-button>\n <my-button class=\"preview-panel__tool_button\" @click=\"downloadPdf\">\n {{ i18n('preview.download.pdf') }}\n </my-button>\n <my-button class=\"preview-panel__tool_button\" @click=\"() => (data.dialogVisible = false)\">\n {{ i18n('common.close') }}\n </my-button>\n </div>\n </div>\n </my-dialog>\n</template>\n\n<script setup lang=\"ts\">\nimport { computed, nextTick, onMounted, onUnmounted, provide, reactive, ref } from 'vue-demi';\nimport { resetMoveableSelection, syncPiniaSelectionFromMoveable, updateMoveableRect } from '@myprint/design/plugins/moveable/moveable';\nimport { registerPreviewPanel } from '@myprint/design/preview';\nimport { toPdf } from '@myprint/design/utils/pdfUtil';\nimport { br2n, download } from '@myprint/design/utils/utils';\nimport { unit2px } from '@myprint/design/utils/devicePixelRatio';\nimport Preview from './preview.vue';\nimport { MyElement, Panel, PreviewContainerWrapper, PrintOptions, PrintResult } from '@myprint/design/types/entity';\nimport { i18n } from '@myprint/design/locales';\nimport {\n clearPanelPreviewRuntimeFlags,\n clonePanelForPreview,\n getCurrentPanel,\n normalizePanelElementsInitRotate,\n PREVIEW_PANEL_KEY,\n rebindPanelElementDomTargets,\n syncPanelLayoutForPrint,\n valueUnit\n} from '@myprint/design/utils/elementUtil';\nimport { mitt } from '@myprint/design/utils/utils';\nimport { useConfigStore } from '@myprint/design/stores/config';\nimport { autoPage } from './autoPage';\nimport MyScrollbar from '@myprint/design/components/my/scrollbar/my-scrollbar.vue';\nimport MyButton from '@myprint/design/components/my/button/my-Button.vue';\nimport MyDialog from '@myprint/design/components/my/dialog/my-dialog.vue';\nimport MySelect from '@myprint/design/components/my/select/my-select.vue';\nimport { getPrintElementHtml, iFramePrint } from '@myprint/design/utils/myprint';\nimport {\n handleClientResult,\n handleTimeOut,\n myPrintClientService,\n printResult\n} from '@myprint/design/plugins/myprintClientService';\n\ndefineExpose({ handleChromePreview });\n\nonMounted(() => {\n registerPreviewPanel(handleChromePreview);\n});\n\nonUnmounted(() => {\n registerPreviewPanel(null);\n});\n\nconst clientConnectIs = computed(() => myPrintClientService.connectIs());\n\nconst configStore = useConfigStore();\nconst data = reactive({\n dialogVisible: false,\n measuring: false,\n printer: configStore.defaultPrinter,\n pageList: [] as PreviewContainerWrapper[],\n resolveMap: {} as Record<string, (r: PrintResult) => void>,\n previewTimeOutMap: {} as Record<string, ReturnType<typeof setTimeout>>,\n taskId: null as string | null\n});\n\nconst previewContentRef = ref<HTMLDivElement[]>();\nconst scrollbarRef = ref<{ ps?: { update?: () => void } }>();\nconst panel = ref({} as Panel);\nconst resolvedPagePanel = computed(() => {\n const v = panel.value;\n return v?.pageUnit != null ? v : undefined;\n});\nprovide(PREVIEW_PANEL_KEY, panel);\n/** 打开预览时的设计器画布 panel,仅用于结束后恢复状态 */\nlet designPanelSnapshot: Panel | null = null;\nlet itemRefs = {} as Record<string, unknown>;\n\nfunction pageStyle(page: PreviewContainerWrapper) {\n return {\n width: valueUnit(page.width, panel.value),\n minHeight: valueUnit(page.height, panel.value)\n };\n}\n\n/** 打开预览前把画布上未写入 data 的文本同步到元素(避免仅 DOM 有字、预览 data 为空) */\nfunction syncDesignTextDataFromDom(source: Panel) {\n const walk = (el?: MyElement) => {\n if (el == null) {\n return;\n }\n if (\n (el.type === 'Text' || el.type === 'TextTime' || el.type === 'PageNum')\n && el.contentType !== 'QrCode'\n && el.contentType !== 'Barcode'\n && (el.data == null || el.data === '')\n ) {\n const root = el.runtimeOption?.target as HTMLElement | undefined;\n const inner = root?.querySelector?.('.my-print-text_container') as HTMLElement | null;\n const html = inner?.innerHTML;\n if (html) {\n el.data = br2n(html);\n }\n }\n el.elementList?.forEach(walk);\n };\n source.elementList?.forEach(walk);\n walk(source.pageHeader);\n walk(source.pageFooter);\n}\n\nconst printList = computed(() => {\n const list = myPrintClientService.getPrinterList() ?? [];\n return list.map(res => ({\n label: res.name,\n value: res.name\n }));\n});\n\nfunction print() {\n myPrintClientService.print({\n options: {\n title: panel.value?.name,\n html: getPrintElementHtml(previewContentRef.value!, []),\n printer: data.printer\n },\n cmd: 'print',\n taskId: data.taskId!\n }, panel.value)\n .then(res => {\n handleClientResult(res, printResult, data.previewTimeOutMap, data.resolveMap);\n })\n .catch(e => {\n printResult(data.taskId!, {\n status: 'ERROR',\n msg: e.msg,\n type: 'CLIENT_PRINT'\n }, data.previewTimeOutMap, data.resolveMap);\n });\n}\n\nfunction downloadPdf() {\n if (myPrintClientService.connectIs()) {\n myPrintClientService.print({\n options: { html: getPrintElementHtml(previewContentRef.value!, []) },\n cmd: 'generatePdf',\n taskId: data.taskId!\n }, panel.value).then(res => {\n const blob = handleClientResult(res, printResult, data.previewTimeOutMap, data.resolveMap);\n if (blob) {\n download(blob, panel.value.name + '.pdf');\n }\n }).catch(e => {\n printResult(data.taskId!, {\n status: 'ERROR',\n msg: e.msg,\n type: 'CLIENT_GENERATE_PDF'\n }, data.previewTimeOutMap, data.resolveMap);\n });\n } else {\n toPdf(previewContentRef.value, {\n width: unit2px(panel.value.width, panel.value),\n height: unit2px(panel.value.height, panel.value)\n }).then(blob => {\n download(blob, panel.value.name + '.pdf');\n printResult(data.taskId!, {\n status: 'SUCCESS',\n msg: '',\n type: 'CHROME_GENERATE_PDF'\n }, data.previewTimeOutMap, data.resolveMap);\n }).catch(e => {\n printResult(data.taskId!, {\n status: 'ERROR',\n msg: e.msg,\n type: 'CHROME_GENERATE_PDF'\n }, data.previewTimeOutMap, data.resolveMap);\n });\n }\n}\n\nfunction printChromePdf() {\n iFramePrint(panel.value, getPrintElementHtml(previewContentRef.value!, []));\n printResult(data.taskId!, {\n status: 'SUCCESS',\n type: 'CHROME_PRINT'\n }, data.previewTimeOutMap, data.resolveMap);\n}\n\nfunction setItemRef(el: unknown, item: MyElement) {\n if (el) {\n itemRefs[item.id] = el;\n }\n}\n\nfunction handleChromePreview(printProps: PrintOptions) {\n data.pageList = [];\n data.measuring = true;\n data.dialogVisible = true;\n designPanelSnapshot = (printProps.panel ?? getCurrentPanel()) as Panel;\n syncDesignTextDataFromDom(designPanelSnapshot);\n syncPanelLayoutForPrint(designPanelSnapshot);\n panel.value = clonePanelForPreview(designPanelSnapshot);\n if (panel.value.pageUnit == null) {\n panel.value.pageUnit = designPanelSnapshot.pageUnit ?? 'mm';\n }\n data.taskId = printProps.taskId ?? null;\n\n handleTimeOut(printProps, data.previewTimeOutMap, data.resolveMap);\n\n return new Promise<PrintResult>((resolve, reject) => {\n data.resolveMap[printProps.taskId!] = resolve;\n (async () => {\n await nextTick();\n await autoPage(\n previewContentRef,\n data.pageList,\n panel.value,\n printProps.previewDataList\n );\n data.measuring = false;\n await nextTick();\n scrollbarRef.value?.ps?.update?.();\n })().catch((e) => {\n data.measuring = false;\n console.error('[MyPrint] 预览失败', e);\n printResult(printProps.taskId!, {\n status: 'ERROR',\n msg: e?.message ?? String(e),\n type: 'TIMEOUT'\n }, data.previewTimeOutMap, data.resolveMap);\n reject(e);\n });\n });\n}\n\nfunction closePreviewPanel() {\n data.pageList = [];\n data.measuring = false;\n const canvasPanel = designPanelSnapshot;\n if (canvasPanel) {\n clearPanelPreviewRuntimeFlags(canvasPanel);\n designPanelSnapshot = null;\n }\n panel.value = {} as Panel;\n itemRefs = {};\n\n resetMoveableSelection();\n\n nextTick(() => {\n nextTick(() => {\n if (canvasPanel) {\n normalizePanelElementsInitRotate(canvasPanel);\n rebindPanelElementDomTargets(canvasPanel);\n }\n mitt.emit('updatePanel');\n mitt.emit('changePageSize');\n updateMoveableRect();\n syncPiniaSelectionFromMoveable();\n });\n });\n\n printResult(data.taskId!, {\n status: 'CLOSE',\n type: 'CLOSE'\n }, data.previewTimeOutMap, data.resolveMap);\n}\n</script>\n"],"names":["_unref","_openBlock","_createElementBlock","_createElementVNode","_Fragment","_normalizeStyle","_createBlock","_createVNode","_toDisplayString","_createTextVNode"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"preview-panel.vue2.mjs","sources":["../../../../../src/components/preview/preview-panel.vue"],"sourcesContent":["<template>\n <div\n v-if=\"data.measuring\"\n class=\"my-print-print_hidden\"\n aria-hidden=\"true\">\n <div class=\"my-print-preview-panel__wrap\">\n <div class=\"my-print-preview-panel__content\">\n <div\n v-for=\"(page, index) in data.pageList\"\n :key=\"'measure-' + (page.id ?? index)\"\n ref=\"previewContentRef\"\n class=\"my-print-preview-panel__content_page preview-page-top\"\n :style=\"pageStyle(page)\">\n <preview\n v-for=\"(element, elIndex) in (page.previewWrapperList ?? [])\"\n :key=\"element.id ?? elIndex\"\n :preview=\"element\"\n :page-panel=\"resolvedPagePanel\" />\n </div>\n </div>\n </div>\n </div>\n\n <my-dialog\n v-model=\"data.dialogVisible\"\n class=\"preview-dialog\"\n fullscreen\n :showHeader=\"false\"\n @close=\"closePreviewPanel\">\n <div class=\"preview-panel\">\n <my-scrollbar\n v-if=\"!data.measuring\"\n ref=\"scrollbarRef\"\n height=\"100%\"\n class=\"preview-panel__scrollbar\"\n :style=\"{ minWidth: valueUnit(panel.width, panel) }\">\n <div class=\"my-print-preview-panel__wrap\">\n <div class=\"preview-panel__model\">\n <div class=\"my-print-preview-panel__content\">\n <div\n v-for=\"(page, index) in data.pageList\"\n :key=\"page.id ?? index\"\n ref=\"previewContentRef\"\n class=\"my-print-preview-panel__content_page preview-page-top\"\n :style=\"pageStyle(page)\">\n <preview\n v-for=\"(element, elIndex) in (page.previewWrapperList ?? [])\"\n :ref=\"(el) => setItemRef(el, element)\"\n :key=\"element.id ?? elIndex\"\n :preview=\"element\"\n :page-panel=\"resolvedPagePanel\" />\n </div>\n </div>\n </div>\n </div>\n </my-scrollbar>\n <div v-else class=\"preview-panel__scrollbar preview-panel__measuring\">\n 正在生成预览…\n </div>\n <div class=\"preview-panel__tool display-flex-column display-flex-wrap\">\n <div>名称:{{ panel.name }}</div>\n <template v-if=\"clientConnectIs\">\n <div>{{ i18n('toolbar.printer') }}:\n <my-select v-model=\"data.printer\" placeholder=\"请选择\" size=\"middle\"\n :data-list=\"printList\" />\n </div>\n <my-button style=\"margin-top: 40px\" :disabled=\"!data.printer\" @click=\"print\">\n {{ i18n('toolbar.print') }}\n </my-button>\n </template>\n <div v-else>客户端未连接,无法使用直接打印功能,去下载</div>\n\n <my-button class=\"preview-panel__tool_button\" @click=\"printChromePdf\">\n {{ i18n('toolbar.chrome.print') }}\n </my-button>\n <my-button class=\"preview-panel__tool_button\" @click=\"downloadPdf\">\n {{ i18n('preview.download.pdf') }}\n </my-button>\n <my-button class=\"preview-panel__tool_button\" @click=\"() => (data.dialogVisible = false)\">\n {{ i18n('common.close') }}\n </my-button>\n </div>\n </div>\n </my-dialog>\n</template>\n\n<script setup lang=\"ts\">\nimport { computed, nextTick, onMounted, onUnmounted, provide, reactive, ref } from 'vue-demi';\nimport { resetMoveableSelection, syncPiniaSelectionFromMoveable, updateMoveableRect } from '@myprint/design/plugins/moveable/moveable';\nimport { registerPreviewPanel } from '@myprint/design/preview';\nimport { toPdf } from '@myprint/design/utils/pdfUtil';\nimport { br2n, download } from '@myprint/design/utils/utils';\nimport { unit2px } from '@myprint/design/utils/devicePixelRatio';\nimport Preview from './preview.vue';\nimport { MyElement, Panel, PreviewContainerWrapper, PrintOptions, PrintResult } from '@myprint/design/types/entity';\nimport { i18n } from '@myprint/design/locales';\nimport {\n clearPanelPreviewRuntimeFlags,\n clonePanelForPreview,\n getCurrentPanel,\n normalizePanelElementsInitRotate,\n PREVIEW_PANEL_KEY,\n rebindPanelElementDomTargets,\n syncPanelLayoutForPrint,\n valueUnit\n} from '@myprint/design/utils/elementUtil';\nimport { mitt } from '@myprint/design/utils/utils';\nimport { useConfigStore } from '@myprint/design/stores/config';\nimport { autoPage } from './autoPage';\nimport MyScrollbar from '@myprint/design/components/my/scrollbar/my-scrollbar.vue';\nimport MyButton from '@myprint/design/components/my/button/my-Button.vue';\nimport MyDialog from '@myprint/design/components/my/dialog/my-dialog.vue';\nimport MySelect from '@myprint/design/components/my/select/my-select.vue';\nimport { getPrintElementHtml, iFramePrint } from '@myprint/design/utils/myprint';\nimport {\n handleClientResult,\n handleTimeOut,\n myPrintClientService,\n printResult\n} from '@myprint/design/plugins/myprintClientService';\n\ndefineExpose({ handleChromePreview });\n\nonMounted(() => {\n registerPreviewPanel(handleChromePreview);\n});\n\nonUnmounted(() => {\n registerPreviewPanel(null);\n});\n\nconst clientConnectIs = computed(() => myPrintClientService.connectIs());\n\nconst configStore = useConfigStore();\nconst data = reactive({\n dialogVisible: false,\n measuring: false,\n printer: configStore.defaultPrinter,\n pageList: [] as PreviewContainerWrapper[],\n resolveMap: {} as Record<string, (r: PrintResult) => void>,\n previewTimeOutMap: {} as Record<string, ReturnType<typeof setTimeout>>,\n taskId: null as string | null\n});\n\nconst previewContentRef = ref<HTMLDivElement[]>();\nconst scrollbarRef = ref<{ ps?: { update?: () => void } }>();\nconst panel = ref({} as Panel);\nconst resolvedPagePanel = computed(() => {\n const v = panel.value;\n return v?.pageUnit != null ? v : undefined;\n});\nprovide(PREVIEW_PANEL_KEY, panel);\n/** 打开预览时的设计器画布 panel,仅用于结束后恢复状态 */\nlet designPanelSnapshot: Panel | null = null;\nlet itemRefs = {} as Record<string, unknown>;\n\nfunction pageStyle(page: PreviewContainerWrapper) {\n const p = panel.value;\n const wNum = page.width ?? p?.width ?? 210;\n const hNum = page.height ?? p?.height ?? 297;\n const unit = (p?.pageUnit as string | undefined) ?? 'mm';\n const w = valueUnit(wNum, p) ?? `${wNum}${unit}`;\n const h = valueUnit(hNum, p) ?? `${hNum}${unit}`;\n return {\n width: w,\n minHeight: h\n };\n}\n\n/** 打开预览前把画布上未写入 data 的文本同步到元素(避免仅 DOM 有字、预览 data 为空) */\nfunction syncDesignTextDataFromDom(source: Panel) {\n const walk = (el?: MyElement) => {\n if (el == null) {\n return;\n }\n if (\n (el.type === 'Text' || el.type === 'TextTime' || el.type === 'PageNum')\n && el.contentType !== 'QrCode'\n && el.contentType !== 'Barcode'\n && (el.data == null || el.data === '')\n ) {\n const root = el.runtimeOption?.target as HTMLElement | undefined;\n const inner = root?.querySelector?.('.my-print-text_container') as HTMLElement | null;\n const html = inner?.innerHTML;\n if (html) {\n el.data = br2n(html);\n }\n }\n el.elementList?.forEach(walk);\n };\n source.elementList?.forEach(walk);\n walk(source.pageHeader);\n walk(source.pageFooter);\n}\n\nconst printList = computed(() => {\n const list = myPrintClientService.getPrinterList() ?? [];\n return list.map(res => ({\n label: res.name,\n value: res.name\n }));\n});\n\nfunction print() {\n myPrintClientService.print({\n options: {\n title: panel.value?.name,\n html: getPrintElementHtml(previewContentRef.value!, []),\n printer: data.printer\n },\n cmd: 'print',\n taskId: data.taskId!\n }, panel.value)\n .then(res => {\n handleClientResult(res, printResult, data.previewTimeOutMap, data.resolveMap);\n })\n .catch(e => {\n printResult(data.taskId!, {\n status: 'ERROR',\n msg: e.msg,\n type: 'CLIENT_PRINT'\n }, data.previewTimeOutMap, data.resolveMap);\n });\n}\n\nfunction downloadPdf() {\n if (myPrintClientService.connectIs()) {\n myPrintClientService.print({\n options: { html: getPrintElementHtml(previewContentRef.value!, []) },\n cmd: 'generatePdf',\n taskId: data.taskId!\n }, panel.value).then(res => {\n const blob = handleClientResult(res, printResult, data.previewTimeOutMap, data.resolveMap);\n if (blob) {\n download(blob, panel.value.name + '.pdf');\n }\n }).catch(e => {\n printResult(data.taskId!, {\n status: 'ERROR',\n msg: e.msg,\n type: 'CLIENT_GENERATE_PDF'\n }, data.previewTimeOutMap, data.resolveMap);\n });\n } else {\n toPdf(previewContentRef.value, {\n width: unit2px(panel.value.width, panel.value),\n height: unit2px(panel.value.height, panel.value)\n }).then(blob => {\n download(blob, panel.value.name + '.pdf');\n printResult(data.taskId!, {\n status: 'SUCCESS',\n msg: '',\n type: 'CHROME_GENERATE_PDF'\n }, data.previewTimeOutMap, data.resolveMap);\n }).catch(e => {\n printResult(data.taskId!, {\n status: 'ERROR',\n msg: e.msg,\n type: 'CHROME_GENERATE_PDF'\n }, data.previewTimeOutMap, data.resolveMap);\n });\n }\n}\n\nfunction printChromePdf() {\n iFramePrint(panel.value, getPrintElementHtml(previewContentRef.value!, []));\n printResult(data.taskId!, {\n status: 'SUCCESS',\n type: 'CHROME_PRINT'\n }, data.previewTimeOutMap, data.resolveMap);\n}\n\nfunction setItemRef(el: unknown, item: MyElement) {\n if (el) {\n itemRefs[item.id] = el;\n }\n}\n\nfunction handleChromePreview(printProps: PrintOptions) {\n data.pageList = [];\n data.measuring = true;\n data.dialogVisible = true;\n designPanelSnapshot = (printProps.panel ?? getCurrentPanel()) as Panel;\n syncDesignTextDataFromDom(designPanelSnapshot);\n syncPanelLayoutForPrint(designPanelSnapshot);\n panel.value = clonePanelForPreview(designPanelSnapshot);\n if (panel.value.pageUnit == null) {\n panel.value.pageUnit = designPanelSnapshot.pageUnit ?? 'mm';\n }\n data.taskId = printProps.taskId ?? null;\n\n handleTimeOut(printProps, data.previewTimeOutMap, data.resolveMap);\n\n return new Promise<PrintResult>((resolve, reject) => {\n data.resolveMap[printProps.taskId!] = resolve;\n (async () => {\n await nextTick();\n await autoPage(\n previewContentRef,\n data.pageList,\n panel.value,\n printProps.previewDataList\n );\n data.measuring = false;\n await nextTick();\n scrollbarRef.value?.ps?.update?.();\n })().catch((e) => {\n data.measuring = false;\n console.error('[MyPrint] 预览失败', e);\n printResult(printProps.taskId!, {\n status: 'ERROR',\n msg: e?.message ?? String(e),\n type: 'TIMEOUT'\n }, data.previewTimeOutMap, data.resolveMap);\n reject(e);\n });\n });\n}\n\nfunction closePreviewPanel() {\n data.pageList = [];\n data.measuring = false;\n const canvasPanel = designPanelSnapshot;\n if (canvasPanel) {\n clearPanelPreviewRuntimeFlags(canvasPanel);\n designPanelSnapshot = null;\n }\n panel.value = {} as Panel;\n itemRefs = {};\n\n resetMoveableSelection();\n\n nextTick(() => {\n nextTick(() => {\n if (canvasPanel) {\n normalizePanelElementsInitRotate(canvasPanel);\n rebindPanelElementDomTargets(canvasPanel);\n }\n mitt.emit('updatePanel');\n mitt.emit('changePageSize');\n updateMoveableRect();\n syncPiniaSelectionFromMoveable();\n });\n });\n\n printResult(data.taskId!, {\n status: 'CLOSE',\n type: 'CLOSE'\n }, data.previewTimeOutMap, data.resolveMap);\n}\n</script>\n\n<!-- 布局兜底:Teleport 全屏弹层依赖 my-dialog / preview 的 SCSS;npm 集成常未引入 design 样式表,导致 flex 居中 + 无尺寸子项塌成 0×0 -->\n<style scoped>\n.preview-panel {\n box-sizing: border-box;\n width: 100%;\n height: 100%;\n min-width: 0;\n min-height: 0;\n display: flex;\n flex-direction: row;\n position: relative;\n}\n</style>\n<style>\n.preview-dialog.my-dialog .my-dialog_wrapper {\n align-items: stretch;\n justify-content: stretch;\n}\n.preview-dialog.my-dialog .my-dialog_wrapper .my-dialog_content.is-fullscreen {\n width: 100% !important;\n height: 100% !important;\n min-height: 100vh !important;\n max-height: 100vh !important;\n padding: 0 !important;\n box-sizing: border-box !important;\n display: flex !important;\n flex-direction: column !important;\n flex: 1;\n min-height: 0;\n}\n.preview-dialog.my-dialog .my-dialog_content.is-fullscreen > .preview-panel {\n flex: 1 1 auto;\n min-height: 0;\n width: 100%;\n height: 100%;\n}\n.preview-dialog.my-dialog .preview-panel__scrollbar {\n flex: 1 1 auto;\n min-width: 0;\n min-height: 0;\n height: 100% !important;\n}\n.preview-dialog.my-dialog .my-print-preview-panel__wrap {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: flex-start;\n width: 100%;\n min-height: 0;\n}\n.preview-dialog.my-dialog .my-print-preview-panel__content {\n position: relative;\n display: block;\n width: max-content;\n max-width: 100%;\n box-sizing: border-box;\n min-width: 1px;\n min-height: 1px;\n}\n</style>\n"],"names":["_unref","_openBlock","_createElementBlock","_createElementVNode","_Fragment","_normalizeStyle","_createBlock","_createVNode","_toDisplayString","_createTextVNode"],"mappings":"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"}
|
package/es/utils/elementUtil.mjs
CHANGED
|
@@ -503,7 +503,9 @@ function valueUnit(value, panel) {
|
|
|
503
503
|
if (value == null || Number.isNaN(value)) {
|
|
504
504
|
return void 0;
|
|
505
505
|
}
|
|
506
|
-
|
|
506
|
+
const p = getCurrentPanel(panel);
|
|
507
|
+
const unit = p?.pageUnit ?? "mm";
|
|
508
|
+
return `${value}${unit}`;
|
|
507
509
|
}
|
|
508
510
|
const BORDER_RECT_LIKE_TYPES = /* @__PURE__ */ new Set(["Rect", "Container", "PageHeader", "PageFooter"]);
|
|
509
511
|
function ensureElementBorderDefaults(element) {
|