Closed
Description
Prerequisites
- I have read the Contributing Guidelines.
- I agree to follow the Code of Conduct.
- I have searched for existing issues that already report this problem, without success.
Stencil Version
"@stencil/core": "^2.6.0"
Current Behavior
having issue when using "pdfjs-dist": "^3.0.279" in stencil component, getting below errors
Unexpected token (2614:2) in .\node_modules\pdfjs-dist\build\pdf.js (plugin: commonjs, transform)
below is my stencil component
import { Component, Element, h, Listen, Prop, State } from '@stencil/core'
import pdfjsLib from 'pdfjs-dist'
import pdfjsWorker from 'pdfjs-dist/build/pdf.worker.entry'
@Component({
tag: 'pdf-viewer',
styleUrl: 'pdf-viewer.scss'
})
export class PdfViewer {
@Element() private element: HTMLElement
@Prop() canvasWidth: number = 500
@Prop() url: string = ''
@State() currentPage: number = 1
@State() totalPages: number
@State() error: any = undefined
private loadingTask = undefined
constructor() {
pdfjsLib.GlobalWorkerOptions.workerSrc = pdfjsWorker
this.loadingTask = pdfjsLib.getDocument(this.url)
}
// Listen to the active page event emited in the toolbar component
@Listen('activePageEvent')
setActivePage(event: CustomEvent): void {
this.currentPage = event.detail
}
renderPage(): void {
this.loadingTask.promise
.then(doc => {
this.totalPages = doc.numPages
doc.getPage(this.currentPage).then(page => {
let viewport = page.getViewport({ scale: 1 })
const desiredScale = this.canvasWidth / viewport.width
viewport = page.getViewport({ scale: desiredScale, })
const canvas: any = this.element.querySelector('#tt-pdf-widget')
const context = canvas.getContext('2d')
canvas.height = viewport.height
canvas.width = this.canvasWidth || viewport.width
const renderContext = {
canvasContext: context,
viewport: viewport
}
page.render(renderContext)
})
})
.catch(e => {
this.error = e
})
}
componentDidLoad(): void {
this.renderPage()
}
componentWillUpdate(): void {
this.renderPage()
}
render() {
return (
<div class='pdf-viewer background'>
<canvas id='tt-pdf-widget'></canvas>
</div>
)
}
}
Expected Behavior
should not get the below error,
Unexpected token (2614:2) in .\node_modules\pdfjs-dist\build\pdf.js (plugin: commonjs, transform)
Steps to Reproduce
run npm install
run npm start
Code Reproduction URL
https://github.com/rahulgupta-dev/pdf-viewer
Additional Information
help if there is any issue in compiler/stencil/pdfjs versions
Node version: v18.12.0
Windows x86