From c76b14e1e3a31fd0c348d8163c35e3939e2f9594 Mon Sep 17 00:00:00 2001 From: danielweck Date: Wed, 24 Feb 2016 09:31:23 +0000 Subject: [PATCH 01/17] [skip ci] submodule --- readium-js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/readium-js b/readium-js index fa3f0079e..07cbf5873 160000 --- a/readium-js +++ b/readium-js @@ -1 +1 @@ -Subproject commit fa3f0079e75bc8daacbf9b7a9486e5ac363b5c14 +Subproject commit 07cbf587399d3992f1e5cd5289718e29c73e9c92 From ee61687ab51dc5346b207b538566e4734628a262 Mon Sep 17 00:00:00 2001 From: danielweck Date: Thu, 25 Feb 2016 15:56:22 +0000 Subject: [PATCH 02/17] submodule --- readium-js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/readium-js b/readium-js index 07cbf5873..2d187fca3 160000 --- a/readium-js +++ b/readium-js @@ -1 +1 @@ -Subproject commit 07cbf587399d3992f1e5cd5289718e29c73e9c92 +Subproject commit 2d187fca33f0d33887ccc74dfc6cfcf759c82974 From 10f6864078830e40bac4b0e05d720007e4fb815b Mon Sep 17 00:00:00 2001 From: Ric Wright Date: Fri, 26 Feb 2016 10:41:10 -0600 Subject: [PATCH 03/17] Testing the new issue-template functionality in github --- issue_template.md | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 issue_template.md diff --git a/issue_template.md b/issue_template.md new file mode 100644 index 000000000..28e579f43 --- /dev/null +++ b/issue_template.md @@ -0,0 +1,15 @@ +## Steps to reproduce +# +# +# + +### Expected behaviour +Tell us what should happen + +### Actual behaviour +Tell us what happens instead + +### Environment +What OS and version, browser, version and branch of Readium and any other relevant info + +If at all possible please provide a sample file, if relevant \ No newline at end of file From f031308291ffeb3bf67a9f930898a3e23b5acb59 Mon Sep 17 00:00:00 2001 From: danielweck Date: Fri, 26 Feb 2016 21:03:18 +0000 Subject: [PATCH 04/17] CONTRIBUTING.md, ISSUE_TEMPLATE.md, and PULL_REQUEST_TEMPLATE.md files in .github/ folder https://github.com/blog/2111-issue-and-pull-request-templates --- .github/CONTRIBUTING.md | 4 ++ .github/ISSUE_TEMPLATE.md | 84 ++++++++++++++++++++++++++++++++ .github/PULL_REQUEST_TEMPLATE.md | 24 +++++++++ issue_template.md | 15 ------ 4 files changed, 112 insertions(+), 15 deletions(-) create mode 100644 .github/CONTRIBUTING.md create mode 100644 .github/ISSUE_TEMPLATE.md create mode 100644 .github/PULL_REQUEST_TEMPLATE.md delete mode 100644 issue_template.md diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md new file mode 100644 index 000000000..61e4aa54c --- /dev/null +++ b/.github/CONTRIBUTING.md @@ -0,0 +1,4 @@ +# How to contribute to Readium + +Please visit this link for more information: +http://readium.github.io/contributing.html diff --git a/.github/ISSUE_TEMPLATE.md b/.github/ISSUE_TEMPLATE.md new file mode 100644 index 000000000..52c9b82cc --- /dev/null +++ b/.github/ISSUE_TEMPLATE.md @@ -0,0 +1,84 @@ +**Please use a short, but meaningful title.** + +*Make sure to fill-in as much information as possible in the sections below:* + +### This issue is a: + +*(choose an option)* + +* Bug report +* Feature request +* Enhancement suggestion +* Question +* Other? + +### Related issue(s), pull request(s) + +See also #NUMBER + +### Expected behaviour + +Should do... + +### Observed behaviour + +Instead, does... + +### Steps to reproduce + +1. Step 1 +2. Step 2 +3. etc. + +### Test file(s) + +*(if relevant, please indicate public EPUB URL(s), or whether you can share ebook(s) privately)* + +### Product + +*(choose appropriately)* + +* Readium Chrome extension + * latest official version available from the Chrome Web Store + * custom build +* Readium cloud reader app + * latest development build uploaded at https://readium.firebaseapp.com + * custom integration (public deployment URL?) +* Native application (ReadiumSDK C++) + * official "launcher" sample + * proprietary app +* Hybrid app (ReadiumJS) + * Electron + * Apache Cordova +* Other? + +### Web browser + +*(choose appropriately)* + +**Please indicate version if possible** + +* Chrome +* Firefox +* Internet Explorer +* Edge +* Opera +* Other? + +### Operating system + +*(choose appropriately)* + +**Please indicate OS version** + +* Windows +* OSX +* Linux +* iOS +* Android +* Other? + + +### Additional information + +... \ No newline at end of file diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md new file mode 100644 index 000000000..df5e93a3c --- /dev/null +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -0,0 +1,24 @@ +**Please use a short, but meaningful title. Indicate which issue is targeted (if any).** + +*Make sure to fill-in as much information as possible in the sections below:* + +### Related issue(s), pull request(s) + +See also #NUMBER + +### This pull request is: + +*(choose an option)* + +* Work in progress +* Finalized +* Other? + +### Test cases, sample files + +*(if relevant, please indicate public EPUB URL(s), or whether you can share ebook(s) privately)* + + +### Additional information + +... \ No newline at end of file diff --git a/issue_template.md b/issue_template.md deleted file mode 100644 index 28e579f43..000000000 --- a/issue_template.md +++ /dev/null @@ -1,15 +0,0 @@ -## Steps to reproduce -# -# -# - -### Expected behaviour -Tell us what should happen - -### Actual behaviour -Tell us what happens instead - -### Environment -What OS and version, browser, version and branch of Readium and any other relevant info - -If at all possible please provide a sample file, if relevant \ No newline at end of file From 9e2889a518ed0ece4c458f53e0114dc971779280 Mon Sep 17 00:00:00 2001 From: danielweck Date: Sun, 28 Feb 2016 08:27:40 +0000 Subject: [PATCH 05/17] submodule --- readium-js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/readium-js b/readium-js index 2d187fca3..5fab19eae 160000 --- a/readium-js +++ b/readium-js @@ -1 +1 @@ -Subproject commit 2d187fca33f0d33887ccc74dfc6cfcf759c82974 +Subproject commit 5fab19eae6af2330ae825bb5cb274a47a55b989d From 2d12ebb33a70462932993e4734520b2d758187bd Mon Sep 17 00:00:00 2001 From: danielweck Date: Sun, 28 Feb 2016 11:15:52 +0000 Subject: [PATCH 06/17] added UI to copy/paste "goto" URL (CFI for open-page-request, same as reader bookmark) --- readium-js | 2 +- src/i18n/_locales/en_US/messages.json | 6 ++ src/js/Dialogs.js | 12 +++ src/js/EpubReader.js | 119 +++++++++++++++++++++++++- src/js/ReadiumViewer.js | 80 ++++++----------- src/templates/reader-navbar.html | 3 + 6 files changed, 162 insertions(+), 60 deletions(-) diff --git a/readium-js b/readium-js index 5fab19eae..5a00b0f08 160000 --- a/readium-js +++ b/readium-js @@ -1 +1 @@ -Subproject commit 5fab19eae6af2330ae825bb5cb274a47a55b989d +Subproject commit 5a00b0f08d3315ec384a3cf75b668cfeb03724dc diff --git a/src/i18n/_locales/en_US/messages.json b/src/i18n/_locales/en_US/messages.json index aff1525e7..2e498b774 100644 --- a/src/i18n/_locales/en_US/messages.json +++ b/src/i18n/_locales/en_US/messages.json @@ -24,6 +24,12 @@ "highlight_selection" : { "message" : "Highlight Selected Text" }, + "share_url" : { + "message" : "Share reader bookmark..." + }, + "share_url_label" : { + "message" : "Use your clipboard to copy/paste this shareable link:" + }, "toc" : { "message" : "Table of Contents" }, diff --git a/src/js/Dialogs.js b/src/js/Dialogs.js index a2e1eba9f..b6e8fd2e7 100644 --- a/src/js/Dialogs.js +++ b/src/js/Dialogs.js @@ -81,6 +81,18 @@ define(['hgn!readium_js_viewer_html_templates/managed-dialog.html', 'hgn!readium showModalDialog(true, title, body, buttons); }, + showModalMessageEx : function(title, body){ + var buttons = ButtonTemplate({ + buttons : [ + { + dismiss : true, + text : Strings.ok + } + ] + }); + + showModalDialog(true, title, body, buttons); + }, showModalPromptEx : function(title, message, buttons, handlers){ var body = $('

').text(message); diff --git a/src/js/EpubReader.js b/src/js/EpubReader.js index 580b8cf3d..40d83a388 100644 --- a/src/js/EpubReader.js +++ b/src/js/EpubReader.js @@ -23,7 +23,8 @@ define([ './gestures', './versioning/ReadiumVersioning', 'readium_js/Readium', -'readium_shared_js/helpers'], +'readium_shared_js/helpers', +'readium_shared_js/models/bookmark_data'], function ( globalSetup, @@ -50,7 +51,8 @@ EpubReaderBackgroundAudioTrack, GesturesHandler, Versioning, Readium, -Helpers){ +Helpers, +BookmarkData){ // initialised in initReadium() var readium = undefined; @@ -88,6 +90,54 @@ Helpers){ } }; + var _debugBookmarkData_goto = undefined; + var debugBookmarkData = function(cfi) { + + var DEBUG = true; // change this to visualize the CFI range + if (!DEBUG) return; + + if (!readium) return; + + var paginationInfo = readium.reader.getPaginationInfo(); + console.log(JSON.stringify(paginationInfo)); + + if (paginationInfo.isFixedLayout) return; + + try { + ReadiumSDK._DEBUG_CfiNavigationLogic.clearDebugOverlays(); + + } catch (error) { + //ignore + } + + try { + console.log(cfi); + + var range = readium.reader.getDomRangeFromRangeCfi(cfi); + console.log(range); + + var res = ReadiumSDK._DEBUG_CfiNavigationLogic.drawDebugOverlayFromDomRange(range); + console.log(res); + + var cfiFirst = ReadiumSDK.reader.getFirstVisibleCfi(); + console.log(cfiFirst); + + var cfiLast = ReadiumSDK.reader.getLastVisibleCfi(); + console.log(cfiLast); + + } catch (error) { + //ignore + } + + setTimeout(function() { + try { + ReadiumSDK._DEBUG_CfiNavigationLogic.clearDebugOverlays(); + } catch (error) { + //ignore + } + }, 2000); + }; + // This function will retrieve a package document and load an EPUB var loadEbook = function (readerSettings, openPageRequest) { @@ -349,6 +399,12 @@ Helpers){ { Globals.logEvent("PAGINATION_CHANGED", "ON", "EpubReader.js"); + if (_debugBookmarkData_goto) { + + debugBookmarkData(_debugBookmarkData_goto); + _debugBookmarkData_goto = undefined; + } + savePlace(); updateUI(pageChangeData); @@ -547,7 +603,7 @@ Helpers){ screenfull.toggle(); } - var isChromeExtensionPackagedApp = (typeof chrome !== "undefined") && chrome.app + var isChromeExtensionPackagedApp = (typeof chrome !== "undefined") && chrome.app && chrome.app.window && chrome.app.window.current; // a bit redundant? if (isChromeExtensionPackagedApp) { @@ -673,6 +729,59 @@ Helpers){ var installReaderEventHandlers = function(){ + if (isChromeExtensionPackagedApp) { + $('.icon-shareUrl').css("display", "none"); + } else { + $(".icon-shareUrl").on("click", function () { + + var urlParams = Helpers.getURLQueryParams(); + var ebookURL = urlParams['epub']; + if (!ebookURL) return; + + var bookmark = readium.reader.bookmarkCurrentPage(); + bookmark = JSON.parse(bookmark); + + var cfi = new BookmarkData(bookmark.idref, bookmark.contentCFI); + debugBookmarkData(cfi); + + bookmark.elementCfi = bookmark.contentCFI; + bookmark.contentCFI = undefined; + bookmark = JSON.stringify(bookmark); + + if (ebookURL.indexOf("http") == 0) { + var appUrl = + window.location ? ( + window.location.protocol + + "//" + + window.location.hostname + + (window.location.port ? (':' + window.location.port) : '') + + window.location.pathname + ) : undefined; + + if (appUrl) { + console.log("EPUB URL absolute:" + ebookURL); + ebookURL = new URI(ebookURL).relativeTo(appUrl).toString(); + console.log("EPUB URL relative to app:" + ebookURL); + } + } + + var url = Helpers.buildUrlQueryParameters(undefined, { + epub: ebookURL, + epubs: " ", + embedded: " ", + goto: bookmark + }); + + //showModalMessage + //showErrorWithDetails + Dialogs.showModalMessageEx(Strings.share_url, $('

'+Strings.share_url_label+'

')); + + setTimeout(function(){ + $('#share-url-dialog-input-id').focus().select(); + }, 500); + }); + } + // Set handlers for click events $(".icon-annotations").on("click", function () { readium.reader.plugins.highlights.addSelectionHighlight(Math.floor((Math.random()*1000000)), "test-highlight"); @@ -899,6 +1008,7 @@ Helpers){ readiumOptions.useSimpleLoader = true; } + _debugBookmarkData_goto = undefined; var openPageRequest; if (settings[ebookURL_filepath]){ var bookmark = JSON.parse(JSON.parse(settings[ebookURL_filepath])); @@ -927,6 +1037,9 @@ Helpers){ openPageRequest_ = {idref: gotoObj.idref, spineItemPageIndex: gotoObj.spineItemPageIndex}; } else if (gotoObj.elementCfi) { + + _debugBookmarkData_goto = new BookmarkData(gotoObj.idref, gotoObj.elementCfi); + openPageRequest_ = {idref: gotoObj.idref, elementCfi: gotoObj.elementCfi}; } else { diff --git a/src/js/ReadiumViewer.js b/src/js/ReadiumViewer.js index 2f031f5bd..492b4967b 100644 --- a/src/js/ReadiumViewer.js +++ b/src/js/ReadiumViewer.js @@ -1,5 +1,4 @@ -define(['jquery', './EpubLibrary', './EpubReader', 'readium_shared_js/helpers'], function($, EpubLibrary, EpubReader, Helpers){ - +define(['jquery', './EpubLibrary', './EpubReader', 'readium_shared_js/helpers', 'URIjs'], function($, EpubLibrary, EpubReader, Helpers, URI){ var _initialLoad = true; // replaces pushState() with replaceState() at first load var initialLoad = function(){ @@ -32,7 +31,7 @@ define(['jquery', './EpubLibrary', './EpubReader', 'readium_shared_js/helpers'], { $(document.body).addClass("keyboard"); }); - } + }; var pushState = $.noop; var replaceState = $.noop; @@ -90,7 +89,7 @@ define(['jquery', './EpubLibrary', './EpubReader', 'readium_shared_js/helpers'], EpubLibrary.loadUI({epubs: undefined, importEPUB: importEPUB}); } - } + }; var readerView = function(data){ $(EpubReader.tooltipSelector()).tooltip('destroy'); @@ -99,54 +98,6 @@ define(['jquery', './EpubLibrary', './EpubReader', 'readium_shared_js/helpers'], EpubReader.unloadUI(); EpubReader.loadUI(data); - } - - var URLPATH = - window.location ? ( - window.location.protocol - + "//" - + window.location.hostname - + (window.location.port ? (':' + window.location.port) : '') - + window.location.pathname - ) : 'index.html' - ; - - var buildUrlQueryParameters = function(urlpath, overrides) { - - var paramsString = ""; - - for (var key in overrides) { - if (!overrides.hasOwnProperty(key)) continue; - - if (!overrides[key]) continue; - - var val = overrides[key].trim(); - if (!val) continue; - - console.debug("URL QUERY PARAM OVERRIDE: " + key + " = " + val); - - paramsString += (key + "=" + encodeURIComponent(val)); - paramsString += "&"; - } - - var urlParams = Helpers.getURLQueryParams(); - for (var key in urlParams) { - if (!urlParams.hasOwnProperty(key)) continue; - - if (!urlParams[key]) continue; - - if (overrides[key]) continue; - - var val = urlParams[key].trim(); - if (!val) continue; - - console.debug("URL QUERY PARAM PRESERVED: " + key + " = " + val); - - paramsString += (key + "=" + encodeURIComponent(val)); - paramsString += "&"; - } - - return urlpath + "?" + paramsString; }; $(window).on('readepub', function(e, eventPayload){ @@ -159,8 +110,25 @@ define(['jquery', './EpubLibrary', './EpubReader', 'readium_shared_js/helpers'], if (epub && (typeof epub !== "string")) { epub = ebookURL_filepath; } - - var urlState = buildUrlQueryParameters(URLPATH, { + + if (ebookURL_filepath.indexOf("http") == 0) { + var appUrl = + window.location ? ( + window.location.protocol + + "//" + + window.location.hostname + + (window.location.port ? (':' + window.location.port) : '') + + window.location.pathname + ) : undefined; + + if (appUrl) { + console.log("EPUB URL absolute:" + ebookURL_filepath); + ebookURL_filepath = new URI(ebookURL_filepath).relativeTo(appUrl).toString(); + console.log("EPUB URL relative to app:" + ebookURL_filepath); + } + } + + var urlState = Helpers.buildUrlQueryParameters(undefined, { epub: ebookURL_filepath, epubs: (eventPayload.epubs ? eventPayload.epubs : undefined), embedded: (eventPayload.embedded ? eventPayload.embedded : undefined) @@ -188,10 +156,10 @@ define(['jquery', './EpubLibrary', './EpubReader', 'readium_shared_js/helpers'], importEPUB = eventPayload; } - var urlState = buildUrlQueryParameters(URLPATH, { + var urlState = Helpers.buildUrlQueryParameters(undefined, { epubs: (libraryURL ? libraryURL : undefined), epub: " ", - "goto": " " + goto: " " }); var func = _initialLoad ? replaceState : pushState; diff --git a/src/templates/reader-navbar.html b/src/templates/reader-navbar.html index f2d7e28c3..9a41dbcfe 100644 --- a/src/templates/reader-navbar.html +++ b/src/templates/reader-navbar.html @@ -202,6 +202,9 @@ + From a704dc94c2c981b2f47acd8d3014efad3c338322 Mon Sep 17 00:00:00 2001 From: danielweck Date: Fri, 4 Mar 2016 13:29:15 +0000 Subject: [PATCH 07/17] submod [skip ci] --- readium-js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/readium-js b/readium-js index 5a00b0f08..1cb1eac08 160000 --- a/readium-js +++ b/readium-js @@ -1 +1 @@ -Subproject commit 5a00b0f08d3315ec384a3cf75b668cfeb03724dc +Subproject commit 1cb1eac08ad6e11cfb4ff7db07f39a7de4a60eb9 From bc15381075bf895c5ab2f92fda28dd9a58382563 Mon Sep 17 00:00:00 2001 From: danielweck Date: Fri, 4 Mar 2016 13:33:01 +0000 Subject: [PATCH 08/17] submodule --- readium-js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/readium-js b/readium-js index 1cb1eac08..dfe543859 160000 --- a/readium-js +++ b/readium-js @@ -1 +1 @@ -Subproject commit 1cb1eac08ad6e11cfb4ff7db07f39a7de4a60eb9 +Subproject commit dfe543859f7b30e048aceccc27d200f089fc8088 From 87bb4ab9330daa9896b6cdd16c8814065dc7a466 Mon Sep 17 00:00:00 2001 From: Daniel Weck Date: Mon, 7 Mar 2016 07:25:42 +0000 Subject: [PATCH 09/17] fixed OSX file selector wildcard / glob --- package.json | 8 ++++---- package/package_scripts_base.cson | 2 +- package/package_scripts_build.cson | 4 ++-- package/package_scripts_travis.cson | 2 +- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/package.json b/package.json index 4721265b5..1fedfe762 100644 --- a/package.json +++ b/package.json @@ -80,15 +80,15 @@ "decompress-zip": "latest" }, "scripts": { - "cson2json": "node ./readium-js/readium-shared-js/readium-cfi-js/readium-build-tools/concat.js package/*.cson package.cson && node ./readium-js/readium-shared-js/readium-cfi-js/node_modules/cson/bin/cson2json package.cson > package.json && node ./readium-js/readium-shared-js/readium-cfi-js/node_modules/rimraf/bin.js package.cson && node readium-js/readium-shared-js/readium-cfi-js/readium-build-tools/optimizePackageJsonScripts.js", + "cson2json": "node ./readium-js/readium-shared-js/readium-cfi-js/readium-build-tools/concat.js \"package/*.cson\" package.cson && node ./readium-js/readium-shared-js/readium-cfi-js/node_modules/cson/bin/cson2json package.cson > package.json && node ./readium-js/readium-shared-js/readium-cfi-js/node_modules/rimraf/bin.js package.cson && node readium-js/readium-shared-js/readium-cfi-js/readium-build-tools/optimizePackageJsonScripts.js", "prepare": "npm run prepare:submodule && npm run prepare:local", "prepare:local": "npm outdated && npm install && npm update && node readium-js/readium-shared-js/readium-cfi-js/readium-build-tools/gitHubForksUpdater.js", "prepare:submodule": "cd readium-js && npm run prepare && cd .. && ls", - "clean": "node --version && npm --version && node ./readium-js/readium-shared-js/readium-cfi-js/node_modules/rimraf/bin.js build-output && node ./readium-js/readium-shared-js/readium-cfi-js/node_modules/rimraf/bin.js api-docs/* && node ./readium-js/readium-shared-js/readium-cfi-js/node_modules/rimraf/bin.js dist", + "clean": "node --version && npm --version && node ./readium-js/readium-shared-js/readium-cfi-js/node_modules/rimraf/bin.js build-output && node ./readium-js/readium-shared-js/readium-cfi-js/node_modules/rimraf/bin.js \"api-docs/*\" && node ./readium-js/readium-shared-js/readium-cfi-js/node_modules/rimraf/bin.js dist", "apidocs": "node ./readium-js/readium-shared-js/readium-cfi-js/node_modules/yuidocjs/lib/cli.js -N -C -c yuidocs.json", "prebuild": "npm run clean", "build": "npm run build:scripts", - "lint": "node ./readium-js/readium-shared-js/readium-cfi-js/readium-build-tools/jshint_glob.js js/**.js", + "lint": "node ./readium-js/readium-shared-js/readium-cfi-js/readium-build-tools/jshint_glob.js \"js/**.js\"", "preversioning": "node ./readium-js/readium-shared-js/readium-cfi-js/node_modules/mkdirp/bin/cmd.js build-output", "versioning": "node build-config/versioning.js build-output/version.json", "genPluginsConfig": "cd readium-js/readium-shared-js/ && node readium-cfi-js/readium-build-tools/pluginsConfigMaker.js && cd ../..", @@ -156,7 +156,7 @@ "test:sauce:chromeApp": "npm run mocha --readium-js-viewer:USE_SAUCE=true --readium-js-viewer:MODE=chromeApp", "test:sauce:firefox": "npm run mocha --readium-js-viewer:USE_SAUCE=true --readium-js-viewer:MODE=firefox", "test:sauce:chrome": "npm run mocha --readium-js-viewer:USE_SAUCE=true --readium-js-viewer:MODE=chrome", - "pretest:travis": "npm run dist && npm run crx && npm run deploy:cloudReader:copy:sourcemap && cd dist/cloud-reader && zip -r ../Readium_cloud-reader.zip . -x epub_content* && cd ../.. && npm run deploy:cloudReaderLite:copy:sourcemap && cd dist/cloud-reader-lite && zip -r ../Readium_cloud-reader-lite.zip . && cd ../.. && npm run deploy:cloudReader:copy:epub_content", + "pretest:travis": "npm run dist && npm run crx && npm run deploy:cloudReader:copy:sourcemap && cd dist/cloud-reader && zip -r ../Readium_cloud-reader.zip . -x \"epub_content*\" && cd ../.. && npm run deploy:cloudReaderLite:copy:sourcemap && cd dist/cloud-reader-lite && zip -r ../Readium_cloud-reader-lite.zip . && cd ../.. && npm run deploy:cloudReader:copy:epub_content", "test:travis": "parallelshell \"npm run http:travis\" \"npm run mocha\"", "deploy:cloudReader:copy:epub_content": "node ./readium-js/readium-shared-js/readium-cfi-js/node_modules/ncp/bin/ncp epub_content/ dist/cloud-reader/epub_content/", "deploy:cloudReader:copy:sourcemap": "node ./readium-js/readium-shared-js/readium-cfi-js/node_modules/ncp/bin/ncp dist/cloud-reader_sourcemap/ dist/cloud-reader/scripts/ && ( node ./readium-js/readium-shared-js/readium-cfi-js/node_modules/ncp/bin/ncp dist/zip_sourcemap/ dist/cloud-reader/scripts/zip/ || echo \"=== SUCCESS [ignore previous error]: no sourcemaps were generated for zip web-worker, deflate, inflate (no uglification).\" )", diff --git a/package/package_scripts_base.cson b/package/package_scripts_base.cson index d34ddea85..48dac806b 100644 --- a/package/package_scripts_base.cson +++ b/package/package_scripts_base.cson @@ -8,7 +8,7 @@ scripts: #===================== cson2json: ' - node ./readium-js/readium-shared-js/readium-cfi-js/readium-build-tools/concat.js package/*.cson package.cson + node ./readium-js/readium-shared-js/readium-cfi-js/readium-build-tools/concat.js "package/*.cson" package.cson && node ./readium-js/readium-shared-js/readium-cfi-js/node_modules/cson/bin/cson2json package.cson > package.json && diff --git a/package/package_scripts_build.cson b/package/package_scripts_build.cson index cb453c1f1..c8629f25f 100644 --- a/package/package_scripts_build.cson +++ b/package/package_scripts_build.cson @@ -14,7 +14,7 @@ build-output && npm run rimraf - api-docs/* + "api-docs/*" && npm run rimraf dist @@ -45,7 +45,7 @@ lint: ' npm run jshint - js/**.js + "js/**.js" ' diff --git a/package/package_scripts_travis.cson b/package/package_scripts_travis.cson index 75c54b8a8..a3667c015 100644 --- a/package/package_scripts_travis.cson +++ b/package/package_scripts_travis.cson @@ -15,7 +15,7 @@ && cd dist/cloud-reader && - zip -r ../Readium_cloud-reader.zip . -x epub_content\* + zip -r ../Readium_cloud-reader.zip . -x "epub_content\*" && cd ../.. && From 15777ad7c4c868e6a5e3d88c4e71a43a5b8b5b77 Mon Sep 17 00:00:00 2001 From: danielweck Date: Mon, 7 Mar 2016 19:18:57 +0000 Subject: [PATCH 10/17] [skip ci] submodule --- readium-js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/readium-js b/readium-js index dfe543859..7487d76bb 160000 --- a/readium-js +++ b/readium-js @@ -1 +1 @@ -Subproject commit dfe543859f7b30e048aceccc27d200f089fc8088 +Subproject commit 7487d76bbe8f23ba83bff03eb641a13d14d7cb0b From 3869deac0afb4e0f9e9bd57963ded5bd070e58f7 Mon Sep 17 00:00:00 2001 From: danielweck Date: Tue, 8 Mar 2016 09:41:56 +0000 Subject: [PATCH 11/17] submode --- readium-js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/readium-js b/readium-js index 7487d76bb..db783106e 160000 --- a/readium-js +++ b/readium-js @@ -1 +1 @@ -Subproject commit 7487d76bbe8f23ba83bff03eb641a13d14d7cb0b +Subproject commit db783106e6d0f7b92e239c3355bcc907d2bb2d47 From c52806be6a2e9d3d9926542ed05ab0a4b0e64c30 Mon Sep 17 00:00:00 2001 From: danielweck Date: Tue, 8 Mar 2016 10:21:02 +0000 Subject: [PATCH 12/17] URI.relativeTo() sometimes returns "//domain.com/path" without the protocol, follow-up to commit https://github.com/readium/readium-js-viewer/commit/2d12ebb33a70462932993e4734520b2d758187bd (needs testing at Firebase ... waiting for TravisCI to finish deploying the app) --- src/js/EpubReader.js | 12 +++++++++--- src/js/ReadiumViewer.js | 12 +++++++++--- 2 files changed, 18 insertions(+), 6 deletions(-) diff --git a/src/js/EpubReader.js b/src/js/EpubReader.js index 40d83a388..58ffae8a5 100644 --- a/src/js/EpubReader.js +++ b/src/js/EpubReader.js @@ -748,7 +748,9 @@ BookmarkData){ bookmark.contentCFI = undefined; bookmark = JSON.stringify(bookmark); - if (ebookURL.indexOf("http") == 0) { + if (ebookURL.indexOf("http") == 0) { + var isHTTPS = (ebookURL.indexOf("https") == 0); + var appUrl = window.location ? ( window.location.protocol @@ -759,9 +761,13 @@ BookmarkData){ ) : undefined; if (appUrl) { - console.log("EPUB URL absolute:" + ebookURL); + console.log("EPUB URL absolute: " + ebookURL); + console.log("App URL: " + appUrl); ebookURL = new URI(ebookURL).relativeTo(appUrl).toString(); - console.log("EPUB URL relative to app:" + ebookURL); + if (ebookURL.indexOf("//") == 0) { // URI.relativeTo() sometimes returns "//domain.com/path" without the protocol + ebookURL = (isHTTPS ? "https:" : "http:") + ebookURL; + } + console.log("EPUB URL relative to app: " + ebookURL); } } diff --git a/src/js/ReadiumViewer.js b/src/js/ReadiumViewer.js index 492b4967b..beda45d5a 100644 --- a/src/js/ReadiumViewer.js +++ b/src/js/ReadiumViewer.js @@ -111,7 +111,9 @@ define(['jquery', './EpubLibrary', './EpubReader', 'readium_shared_js/helpers', epub = ebookURL_filepath; } - if (ebookURL_filepath.indexOf("http") == 0) { + if (ebookURL_filepath.indexOf("http") == 0) { + var isHTTPS = (ebookURL_filepath.indexOf("https") == 0); + var appUrl = window.location ? ( window.location.protocol @@ -122,9 +124,13 @@ define(['jquery', './EpubLibrary', './EpubReader', 'readium_shared_js/helpers', ) : undefined; if (appUrl) { - console.log("EPUB URL absolute:" + ebookURL_filepath); + console.log("EPUB URL absolute: " + ebookURL_filepath); + console.log("App URL: " + appUrl); ebookURL_filepath = new URI(ebookURL_filepath).relativeTo(appUrl).toString(); - console.log("EPUB URL relative to app:" + ebookURL_filepath); + if (ebookURL_filepath.indexOf("//") == 0) { // URI.relativeTo() sometimes returns "//domain.com/path" without the protocol + ebookURL_filepath = (isHTTPS ? "https:" : "http:") + ebookURL_filepath; + } + console.log("EPUB URL relative to app: " + ebookURL_filepath); } } From ebd9eb652da67e33cd4594f5ac8224e70ab507d2 Mon Sep 17 00:00:00 2001 From: danielweck Date: Tue, 8 Mar 2016 10:32:34 +0000 Subject: [PATCH 13/17] [skip ci] submod --- readium-js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/readium-js b/readium-js index db783106e..906ca3968 160000 --- a/readium-js +++ b/readium-js @@ -1 +1 @@ -Subproject commit db783106e6d0f7b92e239c3355bcc907d2bb2d47 +Subproject commit 906ca3968911a54266b64e7e0d150c7982c5bdc8 From eb5caf7acc4da32fcada9f38189419cc65066974 Mon Sep 17 00:00:00 2001 From: danielweck Date: Tue, 8 Mar 2016 12:08:29 +0000 Subject: [PATCH 14/17] code cleanup: ensureUrlIsRelativeToApp() to encapsulate logic related to percent-escape and /http[s]?:// HTTP CORS proxy URL syntax, also fixes the case (in)sensivity for percent escapes replacement (in OPDS processor too) --- src/js/EpubLibraryOPDS.js | 6 ++- src/js/EpubReader.js | 79 +++++++++++++++++++++++++++------------ src/js/ReadiumViewer.js | 36 +++++------------- 3 files changed, 70 insertions(+), 51 deletions(-) diff --git a/src/js/EpubLibraryOPDS.js b/src/js/EpubLibraryOPDS.js index 43f956c91..3a28e2583 100644 --- a/src/js/EpubLibraryOPDS.js +++ b/src/js/EpubLibraryOPDS.js @@ -22,6 +22,9 @@ URI){ var CORS_PROXY_HTTP_TOKEN_ESCAPED = "%2Fhttp%3A%2F%2F"; var CORS_PROXY_HTTPS_TOKEN_ESCAPED = "%2Fhttps%3A%2F%2F"; + // case-insensitive regexp for percent-escapes + var regex_CORS_PROXY_HTTPs_TOKEN_ESCAPED = new RegExp("%2F(http[s]?)%3A%2F%2F", "gi"); + var xOriginProxy = undefined; var origin = window.location.origin; @@ -220,8 +223,7 @@ URI){ if (xOriginProxy) { if (!isExternalLink) { - rootUrl = rootUrl.replace(CORS_PROXY_HTTP_TOKEN_ESCAPED, CORS_PROXY_HTTP_TOKEN); - rootUrl = rootUrl.replace(CORS_PROXY_HTTPS_TOKEN_ESCAPED, CORS_PROXY_HTTPS_TOKEN); + rootUrl = rootUrl.replace(regex_CORS_PROXY_HTTPs_TOKEN_ESCAPED, "/$1://"); } } diff --git a/src/js/EpubReader.js b/src/js/EpubReader.js index 58ffae8a5..cb3d76b84 100644 --- a/src/js/EpubReader.js +++ b/src/js/EpubReader.js @@ -80,6 +80,59 @@ BookmarkData){ return 'nav *[title], #readium-page-btns *[title]'; }; + var ensureUrlIsRelativeToApp = function(ebookURL) { + + if (!ebookURL) { + return ebookURL; + } + + if (ebookURL.indexOf("http") != 0) { + return ebookURL; + } + + var isHTTPS = (ebookURL.indexOf("https") == 0); + + var CORS_PROXY_HTTP_TOKEN = "/http://"; + var CORS_PROXY_HTTPS_TOKEN = "/https://"; + + // Ensures URLs like http://crossorigin.me/http://domain.com/etc + // do not end-up loosing the double forward slash in http://domain.com + // (because of URI.absoluteTo() path normalisation) + var CORS_PROXY_HTTP_TOKEN_ESCAPED = "%2Fhttp%3A%2F%2F"; + var CORS_PROXY_HTTPS_TOKEN_ESCAPED = "%2Fhttps%3A%2F%2F"; + + // case-insensitive regexp for percent-escapes + var regex_CORS_PROXY_HTTPs_TOKEN_ESCAPED = new RegExp("%2F(http[s]?)%3A%2F%2F", "gi"); + + var appUrl = + window.location ? ( + window.location.protocol + + "//" + + window.location.hostname + + (window.location.port ? (':' + window.location.port) : '') + + window.location.pathname + ) : undefined; + + if (appUrl) { + console.log("EPUB URL absolute: " + ebookURL); + console.log("App URL: " + appUrl); + + ebookURL = ebookURL.replace(CORS_PROXY_HTTP_TOKEN, CORS_PROXY_HTTP_TOKEN_ESCAPED); + ebookURL = ebookURL.replace(CORS_PROXY_HTTPS_TOKEN, CORS_PROXY_HTTPS_TOKEN_ESCAPED); + + ebookURL = new URI(ebookURL).relativeTo(appUrl).toString(); + if (ebookURL.indexOf("//") == 0) { // URI.relativeTo() sometimes returns "//domain.com/path" without the protocol + ebookURL = (isHTTPS ? "https:" : "http:") + ebookURL; + } + + ebookURL = ebookURL.replace(regex_CORS_PROXY_HTTPs_TOKEN_ESCAPED, "/$1://"); + + console.log("EPUB URL relative to app: " + ebookURL); + } + + return ebookURL; + }; + function setBookTitle(title) { var $titleEl = $('.book-title-header'); @@ -748,28 +801,7 @@ BookmarkData){ bookmark.contentCFI = undefined; bookmark = JSON.stringify(bookmark); - if (ebookURL.indexOf("http") == 0) { - var isHTTPS = (ebookURL.indexOf("https") == 0); - - var appUrl = - window.location ? ( - window.location.protocol - + "//" - + window.location.hostname - + (window.location.port ? (':' + window.location.port) : '') - + window.location.pathname - ) : undefined; - - if (appUrl) { - console.log("EPUB URL absolute: " + ebookURL); - console.log("App URL: " + appUrl); - ebookURL = new URI(ebookURL).relativeTo(appUrl).toString(); - if (ebookURL.indexOf("//") == 0) { // URI.relativeTo() sometimes returns "//domain.com/path" without the protocol - ebookURL = (isHTTPS ? "https:" : "http:") + ebookURL; - } - console.log("EPUB URL relative to app: " + ebookURL); - } - } + ebookURL = ensureUrlIsRelativeToApp(ebookURL); var url = Helpers.buildUrlQueryParameters(undefined, { epub: ebookURL, @@ -1343,7 +1375,8 @@ BookmarkData){ return { loadUI : applyKeyboardSettingsAndLoadUi, unloadUI : unloadReaderUI, - tooltipSelector : tooltipSelector + tooltipSelector : tooltipSelector, + ensureUrlIsRelativeToApp : ensureUrlIsRelativeToApp }; }); diff --git a/src/js/ReadiumViewer.js b/src/js/ReadiumViewer.js index beda45d5a..d6080ae86 100644 --- a/src/js/ReadiumViewer.js +++ b/src/js/ReadiumViewer.js @@ -110,39 +110,21 @@ define(['jquery', './EpubLibrary', './EpubReader', 'readium_shared_js/helpers', if (epub && (typeof epub !== "string")) { epub = ebookURL_filepath; } - - if (ebookURL_filepath.indexOf("http") == 0) { - var isHTTPS = (ebookURL_filepath.indexOf("https") == 0); - - var appUrl = - window.location ? ( - window.location.protocol - + "//" - + window.location.hostname - + (window.location.port ? (':' + window.location.port) : '') - + window.location.pathname - ) : undefined; - - if (appUrl) { - console.log("EPUB URL absolute: " + ebookURL_filepath); - console.log("App URL: " + appUrl); - ebookURL_filepath = new URI(ebookURL_filepath).relativeTo(appUrl).toString(); - if (ebookURL_filepath.indexOf("//") == 0) { // URI.relativeTo() sometimes returns "//domain.com/path" without the protocol - ebookURL_filepath = (isHTTPS ? "https:" : "http:") + ebookURL_filepath; - } - console.log("EPUB URL relative to app: " + ebookURL_filepath); - } - } - + + ebookURL_filepath = EpubReader.ensureUrlIsRelativeToApp(ebookURL_filepath); + + var epubs = eventPayload.epubs; + epubs = EpubReader.ensureUrlIsRelativeToApp(epubs); + var urlState = Helpers.buildUrlQueryParameters(undefined, { epub: ebookURL_filepath, - epubs: (eventPayload.epubs ? eventPayload.epubs : undefined), + epubs: (epubs ? epubs : undefined), embedded: (eventPayload.embedded ? eventPayload.embedded : undefined) }); var func = _initialLoad ? replaceState : pushState; func( - {epub: epub, epubs: eventPayload.epubs}, + {epub: epub, epubs: epubs}, "Readium Viewer", urlState ); @@ -162,6 +144,8 @@ define(['jquery', './EpubLibrary', './EpubReader', 'readium_shared_js/helpers', importEPUB = eventPayload; } + libraryURL = EpubReader.ensureUrlIsRelativeToApp(libraryURL); + var urlState = Helpers.buildUrlQueryParameters(undefined, { epubs: (libraryURL ? libraryURL : undefined), epub: " ", From ca271e8612ac750b0855656c82da33ec2be78caa Mon Sep 17 00:00:00 2001 From: danielweck Date: Tue, 8 Mar 2016 13:17:58 +0000 Subject: [PATCH 15/17] cdn.rawgit.com replaced with non-CDN proxy, because of absent HTTP CORS headers (OPDS feeds are auto-generated by a build script, see "npm run genOPDS") --- epub_content/epub_edu.opds | 46 ++--- epub_content/epub_samples.opds | 318 +++++++++++++++--------------- epub_content/epub_tests_a11y.opds | 14 +- epub_content/epub_testsuite.opds | 142 ++++++------- epub_content/epub_widgets.opds | 96 ++++----- readium-js | 2 +- 6 files changed, 309 insertions(+), 309 deletions(-) diff --git a/epub_content/epub_edu.opds b/epub_content/epub_edu.opds index 168edcf01..ae23b070c 100644 --- a/epub_content/epub_edu.opds +++ b/epub_content/epub_edu.opds @@ -1,5 +1,5 @@ -2016-02-12T09:12:10.591Z +2016-03-08T13:16:35.511Z READIUM_OPDS_https___github.com_IDPF_education_tree_master_samples Readium CloudReader OPDS feed for [ https://github.com/IDPF/education/tree/master/samples ] @@ -10,56 +10,56 @@ IDPF/education (master) - samples/English-Language-GCSE-for-AQA - - -2016-02-12T09:12:10.591Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_education_master_samples_English-Language-GCSE-for-AQA + + +2016-03-08T13:16:35.511Z +READIUM_OPDS_https___rawgit.com_IDPF_education_master_samples_English-Language-GCSE-for-AQA GCSE English Literature for AQA: Poetry Student Book IDPF/education (master) - samples/English-Literature-GCSE-for-AQA - - -2016-02-12T09:12:10.591Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_education_master_samples_English-Literature-GCSE-for-AQA + + +2016-03-08T13:16:35.511Z +READIUM_OPDS_https___rawgit.com_IDPF_education_master_samples_English-Literature-GCSE-for-AQA World Cultures and Geography IDPF/education (master) - samples/WCAG-ch1 - -2016-02-12T09:12:10.591Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_education_master_samples_WCAG-ch1 + +2016-03-08T13:16:35.511Z +READIUM_OPDS_https___rawgit.com_IDPF_education_master_samples_WCAG-ch1 A First Course in Linear Algebra IDPF/education (master) - samples/linear-algebra - -2016-02-12T09:12:10.591Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_education_master_samples_linear-algebra + +2016-03-08T13:16:35.511Z +READIUM_OPDS_https___rawgit.com_IDPF_education_master_samples_linear-algebra -EDUPUB Structure Sample +Education Structure Sample IDPF/education (master) - samples/structure-sample-01 - - -2016-02-12T09:12:10.591Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_education_master_samples_structure-sample-01 + + +2016-03-08T13:16:35.511Z +READIUM_OPDS_https___rawgit.com_IDPF_education_master_samples_structure-sample-01 World Cultures and Geography snaekobbi/braille-rendition-epub (samples) - edupub/samples/WCAG-ch1 - -2016-02-12T09:12:13.559Z -READIUM_OPDS_https___cdn.rawgit.com_snaekobbi_braille-rendition-epub_samples_edupub_samples_WCAG-ch1 + +2016-03-08T13:16:38.370Z +READIUM_OPDS_https___rawgit.com_snaekobbi_braille-rendition-epub_samples_edupub_samples_WCAG-ch1 diff --git a/epub_content/epub_samples.opds b/epub_content/epub_samples.opds index 5f568749f..0b4ae592b 100644 --- a/epub_content/epub_samples.opds +++ b/epub_content/epub_samples.opds @@ -1,5 +1,5 @@ -2016-02-12T09:04:55.716Z +2016-03-08T13:15:52.893Z READIUM_OPDS_https___github.com_IDPF_epub3-samples_tree_master_30 Readium CloudReader OPDS feed for [ https://github.com/IDPF/epub3-samples/tree/master/30 ] @@ -10,415 +10,415 @@ IDPF/epub3-samples (master) - 30/GhV-oeb-page - - -2016-02-12T09:04:55.716Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_epub3-samples_master_30_GhV-oeb-page + + +2016-03-08T13:15:52.893Z +READIUM_OPDS_https___rawgit.com_IDPF_epub3-samples_master_30_GhV-oeb-page World Cultures and Geography IDPF/epub3-samples (master) - 30/WCAG - -2016-02-12T09:04:55.716Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_epub3-samples_master_30_WCAG + +2016-03-08T13:15:52.893Z +READIUM_OPDS_https___rawgit.com_IDPF_epub3-samples_master_30_WCAG Accessible EPUB 3 IDPF/epub3-samples (master) - 30/accessible_epub_3 - - -2016-02-12T09:04:55.716Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_epub3-samples_master_30_accessible_epub_3 + + +2016-03-08T13:15:52.893Z +READIUM_OPDS_https___rawgit.com_IDPF_epub3-samples_master_30_accessible_epub_3 Creative Commons - A Shared Culture IDPF/epub3-samples (master) - 30/cc-shared-culture - - -2016-02-12T09:04:55.716Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_epub3-samples_master_30_cc-shared-culture + + +2016-03-08T13:15:52.893Z +READIUM_OPDS_https___rawgit.com_IDPF_epub3-samples_master_30_cc-shared-culture Children's Literature IDPF/epub3-samples (master) - 30/childrens-literature - - -2016-02-12T09:04:55.716Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_epub3-samples_master_30_childrens-literature + + +2016-03-08T13:15:52.893Z +READIUM_OPDS_https___rawgit.com_IDPF_epub3-samples_master_30_childrens-literature Abroad IDPF/epub3-samples (master) - 30/childrens-media-query - -2016-02-12T09:04:55.716Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_epub3-samples_master_30_childrens-media-query + +2016-03-08T13:15:52.893Z +READIUM_OPDS_https___rawgit.com_IDPF_epub3-samples_master_30_childrens-media-query Thomas Cole - The Voyage of Life IDPF/epub3-samples (master) - 30/cole-voyage-of-life-tol - - -2016-02-12T09:04:55.716Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_epub3-samples_master_30_cole-voyage-of-life-tol + + +2016-03-08T13:15:52.893Z +READIUM_OPDS_https___rawgit.com_IDPF_epub3-samples_master_30_cole-voyage-of-life-tol Thomas Cole - The Voyage of Life IDPF/epub3-samples (master) - 30/cole-voyage-of-life - - -2016-02-12T09:04:55.716Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_epub3-samples_master_30_cole-voyage-of-life + + +2016-03-08T13:15:52.893Z +READIUM_OPDS_https___rawgit.com_IDPF_epub3-samples_master_30_cole-voyage-of-life EPUB 3.0 Specification IDPF/epub3-samples (master) - 30/epub30-spec - - -2016-02-12T09:04:55.716Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_epub3-samples_master_30_epub30-spec + + +2016-03-08T13:15:52.893Z +READIUM_OPDS_https___rawgit.com_IDPF_epub3-samples_master_30_epub30-spec EPUB Figure Gallery IDPF/epub3-samples (master) - 30/figure-gallery-bindings - - -2016-02-12T09:04:55.716Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_epub3-samples_master_30_figure-gallery-bindings + + +2016-03-08T13:15:52.893Z +READIUM_OPDS_https___rawgit.com_IDPF_epub3-samples_master_30_figure-gallery-bindings Georgia IDPF/epub3-samples (master) - 30/georgia-cfi - - -2016-02-12T09:04:55.716Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_epub3-samples_master_30_georgia-cfi + + +2016-03-08T13:15:52.893Z +READIUM_OPDS_https___rawgit.com_IDPF_epub3-samples_master_30_georgia-cfi Georgia IDPF/epub3-samples (master) - 30/georgia-pls-ssml - - -2016-02-12T09:04:55.716Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_epub3-samples_master_30_georgia-pls-ssml + + +2016-03-08T13:15:52.893Z +READIUM_OPDS_https___rawgit.com_IDPF_epub3-samples_master_30_georgia-pls-ssml ハルコさんの彼氏 IDPF/epub3-samples (master) - 30/haruko-ahl - -2016-02-12T09:04:55.716Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_epub3-samples_master_30_haruko-ahl + +2016-03-08T13:15:52.893Z +READIUM_OPDS_https___rawgit.com_IDPF_epub3-samples_master_30_haruko-ahl ハルコさんの彼氏 IDPF/epub3-samples (master) - 30/haruko-html-jpeg - -2016-02-12T09:04:55.716Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_epub3-samples_master_30_haruko-html-jpeg + +2016-03-08T13:15:52.893Z +READIUM_OPDS_https___rawgit.com_IDPF_epub3-samples_master_30_haruko-html-jpeg ハルコさんの彼氏 IDPF/epub3-samples (master) - 30/haruko-jpeg - -2016-02-12T09:04:55.716Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_epub3-samples_master_30_haruko-jpeg + +2016-03-08T13:15:52.893Z +READIUM_OPDS_https___rawgit.com_IDPF_epub3-samples_master_30_haruko-jpeg Hefty Water IDPF/epub3-samples (master) - 30/hefty-water - -2016-02-12T09:04:55.716Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_epub3-samples_master_30_hefty-water + +2016-03-08T13:15:52.893Z +READIUM_OPDS_https___rawgit.com_IDPF_epub3-samples_master_30_hefty-water Indexing for Editors and Authors: A Practical Guide to Understanding Indexes IDPF/epub3-samples (master) - 30/indexing-for-eds-and-auths-3f - - -2016-02-12T09:04:55.716Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_epub3-samples_master_30_indexing-for-eds-and-auths-3f + + +2016-03-08T13:15:52.893Z +READIUM_OPDS_https___rawgit.com_IDPF_epub3-samples_master_30_indexing-for-eds-and-auths-3f Indexing for Editors and Authors: A Practical Guide to Understanding Indexes IDPF/epub3-samples (master) - 30/indexing-for-eds-and-auths-3md - - -2016-02-12T09:04:55.716Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_epub3-samples_master_30_indexing-for-eds-and-auths-3md + + +2016-03-08T13:15:52.893Z +READIUM_OPDS_https___rawgit.com_IDPF_epub3-samples_master_30_indexing-for-eds-and-auths-3md IDに漢字などを使用したサンプル IDPF/epub3-samples (master) - 30/internallinks - - -2016-02-12T09:04:55.716Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_epub3-samples_master_30_internallinks + + +2016-03-08T13:15:52.893Z +READIUM_OPDS_https___rawgit.com_IDPF_epub3-samples_master_30_internallinks מפליגים בישראל IDPF/epub3-samples (master) - 30/israelsailing - - -2016-02-12T09:04:55.716Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_epub3-samples_master_30_israelsailing + + +2016-03-08T13:15:52.893Z +READIUM_OPDS_https___rawgit.com_IDPF_epub3-samples_master_30_israelsailing Requirements for Japanese Text Layout IDPF/epub3-samples (master) - 30/jlreq-in-english - -2016-02-12T09:04:55.716Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_epub3-samples_master_30_jlreq-in-english + +2016-03-08T13:15:52.893Z +READIUM_OPDS_https___rawgit.com_IDPF_epub3-samples_master_30_jlreq-in-english 日本語組版処理の要件(日本語版) IDPF/epub3-samples (master) - 30/jlreq-in-japanese - -2016-02-12T09:04:55.716Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_epub3-samples_master_30_jlreq-in-japanese + +2016-03-08T13:15:52.893Z +READIUM_OPDS_https___rawgit.com_IDPF_epub3-samples_master_30_jlreq-in-japanese 草枕 IDPF/epub3-samples (master) - 30/kusamakura-japanese-vertical-writing - -2016-02-12T09:04:55.716Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_epub3-samples_master_30_kusamakura-japanese-vertical-writing + +2016-03-08T13:15:52.893Z +READIUM_OPDS_https___rawgit.com_IDPF_epub3-samples_master_30_kusamakura-japanese-vertical-writing 草枕 IDPF/epub3-samples (master) - 30/kusamakura-preview-embedded - -2016-02-12T09:04:55.716Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_epub3-samples_master_30_kusamakura-preview-embedded + +2016-03-08T13:15:52.893Z +READIUM_OPDS_https___rawgit.com_IDPF_epub3-samples_master_30_kusamakura-preview-embedded 草枕 IDPF/epub3-samples (master) - 30/kusamakura-preview - -2016-02-12T09:04:55.716Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_epub3-samples_master_30_kusamakura-preview + +2016-03-08T13:15:52.893Z +READIUM_OPDS_https___rawgit.com_IDPF_epub3-samples_master_30_kusamakura-preview A First Course in Linear Algebra IDPF/epub3-samples (master) - 30/linear-algebra - -2016-02-12T09:04:55.716Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_epub3-samples_master_30_linear-algebra + +2016-03-08T13:15:52.893Z +READIUM_OPDS_https___rawgit.com_IDPF_epub3-samples_master_30_linear-algebra महाभारत IDPF/epub3-samples (master) - 30/mahabharata - - -2016-02-12T09:04:55.716Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_epub3-samples_master_30_mahabharata + + +2016-03-08T13:15:52.893Z +READIUM_OPDS_https___rawgit.com_IDPF_epub3-samples_master_30_mahabharata Moby-Dick IDPF/epub3-samples (master) - 30/moby-dick-mo - - -2016-02-12T09:04:55.716Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_epub3-samples_master_30_moby-dick-mo + + +2016-03-08T13:15:52.893Z +READIUM_OPDS_https___rawgit.com_IDPF_epub3-samples_master_30_moby-dick-mo Moby-Dick IDPF/epub3-samples (master) - 30/moby-dick - - -2016-02-12T09:04:55.716Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_epub3-samples_master_30_moby-dick + + +2016-03-08T13:15:52.893Z +READIUM_OPDS_https___rawgit.com_IDPF_epub3-samples_master_30_moby-dick ガリ版の話 IDPF/epub3-samples (master) - 30/mymedia_lite - - -2016-02-12T09:04:55.716Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_epub3-samples_master_30_mymedia_lite + + +2016-03-08T13:15:52.893Z +READIUM_OPDS_https___rawgit.com_IDPF_epub3-samples_master_30_mymedia_lite Page Blanche (bitmaps directly in spine) IDPF/epub3-samples (master) - 30/page-blanche-bitmaps-in-spine - -2016-02-12T09:04:55.716Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_epub3-samples_master_30_page-blanche-bitmaps-in-spine + +2016-03-08T13:15:52.893Z +READIUM_OPDS_https___rawgit.com_IDPF_epub3-samples_master_30_page-blanche-bitmaps-in-spine Page Blanche IDPF/epub3-samples (master) - 30/page-blanche - -2016-02-12T09:04:55.716Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_epub3-samples_master_30_page-blanche + +2016-03-08T13:15:52.893Z +READIUM_OPDS_https___rawgit.com_IDPF_epub3-samples_master_30_page-blanche Basic Quiz IDPF/epub3-samples (master) - 30/quiz-bindings - - -2016-02-12T09:04:55.716Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_epub3-samples_master_30_quiz-bindings + + +2016-03-08T13:15:52.893Z +READIUM_OPDS_https___rawgit.com_IDPF_epub3-samples_master_30_quiz-bindings Le Vrai Régime anti-cancer IDPF/epub3-samples (master) - 30/regime-anticancer-arabic - - -2016-02-12T09:04:55.716Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_epub3-samples_master_30_regime-anticancer-arabic + + +2016-03-08T13:15:52.893Z +READIUM_OPDS_https___rawgit.com_IDPF_epub3-samples_master_30_regime-anticancer-arabic Sous le vent IDPF/epub3-samples (master) - 30/sous-le-vent - - -2016-02-12T09:04:55.716Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_epub3-samples_master_30_sous-le-vent + + +2016-03-08T13:15:52.893Z +READIUM_OPDS_https___rawgit.com_IDPF_epub3-samples_master_30_sous-le-vent Sous le vent (SVG directly in spine) IDPF/epub3-samples (master) - 30/sous-le-vent_svg-in-spine - - -2016-02-12T09:04:55.716Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_epub3-samples_master_30_sous-le-vent_svg-in-spine + + +2016-03-08T13:15:52.893Z +READIUM_OPDS_https___rawgit.com_IDPF_epub3-samples_master_30_sous-le-vent_svg-in-spine SVG in Spine IDPF/epub3-samples (master) - 30/svg-in-spine - - -2016-02-12T09:04:55.716Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_epub3-samples_master_30_svg-in-spine + + +2016-03-08T13:15:52.893Z +READIUM_OPDS_https___rawgit.com_IDPF_epub3-samples_master_30_svg-in-spine Trees IDPF/epub3-samples (master) - 30/trees - - -2016-02-12T09:04:55.716Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_epub3-samples_master_30_trees + + +2016-03-08T13:15:52.893Z +READIUM_OPDS_https___rawgit.com_IDPF_epub3-samples_master_30_trees The Waste Land IDPF/epub3-samples (master) - 30/wasteland-otf-obf - - -2016-02-12T09:04:55.716Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_epub3-samples_master_30_wasteland-otf-obf + + +2016-03-08T13:15:52.893Z +READIUM_OPDS_https___rawgit.com_IDPF_epub3-samples_master_30_wasteland-otf-obf The Waste Land IDPF/epub3-samples (master) - 30/wasteland-otf - - -2016-02-12T09:04:55.716Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_epub3-samples_master_30_wasteland-otf + + +2016-03-08T13:15:52.893Z +READIUM_OPDS_https___rawgit.com_IDPF_epub3-samples_master_30_wasteland-otf The Waste Land IDPF/epub3-samples (master) - 30/wasteland-woff-obf - - -2016-02-12T09:04:55.716Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_epub3-samples_master_30_wasteland-woff-obf + + +2016-03-08T13:15:52.893Z +READIUM_OPDS_https___rawgit.com_IDPF_epub3-samples_master_30_wasteland-woff-obf The Waste Land IDPF/epub3-samples (master) - 30/wasteland-woff - - -2016-02-12T09:04:55.716Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_epub3-samples_master_30_wasteland-woff + + +2016-03-08T13:15:52.893Z +READIUM_OPDS_https___rawgit.com_IDPF_epub3-samples_master_30_wasteland-woff The Waste Land IDPF/epub3-samples (master) - 30/wasteland - - -2016-02-12T09:04:55.716Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_epub3-samples_master_30_wasteland + + +2016-03-08T13:15:52.893Z +READIUM_OPDS_https___rawgit.com_IDPF_epub3-samples_master_30_wasteland diff --git a/epub_content/epub_tests_a11y.opds b/epub_content/epub_tests_a11y.opds index 106a35ec5..c62c58abc 100644 --- a/epub_content/epub_tests_a11y.opds +++ b/epub_content/epub_tests_a11y.opds @@ -1,5 +1,5 @@ -2016-02-12T09:04:53.622Z +2016-03-08T13:15:48.877Z READIUM_OPDS_https___github.com_daisy_epub-accessibility-tests_tree_master_content Readium CloudReader OPDS feed for [ https://github.com/daisy/epub-accessibility-tests/tree/master/content ] @@ -10,17 +10,17 @@ daisy/epub-accessibility-tests (master) - content/epub30-test-0300 - -2016-02-12T09:04:53.622Z -READIUM_OPDS_https___cdn.rawgit.com_daisy_epub-accessibility-tests_master_content_epub30-test-0300 + +2016-03-08T13:15:48.877Z +READIUM_OPDS_https___rawgit.com_daisy_epub-accessibility-tests_master_content_epub30-test-0300 EPUBTEST 0320 - Media Overlays Fundamental Accessibility Tests daisy/epub-accessibility-tests (master) - content/epub30-test-0320 - -2016-02-12T09:04:53.622Z -READIUM_OPDS_https___cdn.rawgit.com_daisy_epub-accessibility-tests_master_content_epub30-test-0320 + +2016-03-08T13:15:48.877Z +READIUM_OPDS_https___rawgit.com_daisy_epub-accessibility-tests_master_content_epub30-test-0320 diff --git a/epub_content/epub_testsuite.opds b/epub_content/epub_testsuite.opds index 2f13fbf99..b5e18a828 100644 --- a/epub_content/epub_testsuite.opds +++ b/epub_content/epub_testsuite.opds @@ -1,5 +1,5 @@ -2016-02-12T09:04:43.077Z +2016-03-08T13:15:37.599Z READIUM_OPDS_https___github.com_IDPF_epub-testsuite_tree_master_content_30 Readium CloudReader OPDS feed for [ https://github.com/IDPF/epub-testsuite/tree/master/content/30 ] @@ -10,207 +10,207 @@ IDPF/epub-testsuite (master) - content/30/epub30-test-0100 - -2016-02-12T09:04:43.077Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_epub-testsuite_master_content_30_epub30-test-0100 + +2016-03-08T13:15:37.599Z +READIUM_OPDS_https___rawgit.com_IDPF_epub-testsuite_master_content_30_epub30-test-0100 EPUBTEST 0101 - Styling Tests IDPF/epub-testsuite (master) - content/30/epub30-test-0101 - -2016-02-12T09:04:43.077Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_epub-testsuite_master_content_30_epub30-test-0101 + +2016-03-08T13:15:37.599Z +READIUM_OPDS_https___rawgit.com_IDPF_epub-testsuite_master_content_30_epub30-test-0101 EPUBTEST 0102 - Scripting Tests IDPF/epub-testsuite (master) - content/30/epub30-test-0102 - -2016-02-12T09:04:43.077Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_epub-testsuite_master_content_30_epub30-test-0102 + +2016-03-08T13:15:37.599Z +READIUM_OPDS_https___rawgit.com_IDPF_epub-testsuite_master_content_30_epub30-test-0102 EPUBTEST 0103 - Font Embedding and Obfuscation Tests IDPF/epub-testsuite (master) - content/30/epub30-test-0103 - -2016-02-12T09:04:43.077Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_epub-testsuite_master_content_30_epub30-test-0103 + +2016-03-08T13:15:37.599Z +READIUM_OPDS_https___rawgit.com_IDPF_epub-testsuite_master_content_30_epub30-test-0103 EPUBTEST 0110 - Document Flow Tests IDPF/epub-testsuite (master) - content/30/epub30-test-0110 - -2016-02-12T09:04:43.077Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_epub-testsuite_master_content_30_epub30-test-0110 + +2016-03-08T13:15:37.599Z +READIUM_OPDS_https___rawgit.com_IDPF_epub-testsuite_master_content_30_epub30-test-0110 EPUBTEST 0111 - Document Flow Tests IDPF/epub-testsuite (master) - content/30/epub30-test-0111 - -2016-02-12T09:04:43.077Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_epub-testsuite_master_content_30_epub30-test-0111 + +2016-03-08T13:15:37.599Z +READIUM_OPDS_https___rawgit.com_IDPF_epub-testsuite_master_content_30_epub30-test-0111 EPUBTEST 0112 - Document Flow Tests IDPF/epub-testsuite (master) - content/30/epub30-test-0112 - -2016-02-12T09:04:43.077Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_epub-testsuite_master_content_30_epub30-test-0112 + +2016-03-08T13:15:37.599Z +READIUM_OPDS_https___rawgit.com_IDPF_epub-testsuite_master_content_30_epub30-test-0112 EPUBTEST 0120 - Media Overlays Reflowable Tests IDPF/epub-testsuite (master) - content/30/epub30-test-0120 - -2016-02-12T09:04:43.077Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_epub-testsuite_master_content_30_epub30-test-0120 + +2016-03-08T13:15:37.599Z +READIUM_OPDS_https___rawgit.com_IDPF_epub-testsuite_master_content_30_epub30-test-0120 EPUBTEST 0130 - RTL Progression and Vertical Writing Tests IDPF/epub-testsuite (master) - content/30/epub30-test-0130 - - -2016-02-12T09:04:43.077Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_epub-testsuite_master_content_30_epub30-test-0130 + + +2016-03-08T13:15:37.599Z +READIUM_OPDS_https___rawgit.com_IDPF_epub-testsuite_master_content_30_epub30-test-0130 EPUBTEST 0140 - EPUB Content Fragment Identifier Tests IDPF/epub-testsuite (master) - content/30/epub30-test-0140 - -2016-02-12T09:04:43.077Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_epub-testsuite_master_content_30_epub30-test-0140 + +2016-03-08T13:15:37.599Z +READIUM_OPDS_https___rawgit.com_IDPF_epub-testsuite_master_content_30_epub30-test-0140 EPUBTEST 0150 - EPUB Navigation Document Tests IDPF/epub-testsuite (master) - content/30/epub30-test-0150 - -2016-02-12T09:04:43.077Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_epub-testsuite_master_content_30_epub30-test-0150 + +2016-03-08T13:15:37.599Z +READIUM_OPDS_https___rawgit.com_IDPF_epub-testsuite_master_content_30_epub30-test-0150 EPUBTEST 0201 - FXL Support Tests IDPF/epub-testsuite (master) - content/30/epub30-test-0201 - -2016-02-12T09:04:43.077Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_epub-testsuite_master_content_30_epub30-test-0201 + +2016-03-08T13:15:37.599Z +READIUM_OPDS_https___rawgit.com_IDPF_epub-testsuite_master_content_30_epub30-test-0201 EPUBTEST 0202 - FXL Spreads (both) Tests IDPF/epub-testsuite (master) - content/30/epub30-test-0202 - -2016-02-12T09:04:43.077Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_epub-testsuite_master_content_30_epub30-test-0202 + +2016-03-08T13:15:37.599Z +READIUM_OPDS_https___rawgit.com_IDPF_epub-testsuite_master_content_30_epub30-test-0202 EPUBTEST 0203 - FXL Spreads (landscape) Tests IDPF/epub-testsuite (master) - content/30/epub30-test-0203 - -2016-02-12T09:04:43.077Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_epub-testsuite_master_content_30_epub30-test-0203 + +2016-03-08T13:15:37.599Z +READIUM_OPDS_https___rawgit.com_IDPF_epub-testsuite_master_content_30_epub30-test-0203 EPUBTEST 0204 - FXL Spreads (none) Tests IDPF/epub-testsuite (master) - content/30/epub30-test-0204 - -2016-02-12T09:04:43.077Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_epub-testsuite_master_content_30_epub30-test-0204 + +2016-03-08T13:15:37.599Z +READIUM_OPDS_https___rawgit.com_IDPF_epub-testsuite_master_content_30_epub30-test-0204 EPUBTEST 0205 - FXL Spreads (portait) Tests IDPF/epub-testsuite (master) - content/30/epub30-test-0205 - -2016-02-12T09:04:43.077Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_epub-testsuite_master_content_30_epub30-test-0205 + +2016-03-08T13:15:37.599Z +READIUM_OPDS_https___rawgit.com_IDPF_epub-testsuite_master_content_30_epub30-test-0205 EPUBTEST 0206 - FXL Landscape Orientation Tests IDPF/epub-testsuite (master) - content/30/epub30-test-0206 - -2016-02-12T09:04:43.077Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_epub-testsuite_master_content_30_epub30-test-0206 + +2016-03-08T13:15:37.599Z +READIUM_OPDS_https___rawgit.com_IDPF_epub-testsuite_master_content_30_epub30-test-0206 EPUBTEST 0207 - FXL Portrait Orientation Tests IDPF/epub-testsuite (master) - content/30/epub30-test-0207 - -2016-02-12T09:04:43.077Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_epub-testsuite_master_content_30_epub30-test-0207 + +2016-03-08T13:15:37.599Z +READIUM_OPDS_https___rawgit.com_IDPF_epub-testsuite_master_content_30_epub30-test-0207 EPUBTEST 0208 - FXL Layout Override (reflowable) Tests IDPF/epub-testsuite (master) - content/30/epub30-test-0208 - -2016-02-12T09:04:43.077Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_epub-testsuite_master_content_30_epub30-test-0208 + +2016-03-08T13:15:37.599Z +READIUM_OPDS_https___rawgit.com_IDPF_epub-testsuite_master_content_30_epub30-test-0208 EPUBTEST 0209 - FXL Layout Override (pre-paginated) Tests IDPF/epub-testsuite (master) - content/30/epub30-test-0209 - -2016-02-12T09:04:43.077Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_epub-testsuite_master_content_30_epub30-test-0209 + +2016-03-08T13:15:37.599Z +READIUM_OPDS_https___rawgit.com_IDPF_epub-testsuite_master_content_30_epub30-test-0209 EPUBTEST 0210 - FXL Orientation Spine Override Tests IDPF/epub-testsuite (master) - content/30/epub30-test-0210 - -2016-02-12T09:04:43.077Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_epub-testsuite_master_content_30_epub30-test-0210 + +2016-03-08T13:15:37.599Z +READIUM_OPDS_https___rawgit.com_IDPF_epub-testsuite_master_content_30_epub30-test-0210 EPUBTEST 0211 - FXL Page Progression Direction Tests IDPF/epub-testsuite (master) - content/30/epub30-test-0211 - -2016-02-12T09:04:43.077Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_epub-testsuite_master_content_30_epub30-test-0211 + +2016-03-08T13:15:37.599Z +READIUM_OPDS_https___rawgit.com_IDPF_epub-testsuite_master_content_30_epub30-test-0211 EPUBTEST 0220 - Media Overlays Fixed Layout Tests IDPF/epub-testsuite (master) - content/30/epub30-test-0220 - -2016-02-12T09:04:43.077Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_epub-testsuite_master_content_30_epub30-test-0220 + +2016-03-08T13:15:37.599Z +READIUM_OPDS_https___rawgit.com_IDPF_epub-testsuite_master_content_30_epub30-test-0220 diff --git a/epub_content/epub_widgets.opds b/epub_content/epub_widgets.opds index 44e2568b0..1831a1c1f 100644 --- a/epub_content/epub_widgets.opds +++ b/epub_content/epub_widgets.opds @@ -1,5 +1,5 @@ -2016-02-12T09:05:16.526Z +2016-03-08T13:16:12.030Z READIUM_OPDS_https___github.com_IDPF_scriptable-components_tree_master_Samples_1-basic_component_embedded Readium CloudReader OPDS feed for [ https://github.com/IDPF/scriptable-components/tree/master/Samples/1-basic_component/embedded ] @@ -10,136 +10,136 @@ IDPF/scriptable-components (master) - Samples/1-basic_component/embedded/basic_template - - -2016-02-12T09:05:16.526Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_scriptable-components_master_Samples_1-basic_component_embedded_basic_template + + +2016-03-08T13:16:12.030Z +READIUM_OPDS_https___rawgit.com_IDPF_scriptable-components_master_Samples_1-basic_component_embedded_basic_template component_name IDPF/scriptable-components (master) - Samples/1-basic_component/packaged/basic_template - -2016-02-12T09:05:17.838Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_scriptable-components_master_Samples_1-basic_component_packaged_basic_template + +2016-03-08T13:16:13.539Z +READIUM_OPDS_https___rawgit.com_IDPF_scriptable-components_master_Samples_1-basic_component_packaged_basic_template ESC-Tempwave-Demo IDPF/scriptable-components (feature/logger-widget) - Samples/readium/tempwave-demo/embedded/tempwave-demo - -2016-02-12T09:05:19.400Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_scriptable-components_feature_logger-widget_Samples_readium_tempwave-demo_embedded_tempwave-demo + +2016-03-08T13:16:17.369Z +READIUM_OPDS_https___rawgit.com_IDPF_scriptable-components_feature_logger-widget_Samples_readium_tempwave-demo_embedded_tempwave-demo tw-widget-control IDPF/scriptable-components (feature/logger-widget) - Samples/readium/tempwave-demo/packaged/tw-controls - -2016-02-12T09:05:20.619Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_scriptable-components_feature_logger-widget_Samples_readium_tempwave-demo_packaged_tw-controls + +2016-03-08T13:16:19.222Z +READIUM_OPDS_https___rawgit.com_IDPF_scriptable-components_feature_logger-widget_Samples_readium_tempwave-demo_packaged_tw-controls tw-widget-model IDPF/scriptable-components (feature/logger-widget) - Samples/readium/tempwave-demo/packaged/tw-model - -2016-02-12T09:05:20.619Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_scriptable-components_feature_logger-widget_Samples_readium_tempwave-demo_packaged_tw-model + +2016-03-08T13:16:19.222Z +READIUM_OPDS_https___rawgit.com_IDPF_scriptable-components_feature_logger-widget_Samples_readium_tempwave-demo_packaged_tw-model tw-widget-profile IDPF/scriptable-components (feature/logger-widget) - Samples/readium/tempwave-demo/packaged/tw-profile - -2016-02-12T09:05:20.619Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_scriptable-components_feature_logger-widget_Samples_readium_tempwave-demo_packaged_tw-profile + +2016-03-08T13:16:19.222Z +READIUM_OPDS_https___rawgit.com_IDPF_scriptable-components_feature_logger-widget_Samples_readium_tempwave-demo_packaged_tw-profile tw-widget-series IDPF/scriptable-components (feature/logger-widget) - Samples/readium/tempwave-demo/packaged/tw-series - -2016-02-12T09:05:20.619Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_scriptable-components_feature_logger-widget_Samples_readium_tempwave-demo_packaged_tw-series + +2016-03-08T13:16:19.222Z +READIUM_OPDS_https___rawgit.com_IDPF_scriptable-components_feature_logger-widget_Samples_readium_tempwave-demo_packaged_tw-series tw-widget-status IDPF/scriptable-components (feature/logger-widget) - Samples/readium/tempwave-demo/packaged/tw-status - -2016-02-12T09:05:20.619Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_scriptable-components_feature_logger-widget_Samples_readium_tempwave-demo_packaged_tw-status + +2016-03-08T13:16:19.222Z +READIUM_OPDS_https___rawgit.com_IDPF_scriptable-components_feature_logger-widget_Samples_readium_tempwave-demo_packaged_tw-status ESC-Logger IDPF/scriptable-components (feature/logger-widget) - Samples/readium/logger-demo/packaged/logger - -2016-02-12T09:05:23.713Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_scriptable-components_feature_logger-widget_Samples_readium_logger-demo_packaged_logger + +2016-03-08T13:16:21.832Z +READIUM_OPDS_https___rawgit.com_IDPF_scriptable-components_feature_logger-widget_Samples_readium_logger-demo_packaged_logger ESC-LoggerDemo-2 IDPF/scriptable-components (feature/logger-widget) - Samples/readium/logger-demo/embedded/logger-demo-2 - -2016-02-12T09:05:24.913Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_scriptable-components_feature_logger-widget_Samples_readium_logger-demo_embedded_logger-demo-2 + +2016-03-08T13:16:23.004Z +READIUM_OPDS_https___rawgit.com_IDPF_scriptable-components_feature_logger-widget_Samples_readium_logger-demo_embedded_logger-demo-2 ESC-LoggerDemo IDPF/scriptable-components (feature/logger-widget) - Samples/readium/logger-demo/embedded/logger-demo - -2016-02-12T09:05:24.913Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_scriptable-components_feature_logger-widget_Samples_readium_logger-demo_embedded_logger-demo + +2016-03-08T13:16:23.004Z +READIUM_OPDS_https___rawgit.com_IDPF_scriptable-components_feature_logger-widget_Samples_readium_logger-demo_embedded_logger-demo Tiny Log IDPF/scriptable-components (feature/logger-widget) - Samples/readium/TinyLog - -2016-02-12T09:05:26.507Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_scriptable-components_feature_logger-widget_Samples_readium_TinyLog + +2016-03-08T13:16:24.609Z +READIUM_OPDS_https___rawgit.com_IDPF_scriptable-components_feature_logger-widget_Samples_readium_TinyLog PubCoder Sample Embedded Scriptable Components IDPF/scriptable-components (PubCoder) - Samples/1-basic_component/embedded/PubCoder/Gallery&Coloring - - -2016-02-12T09:05:29.414Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_scriptable-components_PubCoder_Samples_1-basic_component_embedded_PubCoder_Gallery&Coloring + + +2016-03-08T13:16:27.411Z +READIUM_OPDS_https___rawgit.com_IDPF_scriptable-components_PubCoder_Samples_1-basic_component_embedded_PubCoder_Gallery&Coloring PubCoder Coloring Game IDPF/scriptable-components (PubCoder) - Samples/1-basic_component/packaged/PubCoder/ColoringGame - -2016-02-12T09:05:30.582Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_scriptable-components_PubCoder_Samples_1-basic_component_packaged_PubCoder_ColoringGame + +2016-03-08T13:16:31.868Z +READIUM_OPDS_https___rawgit.com_IDPF_scriptable-components_PubCoder_Samples_1-basic_component_packaged_PubCoder_ColoringGame The PubCoder Feature Showcase IDPF/scriptable-components (PubCoder) - Samples/1-basic_component/packaged/PubCoder/ImageGallery - -2016-02-12T09:05:30.582Z -READIUM_OPDS_https___cdn.rawgit.com_IDPF_scriptable-components_PubCoder_Samples_1-basic_component_packaged_PubCoder_ImageGallery + +2016-03-08T13:16:31.868Z +READIUM_OPDS_https___rawgit.com_IDPF_scriptable-components_PubCoder_Samples_1-basic_component_packaged_PubCoder_ImageGallery diff --git a/readium-js b/readium-js index 906ca3968..902137847 160000 --- a/readium-js +++ b/readium-js @@ -1 +1 @@ -Subproject commit 906ca3968911a54266b64e7e0d150c7982c5bdc8 +Subproject commit 9021378478b754d99daeaf4b1cd8945f285532ea From a17203a91271cbd55c695e10f8606720685e8beb Mon Sep 17 00:00:00 2001 From: danielweck Date: Tue, 8 Mar 2016 13:30:59 +0000 Subject: [PATCH 16/17] cdn.rawgit.com replaced with non-CDN proxy, because of absent HTTP CORS headers --- epub_content/epub_library.opds | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/epub_content/epub_library.opds b/epub_content/epub_library.opds index 1caa0ae88..1cdbe207c 100644 --- a/epub_content/epub_library.opds +++ b/epub_content/epub_library.opds @@ -100,7 +100,7 @@ https://github.com/IDPF/epub-revision/tree/master/build/31/docs/epub31-v30.epub - + 2016-02-12T00:00:00Z READIUM_OPDS_0123456789_8 @@ -112,7 +112,7 @@ https://github.com/IDPF/epub-revision/tree/master/build/31/docs/epub31-v30 - + 2016-02-12T00:00:00Z READIUM_OPDS_0123456789_9 From aff3a34a9574f4a3c4f98b701ccb515bd20ae162 Mon Sep 17 00:00:00 2001 From: danielweck Date: Tue, 8 Mar 2016 13:58:12 +0000 Subject: [PATCH 17/17] file glob wildcard quoting, see https://github.com/readium/readium-js-viewer/issues/501 --- package.json | 6 +++--- package/package_scripts_build.cson | 4 ++-- package/package_scripts_travis.cson | 2 +- readium-js | 2 +- 4 files changed, 7 insertions(+), 7 deletions(-) diff --git a/package.json b/package.json index 1fedfe762..bee19f5f5 100644 --- a/package.json +++ b/package.json @@ -84,11 +84,11 @@ "prepare": "npm run prepare:submodule && npm run prepare:local", "prepare:local": "npm outdated && npm install && npm update && node readium-js/readium-shared-js/readium-cfi-js/readium-build-tools/gitHubForksUpdater.js", "prepare:submodule": "cd readium-js && npm run prepare && cd .. && ls", - "clean": "node --version && npm --version && node ./readium-js/readium-shared-js/readium-cfi-js/node_modules/rimraf/bin.js build-output && node ./readium-js/readium-shared-js/readium-cfi-js/node_modules/rimraf/bin.js \"api-docs/*\" && node ./readium-js/readium-shared-js/readium-cfi-js/node_modules/rimraf/bin.js dist", + "clean": "node --version && npm --version && node ./readium-js/readium-shared-js/readium-cfi-js/node_modules/rimraf/bin.js build-output && node ./readium-js/readium-shared-js/readium-cfi-js/node_modules/rimraf/bin.js api-docs/* && node ./readium-js/readium-shared-js/readium-cfi-js/node_modules/rimraf/bin.js dist", "apidocs": "node ./readium-js/readium-shared-js/readium-cfi-js/node_modules/yuidocjs/lib/cli.js -N -C -c yuidocs.json", "prebuild": "npm run clean", "build": "npm run build:scripts", - "lint": "node ./readium-js/readium-shared-js/readium-cfi-js/readium-build-tools/jshint_glob.js \"js/**.js\"", + "lint": "node ./readium-js/readium-shared-js/readium-cfi-js/readium-build-tools/jshint_glob.js \"src/js/**.js\"", "preversioning": "node ./readium-js/readium-shared-js/readium-cfi-js/node_modules/mkdirp/bin/cmd.js build-output", "versioning": "node build-config/versioning.js build-output/version.json", "genPluginsConfig": "cd readium-js/readium-shared-js/ && node readium-cfi-js/readium-build-tools/pluginsConfigMaker.js && cd ../..", @@ -156,7 +156,7 @@ "test:sauce:chromeApp": "npm run mocha --readium-js-viewer:USE_SAUCE=true --readium-js-viewer:MODE=chromeApp", "test:sauce:firefox": "npm run mocha --readium-js-viewer:USE_SAUCE=true --readium-js-viewer:MODE=firefox", "test:sauce:chrome": "npm run mocha --readium-js-viewer:USE_SAUCE=true --readium-js-viewer:MODE=chrome", - "pretest:travis": "npm run dist && npm run crx && npm run deploy:cloudReader:copy:sourcemap && cd dist/cloud-reader && zip -r ../Readium_cloud-reader.zip . -x \"epub_content*\" && cd ../.. && npm run deploy:cloudReaderLite:copy:sourcemap && cd dist/cloud-reader-lite && zip -r ../Readium_cloud-reader-lite.zip . && cd ../.. && npm run deploy:cloudReader:copy:epub_content", + "pretest:travis": "npm run dist && npm run crx && npm run deploy:cloudReader:copy:sourcemap && cd dist/cloud-reader && zip -r ../Readium_cloud-reader.zip . -x epub_content* && cd ../.. && npm run deploy:cloudReaderLite:copy:sourcemap && cd dist/cloud-reader-lite && zip -r ../Readium_cloud-reader-lite.zip . && cd ../.. && npm run deploy:cloudReader:copy:epub_content", "test:travis": "parallelshell \"npm run http:travis\" \"npm run mocha\"", "deploy:cloudReader:copy:epub_content": "node ./readium-js/readium-shared-js/readium-cfi-js/node_modules/ncp/bin/ncp epub_content/ dist/cloud-reader/epub_content/", "deploy:cloudReader:copy:sourcemap": "node ./readium-js/readium-shared-js/readium-cfi-js/node_modules/ncp/bin/ncp dist/cloud-reader_sourcemap/ dist/cloud-reader/scripts/ && ( node ./readium-js/readium-shared-js/readium-cfi-js/node_modules/ncp/bin/ncp dist/zip_sourcemap/ dist/cloud-reader/scripts/zip/ || echo \"=== SUCCESS [ignore previous error]: no sourcemaps were generated for zip web-worker, deflate, inflate (no uglification).\" )", diff --git a/package/package_scripts_build.cson b/package/package_scripts_build.cson index c8629f25f..bc772f16b 100644 --- a/package/package_scripts_build.cson +++ b/package/package_scripts_build.cson @@ -14,7 +14,7 @@ build-output && npm run rimraf - "api-docs/*" + api-docs/* && npm run rimraf dist @@ -45,7 +45,7 @@ lint: ' npm run jshint - "js/**.js" + "src/js/**.js" ' diff --git a/package/package_scripts_travis.cson b/package/package_scripts_travis.cson index a3667c015..75c54b8a8 100644 --- a/package/package_scripts_travis.cson +++ b/package/package_scripts_travis.cson @@ -15,7 +15,7 @@ && cd dist/cloud-reader && - zip -r ../Readium_cloud-reader.zip . -x "epub_content\*" + zip -r ../Readium_cloud-reader.zip . -x epub_content\* && cd ../.. && diff --git a/readium-js b/readium-js index 902137847..a37f75f47 160000 --- a/readium-js +++ b/readium-js @@ -1 +1 @@ -Subproject commit 9021378478b754d99daeaf4b1cd8945f285532ea +Subproject commit a37f75f47dd7702a9dd80d33975a6950ecafb20b