ele-admin-plus 1.2.1-beta.1 → 1.2.1-beta.2
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/es/ele-admin-layout/index.d.ts +19 -10
- package/es/ele-admin-layout/props.d.ts +4 -1
- package/es/ele-admin-layout/props.js +4 -1
- package/es/ele-admin-layout/style/index.scss +7 -2
- package/es/ele-admin-layout/style/sidebar.scss +2 -0
- package/es/ele-alert/index.d.ts +1 -1
- package/es/ele-alert/index.js +3 -3
- package/es/ele-app/components/message-body.d.ts +1 -1
- package/es/ele-app/components/message-body.js +2 -2
- package/es/ele-app/plus.d.ts +3 -0
- package/es/ele-avatar-group/index.d.ts +4 -4
- package/es/ele-avatar-group/index.js +15 -15
- package/es/ele-basic-select/index.d.ts +5 -5
- package/es/ele-basic-select/index.js +16 -16
- package/es/ele-check-card/index.d.ts +1 -1
- package/es/ele-check-card/index.js +4 -4
- package/es/ele-copyable/index.d.ts +2 -2
- package/es/ele-copyable/index.js +6 -6
- package/es/ele-cropper/components/cropper-tools.d.ts +3 -3
- package/es/ele-cropper/components/cropper-tools.js +10 -10
- package/es/ele-cropper/index.d.ts +13 -13
- package/es/ele-cropper/index.js +39 -39
- package/es/ele-cropper-modal/index.d.ts +1 -1
- package/es/ele-cropper-modal/index.js +3 -3
- package/es/ele-data-table/util.js +1 -1
- package/es/ele-drawer/index.d.ts +8 -8
- package/es/ele-drawer/index.js +18 -18
- package/es/ele-dropdown/index.d.ts +3 -3
- package/es/ele-dropdown/index.js +9 -9
- package/es/ele-ellipsis/index.d.ts +1 -1
- package/es/ele-ellipsis/index.js +3 -3
- package/es/ele-file-list/components/file-grid-item.d.ts +5 -5
- package/es/ele-file-list/components/file-grid-item.js +15 -15
- package/es/ele-file-list/components/file-grid.d.ts +6 -6
- package/es/ele-file-list/components/file-grid.js +15 -15
- package/es/ele-file-list/components/file-table-item.d.ts +5 -5
- package/es/ele-file-list/components/file-table-item.js +15 -15
- package/es/ele-file-list/components/file-table.d.ts +7 -7
- package/es/ele-file-list/components/file-table.js +19 -19
- package/es/ele-file-list/index.d.ts +6 -6
- package/es/ele-file-list/index.js +22 -22
- package/es/ele-file-list-tool/index.d.ts +1 -1
- package/es/ele-file-list-tool/index.js +2 -2
- package/es/ele-icon-select/components/icon-grid.d.ts +2 -2
- package/es/ele-icon-select/components/icon-grid.js +6 -6
- package/es/ele-icon-select/index.d.ts +7 -7
- package/es/ele-icon-select/index.js +23 -23
- package/es/ele-menus/index.js +15 -15
- package/es/ele-menus/style/index.scss +1 -0
- package/es/ele-menus/util.d.ts +7 -0
- package/es/ele-menus/util.js +49 -26
- package/es/ele-modal/index.d.ts +6 -6
- package/es/ele-modal/index.js +18 -18
- package/es/ele-pagination/index.d.ts +2 -2
- package/es/ele-pagination/index.js +6 -6
- package/es/ele-popconfirm/index.d.ts +7 -17
- package/es/ele-popconfirm/index.js +15 -15
- package/es/ele-popconfirm/props.d.ts +2 -7
- package/es/ele-popover/index.d.ts +7 -17
- package/es/ele-popover/index.js +15 -15
- package/es/ele-popover/props.d.ts +1 -6
- package/es/ele-popover/props.js +1 -0
- package/es/ele-printer/index.d.ts +1 -1
- package/es/ele-printer/index.js +19 -22
- package/es/ele-printer/style/index.scss +2 -2
- package/es/ele-printer/types.d.ts +0 -2
- package/es/ele-printer/util.d.ts +9 -30
- package/es/ele-printer/util.js +118 -109
- package/es/ele-pro-layout/index.d.ts +19 -19
- package/es/ele-pro-layout/index.js +2 -2
- package/es/ele-pro-layout/props.d.ts +1 -1
- package/es/ele-pro-layout/props.js +1 -1
- package/es/ele-pro-table/components/table-tools.d.ts +3 -3
- package/es/ele-pro-table/components/table-tools.js +6 -13
- package/es/ele-pro-table/components/tool-column-list.d.ts +9 -9
- package/es/ele-pro-table/components/tool-column-list.js +33 -33
- package/es/ele-pro-table/components/tool-column.d.ts +24 -38
- package/es/ele-pro-table/components/tool-column.js +80 -102
- package/es/ele-pro-table/components/tool-export.d.ts +4 -4
- package/es/ele-pro-table/components/tool-export.js +28 -40
- package/es/ele-pro-table/components/tool-print.d.ts +10 -7
- package/es/ele-pro-table/components/tool-print.js +36 -46
- package/es/ele-pro-table/index.d.ts +16 -13
- package/es/ele-pro-table/index.js +41 -64
- package/es/ele-pro-table/props.d.ts +2 -2
- package/es/ele-pro-table/props.js +1 -1
- package/es/ele-pro-table/style/index.scss +1 -0
- package/es/ele-pro-table/util.d.ts +38 -30
- package/es/ele-pro-table/util.js +111 -80
- package/es/ele-segmented/index.d.ts +1 -1
- package/es/ele-segmented/index.js +3 -3
- package/es/ele-split-panel/index.d.ts +1 -1
- package/es/ele-split-panel/index.js +3 -3
- package/es/ele-tab-wrap/components/tab-dropdown.d.ts +1 -1
- package/es/ele-tab-wrap/components/tab-dropdown.js +3 -3
- package/es/ele-table-select/index.d.ts +19 -19
- package/es/ele-table-select/index.js +42 -37
- package/es/ele-tool/index.d.ts +6 -3
- package/es/ele-tool/index.js +35 -32
- package/es/ele-tool/style/index.js +0 -1
- package/es/ele-tool/style/index.scss +0 -13
- package/es/ele-toolbar/index.d.ts +3247 -1
- package/es/ele-toolbar/index.js +44 -5
- package/es/ele-toolbar/props.d.ts +6 -2
- package/es/ele-toolbar/props.js +2 -0
- package/es/ele-toolbar/style/index.js +1 -0
- package/es/ele-toolbar/types.d.ts +15 -0
- package/es/ele-tooltip/index.d.ts +9 -9
- package/es/ele-tooltip/index.js +25 -25
- package/es/ele-tour/index.d.ts +3 -3
- package/es/ele-tour/index.js +10 -10
- package/es/ele-tree-select/index.d.ts +9 -9
- package/es/ele-tree-select/index.js +28 -28
- package/es/ele-upload-list/components/list-item.d.ts +3 -3
- package/es/ele-upload-list/components/list-item.js +7 -7
- package/es/ele-upload-list/index.d.ts +4 -4
- package/es/ele-upload-list/index.js +13 -13
- package/es/ele-virtual-table/components/body-cell.d.ts +8 -8
- package/es/ele-virtual-table/components/body-cell.js +24 -24
- package/es/ele-virtual-table/components/body-row.d.ts +7 -7
- package/es/ele-virtual-table/components/body-row.js +21 -21
- package/es/ele-virtual-table/components/cell-checkbox.d.ts +1 -1
- package/es/ele-virtual-table/components/cell-checkbox.js +3 -3
- package/es/ele-virtual-table/components/cell-filter.d.ts +5 -5
- package/es/ele-virtual-table/components/cell-filter.js +18 -18
- package/es/ele-virtual-table/components/footer-row.d.ts +1 -1
- package/es/ele-virtual-table/components/footer-row.js +3 -3
- package/es/ele-virtual-table/components/header-cell.d.ts +5 -5
- package/es/ele-virtual-table/components/header-cell.js +15 -15
- package/es/ele-virtual-table/components/header-row.d.ts +5 -5
- package/es/ele-virtual-table/components/header-row.js +15 -15
- package/es/ele-virtual-table/index.d.ts +23 -21
- package/es/ele-virtual-table/index.js +50 -48
- package/es/ele-virtual-table/util.js +3 -3
- package/es/ele-watermark/index.js +1 -0
- package/es/style/themes/default.scss +8 -8
- package/es/style/themes/rounded.scss +1 -7
- package/es/utils/core.d.ts +7 -1
- package/lib/ele-admin-layout/index.d.ts +19 -10
- package/lib/ele-admin-layout/props.cjs +4 -1
- package/lib/ele-admin-layout/props.d.ts +4 -1
- package/lib/ele-admin-layout/style/index.scss +7 -2
- package/lib/ele-admin-layout/style/sidebar.scss +2 -0
- package/lib/ele-alert/index.cjs +3 -3
- package/lib/ele-alert/index.d.ts +1 -1
- package/lib/ele-app/components/message-body.cjs +2 -2
- package/lib/ele-app/components/message-body.d.ts +1 -1
- package/lib/ele-app/plus.d.ts +3 -0
- package/lib/ele-avatar-group/index.cjs +15 -15
- package/lib/ele-avatar-group/index.d.ts +4 -4
- package/lib/ele-basic-select/index.cjs +16 -16
- package/lib/ele-basic-select/index.d.ts +5 -5
- package/lib/ele-check-card/index.cjs +4 -4
- package/lib/ele-check-card/index.d.ts +1 -1
- package/lib/ele-copyable/index.cjs +6 -6
- package/lib/ele-copyable/index.d.ts +2 -2
- package/lib/ele-cropper/components/cropper-tools.cjs +10 -10
- package/lib/ele-cropper/components/cropper-tools.d.ts +3 -3
- package/lib/ele-cropper/index.cjs +39 -39
- package/lib/ele-cropper/index.d.ts +13 -13
- package/lib/ele-cropper-modal/index.cjs +3 -3
- package/lib/ele-cropper-modal/index.d.ts +1 -1
- package/lib/ele-data-table/util.cjs +1 -1
- package/lib/ele-drawer/index.cjs +18 -18
- package/lib/ele-drawer/index.d.ts +8 -8
- package/lib/ele-dropdown/index.cjs +9 -9
- package/lib/ele-dropdown/index.d.ts +3 -3
- package/lib/ele-ellipsis/index.cjs +3 -3
- package/lib/ele-ellipsis/index.d.ts +1 -1
- package/lib/ele-file-list/components/file-grid-item.cjs +15 -15
- package/lib/ele-file-list/components/file-grid-item.d.ts +5 -5
- package/lib/ele-file-list/components/file-grid.cjs +15 -15
- package/lib/ele-file-list/components/file-grid.d.ts +6 -6
- package/lib/ele-file-list/components/file-table-item.cjs +15 -15
- package/lib/ele-file-list/components/file-table-item.d.ts +5 -5
- package/lib/ele-file-list/components/file-table.cjs +19 -19
- package/lib/ele-file-list/components/file-table.d.ts +7 -7
- package/lib/ele-file-list/index.cjs +22 -22
- package/lib/ele-file-list/index.d.ts +6 -6
- package/lib/ele-file-list-tool/index.cjs +2 -2
- package/lib/ele-file-list-tool/index.d.ts +1 -1
- package/lib/ele-icon-select/components/icon-grid.cjs +6 -6
- package/lib/ele-icon-select/components/icon-grid.d.ts +2 -2
- package/lib/ele-icon-select/index.cjs +23 -23
- package/lib/ele-icon-select/index.d.ts +7 -7
- package/lib/ele-menus/index.cjs +15 -15
- package/lib/ele-menus/style/index.scss +1 -0
- package/lib/ele-menus/util.cjs +49 -26
- package/lib/ele-menus/util.d.ts +7 -0
- package/lib/ele-modal/index.cjs +18 -18
- package/lib/ele-modal/index.d.ts +6 -6
- package/lib/ele-pagination/index.cjs +6 -6
- package/lib/ele-pagination/index.d.ts +2 -2
- package/lib/ele-popconfirm/index.cjs +15 -15
- package/lib/ele-popconfirm/index.d.ts +7 -17
- package/lib/ele-popconfirm/props.d.ts +2 -7
- package/lib/ele-popover/index.cjs +15 -15
- package/lib/ele-popover/index.d.ts +7 -17
- package/lib/ele-popover/props.cjs +1 -0
- package/lib/ele-popover/props.d.ts +1 -6
- package/lib/ele-printer/index.cjs +17 -20
- package/lib/ele-printer/index.d.ts +1 -1
- package/lib/ele-printer/style/index.scss +2 -2
- package/lib/ele-printer/types.d.ts +0 -2
- package/lib/ele-printer/util.cjs +118 -109
- package/lib/ele-printer/util.d.ts +9 -30
- package/lib/ele-pro-layout/index.cjs +2 -2
- package/lib/ele-pro-layout/index.d.ts +19 -19
- package/lib/ele-pro-layout/props.cjs +1 -1
- package/lib/ele-pro-layout/props.d.ts +1 -1
- package/lib/ele-pro-table/components/table-tools.cjs +6 -13
- package/lib/ele-pro-table/components/table-tools.d.ts +3 -3
- package/lib/ele-pro-table/components/tool-column-list.cjs +33 -33
- package/lib/ele-pro-table/components/tool-column-list.d.ts +9 -9
- package/lib/ele-pro-table/components/tool-column.cjs +79 -101
- package/lib/ele-pro-table/components/tool-column.d.ts +24 -38
- package/lib/ele-pro-table/components/tool-export.cjs +28 -40
- package/lib/ele-pro-table/components/tool-export.d.ts +4 -4
- package/lib/ele-pro-table/components/tool-print.cjs +36 -46
- package/lib/ele-pro-table/components/tool-print.d.ts +10 -7
- package/lib/ele-pro-table/index.cjs +41 -64
- package/lib/ele-pro-table/index.d.ts +16 -13
- package/lib/ele-pro-table/props.cjs +1 -1
- package/lib/ele-pro-table/props.d.ts +2 -2
- package/lib/ele-pro-table/style/index.scss +1 -0
- package/lib/ele-pro-table/util.cjs +111 -80
- package/lib/ele-pro-table/util.d.ts +38 -30
- package/lib/ele-segmented/index.cjs +3 -3
- package/lib/ele-segmented/index.d.ts +1 -1
- package/lib/ele-split-panel/index.cjs +3 -3
- package/lib/ele-split-panel/index.d.ts +1 -1
- package/lib/ele-tab-wrap/components/tab-dropdown.cjs +3 -3
- package/lib/ele-tab-wrap/components/tab-dropdown.d.ts +1 -1
- package/lib/ele-table-select/index.cjs +42 -37
- package/lib/ele-table-select/index.d.ts +19 -19
- package/lib/ele-tool/index.cjs +34 -31
- package/lib/ele-tool/index.d.ts +6 -3
- package/lib/ele-tool/style/index.cjs +0 -1
- package/lib/ele-tool/style/index.scss +0 -13
- package/lib/ele-toolbar/index.cjs +42 -3
- package/lib/ele-toolbar/index.d.ts +3247 -1
- package/lib/ele-toolbar/props.cjs +2 -0
- package/lib/ele-toolbar/props.d.ts +6 -2
- package/lib/ele-toolbar/style/index.cjs +1 -0
- package/lib/ele-toolbar/types.d.ts +15 -0
- package/lib/ele-tooltip/index.cjs +25 -25
- package/lib/ele-tooltip/index.d.ts +9 -9
- package/lib/ele-tour/index.cjs +10 -10
- package/lib/ele-tour/index.d.ts +3 -3
- package/lib/ele-tree-select/index.cjs +28 -28
- package/lib/ele-tree-select/index.d.ts +9 -9
- package/lib/ele-upload-list/components/list-item.cjs +7 -7
- package/lib/ele-upload-list/components/list-item.d.ts +3 -3
- package/lib/ele-upload-list/index.cjs +13 -13
- package/lib/ele-upload-list/index.d.ts +4 -4
- package/lib/ele-virtual-table/components/body-cell.cjs +24 -24
- package/lib/ele-virtual-table/components/body-cell.d.ts +8 -8
- package/lib/ele-virtual-table/components/body-row.cjs +21 -21
- package/lib/ele-virtual-table/components/body-row.d.ts +7 -7
- package/lib/ele-virtual-table/components/cell-checkbox.cjs +3 -3
- package/lib/ele-virtual-table/components/cell-checkbox.d.ts +1 -1
- package/lib/ele-virtual-table/components/cell-filter.cjs +18 -18
- package/lib/ele-virtual-table/components/cell-filter.d.ts +5 -5
- package/lib/ele-virtual-table/components/footer-row.cjs +3 -3
- package/lib/ele-virtual-table/components/footer-row.d.ts +1 -1
- package/lib/ele-virtual-table/components/header-cell.cjs +15 -15
- package/lib/ele-virtual-table/components/header-cell.d.ts +5 -5
- package/lib/ele-virtual-table/components/header-row.cjs +15 -15
- package/lib/ele-virtual-table/components/header-row.d.ts +5 -5
- package/lib/ele-virtual-table/index.cjs +50 -48
- package/lib/ele-virtual-table/index.d.ts +23 -21
- package/lib/ele-virtual-table/util.cjs +3 -3
- package/lib/ele-watermark/index.cjs +1 -0
- package/lib/style/themes/default.scss +8 -8
- package/lib/style/themes/rounded.scss +1 -7
- package/lib/utils/core.d.ts +7 -1
- package/package.json +1 -1
|
@@ -54,12 +54,6 @@ declare const _default: import('vue').DefineComponent<{
|
|
|
54
54
|
visible: import('element-plus/es/utils/index').EpPropFinalized<(new (...args: any[]) => boolean) | (() => boolean | null) | ((new (...args: any[]) => boolean) | (() => boolean | null))[], unknown, unknown, null, boolean>;
|
|
55
55
|
tabindex: import('element-plus/es/utils/index').EpPropFinalized<(new (...args: any[]) => string | number) | (() => string | number) | ((new (...args: any[]) => string | number) | (() => string | number))[], unknown, unknown, 0, boolean>;
|
|
56
56
|
content: import('element-plus/es/utils/index').EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
|
|
57
|
-
popperStyle: {
|
|
58
|
-
readonly type: import('vue').PropType<import('element-plus/es/utils/index').EpPropMergeType<(new (...args: any[]) => string | false | import('vue').CSSProperties | import('vue').StyleValue[]) | (() => import('vue').StyleValue) | ((new (...args: any[]) => string | false | import('vue').CSSProperties | import('vue').StyleValue[]) | (() => import('vue').StyleValue))[], unknown, unknown>>;
|
|
59
|
-
readonly required: false;
|
|
60
|
-
readonly validator: ((val: unknown) => boolean) | undefined;
|
|
61
|
-
__epPropKey: true;
|
|
62
|
-
};
|
|
63
57
|
enterable: {
|
|
64
58
|
readonly default: true;
|
|
65
59
|
readonly type: import('vue').PropType<import('element-plus/es/utils/index').EpPropMergeType<BooleanConstructor, unknown, unknown>>;
|
|
@@ -72,6 +66,7 @@ declare const _default: import('vue').DefineComponent<{
|
|
|
72
66
|
autoClose: import('element-plus/es/utils/index').EpPropFinalized<NumberConstructor, unknown, unknown, 0, boolean>;
|
|
73
67
|
showArrow: import('element-plus/es/utils/index').EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
|
|
74
68
|
persistent: import('element-plus/es/utils/index').EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
|
|
69
|
+
popperStyle: import('vue').PropType<Partial<import('vue').CSSProperties>>;
|
|
75
70
|
popperClass: StringConstructor;
|
|
76
71
|
ariaLabel: StringConstructor;
|
|
77
72
|
bg: StringConstructor;
|
|
@@ -104,11 +99,11 @@ declare const _default: import('vue').DefineComponent<{
|
|
|
104
99
|
hidePopper: () => void;
|
|
105
100
|
confirm: (e: MouseEvent) => void;
|
|
106
101
|
cancel: (e: MouseEvent) => void;
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
102
|
+
handleUpdateVisible: (visible: boolean) => void;
|
|
103
|
+
handlePopBeforeEnter: () => void;
|
|
104
|
+
handlePopBeforeLeave: () => void;
|
|
105
|
+
handlePopAfterEnter: () => void;
|
|
106
|
+
handlePopAfterLeave: () => void;
|
|
112
107
|
}, unknown, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
113
108
|
confirm: (_e: MouseEvent) => boolean;
|
|
114
109
|
cancel: (_e: MouseEvent) => boolean;
|
|
@@ -170,12 +165,6 @@ declare const _default: import('vue').DefineComponent<{
|
|
|
170
165
|
visible: import('element-plus/es/utils/index').EpPropFinalized<(new (...args: any[]) => boolean) | (() => boolean | null) | ((new (...args: any[]) => boolean) | (() => boolean | null))[], unknown, unknown, null, boolean>;
|
|
171
166
|
tabindex: import('element-plus/es/utils/index').EpPropFinalized<(new (...args: any[]) => string | number) | (() => string | number) | ((new (...args: any[]) => string | number) | (() => string | number))[], unknown, unknown, 0, boolean>;
|
|
172
167
|
content: import('element-plus/es/utils/index').EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
|
|
173
|
-
popperStyle: {
|
|
174
|
-
readonly type: import('vue').PropType<import('element-plus/es/utils/index').EpPropMergeType<(new (...args: any[]) => string | false | import('vue').CSSProperties | import('vue').StyleValue[]) | (() => import('vue').StyleValue) | ((new (...args: any[]) => string | false | import('vue').CSSProperties | import('vue').StyleValue[]) | (() => import('vue').StyleValue))[], unknown, unknown>>;
|
|
175
|
-
readonly required: false;
|
|
176
|
-
readonly validator: ((val: unknown) => boolean) | undefined;
|
|
177
|
-
__epPropKey: true;
|
|
178
|
-
};
|
|
179
168
|
enterable: {
|
|
180
169
|
readonly default: true;
|
|
181
170
|
readonly type: import('vue').PropType<import('element-plus/es/utils/index').EpPropMergeType<BooleanConstructor, unknown, unknown>>;
|
|
@@ -188,6 +177,7 @@ declare const _default: import('vue').DefineComponent<{
|
|
|
188
177
|
autoClose: import('element-plus/es/utils/index').EpPropFinalized<NumberConstructor, unknown, unknown, 0, boolean>;
|
|
189
178
|
showArrow: import('element-plus/es/utils/index').EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
|
|
190
179
|
persistent: import('element-plus/es/utils/index').EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
|
|
180
|
+
popperStyle: import('vue').PropType<Partial<import('vue').CSSProperties>>;
|
|
191
181
|
popperClass: StringConstructor;
|
|
192
182
|
ariaLabel: StringConstructor;
|
|
193
183
|
bg: StringConstructor;
|
|
@@ -49,7 +49,7 @@ export declare const popconfirmProps: {
|
|
|
49
49
|
transition: {
|
|
50
50
|
type: StringConstructor;
|
|
51
51
|
default: string;
|
|
52
|
-
};
|
|
52
|
+
}; /** 取消按钮类型 */
|
|
53
53
|
bodyClass: StringConstructor;
|
|
54
54
|
bodyStyle: PropType<Partial<import('vue').CSSProperties>>;
|
|
55
55
|
titleStyle: PropType<Partial<import('vue').CSSProperties>>;
|
|
@@ -71,12 +71,6 @@ export declare const popconfirmProps: {
|
|
|
71
71
|
visible: import('element-plus/es/utils/index').EpPropFinalized<(new (...args: any[]) => boolean) | (() => boolean | null) | ((new (...args: any[]) => boolean) | (() => boolean | null))[], unknown, unknown, null, boolean>;
|
|
72
72
|
tabindex: import('element-plus/es/utils/index').EpPropFinalized<(new (...args: any[]) => string | number) | (() => string | number) | ((new (...args: any[]) => string | number) | (() => string | number))[], unknown, unknown, 0, boolean>;
|
|
73
73
|
content: import('element-plus/es/utils/index').EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
|
|
74
|
-
popperStyle: {
|
|
75
|
-
readonly type: PropType<import('element-plus/es/utils/index').EpPropMergeType<(new (...args: any[]) => string | false | import('vue').CSSProperties | import('vue').StyleValue[]) | (() => import('vue').StyleValue) | ((new (...args: any[]) => string | false | import('vue').CSSProperties | import('vue').StyleValue[]) | (() => import('vue').StyleValue))[], unknown, unknown>>;
|
|
76
|
-
readonly required: false;
|
|
77
|
-
readonly validator: ((val: unknown) => boolean) | undefined;
|
|
78
|
-
__epPropKey: true;
|
|
79
|
-
};
|
|
80
74
|
enterable: {
|
|
81
75
|
readonly default: true;
|
|
82
76
|
readonly type: PropType<import('element-plus/es/utils/index').EpPropMergeType<BooleanConstructor, unknown, unknown>>;
|
|
@@ -89,6 +83,7 @@ export declare const popconfirmProps: {
|
|
|
89
83
|
autoClose: import('element-plus/es/utils/index').EpPropFinalized<NumberConstructor, unknown, unknown, 0, boolean>;
|
|
90
84
|
showArrow: import('element-plus/es/utils/index').EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
|
|
91
85
|
persistent: import('element-plus/es/utils/index').EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
|
|
86
|
+
popperStyle: PropType<Partial<import('vue').CSSProperties>>;
|
|
92
87
|
popperClass: StringConstructor;
|
|
93
88
|
ariaLabel: StringConstructor;
|
|
94
89
|
bg: StringConstructor;
|
|
@@ -23,30 +23,30 @@ const _sfc_main = vue.defineComponent({
|
|
|
23
23
|
const hide = () => {
|
|
24
24
|
tooltipRef.value && tooltipRef.value.hide();
|
|
25
25
|
};
|
|
26
|
-
const
|
|
26
|
+
const handleUpdateVisible = (visible) => {
|
|
27
27
|
emit("update:visible", visible);
|
|
28
28
|
};
|
|
29
|
-
const
|
|
29
|
+
const handlePopBeforeEnter = () => {
|
|
30
30
|
emit("before-enter");
|
|
31
31
|
};
|
|
32
|
-
const
|
|
32
|
+
const handlePopBeforeLeave = () => {
|
|
33
33
|
emit("before-leave");
|
|
34
34
|
};
|
|
35
|
-
const
|
|
35
|
+
const handlePopAfterEnter = () => {
|
|
36
36
|
emit("after-enter");
|
|
37
37
|
};
|
|
38
|
-
const
|
|
38
|
+
const handlePopAfterLeave = () => {
|
|
39
39
|
emit("after-leave");
|
|
40
40
|
};
|
|
41
41
|
return {
|
|
42
42
|
tooltipRef,
|
|
43
43
|
tooltipProps,
|
|
44
44
|
hide,
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
45
|
+
handleUpdateVisible,
|
|
46
|
+
handlePopBeforeEnter,
|
|
47
|
+
handlePopBeforeLeave,
|
|
48
|
+
handlePopAfterEnter,
|
|
49
|
+
handlePopAfterLeave
|
|
50
50
|
};
|
|
51
51
|
}
|
|
52
52
|
});
|
|
@@ -62,11 +62,11 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
62
62
|
return vue.openBlock(), vue.createBlock(_component_EleTooltip, vue.mergeProps({ tabindex: _ctx.tabindex }, _ctx.tooltipProps, {
|
|
63
63
|
ref: "tooltipRef",
|
|
64
64
|
isPopover: true,
|
|
65
|
-
"onUpdate:visible": _ctx.
|
|
66
|
-
onBeforeShow: _ctx.
|
|
67
|
-
onBeforeHide: _ctx.
|
|
68
|
-
onShow: _ctx.
|
|
69
|
-
onHide: _ctx.
|
|
65
|
+
"onUpdate:visible": _ctx.handleUpdateVisible,
|
|
66
|
+
onBeforeShow: _ctx.handlePopBeforeEnter,
|
|
67
|
+
onBeforeHide: _ctx.handlePopBeforeLeave,
|
|
68
|
+
onShow: _ctx.handlePopAfterEnter,
|
|
69
|
+
onHide: _ctx.handlePopAfterLeave
|
|
70
70
|
}), {
|
|
71
71
|
body: vue.withCtx(() => [
|
|
72
72
|
vue.createElementVNode("div", {
|
|
@@ -27,12 +27,6 @@ declare const _default: import('vue').DefineComponent<{
|
|
|
27
27
|
trigger: import('element-plus/es/utils/index').EpPropFinalized<(new (...args: any[]) => "click" | "contextmenu" | "focus" | "hover" | import('element-plus').TooltipTriggerType[]) | (() => import('element-plus/es/utils/typescript').Arrayable<import('element-plus').TooltipTriggerType>) | ((new (...args: any[]) => "click" | "contextmenu" | "focus" | "hover" | import('element-plus').TooltipTriggerType[]) | (() => import('element-plus/es/utils/typescript').Arrayable<import('element-plus').TooltipTriggerType>))[], unknown, unknown, "hover", boolean>;
|
|
28
28
|
tabindex: import('element-plus/es/utils/index').EpPropFinalized<(new (...args: any[]) => string | number) | (() => string | number) | ((new (...args: any[]) => string | number) | (() => string | number))[], unknown, unknown, 0, boolean>;
|
|
29
29
|
content: import('element-plus/es/utils/index').EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
|
|
30
|
-
popperStyle: {
|
|
31
|
-
readonly type: import('vue').PropType<import('element-plus/es/utils/index').EpPropMergeType<(new (...args: any[]) => string | false | import('vue').CSSProperties | import('vue').StyleValue[]) | (() => import('vue').StyleValue) | ((new (...args: any[]) => string | false | import('vue').CSSProperties | import('vue').StyleValue[]) | (() => import('vue').StyleValue))[], unknown, unknown>>;
|
|
32
|
-
readonly required: false;
|
|
33
|
-
readonly validator: ((val: unknown) => boolean) | undefined;
|
|
34
|
-
__epPropKey: true;
|
|
35
|
-
};
|
|
36
30
|
enterable: {
|
|
37
31
|
readonly default: true;
|
|
38
32
|
readonly type: import('vue').PropType<import('element-plus/es/utils/index').EpPropMergeType<BooleanConstructor, unknown, unknown>>;
|
|
@@ -45,6 +39,7 @@ declare const _default: import('vue').DefineComponent<{
|
|
|
45
39
|
autoClose: import('element-plus/es/utils/index').EpPropFinalized<NumberConstructor, unknown, unknown, 0, boolean>;
|
|
46
40
|
showArrow: import('element-plus/es/utils/index').EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
|
|
47
41
|
persistent: import('element-plus/es/utils/index').EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
|
|
42
|
+
popperStyle: import('vue').PropType<Partial<import('vue').CSSProperties>>;
|
|
48
43
|
popperClass: StringConstructor;
|
|
49
44
|
ariaLabel: StringConstructor;
|
|
50
45
|
bg: StringConstructor;
|
|
@@ -72,11 +67,11 @@ declare const _default: import('vue').DefineComponent<{
|
|
|
72
67
|
tooltipRef: import('vue').Ref<EleTooltipInstance>;
|
|
73
68
|
tooltipProps: import('vue').ComputedRef<Partial<import('../ele-tooltip/props').TooltipProps>>;
|
|
74
69
|
hide: () => void;
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
70
|
+
handleUpdateVisible: (visible: boolean) => void;
|
|
71
|
+
handlePopBeforeEnter: () => void;
|
|
72
|
+
handlePopBeforeLeave: () => void;
|
|
73
|
+
handlePopAfterEnter: () => void;
|
|
74
|
+
handlePopAfterLeave: () => void;
|
|
80
75
|
}, unknown, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
81
76
|
'update:visible': (value: boolean) => boolean;
|
|
82
77
|
'before-enter': () => boolean;
|
|
@@ -110,12 +105,6 @@ declare const _default: import('vue').DefineComponent<{
|
|
|
110
105
|
trigger: import('element-plus/es/utils/index').EpPropFinalized<(new (...args: any[]) => "click" | "contextmenu" | "focus" | "hover" | import('element-plus').TooltipTriggerType[]) | (() => import('element-plus/es/utils/typescript').Arrayable<import('element-plus').TooltipTriggerType>) | ((new (...args: any[]) => "click" | "contextmenu" | "focus" | "hover" | import('element-plus').TooltipTriggerType[]) | (() => import('element-plus/es/utils/typescript').Arrayable<import('element-plus').TooltipTriggerType>))[], unknown, unknown, "hover", boolean>;
|
|
111
106
|
tabindex: import('element-plus/es/utils/index').EpPropFinalized<(new (...args: any[]) => string | number) | (() => string | number) | ((new (...args: any[]) => string | number) | (() => string | number))[], unknown, unknown, 0, boolean>;
|
|
112
107
|
content: import('element-plus/es/utils/index').EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
|
|
113
|
-
popperStyle: {
|
|
114
|
-
readonly type: import('vue').PropType<import('element-plus/es/utils/index').EpPropMergeType<(new (...args: any[]) => string | false | import('vue').CSSProperties | import('vue').StyleValue[]) | (() => import('vue').StyleValue) | ((new (...args: any[]) => string | false | import('vue').CSSProperties | import('vue').StyleValue[]) | (() => import('vue').StyleValue))[], unknown, unknown>>;
|
|
115
|
-
readonly required: false;
|
|
116
|
-
readonly validator: ((val: unknown) => boolean) | undefined;
|
|
117
|
-
__epPropKey: true;
|
|
118
|
-
};
|
|
119
108
|
enterable: {
|
|
120
109
|
readonly default: true;
|
|
121
110
|
readonly type: import('vue').PropType<import('element-plus/es/utils/index').EpPropMergeType<BooleanConstructor, unknown, unknown>>;
|
|
@@ -128,6 +117,7 @@ declare const _default: import('vue').DefineComponent<{
|
|
|
128
117
|
autoClose: import('element-plus/es/utils/index').EpPropFinalized<NumberConstructor, unknown, unknown, 0, boolean>;
|
|
129
118
|
showArrow: import('element-plus/es/utils/index').EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
|
|
130
119
|
persistent: import('element-plus/es/utils/index').EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
|
|
120
|
+
popperStyle: import('vue').PropType<Partial<import('vue').CSSProperties>>;
|
|
131
121
|
popperClass: StringConstructor;
|
|
132
122
|
ariaLabel: StringConstructor;
|
|
133
123
|
bg: StringConstructor;
|
|
@@ -6,6 +6,7 @@ const props = require("../ele-tooltip/props");
|
|
|
6
6
|
const normalizeProps = core.omit(elementPlus.popoverProps, ["onUpdate:visible"]);
|
|
7
7
|
const popoverProps = {
|
|
8
8
|
...core.omit(props.tooltipProps, ["rawContent"]),
|
|
9
|
+
popperStyle: [String, Array, Object],
|
|
9
10
|
popperClass: String,
|
|
10
11
|
...normalizeProps,
|
|
11
12
|
transition: {
|
|
@@ -18,12 +18,6 @@ export declare const popoverProps: {
|
|
|
18
18
|
contentStyle: PropType<Partial<import('vue').CSSProperties>>;
|
|
19
19
|
width: import('element-plus/es/utils/index').EpPropFinalized<readonly [StringConstructor, NumberConstructor], unknown, unknown, 150, boolean>;
|
|
20
20
|
title: StringConstructor;
|
|
21
|
-
popperStyle: {
|
|
22
|
-
readonly type: PropType<import('element-plus/es/utils/index').EpPropMergeType<(new (...args: any[]) => string | false | import('vue').CSSProperties | import('vue').StyleValue[]) | (() => import('vue').StyleValue) | ((new (...args: any[]) => string | false | import('vue').CSSProperties | import('vue').StyleValue[]) | (() => import('vue').StyleValue))[], unknown, unknown>>;
|
|
23
|
-
readonly required: false;
|
|
24
|
-
readonly validator: ((val: unknown) => boolean) | undefined;
|
|
25
|
-
__epPropKey: true;
|
|
26
|
-
};
|
|
27
21
|
showArrow: import('element-plus/es/utils/index').EpPropFinalized<BooleanConstructor, unknown, unknown, true, boolean>;
|
|
28
22
|
disabled: BooleanConstructor;
|
|
29
23
|
trigger: import('element-plus/es/utils/index').EpPropFinalized<(new (...args: any[]) => "hover" | "focus" | "click" | "contextmenu" | import('element-plus').TooltipTriggerType[]) | (() => import('element-plus/es/utils/typescript').Arrayable<import('element-plus').TooltipTriggerType>) | ((new (...args: any[]) => "hover" | "focus" | "click" | "contextmenu" | import('element-plus').TooltipTriggerType[]) | (() => import('element-plus/es/utils/typescript').Arrayable<import('element-plus').TooltipTriggerType>))[], unknown, unknown, "hover", boolean>;
|
|
@@ -52,6 +46,7 @@ export declare const popoverProps: {
|
|
|
52
46
|
hideAfter: import('element-plus/es/utils/index').EpPropFinalized<NumberConstructor, unknown, unknown, 200, boolean>;
|
|
53
47
|
autoClose: import('element-plus/es/utils/index').EpPropFinalized<NumberConstructor, unknown, unknown, 0, boolean>;
|
|
54
48
|
tabindex: import('element-plus/es/utils/index').EpPropFinalized<(new (...args: any[]) => string | number) | (() => string | number) | ((new (...args: any[]) => string | number) | (() => string | number))[], unknown, unknown, 0, boolean>;
|
|
49
|
+
popperStyle: PropType<Partial<import('vue').CSSProperties>>;
|
|
55
50
|
popperClass: StringConstructor;
|
|
56
51
|
className: StringConstructor;
|
|
57
52
|
arrowOffset: import('element-plus/es/utils/index').EpPropFinalized<NumberConstructor, unknown, unknown, 5, boolean>;
|
|
@@ -9,38 +9,31 @@ const _sfc_main = vue.defineComponent({
|
|
|
9
9
|
props: props.printerProps,
|
|
10
10
|
emits: props.printerEmits,
|
|
11
11
|
setup(props2, { emit }) {
|
|
12
|
-
const
|
|
12
|
+
const doPrint = util.usePrinter(() => {
|
|
13
|
+
visible.value = false;
|
|
13
14
|
updateModelValue(false);
|
|
14
|
-
|
|
15
|
+
handleDone();
|
|
15
16
|
});
|
|
16
17
|
const container = vue.shallowRef(util.getPrintContainer());
|
|
17
18
|
const visible = vue.ref(false);
|
|
18
|
-
const isStatic = vue.computed(() =>
|
|
19
|
-
return props2.static;
|
|
20
|
-
});
|
|
19
|
+
const isStatic = vue.computed(() => props2.static);
|
|
21
20
|
const print = (options) => {
|
|
21
|
+
if (visible.value) {
|
|
22
|
+
return;
|
|
23
|
+
}
|
|
22
24
|
visible.value = true;
|
|
23
25
|
vue.nextTick(() => {
|
|
24
26
|
const option = {
|
|
25
|
-
printId,
|
|
26
27
|
title: props2.title,
|
|
27
28
|
margin: props2.margin,
|
|
28
29
|
direction: props2.direction,
|
|
29
30
|
orientation: props2.orientation,
|
|
30
31
|
options: util.mergeOptions(props2.options, options)
|
|
31
32
|
};
|
|
32
|
-
|
|
33
|
-
util.doPrintOnFrame(option);
|
|
34
|
-
visible.value = false;
|
|
35
|
-
} else {
|
|
36
|
-
util.doPrint(option);
|
|
37
|
-
visible.value = false;
|
|
38
|
-
updateModelValue(false);
|
|
39
|
-
onDone();
|
|
40
|
-
}
|
|
33
|
+
doPrint(option, props2.target);
|
|
41
34
|
});
|
|
42
35
|
};
|
|
43
|
-
const
|
|
36
|
+
const handleDone = () => {
|
|
44
37
|
emit("done");
|
|
45
38
|
};
|
|
46
39
|
const updateModelValue = (value) => {
|
|
@@ -48,13 +41,17 @@ const _sfc_main = vue.defineComponent({
|
|
|
48
41
|
};
|
|
49
42
|
vue.watch(
|
|
50
43
|
() => props2.modelValue,
|
|
51
|
-
(
|
|
52
|
-
if (
|
|
44
|
+
(modelValue) => {
|
|
45
|
+
if (modelValue) {
|
|
53
46
|
print();
|
|
54
47
|
}
|
|
55
|
-
}
|
|
56
|
-
{ immediate: true }
|
|
48
|
+
}
|
|
57
49
|
);
|
|
50
|
+
vue.onMounted(() => {
|
|
51
|
+
if (props2.modelValue) {
|
|
52
|
+
print();
|
|
53
|
+
}
|
|
54
|
+
});
|
|
58
55
|
return { container, visible, isStatic, print };
|
|
59
56
|
}
|
|
60
57
|
});
|
|
@@ -16,7 +16,7 @@ declare const _default: import('vue').DefineComponent<{
|
|
|
16
16
|
isStatic: import('vue').ComputedRef<boolean>;
|
|
17
17
|
print: (options?: any) => void;
|
|
18
18
|
}, unknown, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
19
|
-
'update:modelValue': (_value: boolean) => boolean;
|
|
19
|
+
'update:modelValue': (_value: boolean) => boolean;
|
|
20
20
|
done: () => boolean;
|
|
21
21
|
}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
|
|
22
22
|
modelValue: BooleanConstructor;
|
|
@@ -46,10 +46,10 @@ html.ele-printing > body {
|
|
|
46
46
|
background: #fff !important;
|
|
47
47
|
height: auto !important;
|
|
48
48
|
min-height: auto !important;
|
|
49
|
-
max-height:
|
|
49
|
+
max-height: none !important;
|
|
50
50
|
width: auto !important;
|
|
51
51
|
min-width: auto !important;
|
|
52
|
-
max-width:
|
|
52
|
+
max-width: none !important;
|
|
53
53
|
overflow: visible !important;
|
|
54
54
|
}
|
|
55
55
|
|
package/lib/ele-printer/util.cjs
CHANGED
|
@@ -1,10 +1,54 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
3
|
const vue = require("vue");
|
|
4
|
-
const
|
|
4
|
+
const hook = require("../utils/hook");
|
|
5
5
|
const printContainerId = "ele-printer-container";
|
|
6
6
|
const printFrameId = "ele-printer-iframe";
|
|
7
7
|
const printingClass = "ele-printing";
|
|
8
|
+
let printIdNum = 0;
|
|
9
|
+
function printPdf(option) {
|
|
10
|
+
const pFrame = getPrintFrame();
|
|
11
|
+
pFrame.onload = () => {
|
|
12
|
+
const url = pFrame.getAttribute("src");
|
|
13
|
+
if (!!url) {
|
|
14
|
+
pFrame.focus();
|
|
15
|
+
pFrame.contentWindow && pFrame.contentWindow.print(option.options);
|
|
16
|
+
option.done && option.done();
|
|
17
|
+
window.URL.revokeObjectURL(url);
|
|
18
|
+
}
|
|
19
|
+
};
|
|
20
|
+
const doPrint = (buffer) => {
|
|
21
|
+
const blob = new window.Blob([buffer], { type: "application/pdf" });
|
|
22
|
+
if (window.navigator && window.navigator["msSaveOrOpenBlob"]) {
|
|
23
|
+
window.navigator["msSaveOrOpenBlob"](blob, "print.pdf");
|
|
24
|
+
return;
|
|
25
|
+
}
|
|
26
|
+
pFrame.setAttribute("src", window.URL.createObjectURL(blob));
|
|
27
|
+
};
|
|
28
|
+
if (option.arraybuffer) {
|
|
29
|
+
doPrint(option.arraybuffer);
|
|
30
|
+
return;
|
|
31
|
+
}
|
|
32
|
+
if (option.url) {
|
|
33
|
+
const req = new window.XMLHttpRequest();
|
|
34
|
+
req.open("GET", option.url, true);
|
|
35
|
+
req.responseType = "arraybuffer";
|
|
36
|
+
req.onload = () => {
|
|
37
|
+
if ([200, 201].indexOf(req.status) !== -1) {
|
|
38
|
+
doPrint(req.response);
|
|
39
|
+
return;
|
|
40
|
+
}
|
|
41
|
+
option.error && option.error(req.status, req.statusText);
|
|
42
|
+
};
|
|
43
|
+
req.send();
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
function mergeOptions(options, userOptions) {
|
|
47
|
+
if (options == null) {
|
|
48
|
+
return userOptions;
|
|
49
|
+
}
|
|
50
|
+
return Object.assign({}, options, userOptions);
|
|
51
|
+
}
|
|
8
52
|
function getPrintContainer() {
|
|
9
53
|
const container = document.getElementById(printContainerId);
|
|
10
54
|
if (container) {
|
|
@@ -15,28 +59,40 @@ function getPrintContainer() {
|
|
|
15
59
|
document.body.appendChild(elem);
|
|
16
60
|
return elem;
|
|
17
61
|
}
|
|
18
|
-
function
|
|
19
|
-
const
|
|
20
|
-
if (
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
document.body.appendChild(elem);
|
|
27
|
-
const title = document.title;
|
|
28
|
-
if (option.title != null && option.title !== "") {
|
|
29
|
-
document.title = option.title;
|
|
30
|
-
}
|
|
31
|
-
window.print(option.options);
|
|
32
|
-
$html.classList.remove(printingClass);
|
|
33
|
-
document.body.removeChild(elem);
|
|
34
|
-
if (option.title != null) {
|
|
35
|
-
document.title = title;
|
|
36
|
-
}
|
|
62
|
+
function getOptionCss(opt) {
|
|
63
|
+
const css = ["@page {"];
|
|
64
|
+
if (opt.margin != null && opt.margin !== "") {
|
|
65
|
+
const v = typeof opt.margin === "number" ? opt.margin + "px" : opt.margin;
|
|
66
|
+
css.push(`margin: ${v};`);
|
|
67
|
+
}
|
|
68
|
+
if (opt.direction != null && opt.direction !== "") {
|
|
69
|
+
css.push(`size: ${opt.direction};`);
|
|
37
70
|
}
|
|
71
|
+
if (opt.orientation != null && opt.orientation !== "") {
|
|
72
|
+
css.push(`page-orientation: ${opt.orientation};`);
|
|
73
|
+
}
|
|
74
|
+
css.push("}");
|
|
75
|
+
return css.join(" ");
|
|
38
76
|
}
|
|
39
|
-
function
|
|
77
|
+
function removePrintFrame() {
|
|
78
|
+
const pFrame = document.getElementById(printFrameId);
|
|
79
|
+
if (pFrame && pFrame.parentNode) {
|
|
80
|
+
pFrame.parentNode.removeChild(pFrame);
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
function getPrintFrame() {
|
|
84
|
+
removePrintFrame();
|
|
85
|
+
const elem = document.createElement("iframe");
|
|
86
|
+
elem.id = printFrameId;
|
|
87
|
+
elem.style.width = "0px";
|
|
88
|
+
elem.style.height = "0px";
|
|
89
|
+
elem.style.position = "fixed";
|
|
90
|
+
elem.style.visibility = "hidden";
|
|
91
|
+
document.body.appendChild(elem);
|
|
92
|
+
elem.focus();
|
|
93
|
+
return elem;
|
|
94
|
+
}
|
|
95
|
+
function doPrintOnFrame(opt, printId) {
|
|
40
96
|
var _a;
|
|
41
97
|
const pFrame = getPrintFrame();
|
|
42
98
|
const pWin = pFrame.contentWindow;
|
|
@@ -70,7 +126,7 @@ function doPrintOnFrame(opt) {
|
|
|
70
126
|
document.title = '${opt.title}';
|
|
71
127
|
}
|
|
72
128
|
window.print(${printOption});
|
|
73
|
-
window.parent.postMessage('elePrintDone_${
|
|
129
|
+
window.parent.postMessage('elePrintDone_${printId}', '*');
|
|
74
130
|
};
|
|
75
131
|
<\/script>
|
|
76
132
|
`;
|
|
@@ -80,105 +136,58 @@ function doPrintOnFrame(opt) {
|
|
|
80
136
|
pDoc.close();
|
|
81
137
|
return pWin;
|
|
82
138
|
}
|
|
83
|
-
function getPrintFrame() {
|
|
84
|
-
removePrintFrame();
|
|
85
|
-
const elem = document.createElement("iframe");
|
|
86
|
-
elem.id = printFrameId;
|
|
87
|
-
elem.style.width = "0px";
|
|
88
|
-
elem.style.height = "0px";
|
|
89
|
-
elem.style.position = "fixed";
|
|
90
|
-
elem.style.visibility = "hidden";
|
|
91
|
-
document.body.appendChild(elem);
|
|
92
|
-
elem.focus();
|
|
93
|
-
return elem;
|
|
94
|
-
}
|
|
95
|
-
function removePrintFrame() {
|
|
96
|
-
const pFrame = document.getElementById(printFrameId);
|
|
97
|
-
if (pFrame && pFrame.parentNode) {
|
|
98
|
-
pFrame.parentNode.removeChild(pFrame);
|
|
99
|
-
}
|
|
100
|
-
}
|
|
101
|
-
function getOptionCss(opt) {
|
|
102
|
-
const css = ["@page {"];
|
|
103
|
-
if (opt.margin != null && opt.margin !== "") {
|
|
104
|
-
const v = typeof opt.margin === "number" ? opt.margin + "px" : opt.margin;
|
|
105
|
-
css.push(`margin: ${v};`);
|
|
106
|
-
}
|
|
107
|
-
if (opt.direction != null && opt.direction !== "") {
|
|
108
|
-
css.push(`size: ${opt.direction};`);
|
|
109
|
-
}
|
|
110
|
-
if (opt.orientation != null && opt.orientation !== "") {
|
|
111
|
-
css.push(`page-orientation: ${opt.orientation};`);
|
|
112
|
-
}
|
|
113
|
-
css.push("}");
|
|
114
|
-
return css.join(" ");
|
|
115
|
-
}
|
|
116
|
-
function mergeOptions(options, userOptions) {
|
|
117
|
-
if (options == null) {
|
|
118
|
-
return userOptions;
|
|
119
|
-
}
|
|
120
|
-
return Object.assign({}, options, userOptions);
|
|
121
|
-
}
|
|
122
139
|
function usePrinter(done) {
|
|
123
|
-
|
|
124
|
-
const
|
|
125
|
-
|
|
126
|
-
|
|
140
|
+
printIdNum++;
|
|
141
|
+
const printId = printIdNum;
|
|
142
|
+
const [startPrintTimer] = hook.useTimer(200);
|
|
143
|
+
const doPrint = (option, target) => {
|
|
144
|
+
if (target === "_iframe") {
|
|
145
|
+
doPrintOnFrame(option, printId);
|
|
146
|
+
return;
|
|
147
|
+
}
|
|
148
|
+
const $html = document.querySelector("html");
|
|
149
|
+
if (!$html) {
|
|
127
150
|
done && done();
|
|
151
|
+
return;
|
|
128
152
|
}
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
pFrame.onload = () => {
|
|
139
|
-
const url = pFrame.getAttribute("src");
|
|
140
|
-
if (!!url) {
|
|
141
|
-
pFrame.focus();
|
|
142
|
-
pFrame.contentWindow && pFrame.contentWindow.print(option.options);
|
|
143
|
-
option.done && option.done();
|
|
144
|
-
URL.revokeObjectURL(url);
|
|
153
|
+
$html.classList.add(printingClass);
|
|
154
|
+
const elem = document.createElement("style");
|
|
155
|
+
elem.setAttribute("type", "text/css");
|
|
156
|
+
elem.setAttribute("media", "print");
|
|
157
|
+
elem.innerHTML = getOptionCss(option);
|
|
158
|
+
document.body.appendChild(elem);
|
|
159
|
+
const title = document.title;
|
|
160
|
+
if (option.title != null && option.title !== "") {
|
|
161
|
+
document.title = option.title;
|
|
145
162
|
}
|
|
163
|
+
window.print(option.options);
|
|
164
|
+
startPrintTimer(() => {
|
|
165
|
+
$html.classList.remove(printingClass);
|
|
166
|
+
document.body.removeChild(elem);
|
|
167
|
+
if (option.title != null) {
|
|
168
|
+
document.title = title;
|
|
169
|
+
}
|
|
170
|
+
done && done();
|
|
171
|
+
});
|
|
146
172
|
};
|
|
147
|
-
const
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
173
|
+
const handleMessage = (e) => {
|
|
174
|
+
if (e.data === `elePrintDone_${printId}`) {
|
|
175
|
+
startPrintTimer(() => {
|
|
176
|
+
removePrintFrame();
|
|
177
|
+
done && done();
|
|
178
|
+
});
|
|
152
179
|
}
|
|
153
|
-
pFrame.setAttribute("src", window.URL.createObjectURL(blob));
|
|
154
180
|
};
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
const req = new window.XMLHttpRequest();
|
|
161
|
-
req.open("GET", option.url, true);
|
|
162
|
-
req.responseType = "arraybuffer";
|
|
163
|
-
req.onload = () => {
|
|
164
|
-
if ([200, 201].indexOf(req.status) !== -1) {
|
|
165
|
-
doPrint2(req.response);
|
|
166
|
-
return;
|
|
167
|
-
}
|
|
168
|
-
option.error && option.error(req.status, req.statusText);
|
|
169
|
-
};
|
|
170
|
-
req.send();
|
|
171
|
-
}
|
|
181
|
+
vue.onBeforeUnmount(() => {
|
|
182
|
+
window.removeEventListener("message", handleMessage);
|
|
183
|
+
});
|
|
184
|
+
window.addEventListener("message", handleMessage);
|
|
185
|
+
return doPrint;
|
|
172
186
|
}
|
|
173
|
-
exports.doPrint = doPrint;
|
|
174
|
-
exports.doPrintOnFrame = doPrintOnFrame;
|
|
175
|
-
exports.getOptionCss = getOptionCss;
|
|
176
187
|
exports.getPrintContainer = getPrintContainer;
|
|
177
|
-
exports.getPrintFrame = getPrintFrame;
|
|
178
188
|
exports.mergeOptions = mergeOptions;
|
|
179
189
|
exports.printContainerId = printContainerId;
|
|
180
190
|
exports.printFrameId = printFrameId;
|
|
181
191
|
exports.printPdf = printPdf;
|
|
182
192
|
exports.printingClass = printingClass;
|
|
183
|
-
exports.removePrintFrame = removePrintFrame;
|
|
184
193
|
exports.usePrinter = usePrinter;
|