GithubHelp home page GithubHelp logo

d-i-t-a / r2d2bc Goto Github PK

View Code? Open in Web Editor NEW
47.0 7.0 31.0 15.23 MB

https://d-i-t-a.github.io/R2D2BC/

License: Apache License 2.0

TypeScript 75.34% CSS 6.88% JavaScript 0.65% HTML 13.63% SCSS 3.51%
epub-reader epub navigator injectables readium modularity dita

r2d2bc's Introduction

R2D2BC

Introduction

R2D2BC is an implementation of the Readium v2 EPUB reader for the web. It is built as a modular toolkit (rather than a full-featured app) so that applications can use it to handle the EPUB-related functions while customizing the own design, user interface, and extensions.

Goals

  • Follow the Readium architecture specification for best interoperability
  • Allow maximum configurability via API methods, callbacks, code and style injection, and clear separation of functions.
  • Modularity
  • Clarity of code and ease of maintenance
  • Speed
  • Accessibility
  • Free and open source

The R2D2BC project intentionally includes only a base-bones demonstration user interface, and no sample content. Any implementer can add their own functionality and design without refactoring the whole project.

See below for projects that provide the necessary other elements to try it out and see it in action.

Architecture

This project implements most components of the Readium Architecture:

  • Implements Locator
  • Implements UserSettings
  • Implements Webpub Manifest
  • Implements the Readium shared models
  • Integrates Readium CSS
  • Integrates a simple Navigator for reflowable publications

Additionally, it:

  • Provides a decoupled Minimal UI
  • Provides build system optimization (Webpack)

Origins

Here is the original proposal, initiated by Aferdita Muriqi to the Readium Weekly Eng Meeting - 05/22/2019

Subsequent development of R2D2BC has been supported by DITA, Bokbasen, and CAST - which explains the D2, B, and C in the name.

Features & Functionalities

  • ePub Reflowable + Fixed Layout
  • Reader Settings
  • Configurable Modules with Callbacks
  • Injectable Fonts, CSS, Javascript
  • Text Selection with Injectable Context Menu
  • Bookmarks
  • Highlights
  • Annotations
  • TTS - Text to speech / Read Aloud
  • Media Overlays - Read Along
  • Search
  • Content Protection
  • Definitions
  • Popup Footnotes
  • Page Breaks - Page Numbers in margin
  • Sample Read
  • Timeline
  • Layers
  • Line Focus (Beta Feature)
  • Popups and Popovers

Extensions and Implementations

The R2D2BC reader has been used in:

  • The Clusive learning environment
  • Bokbasen's Allbok.no
  • Allvir's Allvit.no Reading Platform
  • The UNODC Fieldguides
  • The DITA Gateway D2G with several open collections
  • Ekitabu's Web Reader Implementations through Dita Gateway
  • NYPL's Web Reader Implementations
  • Bibliotheca's CloudLibrary as Sample Reader and Full ePub Reader
  • Above the Treeline's Edeweiss+
  • Bluefire's Web Reader Implementations
  • In a Project in the Meta Verse (to be named once public)
  • and a few more... :)

Contributing

Contributions are always welcomed! Please see CONTRIBUTING for detailed guidelines.

DepShield Badge

Get Started

Download ebook examples here: https://standardebooks.org/ebooks and copy them to ./examples/epubs. Then:

npm install

npm run build && npm run examples

Then visit http://localhost:4444/. Follow the prompts to view example apps.

WIKI

Migration Guides

Change Log

Supporters

r2d2bc's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

r2d2bc's Issues

[DepShield] (CVSS 5.3) Vulnerability due to usage of lodash:4.17.20

Vulnerabilities

DepShield reports that this application's usage of lodash:4.17.20 results in the following vulnerability(s):


Occurrences

lodash:4.17.20 is a transitive dependency introduced by the following direct dependency(s):

mocha:7.2.0
        └─ yargs-unparser:1.6.0
              └─ lodash:4.17.20

node-sass:4.14.1
        └─ gaze:1.1.3
              └─ globule:1.3.1
                    └─ lodash:4.17.20
        └─ lodash:4.17.20
        └─ sass-graph:2.2.5
              └─ lodash:4.17.20

sinon:6.3.5
        └─ nise:1.4.10
              └─ @sinonjs/formatio:3.2.1
                    └─ @sinonjs/samsam:3.3.1
                          └─ lodash:4.17.20

This is an automated GitHub Issue created by Sonatype DepShield. Details on managing GitHub Apps, including DepShield, are available for personal and organization accounts. Please submit questions or feedback about DepShield to the Sonatype DepShield Community.

[DepShield] (CVSS 5.6) Vulnerability due to usage of elliptic:6.5.2

Vulnerabilities

DepShield reports that this application's usage of elliptic:6.5.2 results in the following vulnerability(s):


Occurrences

elliptic:6.5.2 is a transitive dependency introduced by the following direct dependency(s):

webpack:4.43.0
        └─ node-libs-browser:2.2.1
              └─ crypto-browserify:3.12.0
                    └─ browserify-sign:4.2.0
                          └─ elliptic:6.5.2
                    └─ create-ecdh:4.0.3
                          └─ elliptic:6.5.2

This is an automated GitHub Issue created by Sonatype DepShield. Details on managing GitHub Apps, including DepShield, are available for personal and organization accounts. Please submit questions or feedback about DepShield to the Sonatype DepShield Community.

nextPage goes to nextChapter in paginated view

I am seeing an issue where the nextPage api is moving me to the next chapter while viewing a paginate reflowable book and not at the end of the chapter. The error seems to be stemming from here:

return rightWidth <= 0;

It appears that the rightWidth is 0 in my case. I'm not totally sure what the rightWidth is? Is it the amount of remaining chapter?

You can see this by running the example: npm run example:reader-class in my branch fix/next-page and then clicking next page a few times. It's always going by chapter

goTo using result.displayInfo.resourceScreenIndex

Hello!

first off all, thanks for awesome work!

I have a question: i'm trying to use your reader for my pet project for mobile devices.
I had disabled scroll view and use only paginated behaviour.

is it possible to use goTo using result.displayInfo.resourceScreenIndex ?

[DepShield] (CVSS 5.3) Vulnerability due to usage of xmldom:0.6.0

Vulnerabilities

DepShield reports that this application's usage of xmldom:0.6.0 results in the following vulnerability(s):


Occurrences

xmldom:0.6.0 is a transitive dependency introduced by the following direct dependency(s):

r2-shared-js:1.0.51
        └─ xmldom:0.6.0

This is an automated GitHub Issue created by Sonatype DepShield. Details on managing GitHub Apps, including DepShield, are available for personal and organization accounts. Please submit questions or feedback about DepShield to the Sonatype DepShield Community.

[DepShield] (CVSS 5.3) Vulnerability due to usage of hosted-git-info:2.8.8

Vulnerabilities

DepShield reports that this application's usage of hosted-git-info:2.8.8 results in the following vulnerability(s):


Occurrences

hosted-git-info:2.8.8 is a transitive dependency introduced by the following direct dependency(s):

node-sass:6.0.0
        └─ meow:3.7.0
              └─ normalize-package-data:2.5.0
                    └─ hosted-git-info:2.8.8

This is an automated GitHub Issue created by Sonatype DepShield. Details on managing GitHub Apps, including DepShield, are available for personal and organization accounts. Please submit questions or feedback about DepShield to the Sonatype DepShield Community.

[DepShield] (CVSS 7.5) Vulnerability due to usage of kind-of:6.0.2

Vulnerabilities

DepShield reports that this application's usage of kind-of:6.0.2 results in the following vulnerability(s):


Occurrences

kind-of:6.0.2 is a transitive dependency introduced by the following direct dependency(s):

cpx:1.5.0
        └─ chokidar:1.7.0
              └─ anymatch:1.3.2
                    └─ micromatch:2.3.11
                          └─ braces:1.8.5
                                └─ expand-range:1.8.2
                                      └─ fill-range:2.2.4
                                            └─ randomatic:3.1.1
                                                  └─ kind-of:6.0.2
              └─ readdirp:2.2.1
                    └─ micromatch:3.1.10
                          └─ extglob:2.0.4
                                └─ define-property:1.0.0
                                      └─ is-descriptor:1.0.2
                                            └─ is-accessor-descriptor:1.0.0
                                                  └─ kind-of:6.0.2
                                            └─ is-data-descriptor:1.0.0
                                                  └─ kind-of:6.0.2
                                            └─ kind-of:6.0.2
                          └─ kind-of:6.0.2

ts-loader:5.4.5
        └─ micromatch:3.1.10
              └─ define-property:2.0.2
                    └─ is-descriptor:1.0.2
                          └─ is-accessor-descriptor:1.0.0
                                └─ kind-of:6.0.2
                          └─ is-data-descriptor:1.0.0
                                └─ kind-of:6.0.2
                          └─ kind-of:6.0.2
              └─ nanomatch:1.2.13
                    └─ kind-of:6.0.2
              └─ snapdragon:0.8.2
                    └─ base:0.11.2
                          └─ define-property:1.0.0
                                └─ is-descriptor:1.0.2
                                      └─ is-accessor-descriptor:1.0.0
                                            └─ kind-of:6.0.2
                                      └─ is-data-descriptor:1.0.0
                                            └─ kind-of:6.0.2
                                      └─ kind-of:6.0.2
              └─ braces:2.3.2
                    └─ snapdragon-node:2.1.1
                          └─ define-property:1.0.0
                                └─ is-descriptor:1.0.2
                                      └─ is-accessor-descriptor:1.0.0
                                            └─ kind-of:6.0.2
                                      └─ is-data-descriptor:1.0.0
                                            └─ kind-of:6.0.2
                                      └─ kind-of:6.0.2
              └─ extglob:2.0.4
                    └─ define-property:1.0.0
                          └─ is-descriptor:1.0.2
                                └─ is-accessor-descriptor:1.0.0
                                      └─ kind-of:6.0.2
                                └─ is-data-descriptor:1.0.0
                                      └─ kind-of:6.0.2
                                └─ kind-of:6.0.2
              └─ kind-of:6.0.2

webpack:4.41.2
        └─ watchpack:1.6.0
              └─ chokidar:2.1.8
                    └─ anymatch:2.0.0
                          └─ micromatch:3.1.10
                                └─ extglob:2.0.4
                                      └─ define-property:1.0.0
                                            └─ is-descriptor:1.0.2
                                                  └─ is-accessor-descriptor:1.0.0
                                                        └─ kind-of:6.0.2
                                                  └─ is-data-descriptor:1.0.0
                                                        └─ kind-of:6.0.2
                                                  └─ kind-of:6.0.2
                                └─ kind-of:6.0.2
        └─ micromatch:3.1.10
              └─ extglob:2.0.4
                    └─ define-property:1.0.0
                          └─ is-descriptor:1.0.2
                                └─ is-accessor-descriptor:1.0.0
                                      └─ kind-of:6.0.2
                                └─ is-data-descriptor:1.0.0
                                      └─ kind-of:6.0.2
                                └─ kind-of:6.0.2
              └─ kind-of:6.0.2

webpack-cli:3.3.9
        └─ findup-sync:3.0.0
              └─ micromatch:3.1.10
                    └─ extglob:2.0.4
                          └─ define-property:1.0.0
                                └─ is-descriptor:1.0.2
                                      └─ is-accessor-descriptor:1.0.0
                                            └─ kind-of:6.0.2
                                      └─ is-data-descriptor:1.0.0
                                            └─ kind-of:6.0.2
                                      └─ kind-of:6.0.2
                    └─ kind-of:6.0.2
        └─ global-modules:2.0.0
              └─ global-prefix:3.0.0
                    └─ kind-of:6.0.2

This is an automated GitHub Issue created by Sonatype DepShield. Details on managing GitHub Apps, including DepShield, are available for personal and organization accounts. Please submit questions or feedback about DepShield to the Sonatype DepShield Community.

[DepShield] (CVSS 7.5) Vulnerability due to usage of acorn:6.3.0

Vulnerabilities

DepShield reports that this application's usage of acorn:6.3.0 results in the following vulnerability(s):


Occurrences

acorn:6.3.0 is a transitive dependency introduced by the following direct dependency(s):

webpack:4.41.2
        └─ acorn:6.3.0

This is an automated GitHub Issue created by Sonatype DepShield. Details on managing GitHub Apps, including DepShield, are available for personal and organization accounts. Please submit questions or feedback about DepShield to the Sonatype DepShield Community.

[DepShield] (CVSS 7.5) Vulnerability due to usage of acorn:6.4.1

Vulnerabilities

DepShield reports that this application's usage of acorn:6.4.1 results in the following vulnerability(s):


Occurrences

acorn:6.4.1 is a transitive dependency introduced by the following direct dependency(s):

webpack:4.43.0
        └─ acorn:6.4.1

This is an automated GitHub Issue created by Sonatype DepShield. Details on managing GitHub Apps, including DepShield, are available for personal and organization accounts. Please submit questions or feedback about DepShield to the Sonatype DepShield Community.

reader config properties needs to be optional

On a related note, I had to include all of these properties in the D2Reader.load call in order to satisfy the typings. I assume most of them should actually be optional?

const reader = await D2Reader.load({
      url,
      injectables: injectables as any,
      api: {
        getContent,
      },
      // all of these were required
      userSettings: undefined,
      initialAnnotations: undefined,
      lastReadingPosition: undefined,
      upLinkUrl: undefined,
      material: {
        settings: {
          fontOverride: false,
          advancedSettings: false,
          pageMargins: false,
          lineHeight: false,
        },
      },
      rights: {},
      tts: undefined,
      search: { color: 'red', current: 'blah' },
      annotations: { initialAnnotationColor: 'blue' },
      highlighter: { selectionMenuItems: [] },
      useLocalStorage: false,
      attributes: { margin: 2 },
    });

Originally posted by @kristojorg in #153 (comment)

[DepShield] (CVSS 8.8) Vulnerability due to usage of minimist:0.0.8

Vulnerabilities

DepShield reports that this application's usage of minimist:0.0.8 results in the following vulnerability(s):


Occurrences

minimist:0.0.8 is a transitive dependency introduced by the following direct dependency(s):

cpx:1.5.0
        └─ chokidar:1.7.0
              └─ fsevents:1.2.9
                    └─ node-pre-gyp:0.12.0
                          └─ mkdirp:0.5.1
                                └─ minimist:0.0.8
        └─ mkdirp:0.5.1
              └─ minimist:0.0.8

This is an automated GitHub Issue created by Sonatype DepShield. Details on managing GitHub Apps, including DepShield, are available for personal and organization accounts. Please submit questions or feedback about DepShield to the Sonatype DepShield Community.

Distinct module input options from internal settings

Currently modules have Config and Properties. I'm not totally sure of the difference between the two, but it seems like there should be one type for the options you can pass in to instantiate the class, and another type for the settings of an instance. Thus it could be optional to pass in a certain config value, but required on the actual class. So the constructor would take care of setting defaults when no value is passed in. That way, once it is instantiated, we always have a well defined set of settings.

This would mean we don't have to do this:

(this.rights?.autoGeneratePositions ?? false)

because this.rights.autoGeneratePositions would always be defined. If you don't pass in a value for that option, the constructor will set it to a default (false in this case).

[DepShield] (CVSS 7.4) Vulnerability due to usage of lodash.get:4.4.2

Vulnerabilities

DepShield reports that this application's usage of lodash.get:4.4.2 results in the following vulnerability(s):


Occurrences

lodash.get:4.4.2 is a transitive dependency introduced by the following direct dependency(s):

sinon:6.3.5
        └─ lodash.get:4.4.2

This is an automated GitHub Issue created by Sonatype DepShield. Details on managing GitHub Apps, including DepShield, are available for personal and organization accounts. Please submit questions or feedback about DepShield to the Sonatype DepShield Community.

[DepShield] (CVSS 7.4) Vulnerability due to usage of lodash:4.17.15

Vulnerabilities

DepShield reports that this application's usage of lodash:4.17.15 results in the following vulnerability(s):


Occurrences

lodash:4.17.15 is a transitive dependency introduced by the following direct dependency(s):

mocha:7.2.0
        └─ yargs-unparser:1.6.0
              └─ lodash:4.17.15

node-sass:4.14.1
        └─ gaze:1.1.3
              └─ globule:1.3.1
                    └─ lodash:4.17.15
        └─ lodash:4.17.15
        └─ sass-graph:2.2.5
              └─ lodash:4.17.15

sinon:6.3.5
        └─ nise:1.4.10
              └─ @sinonjs/formatio:3.2.1
                    └─ @sinonjs/samsam:3.3.1
                          └─ lodash:4.17.15

This is an automated GitHub Issue created by Sonatype DepShield. Details on managing GitHub Apps, including DepShield, are available for personal and organization accounts. Please submit questions or feedback about DepShield to the Sonatype DepShield Community.

[DepShield] (CVSS 6.1) Vulnerability due to usage of materialize-css:1.0.0

Vulnerabilities

DepShield reports that this application's usage of materialize-css:1.0.0 results in the following vulnerability(s):

This is an automated GitHub Issue created by Sonatype DepShield. Details on managing GitHub Apps, including DepShield, are available for personal and organization accounts. Please submit questions or feedback about DepShield to the Sonatype DepShield Community.

[DepShield] (CVSS 7.5) Vulnerability due to usage of yargs-parser:13.1.1

Vulnerabilities

DepShield reports that this application's usage of yargs-parser:13.1.1 results in the following vulnerability(s):


Occurrences

yargs-parser:13.1.1 is a transitive dependency introduced by the following direct dependency(s):

webpack-cli:3.3.9
        └─ yargs:13.2.4
              └─ yargs-parser:13.1.1

This is an automated GitHub Issue created by Sonatype DepShield. Details on managing GitHub Apps, including DepShield, are available for personal and organization accounts. Please submit questions or feedback about DepShield to the Sonatype DepShield Community.

[DepShield] (CVSS 6.1) Vulnerability due to usage of ecstatic:3.3.2

Vulnerabilities

DepShield reports that this application's usage of ecstatic:3.3.2 results in the following vulnerability(s):


Occurrences

ecstatic:3.3.2 is a transitive dependency introduced by the following direct dependency(s):

http-server:0.12.3
        └─ ecstatic:3.3.2

This is an automated GitHub Issue created by Sonatype DepShield. Details on managing GitHub Apps, including DepShield, are available for personal and organization accounts. Please submit questions or feedback about DepShield to the Sonatype DepShield Community.

[DepShield] (CVSS 7.5) Vulnerability due to usage of tar:6.1.2

Vulnerabilities

DepShield reports that this application's usage of tar:6.1.2 results in the following vulnerability(s):


Occurrences

tar:6.1.2 is a transitive dependency introduced by the following direct dependency(s):

node-sass:6.0.1
        └─ node-gyp:7.1.2
              └─ tar:6.1.2

This is an automated GitHub Issue created by Sonatype DepShield. Details on managing GitHub Apps, including DepShield, are available for personal and organization accounts. Please submit questions or feedback about DepShield to the Sonatype DepShield Community.

[DepShield] (CVSS 7.5) Vulnerability due to usage of express:4.17.1

Vulnerabilities

DepShield reports that this application's usage of express:4.17.1 results in the following vulnerability(s):

This is an automated GitHub Issue created by Sonatype DepShield. Details on managing GitHub Apps, including DepShield, are available for personal and organization accounts. Please submit questions or feedback about DepShield to the Sonatype DepShield Community.

[DepShield] (CVSS 7.5) Vulnerability due to usage of glob-parent:2.0.0

Vulnerabilities

DepShield reports that this application's usage of glob-parent:2.0.0 results in the following vulnerability(s):


Occurrences

glob-parent:2.0.0 is a transitive dependency introduced by the following direct dependency(s):

cpx:1.5.0
        └─ chokidar:1.7.0
              └─ anymatch:1.3.2
                    └─ micromatch:2.3.11
                          └─ parse-glob:3.0.4
                                └─ glob-base:0.3.0
                                      └─ glob-parent:2.0.0
              └─ glob-parent:2.0.0

This is an automated GitHub Issue created by Sonatype DepShield. Details on managing GitHub Apps, including DepShield, are available for personal and organization accounts. Please submit questions or feedback about DepShield to the Sonatype DepShield Community.

[DepShield] (CVSS 5.3) Vulnerability due to usage of kind-of:4.0.0

Vulnerabilities

DepShield reports that this application's usage of kind-of:4.0.0 results in the following vulnerability(s):


Occurrences

kind-of:4.0.0 is a transitive dependency introduced by the following direct dependency(s):

ts-loader:5.4.5
        └─ micromatch:3.1.10
              └─ snapdragon:0.8.2
                    └─ base:0.11.2
                          └─ cache-base:1.0.1
                                └─ has-value:1.0.0
                                      └─ has-values:1.0.0
                                            └─ kind-of:4.0.0

This is an automated GitHub Issue created by Sonatype DepShield. Details on managing GitHub Apps, including DepShield, are available for personal and organization accounts. Please submit questions or feedback about DepShield to the Sonatype DepShield Community.

[DepShield] (CVSS 5.3) Vulnerability due to usage of node-sass:4.14.1

Vulnerabilities

DepShield reports that this application's usage of node-sass:4.14.1 results in the following vulnerability(s):

This is an automated GitHub Issue created by Sonatype DepShield. Details on managing GitHub Apps, including DepShield, are available for personal and organization accounts. Please submit questions or feedback about DepShield to the Sonatype DepShield Community.

[DepShield] (CVSS 7.5) Vulnerability due to usage of debug:2.6.9

Vulnerabilities

DepShield reports that this application's usage of debug:2.6.9 results in the following vulnerability(s):


Occurrences

debug:2.6.9 is a transitive dependency introduced by the following direct dependency(s):

cpx:1.5.0
        └─ chokidar:1.7.0
              └─ readdirp:2.2.1
                    └─ micromatch:3.1.10
                          └─ extglob:2.0.4
                                └─ expand-brackets:2.1.4
                                      └─ debug:2.6.9

express:4.17.1
        └─ body-parser:1.19.0
              └─ debug:2.6.9
        └─ debug:2.6.9
        └─ finalhandler:1.1.2
              └─ debug:2.6.9
        └─ send:0.17.1
              └─ debug:2.6.9

ts-loader:5.4.5
        └─ micromatch:3.1.10
              └─ snapdragon:0.8.2
                    └─ debug:2.6.9
              └─ extglob:2.0.4
                    └─ expand-brackets:2.1.4
                          └─ debug:2.6.9

webpack:4.35.0
        └─ watchpack:1.6.0
              └─ chokidar:2.1.6
                    └─ anymatch:2.0.0
                          └─ micromatch:3.1.10
                                └─ extglob:2.0.4
                                      └─ expand-brackets:2.1.4
                                            └─ debug:2.6.9
        └─ micromatch:3.1.10
              └─ extglob:2.0.4
                    └─ expand-brackets:2.1.4
                          └─ debug:2.6.9

webpack-cli:3.3.5
        └─ findup-sync:3.0.0
              └─ micromatch:3.1.10
                    └─ extglob:2.0.4
                          └─ expand-brackets:2.1.4
                                └─ debug:2.6.9

This is an automated GitHub Issue created by Sonatype DepShield. Details on managing GitHub Apps, including DepShield, are available for personal and organization accounts. Please submit questions or feedback about DepShield to the Sonatype DepShield Community.

[DepShield] (CVSS 7.5) Vulnerability due to usage of postcss:8.2.8

Vulnerabilities

DepShield reports that this application's usage of postcss:8.2.8 results in the following vulnerability(s):


Occurrences

postcss:8.2.8 is a transitive dependency introduced by the following direct dependency(s):

sanitize-html:2.3.3
        └─ postcss:8.2.8

This is an automated GitHub Issue created by Sonatype DepShield. Details on managing GitHub Apps, including DepShield, are available for personal and organization accounts. Please submit questions or feedback about DepShield to the Sonatype DepShield Community.

[DepShield] (CVSS 7.5) Vulnerability due to usage of yargs-parser:5.0.0

Vulnerabilities

DepShield reports that this application's usage of yargs-parser:5.0.0 results in the following vulnerability(s):


Occurrences

yargs-parser:5.0.0 is a transitive dependency introduced by the following direct dependency(s):

node-sass:4.13.1
        └─ sass-graph:2.2.4
              └─ yargs:7.1.0
                    └─ yargs-parser:5.0.0

This is an automated GitHub Issue created by Sonatype DepShield. Details on managing GitHub Apps, including DepShield, are available for personal and organization accounts. Please submit questions or feedback about DepShield to the Sonatype DepShield Community.

[DepShield] (CVSS 5.3) Vulnerability due to usage of kind-of:5.1.0

Vulnerabilities

DepShield reports that this application's usage of kind-of:5.1.0 results in the following vulnerability(s):


Occurrences

kind-of:5.1.0 is a transitive dependency introduced by the following direct dependency(s):

cpx:1.5.0
        └─ chokidar:1.7.0
              └─ readdirp:2.2.1
                    └─ micromatch:3.1.10
                          └─ extglob:2.0.4
                                └─ expand-brackets:2.1.4
                                      └─ define-property:0.2.5
                                            └─ is-descriptor:0.1.6
                                                  └─ kind-of:5.1.0

ts-loader:5.4.5
        └─ micromatch:3.1.10
              └─ snapdragon:0.8.2
                    └─ define-property:0.2.5
                          └─ is-descriptor:0.1.6
                                └─ kind-of:5.1.0
              └─ extglob:2.0.4
                    └─ expand-brackets:2.1.4
                          └─ define-property:0.2.5
                                └─ is-descriptor:0.1.6
                                      └─ kind-of:5.1.0

webpack:4.41.2
        └─ watchpack:1.6.0
              └─ chokidar:2.1.8
                    └─ anymatch:2.0.0
                          └─ micromatch:3.1.10
                                └─ extglob:2.0.4
                                      └─ expand-brackets:2.1.4
                                            └─ define-property:0.2.5
                                                  └─ is-descriptor:0.1.6
                                                        └─ kind-of:5.1.0
        └─ micromatch:3.1.10
              └─ extglob:2.0.4
                    └─ expand-brackets:2.1.4
                          └─ define-property:0.2.5
                                └─ is-descriptor:0.1.6
                                      └─ kind-of:5.1.0

webpack-cli:3.3.9
        └─ findup-sync:3.0.0
              └─ micromatch:3.1.10
                    └─ extglob:2.0.4
                          └─ expand-brackets:2.1.4
                                └─ define-property:0.2.5
                                      └─ is-descriptor:0.1.6
                                            └─ kind-of:5.1.0

This is an automated GitHub Issue created by Sonatype DepShield. Details on managing GitHub Apps, including DepShield, are available for personal and organization accounts. Please submit questions or feedback about DepShield to the Sonatype DepShield Community.

Paginated view text truncation in v2

The included Call of the Wild example demonstrates the phenomenon for me with the head of v2 using the "Dita Example:". Both the "Dita Sample Read:" and "Material Example:" seem to be missing files (from injectables) and error out.

To reproduce, simply open the COTW link with the "Dita Example" link, switch to paginated view and carefully navigate forward until one of the chapters is truncated. On my screens this is within the first 3 or so chapters.

@kristojorg , this phenomenon is also visible using today's main of NYPL's web-reader.

[DepShield] (CVSS 7.4) Vulnerability due to usage of lodash:4.17.19

Vulnerabilities

DepShield reports that this application's usage of lodash:4.17.19 results in the following vulnerability(s):


Occurrences

lodash:4.17.19 is a transitive dependency introduced by the following direct dependency(s):

mocha:7.2.0
        └─ yargs-unparser:1.6.0
              └─ lodash:4.17.19

node-sass:4.14.1
        └─ gaze:1.1.3
              └─ globule:1.3.1
                    └─ lodash:4.17.19
        └─ lodash:4.17.19
        └─ sass-graph:2.2.5
              └─ lodash:4.17.19

sinon:6.3.5
        └─ nise:1.4.10
              └─ @sinonjs/formatio:3.2.1
                    └─ @sinonjs/samsam:3.3.1
                          └─ lodash:4.17.19

This is an automated GitHub Issue created by Sonatype DepShield. Details on managing GitHub Apps, including DepShield, are available for personal and organization accounts. Please submit questions or feedback about DepShield to the Sonatype DepShield Community.

[DepShield] (CVSS 7.4) Vulnerability due to usage of lodash.flatten:4.4.0

Vulnerabilities

DepShield reports that this application's usage of lodash.flatten:4.4.0 results in the following vulnerability(s):


Occurrences

lodash.flatten:4.4.0 is a transitive dependency introduced by the following direct dependency(s):

eslint:7.23.0
        └─ table:6.0.9
              └─ lodash.flatten:4.4.0

This is an automated GitHub Issue created by Sonatype DepShield. Details on managing GitHub Apps, including DepShield, are available for personal and organization accounts. Please submit questions or feedback about DepShield to the Sonatype DepShield Community.

isScrollMode sometimes is called too early

I have been getting errors of "parent element is null" that seem to come from this line in ReflowableBookView. It appears that isScrollMode() is called too early, and this.iframe.contentDocument is undefined. I made a patch for this to check if this.iframe.contentDocument is defined before trying to find the html element, but that probably won't fix the underlying problem.

My suggestion would be that we turn on strictNullChecks in typescript config and fix all the type errors resulting from that, as that will implicitly force us to deal with this.

v2 resize font in paginated mode doesn't recalculate the number of pages of previously shown chapters

With current v2 (using the standard example epub, with index_dita.html), if you:

  1. Show a chapter with a small font,
  2. Continue to the following chapter using the next button,
  3. Increase (by a lot) the font size,
  4. Return to the previous chapter using the previous button,

Then the number of pages is not correctly recalculated, and the previous chapter cuts off large segments at the end of the chapters.

The same procedure appears to correctly recalculate using v1.

Enable strictNullChecks

This is going to be a relatively large piece of work, but the payoff will also be large. We should enable TS strictNullChecks so that TS will warn us when we are accessing a property on a possible null or undefined value, thus eliminated the most common class of JS errors.

[DepShield] (CVSS 7.4) Vulnerability due to usage of lodash.clonedeep:4.5.0

Vulnerabilities

DepShield reports that this application's usage of lodash.clonedeep:4.5.0 results in the following vulnerability(s):


Occurrences

lodash.clonedeep:4.5.0 is a transitive dependency introduced by the following direct dependency(s):

eslint:7.23.0
        └─ table:6.0.9
              └─ lodash.clonedeep:4.5.0

This is an automated GitHub Issue created by Sonatype DepShield. Details on managing GitHub Apps, including DepShield, are available for personal and organization accounts. Please submit questions or feedback about DepShield to the Sonatype DepShield Community.

Annotations seem to be enabled by default

When I instantiate a reader using the following code:

    D2Reader.load({
      url: url,
      injectables: injectables,
    })

I get an error complaining about annotations:

TypeError: undefined is not an object (evaluating 'this.delegate.rights.enableAnnotations')

I can post the HTML I used if that's helpful, but it seems that annotations are assumed to be enabled even though I didn't explicitly ask for them? Just a guess

[DepShield] (CVSS 5.3) Vulnerability due to usage of kind-of:3.2.2

Vulnerabilities

DepShield reports that this application's usage of kind-of:3.2.2 results in the following vulnerability(s):


Occurrences

kind-of:3.2.2 is a transitive dependency introduced by the following direct dependency(s):

cpx:1.5.0
        └─ chokidar:1.7.0
              └─ anymatch:1.3.2
                    └─ micromatch:2.3.11
                          └─ kind-of:3.2.2
                          └─ braces:1.8.5
                                └─ expand-range:1.8.2
                                      └─ fill-range:2.2.4
                                            └─ is-number:2.1.0
                                                  └─ kind-of:3.2.2
              └─ readdirp:2.2.1
                    └─ micromatch:3.1.10
                          └─ braces:2.3.2
                                └─ fill-range:4.0.0
                                      └─ is-number:3.0.0
                                            └─ kind-of:3.2.2
                          └─ extglob:2.0.4
                                └─ expand-brackets:2.1.4
                                      └─ define-property:0.2.5
                                            └─ is-descriptor:0.1.6
                                                  └─ is-accessor-descriptor:0.1.6
                                                        └─ kind-of:3.2.2
                                                  └─ is-data-descriptor:0.1.4
                                                        └─ kind-of:3.2.2

ts-loader:5.4.5
        └─ micromatch:3.1.10
              └─ snapdragon:0.8.2
                    └─ base:0.11.2
                          └─ cache-base:1.0.1
                                └─ has-value:1.0.0
                                      └─ has-values:1.0.0
                                            └─ is-number:3.0.0
                                                  └─ kind-of:3.2.2
                                └─ to-object-path:0.3.0
                                      └─ kind-of:3.2.2
                          └─ class-utils:0.3.6
                                └─ static-extend:0.1.2
                                      └─ object-copy:0.1.0
                                            └─ kind-of:3.2.2
                    └─ define-property:0.2.5
                          └─ is-descriptor:0.1.6
                                └─ is-accessor-descriptor:0.1.6
                                      └─ kind-of:3.2.2
                                └─ is-data-descriptor:0.1.4
                                      └─ kind-of:3.2.2
              └─ braces:2.3.2
                    └─ snapdragon-node:2.1.1
                          └─ snapdragon-util:3.0.1
                                └─ kind-of:3.2.2
                    └─ fill-range:4.0.0
                          └─ to-regex-range:2.1.1
                                └─ is-number:3.0.0
                                      └─ kind-of:3.2.2
                          └─ is-number:3.0.0
                                └─ kind-of:3.2.2
              └─ extglob:2.0.4
                    └─ expand-brackets:2.1.4
                          └─ define-property:0.2.5
                                └─ is-descriptor:0.1.6
                                      └─ is-accessor-descriptor:0.1.6
                                            └─ kind-of:3.2.2
                                      └─ is-data-descriptor:0.1.4
                                            └─ kind-of:3.2.2

webpack:4.41.2
        └─ watchpack:1.6.0
              └─ chokidar:2.1.8
                    └─ anymatch:2.0.0
                          └─ micromatch:3.1.10
                                └─ extglob:2.0.4
                                      └─ expand-brackets:2.1.4
                                            └─ define-property:0.2.5
                                                  └─ is-descriptor:0.1.6
                                                        └─ is-accessor-descriptor:0.1.6
                                                              └─ kind-of:3.2.2
                                                        └─ is-data-descriptor:0.1.4
                                                              └─ kind-of:3.2.2
                    └─ braces:2.3.2
                          └─ fill-range:4.0.0
                                └─ is-number:3.0.0
                                      └─ kind-of:3.2.2
        └─ micromatch:3.1.10
              └─ braces:2.3.2
                    └─ fill-range:4.0.0
                          └─ is-number:3.0.0
                                └─ kind-of:3.2.2
              └─ extglob:2.0.4
                    └─ expand-brackets:2.1.4
                          └─ define-property:0.2.5
                                └─ is-descriptor:0.1.6
                                      └─ is-accessor-descriptor:0.1.6
                                            └─ kind-of:3.2.2
                                      └─ is-data-descriptor:0.1.4
                                            └─ kind-of:3.2.2

webpack-cli:3.3.9
        └─ findup-sync:3.0.0
              └─ micromatch:3.1.10
                    └─ braces:2.3.2
                          └─ fill-range:4.0.0
                                └─ is-number:3.0.0
                                      └─ kind-of:3.2.2
                    └─ extglob:2.0.4
                          └─ expand-brackets:2.1.4
                                └─ define-property:0.2.5
                                      └─ is-descriptor:0.1.6
                                            └─ is-accessor-descriptor:0.1.6
                                                  └─ kind-of:3.2.2
                                            └─ is-data-descriptor:0.1.4
                                                  └─ kind-of:3.2.2

This is an automated GitHub Issue created by Sonatype DepShield. Details on managing GitHub Apps, including DepShield, are available for personal and organization accounts. Please submit questions or feedback about DepShield to the Sonatype DepShield Community.

[DepShield] (CVSS 7.4) Vulnerability due to usage of lodash.memoize:4.1.2

Vulnerabilities

DepShield reports that this application's usage of lodash.memoize:4.1.2 results in the following vulnerability(s):


Occurrences

lodash.memoize:4.1.2 is a transitive dependency introduced by the following direct dependency(s):

parcel:2.0.0-beta.2
        └─ @parcel/config-default:2.0.0-beta.2
              └─ @parcel/optimizer-cssnano:2.0.0-beta.2
                    └─ cssnano:4.1.11
                          └─ cssnano-preset-default:4.0.8
                                └─ postcss-merge-rules:4.0.3
                                      └─ caniuse-api:3.0.0
                                            └─ lodash.memoize:4.1.2

This is an automated GitHub Issue created by Sonatype DepShield. Details on managing GitHub Apps, including DepShield, are available for personal and organization accounts. Please submit questions or feedback about DepShield to the Sonatype DepShield Community.

[DepShield] (CVSS 9.8) Vulnerability due to usage of big-integer:1.6.48

Vulnerabilities

DepShield reports that this application's usage of big-integer:1.6.48 results in the following vulnerability(s):


Occurrences

big-integer:1.6.48 is a transitive dependency introduced by the following direct dependency(s):

r2-shared-js:1.0.51
        └─ r2-utils-js:1.0.25
              └─ unzipper:0.10.11
                    └─ big-integer:1.6.48

This is an automated GitHub Issue created by Sonatype DepShield. Details on managing GitHub Apps, including DepShield, are available for personal and organization accounts. Please submit questions or feedback about DepShield to the Sonatype DepShield Community.

[DepShield] (CVSS 7.5) Vulnerability due to usage of http-proxy:1.18.1

Vulnerabilities

DepShield reports that this application's usage of http-proxy:1.18.1 results in the following vulnerability(s):


Occurrences

http-proxy:1.18.1 is a transitive dependency introduced by the following direct dependency(s):

http-server:0.12.3
        └─ http-proxy:1.18.1

This is an automated GitHub Issue created by Sonatype DepShield. Details on managing GitHub Apps, including DepShield, are available for personal and organization accounts. Please submit questions or feedback about DepShield to the Sonatype DepShield Community.

[DepShield] (CVSS 7.5) Vulnerability due to usage of mocha:5.2.0

Vulnerabilities

DepShield reports that this application's usage of mocha:5.2.0 results in the following vulnerability(s):

This is an automated GitHub Issue created by Sonatype DepShield. Details on managing GitHub Apps, including DepShield, are available for personal and organization accounts. Please submit questions or feedback about DepShield to the Sonatype DepShield Community.

[DepShield] (CVSS 7.5) Vulnerability due to usage of acorn:4.0.13

Vulnerabilities

DepShield reports that this application's usage of acorn:4.0.13 results in the following vulnerability(s):


Occurrences

acorn:4.0.13 is a transitive dependency introduced by the following direct dependency(s):

jsdom:9.12.0
        └─ acorn:4.0.13
        └─ acorn-globals:3.1.0
              └─ acorn:4.0.13

This is an automated GitHub Issue created by Sonatype DepShield. Details on managing GitHub Apps, including DepShield, are available for personal and organization accounts. Please submit questions or feedback about DepShield to the Sonatype DepShield Community.

Refactor the Publication weight getting

This is a ticket to refactor the way we process publication weights so that the map loop doesn't have side effects (a secondary loop modifying the original array inside itself). It appears necessary for now, but we should try to find another way in the future.

[DepShield] (CVSS 7.4) Vulnerability due to usage of ini:1.3.8

Vulnerabilities

DepShield reports that this application's usage of ini:1.3.8 results in the following vulnerability(s):


Occurrences

ini:1.3.8 is a transitive dependency introduced by the following direct dependency(s):

webpack-cli:3.3.9
        └─ findup-sync:3.0.0
              └─ resolve-dir:1.0.1
                    └─ global-modules:1.0.0
                          └─ global-prefix:1.0.2
                                └─ ini:1.3.8
        └─ global-modules:2.0.0
              └─ global-prefix:3.0.0
                    └─ ini:1.3.8

This is an automated GitHub Issue created by Sonatype DepShield. Details on managing GitHub Apps, including DepShield, are available for personal and organization accounts. Please submit questions or feedback about DepShield to the Sonatype DepShield Community.

[DepShield] (CVSS 7.5) Vulnerability due to usage of node-sass:4.13.1

Vulnerabilities

DepShield reports that this application's usage of node-sass:4.13.1 results in the following vulnerability(s):

This is an automated GitHub Issue created by Sonatype DepShield. Details on managing GitHub Apps, including DepShield, are available for personal and organization accounts. Please submit questions or feedback about DepShield to the Sonatype DepShield Community.

[DepShield] (CVSS 7.5) Vulnerability due to usage of braces:1.8.5

Vulnerabilities

DepShield reports that this application's usage of braces:1.8.5 results in the following vulnerability(s):


Occurrences

braces:1.8.5 is a transitive dependency introduced by the following direct dependency(s):

cpx:1.5.0
        └─ chokidar:1.7.0
              └─ anymatch:1.3.2
                    └─ micromatch:2.3.11
                          └─ braces:1.8.5

This is an automated GitHub Issue created by Sonatype DepShield. Details on managing GitHub Apps, including DepShield, are available for personal and organization accounts. Please submit questions or feedback about DepShield to the Sonatype DepShield Community.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.