Convert the src/pdf.js
and src/pdf.worker.js
files to use standard import
/export
statements
As part of reducing our reliance on SystemJS in the development viewer, this patch replaces usage of `require` statements with modern standards `import`/`export` statements instead. If we want to try and move forward with reducing usage of SystemJS, we don't have much choice but to make these kind changes (despite what prior test-results showed, however I'm no longer able to reproduce the issues locally).
This commit is contained in:
parent
d4d933538b
commit
e2c3312416
160
src/pdf.js
160
src/pdf.js
@ -12,36 +12,66 @@
|
|||||||
* See the License for the specific language governing permissions and
|
* See the License for the specific language governing permissions and
|
||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
/* eslint-disable no-unused-vars */
|
|
||||||
|
|
||||||
"use strict";
|
import {
|
||||||
|
addLinkAttributes,
|
||||||
|
getFilenameFromUrl,
|
||||||
|
isFetchSupported,
|
||||||
|
isValidFetchUrl,
|
||||||
|
LinkTarget,
|
||||||
|
loadScript,
|
||||||
|
PDFDateString,
|
||||||
|
RenderingCancelledException,
|
||||||
|
} from "./display/display_utils.js";
|
||||||
|
import {
|
||||||
|
build,
|
||||||
|
getDocument,
|
||||||
|
LoopbackPort,
|
||||||
|
PDFDataRangeTransport,
|
||||||
|
PDFWorker,
|
||||||
|
setPDFNetworkStreamFactory,
|
||||||
|
version,
|
||||||
|
} from "./display/api.js";
|
||||||
|
import {
|
||||||
|
CMapCompressionType,
|
||||||
|
createObjectURL,
|
||||||
|
createPromiseCapability,
|
||||||
|
createValidAbsoluteUrl,
|
||||||
|
InvalidPDFException,
|
||||||
|
MissingPDFException,
|
||||||
|
NativeImageDecoding,
|
||||||
|
OPS,
|
||||||
|
PasswordResponses,
|
||||||
|
PermissionFlag,
|
||||||
|
removeNullCharacters,
|
||||||
|
shadow,
|
||||||
|
UnexpectedResponseException,
|
||||||
|
UNSUPPORTED_FEATURES,
|
||||||
|
Util,
|
||||||
|
VerbosityLevel,
|
||||||
|
} from "./shared/util.js";
|
||||||
|
import { AnnotationLayer } from "./display/annotation_layer.js";
|
||||||
|
import { apiCompatibilityParams } from "./display/api_compatibility.js";
|
||||||
|
import { GlobalWorkerOptions } from "./display/worker_options.js";
|
||||||
|
import { renderTextLayer } from "./display/text_layer.js";
|
||||||
|
import { SVGGraphics } from "./display/svg.js";
|
||||||
|
|
||||||
var pdfjsVersion =
|
/* eslint-disable-next-line no-unused-vars */
|
||||||
|
const pdfjsVersion =
|
||||||
typeof PDFJSDev !== "undefined" ? PDFJSDev.eval("BUNDLE_VERSION") : void 0;
|
typeof PDFJSDev !== "undefined" ? PDFJSDev.eval("BUNDLE_VERSION") : void 0;
|
||||||
var pdfjsBuild =
|
/* eslint-disable-next-line no-unused-vars */
|
||||||
|
const pdfjsBuild =
|
||||||
typeof PDFJSDev !== "undefined" ? PDFJSDev.eval("BUNDLE_BUILD") : void 0;
|
typeof PDFJSDev !== "undefined" ? PDFJSDev.eval("BUNDLE_BUILD") : void 0;
|
||||||
|
|
||||||
var pdfjsSharedUtil = require("./shared/util.js");
|
|
||||||
var pdfjsDisplayAPI = require("./display/api.js");
|
|
||||||
var pdfjsDisplayTextLayer = require("./display/text_layer.js");
|
|
||||||
var pdfjsDisplayAnnotationLayer = require("./display/annotation_layer.js");
|
|
||||||
var pdfjsDisplayDisplayUtils = require("./display/display_utils.js");
|
|
||||||
var pdfjsDisplaySVG = require("./display/svg.js");
|
|
||||||
const pdfjsDisplayWorkerOptions = require("./display/worker_options.js");
|
|
||||||
const pdfjsDisplayAPICompatibility = require("./display/api_compatibility.js");
|
|
||||||
|
|
||||||
if (typeof PDFJSDev === "undefined" || !PDFJSDev.test("PRODUCTION")) {
|
if (typeof PDFJSDev === "undefined" || !PDFJSDev.test("PRODUCTION")) {
|
||||||
const streamsPromise = Promise.all([
|
const streamsPromise = Promise.all([
|
||||||
SystemJS.import("pdfjs/display/network.js"),
|
SystemJS.import("pdfjs/display/network.js"),
|
||||||
SystemJS.import("pdfjs/display/fetch_stream.js"),
|
SystemJS.import("pdfjs/display/fetch_stream.js"),
|
||||||
]);
|
]);
|
||||||
pdfjsDisplayAPI.setPDFNetworkStreamFactory(params => {
|
setPDFNetworkStreamFactory(params => {
|
||||||
return streamsPromise.then(streams => {
|
return streamsPromise.then(streams => {
|
||||||
const [{ PDFNetworkStream }, { PDFFetchStream }] = streams;
|
const [{ PDFNetworkStream }, { PDFFetchStream }] = streams;
|
||||||
if (
|
if (isFetchSupported() && isValidFetchUrl(params.url)) {
|
||||||
pdfjsDisplayDisplayUtils.isFetchSupported() &&
|
|
||||||
pdfjsDisplayDisplayUtils.isValidFetchUrl(params.url)
|
|
||||||
) {
|
|
||||||
return new PDFFetchStream(params);
|
return new PDFFetchStream(params);
|
||||||
}
|
}
|
||||||
return new PDFNetworkStream(params);
|
return new PDFNetworkStream(params);
|
||||||
@ -51,20 +81,17 @@ if (typeof PDFJSDev === "undefined" || !PDFJSDev.test("PRODUCTION")) {
|
|||||||
const { isNodeJS } = require("./shared/is_node.js");
|
const { isNodeJS } = require("./shared/is_node.js");
|
||||||
if (isNodeJS) {
|
if (isNodeJS) {
|
||||||
const PDFNodeStream = require("./display/node_stream.js").PDFNodeStream;
|
const PDFNodeStream = require("./display/node_stream.js").PDFNodeStream;
|
||||||
pdfjsDisplayAPI.setPDFNetworkStreamFactory(params => {
|
setPDFNetworkStreamFactory(params => {
|
||||||
return new PDFNodeStream(params);
|
return new PDFNodeStream(params);
|
||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
const PDFNetworkStream = require("./display/network.js").PDFNetworkStream;
|
const PDFNetworkStream = require("./display/network.js").PDFNetworkStream;
|
||||||
let PDFFetchStream;
|
let PDFFetchStream;
|
||||||
if (pdfjsDisplayDisplayUtils.isFetchSupported()) {
|
if (isFetchSupported()) {
|
||||||
PDFFetchStream = require("./display/fetch_stream.js").PDFFetchStream;
|
PDFFetchStream = require("./display/fetch_stream.js").PDFFetchStream;
|
||||||
}
|
}
|
||||||
pdfjsDisplayAPI.setPDFNetworkStreamFactory(params => {
|
setPDFNetworkStreamFactory(params => {
|
||||||
if (
|
if (PDFFetchStream && isValidFetchUrl(params.url)) {
|
||||||
PDFFetchStream &&
|
|
||||||
pdfjsDisplayDisplayUtils.isValidFetchUrl(params.url)
|
|
||||||
) {
|
|
||||||
return new PDFFetchStream(params);
|
return new PDFFetchStream(params);
|
||||||
}
|
}
|
||||||
return new PDFNetworkStream(params);
|
return new PDFNetworkStream(params);
|
||||||
@ -86,56 +113,49 @@ if (typeof PDFJSDev === "undefined" || !PDFJSDev.test("PRODUCTION")) {
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
if (
|
if (isFetchSupported() && isChromeWithFetchCredentials()) {
|
||||||
pdfjsDisplayDisplayUtils.isFetchSupported() &&
|
|
||||||
isChromeWithFetchCredentials()
|
|
||||||
) {
|
|
||||||
PDFFetchStream = require("./display/fetch_stream.js").PDFFetchStream;
|
PDFFetchStream = require("./display/fetch_stream.js").PDFFetchStream;
|
||||||
}
|
}
|
||||||
pdfjsDisplayAPI.setPDFNetworkStreamFactory(params => {
|
setPDFNetworkStreamFactory(params => {
|
||||||
if (
|
if (PDFFetchStream && isValidFetchUrl(params.url)) {
|
||||||
PDFFetchStream &&
|
|
||||||
pdfjsDisplayDisplayUtils.isValidFetchUrl(params.url)
|
|
||||||
) {
|
|
||||||
return new PDFFetchStream(params);
|
return new PDFFetchStream(params);
|
||||||
}
|
}
|
||||||
return new PDFNetworkStream(params);
|
return new PDFNetworkStream(params);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
exports.build = pdfjsDisplayAPI.build;
|
export {
|
||||||
exports.version = pdfjsDisplayAPI.version;
|
addLinkAttributes,
|
||||||
exports.getDocument = pdfjsDisplayAPI.getDocument;
|
getFilenameFromUrl,
|
||||||
exports.LoopbackPort = pdfjsDisplayAPI.LoopbackPort;
|
LinkTarget,
|
||||||
exports.PDFDataRangeTransport = pdfjsDisplayAPI.PDFDataRangeTransport;
|
loadScript,
|
||||||
exports.PDFWorker = pdfjsDisplayAPI.PDFWorker;
|
PDFDateString,
|
||||||
exports.renderTextLayer = pdfjsDisplayTextLayer.renderTextLayer;
|
RenderingCancelledException,
|
||||||
exports.AnnotationLayer = pdfjsDisplayAnnotationLayer.AnnotationLayer;
|
build,
|
||||||
exports.createPromiseCapability = pdfjsSharedUtil.createPromiseCapability;
|
getDocument,
|
||||||
exports.PasswordResponses = pdfjsSharedUtil.PasswordResponses;
|
LoopbackPort,
|
||||||
exports.InvalidPDFException = pdfjsSharedUtil.InvalidPDFException;
|
PDFDataRangeTransport,
|
||||||
exports.MissingPDFException = pdfjsSharedUtil.MissingPDFException;
|
PDFWorker,
|
||||||
exports.SVGGraphics = pdfjsDisplaySVG.SVGGraphics;
|
version,
|
||||||
exports.NativeImageDecoding = pdfjsSharedUtil.NativeImageDecoding;
|
CMapCompressionType,
|
||||||
exports.CMapCompressionType = pdfjsSharedUtil.CMapCompressionType;
|
createObjectURL,
|
||||||
exports.PermissionFlag = pdfjsSharedUtil.PermissionFlag;
|
createPromiseCapability,
|
||||||
exports.UnexpectedResponseException =
|
createValidAbsoluteUrl,
|
||||||
pdfjsSharedUtil.UnexpectedResponseException;
|
InvalidPDFException,
|
||||||
exports.OPS = pdfjsSharedUtil.OPS;
|
MissingPDFException,
|
||||||
exports.VerbosityLevel = pdfjsSharedUtil.VerbosityLevel;
|
NativeImageDecoding,
|
||||||
exports.UNSUPPORTED_FEATURES = pdfjsSharedUtil.UNSUPPORTED_FEATURES;
|
OPS,
|
||||||
exports.createValidAbsoluteUrl = pdfjsSharedUtil.createValidAbsoluteUrl;
|
PasswordResponses,
|
||||||
exports.createObjectURL = pdfjsSharedUtil.createObjectURL;
|
PermissionFlag,
|
||||||
exports.removeNullCharacters = pdfjsSharedUtil.removeNullCharacters;
|
removeNullCharacters,
|
||||||
exports.shadow = pdfjsSharedUtil.shadow;
|
shadow,
|
||||||
exports.Util = pdfjsSharedUtil.Util;
|
UnexpectedResponseException,
|
||||||
exports.RenderingCancelledException =
|
UNSUPPORTED_FEATURES,
|
||||||
pdfjsDisplayDisplayUtils.RenderingCancelledException;
|
Util,
|
||||||
exports.getFilenameFromUrl = pdfjsDisplayDisplayUtils.getFilenameFromUrl;
|
VerbosityLevel,
|
||||||
exports.LinkTarget = pdfjsDisplayDisplayUtils.LinkTarget;
|
AnnotationLayer,
|
||||||
exports.addLinkAttributes = pdfjsDisplayDisplayUtils.addLinkAttributes;
|
apiCompatibilityParams,
|
||||||
exports.loadScript = pdfjsDisplayDisplayUtils.loadScript;
|
GlobalWorkerOptions,
|
||||||
exports.PDFDateString = pdfjsDisplayDisplayUtils.PDFDateString;
|
renderTextLayer,
|
||||||
exports.GlobalWorkerOptions = pdfjsDisplayWorkerOptions.GlobalWorkerOptions;
|
SVGGraphics,
|
||||||
exports.apiCompatibilityParams =
|
};
|
||||||
pdfjsDisplayAPICompatibility.apiCompatibilityParams;
|
|
||||||
|
9
src/pdf.worker.js
vendored
9
src/pdf.worker.js
vendored
@ -12,13 +12,12 @@
|
|||||||
* See the License for the specific language governing permissions and
|
* See the License for the specific language governing permissions and
|
||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
/* eslint-disable no-unused-vars */
|
|
||||||
|
|
||||||
"use strict";
|
import { WorkerMessageHandler } from "./core/worker.js";
|
||||||
|
|
||||||
|
/* eslint-disable-next-line no-unused-vars */
|
||||||
const pdfjsVersion = PDFJSDev.eval("BUNDLE_VERSION");
|
const pdfjsVersion = PDFJSDev.eval("BUNDLE_VERSION");
|
||||||
|
/* eslint-disable-next-line no-unused-vars */
|
||||||
const pdfjsBuild = PDFJSDev.eval("BUNDLE_BUILD");
|
const pdfjsBuild = PDFJSDev.eval("BUNDLE_BUILD");
|
||||||
|
|
||||||
const pdfjsCoreWorker = require("./core/worker.js");
|
export { WorkerMessageHandler };
|
||||||
|
|
||||||
exports.WorkerMessageHandler = pdfjsCoreWorker.WorkerMessageHandler;
|
|
||||||
|
Loading…
Reference in New Issue
Block a user