1 |
|
2 |
|
3 |
|
4 |
|
5 |
|
6 |
|
7 |
|
8 |
|
9 |
|
10 |
|
11 |
|
12 |
|
13 |
|
14 |
|
15 |
|
16 |
|
17 |
|
18 |
|
19 |
|
20 |
|
21 |
|
22 | 'use strict';
|
23 |
|
24 | Object.defineProperty(exports, "__esModule", {
|
25 | value: true
|
26 | });
|
27 | exports.TEST_PDFS_PATH = exports.buildGetDocumentParams = exports.XRefMock = exports.NodeCMapReaderFactory = exports.NodeFileReaderFactory = undefined;
|
28 |
|
29 | var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
|
30 |
|
31 | var _util = require('../../shared/util');
|
32 |
|
33 | var _is_node = require('../../shared/is_node');
|
34 |
|
35 | var _is_node2 = _interopRequireDefault(_is_node);
|
36 |
|
37 | var _primitives = require('../../core/primitives');
|
38 |
|
39 | function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
40 |
|
41 | function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
42 |
|
43 | var NodeFileReaderFactory = function () {
|
44 | function NodeFileReaderFactory() {
|
45 | _classCallCheck(this, NodeFileReaderFactory);
|
46 | }
|
47 |
|
48 | _createClass(NodeFileReaderFactory, null, [{
|
49 | key: 'fetch',
|
50 | value: function fetch(params) {
|
51 | var fs = require('fs');
|
52 | var file = fs.readFileSync(params.path);
|
53 | return new Uint8Array(file);
|
54 | }
|
55 | }]);
|
56 |
|
57 | return NodeFileReaderFactory;
|
58 | }();
|
59 |
|
60 | var TEST_PDFS_PATH = {
|
61 | dom: '../pdfs/',
|
62 | node: './test/pdfs/'
|
63 | };
|
64 | function buildGetDocumentParams(filename, options) {
|
65 | var params = Object.create(null);
|
66 | if ((0, _is_node2.default)()) {
|
67 | params.url = TEST_PDFS_PATH.node + filename;
|
68 | } else {
|
69 | params.url = new URL(TEST_PDFS_PATH.dom + filename, window.location).href;
|
70 | }
|
71 | for (var option in options) {
|
72 | params[option] = options[option];
|
73 | }
|
74 | return params;
|
75 | }
|
76 |
|
77 | var NodeCMapReaderFactory = function () {
|
78 | function NodeCMapReaderFactory(_ref) {
|
79 | var _ref$baseUrl = _ref.baseUrl,
|
80 | baseUrl = _ref$baseUrl === undefined ? null : _ref$baseUrl,
|
81 | _ref$isCompressed = _ref.isCompressed,
|
82 | isCompressed = _ref$isCompressed === undefined ? false : _ref$isCompressed;
|
83 |
|
84 | _classCallCheck(this, NodeCMapReaderFactory);
|
85 |
|
86 | this.baseUrl = baseUrl;
|
87 | this.isCompressed = isCompressed;
|
88 | }
|
89 |
|
90 | _createClass(NodeCMapReaderFactory, [{
|
91 | key: 'fetch',
|
92 | value: function fetch(_ref2) {
|
93 | var _this = this;
|
94 |
|
95 | var name = _ref2.name;
|
96 |
|
97 | if (!this.baseUrl) {
|
98 | return Promise.reject(new Error('The CMap "baseUrl" parameter must be specified, ensure that ' + 'the "cMapUrl" and "cMapPacked" API parameters are provided.'));
|
99 | }
|
100 | if (!name) {
|
101 | return Promise.reject(new Error('CMap name must be specified.'));
|
102 | }
|
103 | return new Promise(function (resolve, reject) {
|
104 | var url = _this.baseUrl + name + (_this.isCompressed ? '.bcmap' : '');
|
105 | var fs = require('fs');
|
106 | fs.readFile(url, function (error, data) {
|
107 | if (error || !data) {
|
108 | reject(new Error('Unable to load ' + (_this.isCompressed ? 'binary ' : '') + 'CMap at: ' + url));
|
109 | return;
|
110 | }
|
111 | resolve({
|
112 | cMapData: new Uint8Array(data),
|
113 | compressionType: _this.isCompressed ? _util.CMapCompressionType.BINARY : _util.CMapCompressionType.NONE
|
114 | });
|
115 | });
|
116 | });
|
117 | }
|
118 | }]);
|
119 |
|
120 | return NodeCMapReaderFactory;
|
121 | }();
|
122 |
|
123 | var XRefMock = function () {
|
124 | function XRefMock(array) {
|
125 | _classCallCheck(this, XRefMock);
|
126 |
|
127 | this._map = Object.create(null);
|
128 | for (var key in array) {
|
129 | var obj = array[key];
|
130 | this._map[obj.ref.toString()] = obj.data;
|
131 | }
|
132 | }
|
133 |
|
134 | _createClass(XRefMock, [{
|
135 | key: 'fetch',
|
136 | value: function fetch(ref) {
|
137 | return this._map[ref.toString()];
|
138 | }
|
139 | }, {
|
140 | key: 'fetchAsync',
|
141 | value: function fetchAsync(ref) {
|
142 | return Promise.resolve(this.fetch(ref));
|
143 | }
|
144 | }, {
|
145 | key: 'fetchIfRef',
|
146 | value: function fetchIfRef(obj) {
|
147 | if (!(0, _primitives.isRef)(obj)) {
|
148 | return obj;
|
149 | }
|
150 | return this.fetch(obj);
|
151 | }
|
152 | }, {
|
153 | key: 'fetchIfRefAsync',
|
154 | value: function fetchIfRefAsync(obj) {
|
155 | return Promise.resolve(this.fetchIfRef(obj));
|
156 | }
|
157 | }]);
|
158 |
|
159 | return XRefMock;
|
160 | }();
|
161 |
|
162 | exports.NodeFileReaderFactory = NodeFileReaderFactory;
|
163 | exports.NodeCMapReaderFactory = NodeCMapReaderFactory;
|
164 | exports.XRefMock = XRefMock;
|
165 | exports.buildGetDocumentParams = buildGetDocumentParams;
|
166 | exports.TEST_PDFS_PATH = TEST_PDFS_PATH; |
\ | No newline at end of file |