Generated source maps, moved demo -> reader, reader_src
34
Gruntfile.js
|
@ -10,11 +10,8 @@ module.exports = function(grunt) {
|
|||
concat_sourcemap : {
|
||||
'build/epub_no_underscore.js': ['<banner>', 'libs/rsvp/rsvp.js', 'src/*.js'],
|
||||
'build/epub.js': ['<banner>', 'libs/underscore/underscore-min.js', 'libs/rsvp/rsvp.js', 'src/*.js'],
|
||||
'build/reader.js': ['<banner>', 'reader/reader.js', 'reader/controllers/*.js'],
|
||||
'build/reader.js': ['<banner>', 'reader_src/reader.js', 'reader_src/controllers/*.js'],
|
||||
'build/hooks.js': ['<banner>', 'hooks/default/*.js']
|
||||
// 'demo/js/libs/fileStorage.min.js': 'libs/fileStorage/fileStorage.min.js',
|
||||
// 'demo/js/libs/loader_filesystem.min.js': 'libs/fileStorage/workers/loader_filesystem.min.js',
|
||||
// 'demo/js/libs/inflate.js': 'libs/zip/inflate.js',
|
||||
},
|
||||
uglify: {
|
||||
my_target: {
|
||||
|
@ -23,34 +20,29 @@ module.exports = function(grunt) {
|
|||
sourceMap: true
|
||||
},
|
||||
files: {
|
||||
// 'demo/js/epub.min.js': ['build/epub.js'],
|
||||
'build/epub.min.js': ['build/epub.js'],
|
||||
'build/reader.min.js': ['build/reader.js'],
|
||||
// 'demo/js/hooks.min.js': ['build/hooks.js'],
|
||||
'build/hooks.min.js': ['build/hooks.js'],
|
||||
// 'demo/js/libs/zip.min.js': ['libs/zip/zip.js', 'libs/zip/zip-fs.js', 'libs/zip/zip-ext.js', 'libs/zip/mime-types.js'],
|
||||
// 'demo/js/libs/inflate.min.js': ['libs/zip/inflate.js'],
|
||||
'build/libs/zip.min.js': ['libs/zip/zip.js', 'libs/zip/zip-fs.js', 'libs/zip/zip-ext.js', 'libs/zip/mime-types.js'],
|
||||
'build/libs/inflate.js': ['libs/zip/inflate.js']
|
||||
// 'build/libs/screenfull.min.js': ['libs/screenfull.min.js']
|
||||
}
|
||||
}
|
||||
},
|
||||
copy: {
|
||||
main: {
|
||||
files: [
|
||||
{src: 'build/epub.js', dest: 'demo/js/epub.min.js'},
|
||||
{src: 'build/hooks.min.js', dest: 'demo/js/hooks.min.js'},
|
||||
{src: 'build/reader.min.js', dest: 'demo/js/reader.min.js'},
|
||||
{src: 'build/epub.min.map', dest: 'demo/js/epub.js.map'},
|
||||
{src: 'build/hooks.min.map', dest: 'demo/js/hooks.js.map'},
|
||||
{src: 'build/reader.js.map', dest: 'demo/js/hooks.js.map'},
|
||||
{src: 'build/zip/*', dest: 'demo/js/libs/', filter: 'isFile'},
|
||||
{src: 'libs/jquery/jquery-2.1.0.min.js', dest:'demo/js/libs/jquery-2.1.0.min.js'},
|
||||
{src: 'libs/screenfull.min.js', dest: 'demo/js/libs/screenfull.min.js'},
|
||||
{src: 'reader/plugins/search.js', dest: 'demo/js/plugins/search.js'},
|
||||
{src: 'reader/plugins/hypothesis.js', dest: 'demo/js/plugins/hypothesis.js'},
|
||||
{src: 'hooks/extensions/highlight.js', dest: 'demo/js/hooks/extensions/highlight.js'}
|
||||
{src: 'build/epub.js', dest: 'reader/js/epub.min.js'},
|
||||
{src: 'build/hooks.min.js', dest: 'reader/js/hooks.min.js'},
|
||||
{src: 'build/reader.min.js', dest: 'reader/js/reader.min.js'},
|
||||
{src: 'build/epub.min.map', dest: 'reader/js/epub.js.map'},
|
||||
{src: 'build/hooks.min.map', dest: 'reader/js/hooks.js.map'},
|
||||
{src: 'build/reader.js.map', dest: 'reader/js/hooks.js.map'},
|
||||
{src: 'build/zip/*', dest: 'reader/js/libs/', filter: 'isFile'},
|
||||
{src: 'libs/jquery/jquery-2.1.0.min.js', dest:'reader/js/libs/jquery-2.1.0.min.js'},
|
||||
{src: 'libs/screenfull.min.js', dest: 'reader/js/libs/screenfull.min.js'},
|
||||
{src: 'reader_src/plugins/search.js', dest: 'reader/js/plugins/search.js'},
|
||||
{src: 'reader_src/plugins/hypothesis.js', dest: 'reader/js/plugins/hypothesis.js'},
|
||||
{src: 'hooks/extensions/highlight.js', dest: 'reader/js/hooks/extensions/highlight.js'}
|
||||
|
||||
]
|
||||
},
|
||||
|
|
24
build/epub.js.map
Normal file
1
build/epub.min.map
Normal file
23
build/epub_no_underscore.js.map
Normal file
12
build/hooks.js.map
Normal file
|
@ -0,0 +1,12 @@
|
|||
{
|
||||
"version": 3,
|
||||
"file": "hooks.js",
|
||||
"sources": [
|
||||
"hooks/default/endnotes.js",
|
||||
"hooks/default/mathml.js",
|
||||
"hooks/default/smartimages.js",
|
||||
"hooks/default/transculsions.js"
|
||||
],
|
||||
"names": [],
|
||||
"mappings": "AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC9JA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACxBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACrEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA"
|
||||
}
|
1
build/hooks.min.map
Normal file
1
build/libs/inflate.map
Normal file
1
build/libs/zip.min.map
Normal file
17
build/reader.js.map
Normal file
0
demo/js/reader.min.js → build/reader.min.js
vendored
1
build/reader.min.map
Normal file
|
@ -43,8 +43,8 @@
|
|||
|
||||
<script>
|
||||
|
||||
EPUBJS.filePath = "../demo/js/libs/";
|
||||
EPUBJS.cssPath = "../demo/css/";
|
||||
EPUBJS.filePath = "../reader/js/libs/";
|
||||
EPUBJS.cssPath = "../reader/css/";
|
||||
|
||||
</script>
|
||||
|
||||
|
@ -111,7 +111,7 @@
|
|||
<script>
|
||||
"use strict";
|
||||
|
||||
var Book = ePub("../demo/moby-dick/", {restore: true, reload: true });
|
||||
var Book = ePub("../reader/moby-dick/", {restore: true, reload: true });
|
||||
|
||||
</script>
|
||||
</head>
|
||||
|
|
|
@ -44,7 +44,7 @@
|
|||
<script>
|
||||
"use strict";
|
||||
|
||||
var Book = ePub("../demo/moby-dick/", { restore: true });
|
||||
var Book = ePub("../reader_src/moby-dick/", { restore: true });
|
||||
|
||||
|
||||
</script>
|
||||
|
@ -54,7 +54,7 @@
|
|||
<div id="prev" onclick="Book.prevPage();" class="arrow">‹</div>
|
||||
<div id="area"></div>
|
||||
<div id="next" onclick="Book.nextPage();"class="arrow">›</div>
|
||||
<div id="loader"><img src="../demo/img/loader.gif"></div>
|
||||
<div id="loader"><img src="../reader/img/loader.gif"></div>
|
||||
<select id="toc"></select>
|
||||
</div>
|
||||
|
||||
|
|
|
@ -19,7 +19,7 @@
|
|||
<script>
|
||||
"use strict";
|
||||
|
||||
var Book = ePub("/demo/moby-dick/", { restore: true });
|
||||
var Book = ePub("/reader/moby-dick/", { restore: true });
|
||||
|
||||
|
||||
</script>
|
||||
|
@ -29,7 +29,7 @@
|
|||
<div id="prev" onclick="Book.prevPage();" class="arrow">‹</div>
|
||||
<div id="area"></div>
|
||||
<div id="next" onclick="Book.nextPage();"class="arrow">›</div>
|
||||
<div id="loader"><img src="../demo/img/loader.gif"></div>
|
||||
<div id="loader"><img src="../reader/img/loader.gif"></div>
|
||||
<select id="toc"></select>
|
||||
</div>
|
||||
|
||||
|
|
|
@ -43,8 +43,8 @@
|
|||
|
||||
<script>
|
||||
|
||||
EPUBJS.filePath = "../demo/js/libs/";
|
||||
EPUBJS.cssPath = "../demo/css/";
|
||||
EPUBJS.filePath = "../reader/js/libs/";
|
||||
EPUBJS.cssPath = "../reader/css/";
|
||||
|
||||
</script>
|
||||
|
||||
|
@ -107,7 +107,7 @@
|
|||
<script>
|
||||
"use strict";
|
||||
|
||||
var Book = ePub("../demo/moby-dick/", {restore: true, reload: true });
|
||||
var Book = ePub("../reader/moby-dick/", {restore: true, reload: true });
|
||||
|
||||
</script>
|
||||
</head>
|
||||
|
|
|
@ -69,7 +69,7 @@
|
|||
<script>
|
||||
"use strict";
|
||||
|
||||
var Book = ePub("../demo/moby-dick/");
|
||||
var Book = ePub("../reader/moby-dick/");
|
||||
|
||||
</script>
|
||||
</head>
|
||||
|
|
|
@ -13,19 +13,19 @@
|
|||
<script src="../build/epub.min.js"></script>
|
||||
|
||||
<!-- Zip JS -->
|
||||
<script src="/demo/js/libs/zip.min.js"></script>
|
||||
<script src="/reader/js/libs/zip.min.js"></script>
|
||||
|
||||
<script>
|
||||
|
||||
EPUBJS.filePath = "../demo/js/libs/";
|
||||
EPUBJS.cssPath = "../demo/css/";
|
||||
EPUBJS.filePath = "../reader/js/libs/";
|
||||
EPUBJS.cssPath = "../reader/css/";
|
||||
|
||||
</script>
|
||||
|
||||
<script>
|
||||
"use strict";
|
||||
|
||||
var Book = ePub("../demo/moby-dick.epub");
|
||||
var Book = ePub("../reader/moby-dick.epub");
|
||||
|
||||
</script>
|
||||
</head>
|
||||
|
|
|
@ -98,7 +98,7 @@
|
|||
<div id="main">
|
||||
<div id="prev" onclick="Book.prevPage();" class="arrow">‹</div>
|
||||
<div id="wrapper">
|
||||
<epub-reader id="book" src="../demo/moby-dick/" width="400" height="600" restore></epub-reader>
|
||||
<epub-reader id="book" src="../reader/moby-dick/" width="400" height="600" restore></epub-reader>
|
||||
</div>
|
||||
<div id="next" onclick="Book.nextPage();"class="arrow">›</div>
|
||||
</div>
|
||||
|
|
|
@ -46,7 +46,7 @@
|
|||
<script>
|
||||
"use strict";
|
||||
|
||||
var Book = ePub("../demo/moby-dick/", {
|
||||
var Book = ePub("../reader/moby-dick/", {
|
||||
width: 480,
|
||||
height: 645,
|
||||
spreads : false,
|
||||
|
|
265
examples/hypothesis.html
Normal file → Executable file
|
@ -1,63 +1,230 @@
|
|||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1 plus SVG 1.1//EN"
|
||||
"http://www.w3.org/2002/04/xhtml-math-svg/xhtml-math-svg.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:epub="http://www.idpf.org/2007/ops">
|
||||
<!DOCTYPE html>
|
||||
<html class="no-js">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
|
||||
<title>Basic ePubJS Example</title>
|
||||
<title></title>
|
||||
<meta name="description" content="">
|
||||
<meta name="viewport" content="width=device-width">
|
||||
<meta name="viewport" content="width=device-width, user-scalable=no, minimal-ui">
|
||||
<meta name="apple-mobile-web-app-capable" content="yes">
|
||||
|
||||
<!-- EPUBJS Renderer -->
|
||||
<script src="../build/epub.min.js"></script>
|
||||
<script>
|
||||
var qs = document.querySelector;
|
||||
document.querySelector = null;
|
||||
document.querySelectorAll = null;
|
||||
</script>
|
||||
<script src="../hooks/extensions/hypothesis.js"></script>
|
||||
|
||||
<link rel="stylesheet" href="basic.css">
|
||||
|
||||
<style type="text/css">
|
||||
|
||||
body {
|
||||
overflow: hidden;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
#area {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
|
||||
</style>
|
||||
<link rel="stylesheet" href="../reader/css/normalize.css">
|
||||
<link rel="stylesheet" href="../reader/css/main.css">
|
||||
<link rel="stylesheet" href="../reader/css/popup.css">
|
||||
<!-- <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js"></script>
|
||||
<script>window.jQuery || document.write('<script src="epubjs/libs/jquery-1.9.0.min.js"><\/script>')</script>
|
||||
-->
|
||||
<script src="../libs/jquery/jquery-2.1.0.js"></script>
|
||||
|
||||
<script>
|
||||
<script>
|
||||
"use strict";
|
||||
|
||||
var Book = ePub("../demo/moby-dick/", {
|
||||
fixedLayout : true
|
||||
});
|
||||
|
||||
|
||||
|
||||
document.onreadystatechange = function () {
|
||||
if (document.readyState == "complete") {
|
||||
EPUBJS.VERSION = "0.1.6";
|
||||
|
||||
EPUBJS.filePath = "js/libs/";
|
||||
EPUBJS.cssPath = "../reader/css/";
|
||||
// fileStorage.filePath = EPUBJS.filePath;
|
||||
|
||||
ePubReader("../reader/moby-dick/");
|
||||
}
|
||||
};
|
||||
|
||||
</script>
|
||||
|
||||
<!-- Render -->
|
||||
<script src="../reader/js/epub.min.js"></script>
|
||||
|
||||
<!-- Hooks -->
|
||||
<script src="../reader/js/hooks.min.js"></script>
|
||||
|
||||
<!-- Reader -->
|
||||
<script src="../reader/js/reader.min.js"></script>
|
||||
|
||||
<!-- Plugins -->
|
||||
<script src="../reader/plugins/search.js"></script>
|
||||
|
||||
<!-- Full Screen -->
|
||||
<script src="../reader/js/libs/screenfull.min.js"></script>
|
||||
|
||||
<!-- Highlights -->
|
||||
<script src="../reader/js/libs/jquery.highlight.js"></script>
|
||||
<script src="../hooks/extensions/highlight.js"></script>
|
||||
|
||||
<!-- Hypothes.is -->
|
||||
<!-- <script src="https://static.hypothes.is/lib/jquery-21.10.2.min.js"</script>-->
|
||||
<script src="https://static.hypothes.is/lib/jquery.scrollintoview.min.js"></script>
|
||||
<script src="https://static.hypothes.is/lib/jquery.ui.widget.min.js"></script>
|
||||
<script src="https://static.hypothes.is/lib/jquery.ui.autocomplete.min.js"></script>
|
||||
<script src="https://static.hypothes.is/lib/jquery.ui.core.min.js"></script>
|
||||
<script src="https://static.hypothes.is/lib/jquery.ui.widget.min.js"></script>
|
||||
<script src="https://static.hypothes.is/lib/jquery.ui.menu.min.js"></script>
|
||||
<script src="https://static.hypothes.is/lib/jquery.ui.position.min.js"></script>
|
||||
<script src="https://static.hypothes.is/lib/jquery.ui.effect.min.js"></script>
|
||||
<script src="https://static.hypothes.is/lib/jquery.ui.effect-blind.min.js"></script>
|
||||
<script src="https://static.hypothes.is/lib/jquery.ui.effect-highlight.min.js"></script>
|
||||
<script src="https://static.hypothes.is/lib/jquery.ui.effect-forecolor-highlight.min.js"></script>
|
||||
<script src="https://static.hypothes.is/lib/jschannel.min.js"></script>
|
||||
<script src="https://static.hypothes.is/lib/gettext.min.js"></script>
|
||||
<script src="https://static.hypothes.is/locale/data.min.js"></script>
|
||||
<script src="https://static.hypothes.is/lib/annotator.min.js"></script>
|
||||
<script src="https://static.hypothes.is/js/plugin/bridge.js"></script>
|
||||
<script src="https://static.hypothes.is/lib/annotator.document.min.js"></script>
|
||||
<!-- <script src="https://static.hypothes.is/js/plugin/heatmap.js"></script> -->
|
||||
<script src="https://static.hypothes.is/lib/annotator.texthighlights.min.js"></script>
|
||||
<script src="https://static.hypothes.is/lib/annotator.dtm.min.js"></script>
|
||||
<script src="https://static.hypothes.is/lib/annotator.textanchors.min.js"></script>
|
||||
<script src="https://static.hypothes.is/lib/annotator.fuzzytextanchors.min.js"></script>
|
||||
<!-- <script src="https://static.hypothes.is/lib/annotator.pdf.min.js"></script> -->
|
||||
<script src="https://static.hypothes.is/js/plugin/toolbar.js"></script>
|
||||
<script src="https://static.hypothes.is/js/inject.min.js"></script>
|
||||
|
||||
<link rel="stylesheet" href="https://static.hypothes.is/lib/jquery-ui-smoothness.min.css"></link>
|
||||
<link rel="stylesheet" href="https://static.hypothes.is/css/inject.css">
|
||||
|
||||
|
||||
<script async src="../hooks/extensions/hypothesis.js"></script>
|
||||
<script src="../reader_src/plugins/hypothesis.js"></script>
|
||||
|
||||
<style>
|
||||
#annotator-toolbar {
|
||||
display: inline-block;
|
||||
position: relative;
|
||||
width: 18px;
|
||||
height: 27px;
|
||||
margin-right: 12px;
|
||||
}
|
||||
|
||||
#annotator-toolbar .annotator-toolbar {
|
||||
position: absolute;
|
||||
top: auto;
|
||||
right: auto;
|
||||
left: auto;
|
||||
/* z-index: 100; */
|
||||
}
|
||||
|
||||
#annotator-toolbar .annotator-toolbar li {
|
||||
background: none;
|
||||
border: 0;
|
||||
box-shadow: none;
|
||||
list-style: none;
|
||||
}
|
||||
|
||||
#hypothesis {
|
||||
position: absolute;
|
||||
right: 0;
|
||||
top: 0;
|
||||
height: 100%;
|
||||
width: 33%;
|
||||
margin: 0 .5%;
|
||||
overflow: hidden;
|
||||
z-index: 0;
|
||||
background: #4e4e4e;
|
||||
}
|
||||
|
||||
#hypothesis .annotator-frame {
|
||||
background: none;
|
||||
position: absolute;
|
||||
left: 0;
|
||||
margin: auto !important;
|
||||
width: 100%;
|
||||
z-index: auto;
|
||||
}
|
||||
|
||||
#annotator-notice {
|
||||
display: none;
|
||||
}
|
||||
|
||||
#main {
|
||||
left: 0;
|
||||
}
|
||||
|
||||
#main.single {
|
||||
width: 66%;
|
||||
}
|
||||
|
||||
#main.single.closed {
|
||||
-webkit-transform: translate(51.6%, 0);
|
||||
-moz-transform: translate(51.6%, 0);
|
||||
}
|
||||
|
||||
#sidebar {
|
||||
width: 34%
|
||||
}
|
||||
|
||||
</style>
|
||||
|
||||
</head>
|
||||
<body>
|
||||
<div id="main">
|
||||
<div id="prev" onclick="Book.prevPage();" class="arrow">‹</div>
|
||||
<div id="area"></div>
|
||||
<div id="next" onclick="Book.nextPage();"class="arrow">›</div>
|
||||
<div id="sidebar">
|
||||
<div id="panels">
|
||||
<input id="searchBox" placeholder="search" type="search">
|
||||
|
||||
<a id="show-Search" class="show_view icon-search" data-view="Search">Search</a>
|
||||
<a id="show-Toc" class="show_view icon-list-1 active" data-view="Toc">TOC</a>
|
||||
<a id="show-Bookmarks" class="show_view icon-bookmark" data-view="Bookmarks">Bookmarks</a>
|
||||
<a id="show-Notes" class="show_view icon-edit" data-view="Notes">Notes</a>
|
||||
</div>
|
||||
|
||||
<script>
|
||||
|
||||
Book.renderTo("area");
|
||||
Book.setStyle("padding", "0 300px");
|
||||
|
||||
</script>
|
||||
<div id="tocView" class="view">
|
||||
</div>
|
||||
<div id="searchView" class="view">
|
||||
<ul id="searchResults"></ul>
|
||||
</div>
|
||||
<div id="bookmarksView" class="view">
|
||||
<ul id="bookmarks"></ul>
|
||||
</div>
|
||||
<div id="notesView" class="view">
|
||||
<div id="new-note">
|
||||
<textarea id="note-text"></textarea>
|
||||
<button id="note-anchor">Anchor</button>
|
||||
</div>
|
||||
<ol id="notes"></ol>
|
||||
</div>
|
||||
</div>
|
||||
<div id="hypothesis"></div>
|
||||
<div id="main">
|
||||
|
||||
<div id="titlebar">
|
||||
<div id="opener">
|
||||
<a id="slider" class="icon-menu">Menu</a>
|
||||
</div>
|
||||
<div id="metainfo">
|
||||
<span id="book-title"></span>
|
||||
<span id="title-seperator"> – </span>
|
||||
<span id="chapter-title"></span>
|
||||
</div>
|
||||
<div id="title-controls">
|
||||
<a id="bookmark" class="icon-bookmark-empty">Bookmark</a>
|
||||
<a id="setting" class="icon-cog">Settings</a>
|
||||
<a id="fullscreen" class="icon-resize-full">Fullscreen</a>
|
||||
<div id="annotator-toolbar"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="divider"></div>
|
||||
<div id="prev" class="arrow">‹</div>
|
||||
<div id="viewer"></div>
|
||||
<div id="next" class="arrow">›</div>
|
||||
|
||||
<div id="loader"><img src="../reader/img/loader.gif"></div>
|
||||
</div>
|
||||
<div class="modal md-effect-1" id="settings-modal">
|
||||
<div class="md-content">
|
||||
<h3>Settings</h3>
|
||||
<div>
|
||||
<p>
|
||||
<!-- <input type='radio' name='fontSize' value='x-small'><span class='xsmall'>Extra Small</span><br>
|
||||
<input type='radio' name='fontSize' value='small'><span class='small'>Small</span><br>
|
||||
<input type='radio' name='fontSize' value='medium'><span class='medium'>Medium</span><br>
|
||||
<input type='radio' name='fontSize' value='large'><span class='large'>Large</span><br>
|
||||
<input type='radio' name='fontSize' value='x-large'><span class='xlarge'>Extra Large</span> -->
|
||||
<input type="checkbox" id="sidebarReflow" name="sidebarReflow">Reflow text when sidebars are open.</input>
|
||||
</p>
|
||||
</div>
|
||||
<div class="closer icon-cancel-circled"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="overlay"></div>
|
||||
</body>
|
||||
</html>
|
||||
|
|
|
@ -86,7 +86,7 @@
|
|||
<li><a href="fixed.html">Fixed</a></li>
|
||||
<li><a href="custom-elements.html">Custom Element</a></li>
|
||||
<li><a href="mathml.html">MathML</a></li>
|
||||
<li><a href="annotations.html">Annotations with Hypothes. is</a></li>
|
||||
<li><a href="hypothesis.html">Annotations with Hypothes. is</a></li>
|
||||
</ol>
|
||||
|
||||
</div>
|
||||
|
|
|
@ -42,8 +42,8 @@
|
|||
|
||||
<script>
|
||||
|
||||
EPUBJS.filePath = "../demo/js/libs/";
|
||||
EPUBJS.cssPath = "../demo/css/";
|
||||
EPUBJS.filePath = "../reader/js/libs/";
|
||||
EPUBJS.cssPath = "../reader/css/";
|
||||
|
||||
</script>
|
||||
|
||||
|
@ -119,7 +119,7 @@
|
|||
<script>
|
||||
"use strict";
|
||||
|
||||
var book = ePub("../demo/moby-dick/", { width: 1076, height: 588 });
|
||||
var book = ePub("../reader/moby-dick/", { width: 1076, height: 588 });
|
||||
|
||||
</script>
|
||||
</head>
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
<script>
|
||||
"use strict";
|
||||
|
||||
var Book = ePub("../demo/moby-dick/", { restore: true });
|
||||
var Book = ePub("../reader/moby-dick/", { restore: true });
|
||||
|
||||
|
||||
</script>
|
||||
|
@ -26,7 +26,7 @@
|
|||
<div id="prev" onclick="Book.prevPage();" class="arrow">‹</div>
|
||||
<div id="area"></div>
|
||||
<div id="next" onclick="Book.nextPage();"class="arrow">›</div>
|
||||
<div id="loader"><img src="../demo/img/loader.gif"></div>
|
||||
<div id="loader"><img src="../reader/img/loader.gif"></div>
|
||||
<select id="toc"></select>
|
||||
</div>
|
||||
|
||||
|
|
|
@ -8,9 +8,9 @@
|
|||
<meta name="viewport" content="width=device-width">
|
||||
<meta name="apple-mobile-web-app-capable" content="yes">
|
||||
|
||||
<link rel="stylesheet" href="../demo/css/normalize.css">
|
||||
<link rel="stylesheet" href="../demo/css/main.css">
|
||||
<link rel="stylesheet" href="../demo/css/popup.css">
|
||||
<link rel="stylesheet" href="../reader/css/normalize.css">
|
||||
<link rel="stylesheet" href="../reader/css/main.css">
|
||||
<link rel="stylesheet" href="../reader/css/popup.css">
|
||||
<!-- <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js"></script>
|
||||
<script>window.jQuery || document.write('<script src="epubjs/libs/jquery-1.9.0.min.js"><\/script>')</script>
|
||||
-->
|
||||
|
@ -24,32 +24,32 @@
|
|||
EPUBJS.VERSION = "0.1.6";
|
||||
|
||||
EPUBJS.filePath = "js/libs/";
|
||||
EPUBJS.cssPath = "../demo/css/";
|
||||
EPUBJS.cssPath = "../reader/css/";
|
||||
// fileStorage.filePath = EPUBJS.filePath;
|
||||
|
||||
ePubReader("../demo/moby-dick/");
|
||||
ePubReader("../reader/moby-dick/");
|
||||
}
|
||||
};
|
||||
|
||||
</script>
|
||||
|
||||
<!-- Render -->
|
||||
<script src="../demo/js/epub.min.js"></script>
|
||||
<script src="../reader/js/epub.min.js"></script>
|
||||
|
||||
<!-- Hooks -->
|
||||
<script src="../demo/js/hooks.min.js"></script>
|
||||
<script src="../reader/js/hooks.min.js"></script>
|
||||
|
||||
<!-- Reader -->
|
||||
<script src="../demo/js/reader.min.js"></script>
|
||||
<script src="../reader/js/reader.min.js"></script>
|
||||
|
||||
<!-- Plugins -->
|
||||
<script src="../reader/plugins/search.js"></script>
|
||||
<script src="../reader_src/plugins/search.js"></script>
|
||||
|
||||
<!-- Full Screen -->
|
||||
<script src="../demo/js/libs/screenfull.min.js"></script>
|
||||
<script src="../reader/js/libs/screenfull.min.js"></script>
|
||||
|
||||
<!-- Highlights -->
|
||||
<script src="../demo/js/libs/jquery.highlight.js"></script>
|
||||
<script src="../reader/js/libs/jquery.highlight.js"></script>
|
||||
<script src="../hooks/extensions/highlight.js"></script>
|
||||
|
||||
</head>
|
||||
|
@ -96,7 +96,7 @@
|
|||
<div id="viewer"></div>
|
||||
<div id="next" class="arrow">›</div>
|
||||
|
||||
<div id="loader"><img src="../demo/img/loader.gif"></div>
|
||||
<div id="loader"><img src="../reader/img/loader.gif"></div>
|
||||
</div>
|
||||
<div class="modal md-effect-1" id="settings-modal">
|
||||
<div class="md-content">
|
||||
|
|
|
@ -47,7 +47,7 @@
|
|||
<script>
|
||||
"use strict";
|
||||
|
||||
var Book = ePub("../demo/moby-dick/", {
|
||||
var Book = ePub("../reader/moby-dick/", {
|
||||
width: 400,
|
||||
height: 600,
|
||||
spreads : false
|
||||
|
|
|
@ -86,7 +86,7 @@
|
|||
<li><a href="examples/fixed.html">Fixed</a></li>
|
||||
<li><a href="examples/custom-elements.html">Custom Element</a></li>
|
||||
<li><a href="examples/mathml.html">MathML</a></li>
|
||||
<li><a href="examples/annotations.html">Annotations with Hypothes. is</a></li>
|
||||
<li><a href="examples/hypothesis.html">Annotations with Hypothes. is</a></li>
|
||||
</ol>
|
||||
|
||||
</div>
|
||||
|
|
9111
libs/jquery/jquery-2.1.0.js
vendored
Normal file
4
libs/jquery/jquery-2.1.0.min.js
vendored
Normal file
1
libs/jquery/jquery-2.1.0.min.map
Normal file
8
reader/css/annotations.css
Normal file
|
@ -0,0 +1,8 @@
|
|||
.ui-loader {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.annotator-hl {
|
||||
box-shadow: none !important;
|
||||
cursor: pointer !important;
|
||||
}
|
|
@ -8,9 +8,9 @@
|
|||
<meta name="viewport" content="width=device-width, user-scalable=no, minimal-ui">
|
||||
<meta name="apple-mobile-web-app-capable" content="yes">
|
||||
|
||||
<link rel="stylesheet" href="../demo/css/normalize.css">
|
||||
<link rel="stylesheet" href="../demo/css/main.css">
|
||||
<link rel="stylesheet" href="../demo/css/popup.css">
|
||||
<link rel="stylesheet" href="css/normalize.css">
|
||||
<link rel="stylesheet" href="css/main.css">
|
||||
<link rel="stylesheet" href="css/popup.css">
|
||||
<!-- <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js"></script>
|
||||
<script>window.jQuery || document.write('<script src="epubjs/libs/jquery-1.9.0.min.js"><\/script>')</script>
|
||||
-->
|
||||
|
@ -67,15 +67,15 @@
|
|||
<script async src="../hooks/default/mathml.js"></script>
|
||||
|
||||
<!-- Reader -->
|
||||
<script src="../reader/reader.js"></script>
|
||||
<script src="../reader/controllers/bookmarks_controller.js"></script>
|
||||
<script src="../reader/controllers/controls_controller.js"></script>
|
||||
<script src="../reader/controllers/meta_controller.js"></script>
|
||||
<script src="../reader/controllers/reader_controller.js"></script>
|
||||
<script src="../reader/controllers/settings_controller.js"></script>
|
||||
<script src="../reader/controllers/sidebar_controller.js"></script>
|
||||
<script src="../reader/controllers/toc_controller.js"></script>
|
||||
<script src="../reader/controllers/notes_controller.js"></script>
|
||||
<script src="../reader_src/reader.js"></script>
|
||||
<script src="../reader_src/controllers/bookmarks_controller.js"></script>
|
||||
<script src="../reader_src/controllers/controls_controller.js"></script>
|
||||
<script src="../reader_src/controllers/meta_controller.js"></script>
|
||||
<script src="../reader_src/controllers/reader_controller.js"></script>
|
||||
<script src="../reader_src/controllers/settings_controller.js"></script>
|
||||
<script src="../reader_src/controllers/sidebar_controller.js"></script>
|
||||
<script src="../reader_src/controllers/toc_controller.js"></script>
|
||||
<script src="../reader_src/controllers/notes_controller.js"></script>
|
||||
|
||||
<!-- Full Screen -->
|
||||
<script src="js/libs/screenfull.min.js"></script>
|
||||
|
@ -85,7 +85,7 @@
|
|||
<script async src="../hooks/extensions/highlight.js"></script>
|
||||
|
||||
<!-- Plugins -->
|
||||
<script src="../reader/plugins/search.js"></script>
|
||||
<script src="../reader_src/plugins/search.js"></script>
|
||||
|
||||
</head>
|
||||
<body>
|
Before Width: | Height: | Size: 9.4 KiB After Width: | Height: | Size: 9.4 KiB |
0
demo/img/.gitignore → reader/img/.gitignore
vendored
Before Width: | Height: | Size: 5 KiB After Width: | Height: | Size: 5 KiB |
Before Width: | Height: | Size: 7 KiB After Width: | Height: | Size: 7 KiB |
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 1.3 KiB |
Before Width: | Height: | Size: 246 B After Width: | Height: | Size: 246 B |
Before Width: | Height: | Size: 1 KiB After Width: | Height: | Size: 1 KiB |
Before Width: | Height: | Size: 220 B After Width: | Height: | Size: 220 B |
Before Width: | Height: | Size: 6.7 KiB After Width: | Height: | Size: 6.7 KiB |
Before Width: | Height: | Size: 947 B After Width: | Height: | Size: 947 B |
Before Width: | Height: | Size: 1.2 KiB After Width: | Height: | Size: 1.2 KiB |
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 1.4 KiB After Width: | Height: | Size: 1.4 KiB |
Before Width: | Height: | Size: 1.5 KiB After Width: | Height: | Size: 1.5 KiB |
Before Width: | Height: | Size: 278 B After Width: | Height: | Size: 278 B |
1
reader/js/epub.js.map
Normal file
0
demo/js/epub.min.js → reader/js/epub.min.js
vendored
17
reader/js/hooks.js.map
Normal file
14
reader/js/hooks/extensions/highlight.js
Normal file
|
@ -0,0 +1,14 @@
|
|||
EPUBJS.Hooks.register("beforeChapterDisplay").highlight = function(callback, renderer){
|
||||
|
||||
// EPUBJS.core.addScript("js/libs/jquery.highlight.js", null, renderer.doc.head);
|
||||
|
||||
var s = document.createElement("style");
|
||||
s.innerHTML =".highlight { background: yellow; font-weight: normal; }";
|
||||
|
||||
renderer.render.document.head.appendChild(s);
|
||||
|
||||
if(callback) callback();
|
||||
|
||||
}
|
||||
|
||||
|
4
reader/js/libs/jquery-2.1.0.min.js
vendored
Normal file
114
reader/js/plugins/hypothesis.js
Normal file
|
@ -0,0 +1,114 @@
|
|||
EPUBJS.reader.plugins.HypothesisController = function(Book) {
|
||||
var reader = this;
|
||||
var book = reader.book;
|
||||
var element = document.getElementById("hypothesis");
|
||||
var body = window.document.body;
|
||||
var annotator;
|
||||
var $main = $("#main");
|
||||
|
||||
var updateAnnotations = function() {
|
||||
var annotatations = [],
|
||||
guestAnnotator = reader.book.renderer.render.window.annotator,
|
||||
_$,
|
||||
$annotations, width;
|
||||
|
||||
if(!guestAnnotator) {
|
||||
if(annotator) annotator.updateViewer([]);
|
||||
return;
|
||||
};
|
||||
|
||||
_$ = guestAnnotator.constructor.$;
|
||||
|
||||
$annotations = _$(".annotator-hl");
|
||||
width = reader.book.renderer.render.iframe.clientWidth;
|
||||
|
||||
//-- Find visible annotations
|
||||
$annotations.each(function(){
|
||||
var $this = _$(this),
|
||||
left = this.getBoundingClientRect().left;
|
||||
|
||||
if(left >= 0 && left <= width) {
|
||||
annotatations.push($this.data('annotation'));
|
||||
}
|
||||
});
|
||||
|
||||
//-- Update viewer
|
||||
annotator.updateViewer(annotatations);
|
||||
};
|
||||
|
||||
var attach = function(){
|
||||
|
||||
annotator = window.annotator = new window.Annotator.Host(body, {
|
||||
"app": "https://hypothes.is/app/",
|
||||
"Toolbar": {container:"#annotator-toolbar"}
|
||||
});
|
||||
|
||||
annotator.frame.appendTo(element);
|
||||
|
||||
annotator.subscribe('annotationEditorShown', function () {
|
||||
showAnnotations(true);
|
||||
});
|
||||
annotator.subscribe('annotationViewerShown', function () {
|
||||
showAnnotations(true);
|
||||
});
|
||||
|
||||
annotator.subscribe("annotationsLoaded", function(e){
|
||||
var _$ = reader.book.renderer.render.window.annotator.constructor.$;
|
||||
|
||||
|
||||
reader.annotator = annotator;
|
||||
updateAnnotations();
|
||||
|
||||
_$(reader.book.renderer.contents).on("click", ".annotator-hl", function(event){
|
||||
var $this = _$(this);
|
||||
|
||||
reader.annotator.updateViewer([$this.data('annotation')]);
|
||||
|
||||
// $scope.$apply(function(){
|
||||
// $scope.single = true;
|
||||
// $scope.noUpdate = true;
|
||||
// });
|
||||
|
||||
});
|
||||
});
|
||||
|
||||
$(".tri-icon").on("click", function () {
|
||||
if ($main.hasClass("single")) {
|
||||
showAnnotations(false);
|
||||
} else {
|
||||
showAnnotations(true);
|
||||
}
|
||||
});
|
||||
|
||||
reader.book.on("renderer:locationChanged", function(){
|
||||
updateAnnotations();
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
var showAnnotations = function(single) {
|
||||
var currentPosition = reader.currentLocationCfi;
|
||||
reader.settings.sidebarReflow = false;
|
||||
|
||||
if(single) {
|
||||
$main.addClass("single");
|
||||
window.annotator.setVisibleHighlights(true);
|
||||
} else {
|
||||
$main.removeClass("single");
|
||||
window.annotator.setVisibleHighlights(false);
|
||||
}
|
||||
|
||||
$main.one("transitionend", function(){
|
||||
book.gotoCfi(currentPosition);
|
||||
});
|
||||
|
||||
};
|
||||
|
||||
book.ready.all.then(function() {
|
||||
reader.HypothesisController.attach();
|
||||
});
|
||||
|
||||
return {
|
||||
"attach" : attach
|
||||
};
|
||||
};
|