Skip to content

Releases: intbot/ng2-pdfjs-viewer

26.4.2 — Zenodo archiving + DOI

Choose a tag to compare

@github-actions github-actions released this 26 Jul 03:28
97fd189

Metadata-only release. No library code changes.

Zenodo now archives each GitHub release of this repository and mints a DOI for it,
so the library can be cited formally. This release is the first one archived;
CITATION.cff is updated to match.

Full changelog: https://github.com/intbot/ng2-pdfjs-viewer/blob/master/CHANGELOG.md

26.4.1 — citation metadata + author surname correction

Choose a tag to compare

@github-actions github-actions released this 26 Jul 02:54
c4f2985

Metadata-only release. No library code changes.

Added

  • CITATION.cff — GitHub renders a "Cite this repository" button from it.
  • .zenodo.json — Zenodo reads this when archiving a release, so the library is
    formally citable and each release is preserved with a DOI.

Fixed

  • The author's surname was misspelled ("Goapalakrishnan") in the package metadata
    and in both LICENSE files. Build tools copy that string into the attribution
    files they generate, so the typo had propagated into the open-source notices
    published by downstream products. Corrected to "Gopalakrishnan".

Full changelog: https://github.com/intbot/ng2-pdfjs-viewer/blob/master/CHANGELOG.md

Release v26.4.0

Choose a tag to compare

@github-actions github-actions released this 10 Jul 18:34
9590a56

Added

  • The bundled PDF.js (pdf.mjs and pdf.worker.mjs) now ships with core-js
    polyfills for five newer JavaScript APIs the PDF.js 6 build relies on —
    Map.prototype.getOrInsertComputed, Promise.try, Promise.withResolvers,
    Uint8Array.prototype.toHex, and URL.parse. Without them the viewer threw on
    startup in browsers that predate those APIs; it now runs on those older engines.
    The polyfills are injected into the two bundles at build time with esbuild, so
    consumers pull in nothing new at runtime — core-js stays a build-only
    dependency. Thanks to @delagen for the contribution. (#379)

Release v26.3.1

Choose a tag to compare

@github-actions github-actions released this 29 Jun 16:30
cb4c892

Fixed

  • [controlVisibility]="{ print: false }" (and the standalone [showPrint]="false")
    now keeps the print button hidden after the document loads. PDF.js re-asserts its
    own hidden class on the print button on every load via its printingallowed
    handler, which wiped our hide and brought the icon back — most visibly with a Blob
    pdfSrc, whose fast local load lands after the hide. The viewer now hides buttons
    with a dedicated class PDF.js never touches, so the choice sticks. Thanks to
    @leominaudo for the report. (#373)

Release v26.3.0

Choose a tag to compare

@github-actions github-actions released this 27 Jun 19:37
b92346d

Performance

  • Viewer state-sync transforms (zoom, scroll, spread, cursor, page mode) no longer
    allocate their lookup arrays on every call — the mode lists are hoisted to module
    constants. These transforms run on each scroll-mode, spread-mode, and zoom change the
    viewer emits back to the component.
  • Remounting page overlays (pageOverlayTpl) across already-rendered pages now reuses
    the page element already in hand instead of re-finding it by selector, dropping one
    DOM query per page on long documents.

Internal

  • The scroll and spread mode lists now have a single source of truth, so the input
    whitelist and the numeric-to-name index map can no longer drift apart.

Release v26.2.0

Choose a tag to compare

@github-actions github-actions released this 27 Jun 17:32
d9d4155

Added

  • ng2-pdfjs-viewer/signals: a new entry point that projects viewer state — current
    page, zoom, total pages, search matches, read-aloud progress, annotation-editor
    state, sidebar, metadata, form data, and the view-mode strings — as read-only
    Angular signals. Call pdfViewerSignals(viewer, { injector }) and read
    signals.page(), signals.totalPages(), signals.loaded() in a template, or
    build computed/effect on top. Aimed at zoneless / OnPush apps. Requires
    Angular 16+; the base package's >=10 peer range is unchanged.
  • AI assistant streaming: PdfAiAssistant.ask() and complete() take an optional
    onToken callback and stream the answer token-by-token over Server-Sent Events,
    falling back to a single response when the endpoint doesn't stream. The built-in
    chat panel renders the answer as it arrives.

Fixed

  • onPagesInit now fires once the document's pages initialize - it carries the
    page count and was declared but never emitted. This is what makes the new
    signals entry point's loaded() and totalPages() populate.

Release v26.1.1

Choose a tag to compare

@github-actions github-actions released this 23 Jun 16:57
64a0ea8

Changed

  • npm keywords refreshed for search relevance, and homepage now points at the documentation
    site's domain, angularpdf.com.

Documentation

  • Docs site moved to angularpdf.com (the live demo moved to demo.angularpdf.com). Added an
    "Angular PDF viewer" overview page and a "Coming from ng2-pdf-viewer" migration guide, added
    per-page metadata, robots.txt, and llms.txt, and updated README and docs links to the new
    domains.

Release v26.1.0

Choose a tag to compare

@github-actions github-actions released this 23 Jun 02:40
bb77d6a

Added

  • chromeless input: a single switch that hides the toolbar and sidebar so the
    viewer shows just the scrolling pages — an embedded/inline preview mode. It is
    shorthand for showToolbar=false + showSidebar=false and overrides them
    without mutating those bindings, so toggling it off restores them. Reach for
    pageOverlayTpl when you need per-page DOM in the host app.

Release v26.0.3

Choose a tag to compare

@github-actions github-actions released this 23 Jun 00:50
5699d65

What's Changed

  • README badges + refresh demo to 26.0.2 (ships the dark-mode icon fix) by @codehippie1 in #338
  • Brand: B2 document icon everywhere; fix StackBlitz export deps by @codehippie1 in #339
  • Docs: human-voice writing rule + guard, and rewrite intro/overview by @codehippie1 in #340
  • Docs Phase 2: factual changelog, drop stray superlatives by @codehippie1 in #341
  • Append the file param last on the viewer URL (#305) by @codehippie1 in #342
  • Landing: sharper hero headline; fix dead canonical/og:image URL by @codehippie1 in #343
  • chore(deps): bump the lib-dev-dependencies group across 1 directory with 3 updates by @dependabot[bot] in #332
  • Bump postcss from 8.5.6 to 8.5.15 in /docs-website by @dependabot[bot] in #314
  • Bump mdast-util-to-hast from 13.2.0 to 13.2.1 in /docs-website by @dependabot[bot] in #293
  • Release 26.0.3: viewer-URL hash-fragment fix by @codehippie1 in #344
  • Fix lib lockfile: resolve Angular 22.0.x peer mismatch (unblocks 26.0.3 publish) by @codehippie1 in #345
  • Fix lib lockfile: restore cross-platform graph (re-fixes 26.0.3 publish) by @codehippie1 in #346

Full Changelog: v26.0.2...v26.0.3

Release v26.0.2

Choose a tag to compare

@github-actions github-actions released this 22 Jun 21:01
68b75bc

What's Changed

  • Harden CI workflows and standardize the license label by @codehippie1 in #324
  • Docs landing: theme-aware hero with light/dark toggle by @codehippie1 in #325
  • Playground: respect OS theme on first load; viewers follow theme by @codehippie1 in #326
  • CI: pin npm to a fixed version in the publish workflow by @codehippie1 in #327
  • chore(deps): reduce dev-dependency vulnerabilities by @codehippie1 in #331
  • CI: drop the npm upgrade step (Node 24 bundles npm >= 11.5.1) by @codehippie1 in #333
  • Fix invisible toolbar icons when viewer theme differs from OS theme by @codehippie1 in #334
  • Docs: add an Angular PDF Viewer banner to the README by @codehippie1 in #335
  • Single canonical README (drop lib copy + sync workflow) by @codehippie1 in #336
  • Release 26.0.2: theme/OS icon-visibility fix + brand refresh by @codehippie1 in #337

Full Changelog: v26.0.1...v26.0.2