UNPKG

ngx-extended-pdf-viewer

Version:

Embedding PDF files in your Angular application. Highly configurable viewer including the toolbar, sidebar, and all the features you're used to.

115 lines 14.5 kB
const _isIE11 = typeof window === 'undefined' ? false : !!window.MSInputMethodContext && !!document.documentMode; const isEdge = typeof navigator === 'undefined' || /Edge\/\d./i.test(navigator.userAgent); const needsES5 = typeof ReadableStream === 'undefined' || typeof Promise['allSettled'] === 'undefined'; export const pdfjsVersion = '4.0.730'; export const pdfjsBleedingEdgeVersion = '4.0.844'; export function getVersionSuffix(folder) { if (folder?.includes('bleeding-edge')) { return pdfjsBleedingEdgeVersion; } return pdfjsVersion; } export function assetsUrl(url, postfixIfPathIsRelativ = '') { if (url.includes('://')) { // the assets folder is on an absolute path (like https://example.com/assets) return url; } return `./${url + postfixIfPathIsRelativ}`; } const AnnotationMode = { DISABLE: 0, ENABLE: 1, ENABLE_FORMS: 2, ENABLE_STORAGE: 3, }; const AnnotationEditorType = { DISABLE: -1, NONE: 0, FREETEXT: 3, INK: 15, }; function getDefaultLanguage() { if (typeof navigator !== 'undefined') { return navigator?.language || 'en-US'; } return 'en-US'; } export let pdfDefaultOptions = { needsES5: _isIE11 || isEdge || needsES5, annotationEditorMode: 0, annotationMode: 2, defaultZoomDelay: 400, cursorToolOnLoad: 0, defaultUrl: '', defaultZoomValue: undefined, disableHistory: false, disablePageLabels: false, enablePermissions: false, docBaseUrl: '', enablePrintAutoRotate: true, externalLinkRel: 'noopener noreferrer nofollow', externalLinkTarget: 0, historyUpdateUrl: false, ignoreDestinationZoom: false, imageResourcesPath: './images/', maxCanvasPixels: 16777216, forcePageColors: false, pageColorsBackground: 'Canvas', pageColorsForeground: 'CanvasText', pdfBugEnabled: false, printResolution: 150, rangeChunkSize: 65536, removePageBorders: false, renderer: 'canvas', renderForms: true, enableXfa: true, fontExtraProperties: false, sidebarViewOnLoad: -1, scrollModeOnLoad: -1, spreadModeOnLoad: -1, textLayerMode: 1, useOnlyCssZoom: false, // viewerCssTheme: 0, // not supported by ngx-extended-pdf-viewer viewOnLoad: 0, cMapPacked: true, cMapUrl: () => `${assetsUrl(pdfDefaultOptions.assetsFolder, '/..')}/cmaps/`, disableAutoFetch: false, disableFontFace: false, disableRange: false, disableStream: true, isEvalSupported: true, isOffscreenCanvasSupported: true, maxImageSize: -1, pdfBug: false, postMessageTransfers: true, verbosity: 1, workerPort: null, assetsFolder: 'assets', _internalFilenameSuffix: '.min', sandboxBundleSrc: () => pdfDefaultOptions.needsES5 ? `./pdf.sandbox-${getVersionSuffix(assetsUrl(pdfDefaultOptions.assetsFolder))}-es5${pdfDefaultOptions._internalFilenameSuffix}.mjs` : `./pdf.sandbox-${getVersionSuffix(assetsUrl(pdfDefaultOptions.assetsFolder))}${pdfDefaultOptions._internalFilenameSuffix}.mjs`, workerSrc: () => pdfDefaultOptions.needsES5 ? `${assetsUrl(pdfDefaultOptions.assetsFolder)}/pdf.worker-${getVersionSuffix(assetsUrl(pdfDefaultOptions.assetsFolder))}-es5.mjs` : `${assetsUrl(pdfDefaultOptions.assetsFolder)}/pdf.worker-${getVersionSuffix(assetsUrl(pdfDefaultOptions.assetsFolder))}.mjs`, standardFontDataUrl: () => `${assetsUrl(pdfDefaultOptions.assetsFolder, '/..')}/standard_fonts/`, // options specific to ngx-extended-pdf-viewer (as opposed to being used by pdf.js) doubleTapZoomFactor: 'page-width', doubleTapZoomsInHandMode: true, doubleTapZoomsInTextSelectionMode: false, doubleTapResetsZoomOnSecondDoubleTap: false, enableScripting: true, defaultCacheSize: 50, passwordPrompt: undefined, locale: getDefaultLanguage(), activateWillReadFrequentlyFlag: false, }; if (typeof window !== 'undefined') { if (window.pdfDefaultOptions) { pdfDefaultOptions = window.pdfDefaultOptions; } else { window.pdfDefaultOptions = pdfDefaultOptions; } } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGRmLWRlZmF1bHQtb3B0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1leHRlbmRlZC1wZGYtdmlld2VyL3NyYy9saWIvb3B0aW9ucy9wZGYtZGVmYXVsdC1vcHRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sT0FBTyxHQUFHLE9BQU8sTUFBTSxLQUFLLFdBQVcsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQU8sTUFBTyxDQUFDLG9CQUFvQixJQUFJLENBQUMsQ0FBTyxRQUFTLENBQUMsWUFBWSxDQUFDO0FBQy9ILE1BQU0sTUFBTSxHQUFHLE9BQU8sU0FBUyxLQUFLLFdBQVcsSUFBSSxZQUFZLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsQ0FBQztBQUMxRixNQUFNLFFBQVEsR0FBRyxPQUFPLGNBQWMsS0FBSyxXQUFXLElBQUksT0FBTyxPQUFPLENBQUMsWUFBWSxDQUFDLEtBQUssV0FBVyxDQUFDO0FBRXZHLE1BQU0sQ0FBQyxNQUFNLFlBQVksR0FBRyxTQUFTLENBQUM7QUFDdEMsTUFBTSxDQUFDLE1BQU0sd0JBQXdCLEdBQUcsU0FBUyxDQUFDO0FBQ2xELE1BQU0sVUFBVSxnQkFBZ0IsQ0FBQyxNQUFjO0lBQzdDLElBQUksTUFBTSxFQUFFLFFBQVEsQ0FBQyxlQUFlLENBQUMsRUFBRTtRQUNyQyxPQUFPLHdCQUF3QixDQUFDO0tBQ2pDO0lBQ0QsT0FBTyxZQUFZLENBQUM7QUFDdEIsQ0FBQztBQUVELE1BQU0sVUFBVSxTQUFTLENBQUMsR0FBVyxFQUFFLHNCQUFzQixHQUFHLEVBQUU7SUFDaEUsSUFBSSxHQUFHLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxFQUFFO1FBQ3ZCLDZFQUE2RTtRQUM3RSxPQUFPLEdBQUcsQ0FBQztLQUNaO0lBQ0QsT0FBTyxLQUFLLEdBQUcsR0FBRyxzQkFBc0IsRUFBRSxDQUFD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UyxDQUFDLGlCQUFpQixDQUFDLFlBQVksQ0FBQyxDQUFDLEdBQUcsaUJBQWlCLENBQUMsdUJBQXVCLE1BQU07SUFDcEksU0FBUyxFQUFFLEdBQUcsRUFBRSxDQUNkLGlCQUFpQixDQUFDLFFBQVE7UUFDeEIsQ0FBQyxDQUFDLEdBQUcsU0FBUyxDQUFDLGlCQUFpQixDQUFDLFlBQVksQ0FBQyxlQUFlLGdCQUFnQixDQUFDLFNBQVMsQ0FBQyxpQkFBaUIsQ0FBQyxZQUFZLENBQUMsQ0FBQyxVQUFVO1FBQ2xJLENBQUMsQ0FBQyxHQUFHLFNBQVMsQ0FBQyxpQkFBaUIsQ0FBQyxZQUFZLENBQUMsZUFBZSxnQkFBZ0IsQ0FBQyxTQUFTLENBQUMsaUJBQWlCLENBQUMsWUFBWSxDQUFDLENBQUMsTUFBTTtJQUNsSSxtQkFBbUIsRUFBRSxHQUFHLEVBQUUsQ0FBQyxHQUFHLFNBQVMsQ0FBQyxpQkFBaUIsQ0FBQyxZQUFZLEVBQUUsS0FBSyxDQUFDLGtCQUFrQjtJQUVoRyxtRkFBbUY7SUFDbkYsbUJBQW1CLEVBQUUsWUFBWTtJQUNqQyx3QkFBd0IsRUFBRSxJQUFJO0lBQzlCLGlDQUFpQyxFQUFFLEtBQUs7SUFDeEMsb0NBQW9DLEVBQUUsS0FBSztJQUMzQyxlQUFlLEVBQUUsSUFBSTtJQUNyQixnQkFBZ0IsRUFBRSxFQUFFO0lBQ3BCLGNBQWMsRUFBRSxTQUFTO0lBQ3pCLE1BQU0sRUFBRSxrQkFBa0IsRUFBRTtJQUM1Qiw4QkFBOEIsRUFBRSxLQUFLO0NBQ3RDLENBQUM7QUFFRixJQUFJLE9BQU8sTUFBTSxLQUFLLFdBQVcsRUFBRTtJQUNqQyxJQUFVLE1BQU8sQ0FBQyxpQkFBaUIsRUFBRTtRQUNuQyxpQkFBaUIsR0FBUyxNQUFPLENBQUMsaUJBQWlCLENBQUM7S0FDckQ7U0FBTTtRQUNDLE1BQU8sQ0FBQyxpQkFBaUIsR0FBRyxpQkFBaUIsQ0FBQztLQUNyRDtDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiY29uc3QgX2lzSUUxMSA9IHR5cGVvZiB3aW5kb3cgPT09ICd1bmRlZmluZWQnID8gZmFsc2UgOiAhISg8YW55PndpbmRvdykuTVNJbnB1dE1ldGhvZENvbnRleHQgJiYgISEoPGFueT5kb2N1bWVudCkuZG9jdW1lbnRNb2RlO1xuY29uc3QgaXNFZGdlID0gdHlwZW9mIG5hdmlnYXRvciA9PT0gJ3VuZGVmaW5lZCcgfHwgL0VkZ2VcXC9cXGQuL2kudGVzdChuYXZpZ2F0b3IudXNlckFnZW50KTtcbmNvbnN0IG5lZWRzRVM1ID0gdHlwZW9mIFJlYWRhYmxlU3RyZWFtID09PSAndW5kZWZpbmVkJyB8fCB0eXBlb2YgUHJvbWlzZVsnYWxsU2V0dGxlZCddID09PSAndW5kZWZpbmVkJztcblxuZXhwb3J0IGNvbnN0IHBkZmpzVmVyc2lvbiA9ICc0LjAuNzMwJztcbmV4cG9ydCBjb25zdCBwZGZqc0JsZWVkaW5nRWRnZVZlcnNpb24gPSAnNC4wLjg0NCc7XG5leHBvcnQgZnVuY3Rpb24gZ2V0VmVyc2lvblN1ZmZpeChmb2xkZXI6IHN0cmluZyk6IHN0cmluZyB7XG4gIGlmIChmb2xkZXI/LmluY2x1ZGVzKCdibGVlZGluZy1lZGdlJykpIHtcbiAgICByZXR1cm4gcGRmanNCbGVlZGluZ0VkZ2VWZXJzaW9uO1xuICB9XG4gIHJldHVybiBwZGZqc1ZlcnNpb247XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBhc3NldHNVcmwodXJsOiBzdHJpbmcsIHBvc3RmaXhJZlBhdGhJc1JlbGF0aXYgPSAnJyk6IHN0cmluZyB7XG4gIGlmICh1cmwuaW5jbHVkZXMoJzovLycpKSB7XG4gICAgLy8gdGhlIGFzc2V0cyBmb2xkZXIgaXMgb24gYW4gYWJzb2x1dGUgcGF0aCAobGlrZSBodHRwczovL2V4YW1wbGUuY29tL2Fzc2V0cylcbiAgICByZXR1cm4gdXJsO1xuICB9XG4gIHJldHVybiBgLi8ke3VybCArIHBvc3RmaXhJZlBhdGhJc1JlbGF0aXZ9YDtcbn1cblxuY29uc3QgQW5ub3RhdGlvbk1vZGUgPSB7XG4gIERJU0FCTEU6IDAsXG4gIEVOQUJMRTogMSxcbiAgRU5BQkxFX0ZPUk1TOiAyLFxuICBFTkFCTEVfU1RPUkFHRTogMyxcbn07XG5cbmNvbnN0IEFubm90YXRpb25FZGl0b3JUeXBlID0ge1xuICBESVNBQkxFOiAtMSxcbiAgTk9ORTogMCxcbiAgRlJFRVRFWFQ6IDMsXG4gIElOSzogMTUsXG59O1xuXG5mdW5jdGlvbiBnZXREZWZhdWx0TGFuZ3VhZ2UoKTogc3RyaW5nIHtcbiAgaWYgKHR5cGVvZiBuYXZpZ2F0b3IgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgcmV0dXJuIG5hdmlnYXRvcj8ubGFuZ3VhZ2UgfHwgJ2VuLVVTJztcbiAgfVxuICByZXR1cm4gJ2VuLVVTJztcbn1cblxuZXhwb3J0IGxldCBwZGZEZWZhdWx0T3B0aW9ucyA9IHtcbiAgbmVlZHNFUzU6IF9pc0lFMTEgfHwgaXNFZGdlIHx8IG5lZWRzRVM1LFxuICBhbm5vdGF0aW9uRWRpdG9yTW9kZTogMCxcbiAgYW5ub3RhdGlvbk1vZGU6IDIsXG4gIGRlZmF1bHRab29tRGVsYXk6IDQwMCwgLy8gbWlsbGlzZWNvbmRzXG4gIGN1cnNvclRvb2xPbkxvYWQ6IDAsXG4gIGRlZmF1bHRVcmw6ICcnLFxuICBkZWZhdWx0Wm9vbVZhbHVlOiB1bmRlZmluZWQsXG4gIGRpc2FibGVIaXN0b3J5OiBmYWxzZSxcbiAgZGlzYWJsZVBhZ2VMYWJlbHM6IGZhbHNlLFxuICBlbmFibGVQZXJtaXNzaW9uczogZmFsc2UsXG4gIGRvY0Jhc2VVcmw6ICcnLFxuICBlbmFibGVQcmludEF1dG9Sb3RhdGU6IHRydWUsXG4gIGV4dGVybmFsTGlua1JlbDogJ25vb3BlbmVyIG5vcmVmZXJyZXIgbm9mb2xsb3cnLFxuICBleHRlcm5hbExpbmtUYXJnZXQ6IDAsXG4gIGhpc3RvcnlVcGRhdGVVcmw6IGZhbHNlLFxuICBpZ25vcmVEZXN0aW5hdGlvblpvb206IGZhbHNlLFxuICBpbWFnZVJlc291cmNlc1BhdGg6ICcuL2ltYWdlcy8nLFxuICBtYXhDYW52YXNQaXhlbHM6IDE2Nzc3MjE2LFxuICBmb3JjZVBhZ2VDb2xvcnM6IGZhbHNlLFxuICBwYWdlQ29sb3JzQmFja2dyb3VuZDogJ0NhbnZhcycsXG4gIHBhZ2VDb2xvcnNGb3JlZ3JvdW5kOiAnQ2FudmFzVGV4dCcsXG4gIHBkZkJ1Z0VuYWJsZWQ6IGZhbHNlLFxuICBwcmludFJlc29sdXRpb246IDE1MCxcbiAgcmFuZ2VDaHVua1NpemU6IDY1NTM2LFxuICByZW1vdmVQYWdlQm9yZGVyczogZmFsc2UsXG4gIHJlbmRlcmVyOiAnY2FudmFzJyxcbiAgcmVuZGVyRm9ybXM6IHRydWUsXG4gIGVuYWJsZVhmYTogdHJ1ZSxcbiAgZm9udEV4dHJhUHJvcGVydGllczogZmFsc2UsXG4gIHNpZGViYXJWaWV3T25Mb2FkOiAtMSxcbiAgc2Nyb2xsTW9kZU9uTG9hZDogLTEsXG4gIHNwcmVhZE1vZGVPbkxvYWQ6IC0xLFxuICB0ZXh0TGF5ZXJNb2RlOiAxLFxuICB1c2VPbmx5Q3NzWm9vbTogZmFsc2UsXG4gIC8vIHZpZXdlckNzc1RoZW1lOiAwLCAvLyBub3Qgc3VwcG9ydGVkIGJ5IG5neC1leHRlbmRlZC1wZGYtdmlld2VyXG4gIHZpZXdPbkxvYWQ6IDAsXG4gIGNNYXBQYWNrZWQ6IHRydWUsXG4gIGNNYXBVcmw6ICgpID0+IGAke2Fzc2V0c1VybChwZGZEZWZhdWx0T3B0aW9ucy5hc3NldHNGb2xkZXIsICcvLi4nKX0vY21hcHMvYCxcbiAgZGlzYWJsZUF1dG9GZXRjaDogZmFsc2UsXG4gIGRpc2FibGVGb250RmFjZTogZmFsc2UsXG4gIGRpc2FibGVSYW5nZTogZmFsc2UsXG4gIGRpc2FibGVTdHJlYW06IHRydWUsXG4gIGlzRXZhbFN1cHBvcnRlZDogdHJ1ZSxcbiAgaXNPZmZzY3JlZW5DYW52YXNTdXBwb3J0ZWQ6IHRydWUsXG4gIG1heEltYWdlU2l6ZTogLTEsXG4gIHBkZkJ1ZzogZmFsc2UsXG4gIHBvc3RNZXNzYWdlVHJhbnNmZXJzOiB0cnVlLFxuICB2ZXJib3NpdHk6IDEsXG4gIHdvcmtlclBvcnQ6IG51bGwsXG4gIGFzc2V0c0ZvbGRlcjogJ2Fzc2V0cycsXG4gIF9pbnRlcm5hbEZpbGVuYW1lU3VmZml4OiAnLm1pbicsIC8vIGRvbid0IG1vZGlmeSB0aGlzIC0gaXQncyBhbiBpbnRlcm5hbCBmaWVsZFxuICBzYW5kYm94QnVuZGxlU3JjOiAoKSA9PlxuICAgIHBkZkRlZmF1bHRPcHRpb25zLm5lZWRzRVM1XG4gICAgICA/IGAuL3BkZi5zYW5kYm94LSR7Z2V0VmVyc2lvblN1ZmZpeChhc3NldHNVcmwocGRmRGVmYXVsdE9wdGlvbnMuYXNzZXRzRm9sZGVyKSl9LWVzNSR7cGRmRGVmYXVsdE9wdGlvbnMuX2ludGVybmFsRmlsZW5hbWVTdWZmaXh9Lm1qc2BcbiAgICAgIDogYC4vcGRmLnNhbmRib3gtJHtnZXRWZXJzaW9uU3VmZml4KGFzc2V0c1VybChwZGZEZWZhdWx0T3B0aW9ucy5hc3NldHNGb2xkZXIpKX0ke3BkZkRlZmF1bHRPcHRpb25zLl9pbnRlcm5hbEZpbGVuYW1lU3VmZml4fS5tanNgLFxuICB3b3JrZXJTcmM6ICgpID0+XG4gICAgcGRmRGVmYXVsdE9wdGlvbnMubmVlZHNFUzVcbiAgICAgID8gYCR7YXNzZXRzVXJsKHBkZkRlZmF1bHRPcHRpb25zLmFzc2V0c0ZvbGRlcil9L3BkZi53b3JrZXItJHtnZXRWZXJzaW9uU3VmZml4KGFzc2V0c1VybChwZGZEZWZhdWx0T3B0aW9ucy5hc3NldHNGb2xkZXIpKX0tZXM1Lm1qc2BcbiAgICAgIDogYCR7YXNzZXRzVXJsKHBkZkRlZmF1bHRPcHRpb25zLmFzc2V0c0ZvbGRlcil9L3BkZi53b3JrZXItJHtnZXRWZXJzaW9uU3VmZml4KGFzc2V0c1VybChwZGZEZWZhdWx0T3B0aW9ucy5hc3NldHNGb2xkZXIpKX0ubWpzYCxcbiAgc3RhbmRhcmRGb250RGF0YVVybDogKCkgPT4gYCR7YXNzZXRzVXJsKHBkZkRlZmF1bHRPcHRpb25zLmFzc2V0c0ZvbGRlciwgJy8uLicpfS9zdGFuZGFyZF9mb250cy9gLFxuXG4gIC8vIG9wdGlvbnMgc3BlY2lmaWMgdG8gbmd4LWV4dGVuZGVkLXBkZi12aWV3ZXIgKGFzIG9wcG9zZWQgdG8gYmVpbmcgdXNlZCBieSBwZGYuanMpXG4gIGRvdWJsZVRhcFpvb21GYWN0b3I6ICdwYWdlLXdpZHRoJyxcbiAgZG91YmxlVGFwWm9vbXNJbkhhbmRNb2RlOiB0cnVlLFxuICBkb3VibGVUYXBab29tc0luVGV4dFNlbGVjdGlvbk1vZGU6IGZhbHNlLFxuICBkb3VibGVUYXBSZXNldHNab29tT25TZWNvbmREb3VibGVUYXA6IGZhbHNlLFxuICBlbmFibGVTY3JpcHRpbmc6IHRydWUsXG4gIGRlZmF1bHRDYWNoZVNpemU6IDUwLFxuICBwYXNzd29yZFByb21wdDogdW5kZWZpbmVkLFxuICBsb2NhbGU6IGdldERlZmF1bHRMYW5ndWFnZSgpLFxuICBhY3RpdmF0ZVdpbGxSZWFkRnJlcXVlbnRseUZsYWc6IGZhbHNlLFxufTtcblxuaWYgKHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnKSB7XG4gIGlmICgoPGFueT53aW5kb3cpLnBkZkRlZmF1bHRPcHRpb25zKSB7XG4gICAgcGRmRGVmYXVsdE9wdGlvbnMgPSAoPGFueT53aW5kb3cpLnBkZkRlZmF1bHRPcHRpb25zO1xuICB9IGVsc2Uge1xuICAgICg8YW55PndpbmRvdykucGRmRGVmYXVsdE9wdGlvbnMgPSBwZGZEZWZhdWx0T3B0aW9ucztcbiAgfVxufVxuIl19