From c34138e09e964bd8c141d9ae7d360c7085affd16 Mon Sep 17 00:00:00 2001 From: Stan Hu Date: Mon, 29 Jul 2019 12:47:40 -0700 Subject: [PATCH] Remove pdf.js deprecation warnings 1. `page.getViewpoint()` now takes in JSON instead of an integer. 2. Promises are returned from loading and rendering tasks. See https://mozilla.github.io/pdf.js/examples/index.html for more details. --- app/assets/javascripts/pdf/index.vue | 2 +- app/assets/javascripts/pdf/page/index.vue | 4 ++-- changelogs/unreleased/sh-remove-pdfjs-deprecations.yml | 5 +++++ spec/javascripts/pdf/page_spec.js | 5 +++-- 4 files changed, 11 insertions(+), 5 deletions(-) create mode 100644 changelogs/unreleased/sh-remove-pdfjs-deprecations.yml diff --git a/app/assets/javascripts/pdf/index.vue b/app/assets/javascripts/pdf/index.vue index 14640c172cd..bbbd9789dc9 100644 --- a/app/assets/javascripts/pdf/index.vue +++ b/app/assets/javascripts/pdf/index.vue @@ -39,7 +39,7 @@ export default { cMapUrl: '/assets/webpack/cmaps/', cMapPacked: true, }) - .then(this.renderPages) + .promise.then(this.renderPages) .then(pages => { this.pages = pages; this.$emit('pdflabload'); diff --git a/app/assets/javascripts/pdf/page/index.vue b/app/assets/javascripts/pdf/page/index.vue index d933fdf220a..65f84e75e86 100644 --- a/app/assets/javascripts/pdf/page/index.vue +++ b/app/assets/javascripts/pdf/page/index.vue @@ -18,7 +18,7 @@ export default { }, computed: { viewport() { - return this.page.getViewport(this.scale); + return this.page.getViewport({ scale: this.scale }); }, context() { return this.$refs.canvas.getContext('2d'); @@ -36,7 +36,7 @@ export default { this.rendering = true; this.page .render(this.renderContext) - .then(() => { + .promise.then(() => { this.rendering = false; }) .catch(error => { diff --git a/changelogs/unreleased/sh-remove-pdfjs-deprecations.yml b/changelogs/unreleased/sh-remove-pdfjs-deprecations.yml new file mode 100644 index 00000000000..a00ceedf3f4 --- /dev/null +++ b/changelogs/unreleased/sh-remove-pdfjs-deprecations.yml @@ -0,0 +1,5 @@ +--- +title: Remove pdf.js deprecation warnings +merge_request: 31253 +author: +type: fixed diff --git a/spec/javascripts/pdf/page_spec.js b/spec/javascripts/pdf/page_spec.js index 6dea570266b..efeb65acf87 100644 --- a/spec/javascripts/pdf/page_spec.js +++ b/spec/javascripts/pdf/page_spec.js @@ -17,7 +17,7 @@ describe('Page component', () => { pdfjsLib.GlobalWorkerOptions.workerSrc = workerSrc; pdfjsLib .getDocument(testPDF) - .then(pdf => pdf.getPage(1)) + .promise.then(pdf => pdf.getPage(1)) .then(page => { testPage = page; }) @@ -31,7 +31,8 @@ describe('Page component', () => { it('renders the page when mounting', done => { const promise = Promise.resolve(); - spyOn(testPage, 'render').and.callFake(() => promise); + spyOn(testPage, 'render').and.returnValue({ promise }); + vm = mountComponent(Component, { page: testPage, number: 1,