Security News
Research
Data Theft Repackaged: A Case Study in Malicious Wrapper Packages on npm
The Socket Research Team breaks down a malicious wrapper package that uses obfuscation to harvest credentials and exfiltrate sensitive data.
@ridi/reader.js
Advanced tools
Javascript library for RIDI EPUB Viewer written in ECMAScript 6
$ yarn install @ridi/reader.js
└─┬ root
├── LICENSE
├── package.json
├── README.md
├─┬ android
| └─ index.js
├─┬ ios
| └─ index.js
└─┬ web
└─ index.js
import { Reader, Context, Util } from '@ridi/reader.js/[android|ios|web]';
offset
: 화면 내 위치를 나타내는 zero-based 오프셋 값, 페이지 보기의 경우 pageOffset
, 스크롤 보기의 경우 scrollY
값을 의미rect
: 화면 내 범위를 나타내는 DOMRect를 변형한 MutableClientRect
(x
, y
, width
, height
, top
, left
, right
, bottom
값을 가지고 있음)range
: Range 객체node location
: (스파인 내) 위치를 나타내는 자체 포맷 (예: 31#0
)serialized range
: (스파인 내) 범위를 나타내는 포맷, Rangy 라이브러리에서 제공하는 serialization format 사용 (예: 0/171:0,0/171:30
)anchor
: HTML anchor 링크의 id
애트리뷰트 값렌더링에는 관여하지 않고 선택 영역에 대한 관리만 담당
sel.startSelectionMode(x, y)
mousedown
, touch
이벤트 등 발생 시 위 함수를 호출해 선택 모드로 진입sel.expandUpperSelection(x, y)
또는 sel.expandLowerSelection(x, y)
upper
, lower
는 선택 영역 양 끝에 나타나는 핸들을 의미sel.getSelectedRange()
range
로 반환sel.getSelectedSerializedRange()
serialized range
포맷으로 반환getOffsetFromSerializedRange(serializedRange)
serialized range
를 offset
으로 변환getOffsetFromAnchor(anchor)
anchor
의 위치를 offset
으로 변환searchText(keyword)
serialized range
포맷으로 반환textAroundSearchResult(pre, post)
getPageOfSearchResult()
pageOffset
값을 반환getRectsOfSearchResult()
rect
객체를 배열로 반환content.getLinkFromElement(el)
<a>
태그(이거나 그 부모가 <a>
태그)일 경우 그 정보(node
, href
, type
)를 반환type
으로 epub:type
애트리뷰트의 값 반환 (예: 팝업 주석 링크일 경우 type: 'noteref'
)content.reviseImage(imgEl, screenWidth, screenHeight)
content.getSvgElementFromPoint(x, y)
mouseup
, touch
이벤트 등 발생 시 해당 포인트에 <svg>
태그 존재 여부 확인<svg>
태그가 존재하는 경우 태그의 전체 내용을 문자열로 반환content.getImagePathFromPoint(x, y)
mouseup
, touch
이벤트 등 발생 시 해당 포인트에 <img>
태그 존재 여부 확인<img>
태그가 존재하는 경우 src
애트리뷰트 값 반환/common/tts/
디렉토리 참조node location
기반으로 구현됨You can install it with the following command:
$ git clone git@github.com:ridi/Reader.js.git
$ yarn install --frozen-lockfile
You can build it with the following command in Reader.js folder:
$ yarn [build|watch]
grunt-cli is required to build Reader.js
FAQs
Javascript library for RIDI ePub Viewer written in ECMAScript 6
We found that @ridi/reader.js demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 10 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Research
The Socket Research Team breaks down a malicious wrapper package that uses obfuscation to harvest credentials and exfiltrate sensitive data.
Research
Security News
Attackers used a malicious npm package typosquatting a popular ESLint plugin to steal sensitive data, execute commands, and exploit developer systems.
Security News
The Ultralytics' PyPI Package was compromised four times in one weekend through GitHub Actions cache poisoning and failure to rotate previously compromised API tokens.