1 | "use strict";
|
2 | Object.defineProperty(exports, "__esModule", { value: true });
|
3 | exports.handleAppPrint = void 0;
|
4 | var redirect_1 = require("./redirect");
|
5 | function isRunningOniOS() {
|
6 | return navigator.userAgent.indexOf('iOS') >= 0;
|
7 | }
|
8 | function createHiddenInput() {
|
9 | var currentWindow = redirect_1.getWindow();
|
10 | if (!currentWindow || !currentWindow.document || !currentWindow.document.body) {
|
11 | return;
|
12 | }
|
13 | var inputElement = window.document.createElement('input');
|
14 | inputElement.style.display = 'none';
|
15 | window.document.body.appendChild(inputElement);
|
16 | return inputElement;
|
17 | }
|
18 | function printWindow() {
|
19 | if (!redirect_1.getWindow()) {
|
20 | return;
|
21 | }
|
22 |
|
23 | window.print();
|
24 | }
|
25 | function handleMobileAppPrint() {
|
26 | var input = createHiddenInput();
|
27 | if (!input) {
|
28 | return;
|
29 | }
|
30 | input.select();
|
31 | printWindow();
|
32 | input.remove();
|
33 | }
|
34 | function handleAppPrint() {
|
35 | if (isRunningOniOS()) {
|
36 | handleMobileAppPrint();
|
37 | }
|
38 | else {
|
39 | printWindow();
|
40 | }
|
41 | }
|
42 | exports.handleAppPrint = handleAppPrint;
|