@internetarchive/bookreader 5.0.0-9 → 5.0.0-90

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (324) hide show
  1. package/.eslintrc.js +21 -19
  2. package/.github/workflows/node.js.yml +76 -11
  3. package/.github/workflows/npm-publish.yml +6 -20
  4. package/.testcaferc.js +10 -0
  5. package/BookReader/BookReader.css +404 -1125
  6. package/BookReader/BookReader.js +1 -1
  7. package/BookReader/BookReader.js.LICENSE.txt +20 -20
  8. package/BookReader/BookReader.js.map +1 -1
  9. package/BookReader/ia-bookreader-bundle.js +1782 -0
  10. package/BookReader/ia-bookreader-bundle.js.LICENSE.txt +7 -0
  11. package/BookReader/ia-bookreader-bundle.js.map +1 -0
  12. package/BookReader/icons/1up.svg +1 -1
  13. package/BookReader/icons/2up.svg +1 -1
  14. package/BookReader/icons/advance.svg +1 -1
  15. package/BookReader/icons/chevron-right.svg +1 -1
  16. package/BookReader/icons/close-circle-dark.svg +1 -1
  17. package/BookReader/icons/close-circle.svg +1 -1
  18. package/BookReader/icons/fullscreen.svg +1 -1
  19. package/BookReader/icons/fullscreen_exit.svg +1 -1
  20. package/BookReader/icons/hamburger.svg +1 -1
  21. package/BookReader/icons/left-arrow.svg +1 -1
  22. package/BookReader/icons/magnify-minus.svg +1 -1
  23. package/BookReader/icons/magnify-plus.svg +1 -1
  24. package/BookReader/icons/magnify.svg +1 -1
  25. package/BookReader/icons/pause.svg +1 -1
  26. package/BookReader/icons/play.svg +1 -1
  27. package/BookReader/icons/playback-speed.svg +1 -1
  28. package/BookReader/icons/read-aloud.svg +1 -1
  29. package/BookReader/icons/review.svg +1 -1
  30. package/BookReader/icons/thumbnails.svg +1 -1
  31. package/BookReader/icons/voice.svg +1 -0
  32. package/BookReader/icons/volume-full.svg +1 -1
  33. package/BookReader/images/BRicons.svg +3 -3
  34. package/BookReader/images/books_graphic.svg +1 -1
  35. package/BookReader/images/icon_book.svg +1 -1
  36. package/BookReader/images/icon_bookmark.svg +1 -1
  37. package/BookReader/images/icon_gear.svg +1 -1
  38. package/BookReader/images/icon_hamburger.svg +1 -1
  39. package/BookReader/images/icon_home.svg +1 -1
  40. package/BookReader/images/icon_info.svg +1 -1
  41. package/BookReader/images/icon_one_page.svg +1 -1
  42. package/BookReader/images/icon_pause.svg +1 -1
  43. package/BookReader/images/icon_play.svg +1 -1
  44. package/BookReader/images/icon_playback-rate.svg +1 -1
  45. package/BookReader/images/icon_search_button.svg +1 -1
  46. package/BookReader/images/icon_share.svg +1 -1
  47. package/BookReader/images/icon_skip-ahead.svg +1 -1
  48. package/BookReader/images/icon_skip-back.svg +1 -1
  49. package/BookReader/images/icon_speaker.svg +1 -1
  50. package/BookReader/images/icon_speaker_open.svg +1 -1
  51. package/BookReader/images/icon_thumbnails.svg +1 -1
  52. package/BookReader/images/icon_toc.svg +1 -1
  53. package/BookReader/images/icon_two_pages.svg +1 -1
  54. package/BookReader/images/marker_chap-off.svg +1 -1
  55. package/BookReader/images/marker_chap-on.svg +1 -1
  56. package/BookReader/images/marker_srch-on.svg +1 -1
  57. package/BookReader/images/unviewable_page.png +0 -0
  58. package/BookReader/jquery-3.js +2 -0
  59. package/BookReader/jquery-3.js.LICENSE.txt +24 -0
  60. package/BookReader/plugins/plugin.archive_analytics.js +1 -1
  61. package/BookReader/plugins/plugin.archive_analytics.js.map +1 -1
  62. package/BookReader/plugins/plugin.autoplay.js +1 -1
  63. package/BookReader/plugins/plugin.autoplay.js.map +1 -1
  64. package/BookReader/plugins/plugin.chapters.js +25 -1
  65. package/BookReader/plugins/plugin.chapters.js.LICENSE.txt +1 -0
  66. package/BookReader/plugins/plugin.chapters.js.map +1 -1
  67. package/BookReader/plugins/plugin.iframe.js +1 -1
  68. package/BookReader/plugins/plugin.iframe.js.map +1 -1
  69. package/BookReader/plugins/plugin.iiif.js +2 -0
  70. package/BookReader/plugins/plugin.iiif.js.map +1 -0
  71. package/BookReader/plugins/plugin.resume.js +1 -1
  72. package/BookReader/plugins/plugin.resume.js.map +1 -1
  73. package/BookReader/plugins/plugin.search.js +2 -1
  74. package/BookReader/plugins/plugin.search.js.LICENSE.txt +1 -0
  75. package/BookReader/plugins/plugin.search.js.map +1 -1
  76. package/BookReader/plugins/plugin.text_selection.js +2 -1
  77. package/BookReader/plugins/plugin.text_selection.js.LICENSE.txt +1 -0
  78. package/BookReader/plugins/plugin.text_selection.js.map +1 -1
  79. package/BookReader/plugins/plugin.tts.js +1 -1
  80. package/BookReader/plugins/plugin.tts.js.LICENSE.txt +2 -0
  81. package/BookReader/plugins/plugin.tts.js.map +1 -1
  82. package/BookReader/plugins/plugin.url.js +1 -1
  83. package/BookReader/plugins/plugin.url.js.map +1 -1
  84. package/BookReader/plugins/plugin.vendor-fullscreen.js +1 -1
  85. package/BookReader/plugins/plugin.vendor-fullscreen.js.map +1 -1
  86. package/BookReader/webcomponents-bundle.js +3 -0
  87. package/BookReader/webcomponents-bundle.js.LICENSE.txt +9 -0
  88. package/BookReader/webcomponents-bundle.js.map +1 -0
  89. package/BookReaderDemo/BookReaderDemo.css +18 -19
  90. package/BookReaderDemo/BookReaderJSAdvanced.js +0 -3
  91. package/BookReaderDemo/BookReaderJSSimple.js +1 -0
  92. package/BookReaderDemo/IADemoBr.js +144 -0
  93. package/BookReaderDemo/demo-advanced.html +2 -2
  94. package/BookReaderDemo/demo-embed-iframe-src.html +2 -1
  95. package/BookReaderDemo/demo-fullscreen-mobile.html +3 -5
  96. package/BookReaderDemo/demo-fullscreen.html +2 -4
  97. package/BookReaderDemo/demo-iiif.html +99 -12
  98. package/BookReaderDemo/demo-internetarchive.html +214 -18
  99. package/BookReaderDemo/demo-multiple.html +2 -1
  100. package/BookReaderDemo/demo-preview-pages.html +526 -525
  101. package/BookReaderDemo/demo-simple.html +2 -1
  102. package/BookReaderDemo/demo-vendor-fullscreen.html +2 -4
  103. package/BookReaderDemo/ia-multiple-volumes-manifest.js +170 -0
  104. package/BookReaderDemo/immersion-1up.html +2 -2
  105. package/BookReaderDemo/immersion-mode.html +2 -4
  106. package/BookReaderDemo/toggle_controls.html +3 -2
  107. package/BookReaderDemo/view_mode.html +2 -1
  108. package/BookReaderDemo/viewmode-cycle.html +2 -3
  109. package/CHANGELOG.md +584 -33
  110. package/README.md +14 -1
  111. package/babel.config.js +20 -0
  112. package/codecov.yml +6 -0
  113. package/index.html +5 -2
  114. package/jsconfig.json +19 -0
  115. package/netlify.toml +9 -0
  116. package/package.json +70 -62
  117. package/renovate.json +52 -0
  118. package/scripts/preversion.js +0 -1
  119. package/src/BookNavigator/assets/bookmark-colors.js +1 -1
  120. package/src/BookNavigator/assets/button-base.js +5 -2
  121. package/src/BookNavigator/assets/ia-logo.js +17 -0
  122. package/src/BookNavigator/assets/icon_checkmark.js +1 -1
  123. package/src/BookNavigator/assets/icon_close.js +1 -1
  124. package/src/BookNavigator/book-navigator.js +590 -0
  125. package/src/BookNavigator/bookmarks/bookmark-button.js +3 -2
  126. package/src/BookNavigator/bookmarks/bookmark-edit.js +3 -4
  127. package/src/BookNavigator/bookmarks/bookmarks-list.js +2 -3
  128. package/src/BookNavigator/bookmarks/bookmarks-loginCTA.js +4 -9
  129. package/src/BookNavigator/bookmarks/bookmarks-provider.js +27 -17
  130. package/src/BookNavigator/bookmarks/ia-bookmarks.js +116 -67
  131. package/src/BookNavigator/delete-modal-actions.js +1 -1
  132. package/src/BookNavigator/downloads/downloads-provider.js +36 -21
  133. package/src/BookNavigator/downloads/downloads.js +29 -25
  134. package/src/BookNavigator/search/search-provider.js +50 -28
  135. package/src/BookNavigator/search/search-results.js +24 -10
  136. package/src/BookNavigator/sharing.js +27 -0
  137. package/src/BookNavigator/viewable-files.js +95 -0
  138. package/src/BookNavigator/visual-adjustments/visual-adjustments-provider.js +13 -12
  139. package/src/BookNavigator/visual-adjustments/visual-adjustments.js +7 -7
  140. package/src/BookReader/BookModel.js +76 -41
  141. package/src/BookReader/DragScrollable.js +233 -0
  142. package/src/BookReader/ImageCache.js +48 -15
  143. package/src/BookReader/Mode1Up.js +56 -351
  144. package/src/BookReader/Mode1UpLit.js +388 -0
  145. package/src/BookReader/Mode2Up.js +73 -1318
  146. package/src/BookReader/Mode2UpLit.js +777 -0
  147. package/src/BookReader/ModeCoordinateSpace.js +29 -0
  148. package/src/BookReader/ModeSmoothZoom.js +312 -0
  149. package/src/BookReader/ModeThumb.js +19 -13
  150. package/src/BookReader/Navbar/Navbar.js +70 -54
  151. package/src/BookReader/PageContainer.js +116 -22
  152. package/src/BookReader/ReduceSet.js +3 -3
  153. package/src/BookReader/Toolbar/Toolbar.js +14 -41
  154. package/src/BookReader/events.js +2 -3
  155. package/src/BookReader/options.js +73 -15
  156. package/src/BookReader/utils/HTMLDimensionsCacher.js +44 -0
  157. package/src/BookReader/utils/ScrollClassAdder.js +31 -0
  158. package/src/BookReader/utils/SelectionObserver.js +45 -0
  159. package/src/BookReader/utils/classes.js +1 -1
  160. package/src/BookReader/utils.js +128 -13
  161. package/src/BookReader.js +544 -1078
  162. package/src/BookReaderPlugin.js +44 -0
  163. package/src/assets/icons/magnify-minus.svg +3 -7
  164. package/src/assets/icons/magnify-plus.svg +3 -7
  165. package/src/assets/icons/voice.svg +1 -0
  166. package/src/assets/images/unviewable_page.png +0 -0
  167. package/src/css/BookReader.scss +1 -5
  168. package/src/css/_BRBookmarks.scss +1 -1
  169. package/src/css/_BRComponent.scss +1 -1
  170. package/src/css/_BRicon.scss +8 -2
  171. package/src/css/_BRmain.scss +16 -3
  172. package/src/css/_BRnav.scss +12 -42
  173. package/src/css/_BRpages.scss +170 -42
  174. package/src/css/_BRsearch.scss +68 -25
  175. package/src/css/_BRtoolbar.scss +5 -5
  176. package/src/css/_TextSelection.scss +87 -27
  177. package/src/css/_colorbox.scss +2 -2
  178. package/src/css/_controls.scss +24 -7
  179. package/src/css/_icons.scss +1 -1
  180. package/src/ia-bookreader/ia-bookreader.js +224 -0
  181. package/src/plugins/plugin.archive_analytics.js +84 -78
  182. package/src/plugins/plugin.autoplay.js +99 -104
  183. package/src/plugins/plugin.chapters.js +237 -191
  184. package/src/plugins/plugin.iframe.js +1 -1
  185. package/src/plugins/plugin.iiif.js +141 -0
  186. package/src/plugins/plugin.resume.js +53 -50
  187. package/src/plugins/plugin.text_selection.js +503 -175
  188. package/src/plugins/plugin.vendor-fullscreen.js +7 -7
  189. package/src/plugins/search/plugin.search.js +151 -127
  190. package/src/plugins/search/utils.js +43 -0
  191. package/src/plugins/search/view.js +37 -59
  192. package/src/plugins/tts/AbstractTTSEngine.js +75 -45
  193. package/src/plugins/tts/FestivalTTSEngine.js +21 -31
  194. package/src/plugins/tts/PageChunk.js +16 -23
  195. package/src/plugins/tts/PageChunkIterator.js +11 -17
  196. package/src/plugins/tts/WebTTSEngine.js +88 -72
  197. package/src/plugins/tts/plugin.tts.js +310 -350
  198. package/src/plugins/tts/utils.js +16 -26
  199. package/src/plugins/url/UrlPlugin.js +191 -0
  200. package/src/plugins/{plugin.url.js → url/plugin.url.js} +47 -18
  201. package/src/util/browserSniffing.js +22 -0
  202. package/src/util/docCookies.js +21 -2
  203. package/src/util/strings.js +1 -0
  204. package/tests/e2e/README.md +37 -0
  205. package/tests/e2e/autoplay.test.js +9 -6
  206. package/tests/e2e/base.test.js +8 -16
  207. package/tests/e2e/helpers/base.js +55 -50
  208. package/tests/e2e/helpers/debug.js +1 -1
  209. package/tests/e2e/helpers/mockSearch.js +19 -22
  210. package/tests/e2e/helpers/params.js +17 -0
  211. package/tests/e2e/helpers/rightToLeft.js +8 -14
  212. package/tests/e2e/helpers/search.js +73 -0
  213. package/tests/e2e/models/Navigation.js +20 -37
  214. package/tests/e2e/rightToLeft.test.js +4 -5
  215. package/tests/e2e/viewmode.test.js +40 -33
  216. package/tests/jest/BookNavigator/book-navigator.test.js +661 -0
  217. package/tests/jest/BookNavigator/bookmarks/bookmark-button.test.js +43 -0
  218. package/tests/{karma → jest}/BookNavigator/bookmarks/bookmark-edit.test.js +25 -26
  219. package/tests/{karma → jest}/BookNavigator/bookmarks/bookmarks-list.test.js +41 -42
  220. package/tests/jest/BookNavigator/bookmarks/ia-bookmarks.test.js +45 -0
  221. package/tests/jest/BookNavigator/downloads/downloads-provider.test.js +67 -0
  222. package/tests/jest/BookNavigator/downloads/downloads.test.js +53 -0
  223. package/tests/jest/BookNavigator/search/search-provider.test.js +167 -0
  224. package/tests/{karma → jest}/BookNavigator/search/search-results.test.js +109 -60
  225. package/tests/jest/BookNavigator/sharing/sharing-provider.test.js +49 -0
  226. package/tests/jest/BookNavigator/viewable-files/viewable-files-provider.test.js +80 -0
  227. package/tests/jest/BookNavigator/visual-adjustments.test.js +200 -0
  228. package/tests/{BookReader → jest/BookReader}/BookModel.test.js +74 -14
  229. package/tests/jest/BookReader/BookReaderPublicFunctions.test.js +193 -0
  230. package/tests/{BookReader → jest/BookReader}/ImageCache.test.js +4 -4
  231. package/tests/jest/BookReader/Mode1UpLit.test.js +73 -0
  232. package/tests/jest/BookReader/Mode2Up.test.js +98 -0
  233. package/tests/jest/BookReader/Mode2UpLit.test.js +190 -0
  234. package/tests/jest/BookReader/ModeCoordinateSpace.test.js +16 -0
  235. package/tests/jest/BookReader/ModeSmoothZoom.test.js +218 -0
  236. package/tests/jest/BookReader/ModeThumb.test.js +71 -0
  237. package/tests/{BookReader → jest/BookReader}/Navbar/Navbar.test.js +42 -29
  238. package/tests/jest/BookReader/PageContainer.test.js +238 -0
  239. package/tests/{BookReader → jest/BookReader}/ReduceSet.test.js +1 -1
  240. package/tests/{BookReader → jest/BookReader}/Toolbar/Toolbar.test.js +3 -3
  241. package/tests/jest/BookReader/utils/HTMLDimensionsCacher.test.js +59 -0
  242. package/tests/jest/BookReader/utils/ScrollClassAdder.test.js +49 -0
  243. package/tests/jest/BookReader/utils/SelectionObserver.test.js +57 -0
  244. package/tests/{BookReader → jest/BookReader}/utils/classes.test.js +1 -1
  245. package/tests/jest/BookReader/utils.test.js +250 -0
  246. package/tests/jest/BookReader.keyboard.test.js +190 -0
  247. package/tests/{BookReader.options.test.js → jest/BookReader.options.test.js} +10 -2
  248. package/tests/{BookReader.test.js → jest/BookReader.test.js} +43 -53
  249. package/tests/jest/plugins/plugin.archive_analytics.test.js +20 -0
  250. package/tests/jest/plugins/plugin.autoplay.test.js +35 -0
  251. package/tests/jest/plugins/plugin.chapters.test.js +195 -0
  252. package/tests/{plugins → jest/plugins}/plugin.iframe.test.js +4 -4
  253. package/tests/{plugins → jest/plugins}/plugin.resume.test.js +22 -35
  254. package/tests/jest/plugins/plugin.text_selection.test.js +316 -0
  255. package/tests/{plugins → jest/plugins}/plugin.vendor-fullscreen.test.js +2 -2
  256. package/tests/{plugins → jest/plugins}/search/plugin.search.test.js +19 -47
  257. package/tests/{plugins → jest/plugins}/search/plugin.search.view.test.js +42 -9
  258. package/tests/jest/plugins/search/utils.js +25 -0
  259. package/tests/jest/plugins/search/utils.test.js +29 -0
  260. package/tests/{plugins → jest/plugins}/tts/AbstractTTSEngine.test.js +30 -10
  261. package/tests/{plugins → jest/plugins}/tts/FestivalTTSEngine.test.js +4 -4
  262. package/tests/{plugins → jest/plugins}/tts/PageChunk.test.js +1 -1
  263. package/tests/{plugins → jest/plugins}/tts/PageChunkIterator.test.js +3 -3
  264. package/tests/{plugins → jest/plugins}/tts/WebTTSEngine.test.js +47 -1
  265. package/tests/{plugins → jest/plugins}/tts/utils.test.js +1 -60
  266. package/tests/jest/plugins/url/UrlPlugin.test.js +198 -0
  267. package/tests/{plugins → jest/plugins/url}/plugin.url.test.js +57 -18
  268. package/tests/jest/setup.js +3 -0
  269. package/tests/{util → jest/util}/browserSniffing.test.js +1 -1
  270. package/tests/jest/util/docCookies.test.js +24 -0
  271. package/tests/{util → jest/util}/strings.test.js +1 -1
  272. package/tests/{utils.js → jest/utils.js} +38 -0
  273. package/webpack.config.js +16 -10
  274. package/.babelrc +0 -12
  275. package/.dependabot/config.yml +0 -6
  276. package/.testcaferc.json +0 -5
  277. package/BookReader/bookreader-component-bundle.js +0 -1450
  278. package/BookReader/bookreader-component-bundle.js.LICENSE.txt +0 -38
  279. package/BookReader/bookreader-component-bundle.js.map +0 -1
  280. package/BookReader/jquery-1.10.1.js +0 -2
  281. package/BookReader/jquery-1.10.1.js.LICENSE.txt +0 -24
  282. package/BookReader/plugins/plugin.menu_toggle.js +0 -2
  283. package/BookReader/plugins/plugin.menu_toggle.js.map +0 -1
  284. package/BookReader/plugins/plugin.mobile_nav.js +0 -2
  285. package/BookReader/plugins/plugin.mobile_nav.js.map +0 -1
  286. package/BookReaderDemo/BookReaderJSAutoplay.js +0 -56
  287. package/BookReaderDemo/IIIFBookReader.js +0 -207
  288. package/BookReaderDemo/bookreader-template-bundle.js +0 -7178
  289. package/BookReaderDemo/demo-autoplay.html +0 -38
  290. package/BookReaderDemo/demo-iiif.js +0 -26
  291. package/BookReaderDemo/demo-plugin-menu-toggle.html +0 -34
  292. package/karma.conf.js +0 -23
  293. package/src/BookNavigator/BookModel.js +0 -14
  294. package/src/BookNavigator/BookNavigator.js +0 -446
  295. package/src/BookNavigator/assets/book-loader.js +0 -27
  296. package/src/BookNavigator/br-fullscreen-mgr.js +0 -83
  297. package/src/BookNavigator/search/a-search-result.js +0 -55
  298. package/src/BookReader/DebugConsole.js +0 -54
  299. package/src/BookReaderComponent/BookReaderComponent.js +0 -112
  300. package/src/ItemNavigator/ItemNavigator.js +0 -376
  301. package/src/ItemNavigator/providers/sharing.js +0 -29
  302. package/src/css/_MobileNav.scss +0 -194
  303. package/src/dragscrollable-br.js +0 -261
  304. package/src/plugins/menu_toggle/plugin.menu_toggle.js +0 -324
  305. package/src/plugins/plugin.mobile_nav.js +0 -287
  306. package/tests/BookReader/BookReaderPublicFunctions.test.js +0 -171
  307. package/tests/BookReader/DebugConsole.test.js +0 -25
  308. package/tests/BookReader/Mode1Up.test.js +0 -164
  309. package/tests/BookReader/Mode2Up.test.js +0 -247
  310. package/tests/BookReader/PageContainer.test.js +0 -115
  311. package/tests/BookReader/utils.test.js +0 -109
  312. package/tests/e2e/helpers/desktopSearch.js +0 -72
  313. package/tests/e2e/helpers/mobileSearch.js +0 -85
  314. package/tests/e2e/ia-production/ia-prod-base.js +0 -17
  315. package/tests/karma/BookNavigator/book-navigator.test.js +0 -132
  316. package/tests/karma/BookNavigator/search/search-provider.test.js +0 -23
  317. package/tests/karma/BookNavigator/visual-adjustments.test.js +0 -201
  318. package/tests/plugins/menu_toggle/plugin.menu_toggle.test.js +0 -68
  319. package/tests/plugins/plugin.archive_analytics.test.js +0 -23
  320. package/tests/plugins/plugin.autoplay.test.js +0 -52
  321. package/tests/plugins/plugin.chapters.test.js +0 -130
  322. package/tests/plugins/plugin.mobile_nav.test.js +0 -66
  323. package/tests/plugins/plugin.text_selection.test.js +0 -203
  324. package/tests/util/docCookies.test.js +0 -15
package/CHANGELOG.md CHANGED
@@ -1,25 +1,475 @@
1
+ # 5.0.0-90
2
+ - Fix: Festival TTS not working @cdrini
3
+
4
+ # 5.0.0-89
5
+ - Refactor: Migrate TextSelection, Autoplay, Resume, IIIF, and TTS to new BookReaderPlugin system @cdrini
6
+ - Breaking changes:
7
+ - Options related to these plugins are now in the `plugins` object
8
+ - Methods related to these plugins are now nested, eg `br.ttsToggle` is now `br._plugins.tts.toggle`
9
+ - See https://github.com/internetarchive/bookreader/pull/1374 and https://github.com/internetarchive/bookreader/pull/1376 for examples.
10
+ - Feature: Add autoplay url parameter for `flipSpeed` and `flipDelay`
11
+ - Feature: Add new renderPageURI option + improve image caching @cdrini
12
+ - Dev: Fix failing E2E tests @cdrini
13
+
14
+ # 5.0.0-88
15
+ - Fix: Switch to new page number display format @pezvi
16
+ - Fix: Introduce BookReaderPlugin abstraction and apply to ArchiveAnalyticsPlugin @cdrini
17
+
18
+ # 5.0.0-87
19
+ - Fix: turn on autoplay option @cdrini
20
+
21
+ # 5.0.0-86
22
+ - Fix: Make JSON requests with cookies for protected books @cdrini
23
+
24
+ # 5.0.0-85
25
+ - Dev: Disable JSONP requests to archive.org to make BR CSP-compatible @cdrini
26
+
27
+ # 5.0.0-84
28
+ - Fix: Improve/update wording for downloads @rebecca-shoptaw
29
+
30
+ # 5.0.0-83
31
+ - Fix: Fix typo in search-results.js @sahalbelam
32
+ - Dev: Bump cache action to v4 @williamtheaker
33
+ - Fix: Fix toolbar requiring SearchView.init having already been called @cdrini
34
+ - Dev: Replace deprecated codecov npm package with github action @cdrini
35
+ - Dev: Add eslint trailing comma rule @cdrini
36
+ - Fix: Fix IIIF plugin missing last page + error when metadata unspecified @glorieux-f
37
+ - Fix: Remove polyfill.io from demo files @cdrini
38
+ - Dev: Update build dependencies @cdrini
39
+ - Dev: Update some dev deps @cdrini
40
+ - Fix: Switch to new Thorium URL @rebecca-shoptaw
41
+
42
+ # 5.0.0-82
43
+ - Feature: New option to control unviewable page image: `unviewablePageURI` @cdrini
44
+
45
+ # 5.0.0-81
46
+ - Dev: Update test dependencies @cdrini
47
+ - Dev: Update build dependencies @cdrini
48
+ - Fix: BookReader buttons inherit font @rebecca-shoptaw
49
+ - Fix: Better visual adjustment text @rebecca-shoptaw
50
+
51
+ # 5.0.0-80
52
+ - Dev: Fix/modernize IIIF demo @cdrini
53
+ - Dev: Fix sharing panel erroring when no IA item metadata specified @cdrini
54
+
55
+ # 5.0.0-79
56
+
57
+ - Fix: Firefox not scrolling to selected volume in the volume side panel @nsharma123
58
+
59
+ # 5.0.0-78
60
+
61
+ - Fix: Add button outline to some of the controls @cdrini
62
+
63
+ # 5.0.0-77
64
+
65
+ - Fix: side panels - show downloads before visual adjustments @iisa
66
+
67
+ # 5.0.0-76
68
+
69
+ - Fix: Update bookNavigator shortcut menu ordering @dualcnhq
70
+
71
+ # 5.0.0-75
72
+
73
+ - Dev: Update deps via renovatebot
74
+ - Dev: Add .env file in .gitignore
75
+ - Dev: Update CHANGELOG.md @eltociear
76
+ - Feature: Add ToC icon if enableChapterPlugin @dualcnhq
77
+
78
+ # 5.0.0-74
79
+
80
+ - See 5.0.0-75
81
+
82
+ # 5.0.0-73
83
+
84
+ - Feature: Add `table_of_contents` option to work with chapters plugin @cdrini
85
+ - Fix: Simple demos not working @xonx4l
86
+ - Dev: Update test/build dependencies @cdrini
87
+
88
+ # 5.0.0-72
89
+
90
+ - Fix: Play/pause button out of sync with ReadAloud @sbwhitt
91
+ - Fix: BookReader not loading in sandboxed iframe @cdrini
92
+ - Dev: Fix noisy sentry error firing on any selection @cdrini
93
+ - Dev: Update to Node 20 @cdrini
94
+
95
+ # 5.0.0-71
96
+
97
+ - Dev: update jest monorepo @renovate
98
+ - Fix: Share & Mutliple View menu panel refactor @iisa
99
+
100
+ # 5.0.0-70
101
+
102
+ - Feature: Remember ReadAloud voice selection @sbwhitt
103
+ - Fix: Support page numbers that require url encoding @cdrini
104
+
105
+ # 5.0.0-69
106
+
107
+ - Fix: Handle ppi incorrectly set to one @cdrini
108
+
109
+ # 5.0.0-68
110
+
111
+ - Fix: 1up zoom wrong on start/entering full screen @cdrini
112
+ - Dev: BREAKING: delete `plugin.mobile_nav.js` no longer used @cdrini
113
+ - Dev: Move page 1 label correction logic to BookReaderJSIA @cdrini
114
+
115
+ # 5.0.0-67
116
+
117
+ - Feature: Re-enable chapters plugin + migrate off mmenu @cdrini
118
+ - Fix: Disable tooltips on touchscreens + fix on IA @cdrini
119
+ - Dev: Remove core-js update block; issue resolved in core-js @cdrini
120
+
121
+ # 5.0.0-66
122
+
123
+ - Fix: Pinch zooming on iPad/iPhone, Samsung Internet @cdrini
124
+
125
+ # 5.0.0-65
126
+
127
+ - Dev: Remove Debug console dev helper @cdrini
128
+ - Dev: Fix deno esm.sh esbuild erroring @cdrini
129
+ - Dev: Update test/build deps @cdrini
130
+
131
+ # 5.0.0-64
132
+
133
+ - Dev: update dependencies @renovate
134
+ - Dev: update build step @cdrini
135
+ - Fix: Search inside option for {{{/}}} + http support @cdrini
136
+
137
+ # 5.0.0-63
138
+
139
+ Fix: Don't limit autoFit zoom to real world size @cdrini
140
+ Dev: Update test deps @cdrini
141
+
142
+ # 5.0.0-62
143
+
144
+ - Fix: Make text selection work in Safari 15.4+ @cdrini
145
+ - Fix: Rewrite/improvements to text selection UX @cdrini
146
+ - Switches from SVG text layer to HTML text layer
147
+
148
+ # 5.0.0-61
149
+
150
+ - Fix: Mode2up preview pages hanging on first click @cdrini
151
+ - Dev: Add analytics event for text layer page selection @cdrini
152
+
153
+ # 5.0.0-60
154
+
155
+ - Fix: Update modal manager to fix duplicate definitions warnings on IA @cdrini
156
+ - Fix: Common Sentry error `.spread` undefined @cdrini
157
+ - Fix: entering page appearing early in flip anim @cdrini
158
+ - Fix: preview pages not working in 1up @cdrini
159
+ - Dev: Make serve-dev not do full production babeling (This makes it waaaay easier/faster to debug things like promises) @cdrini
160
+ - Dev: Log an error if search inside fails for sentry @cdrini
161
+ - Dev: Make dev server support CORS to allow testing via ngrok @cdrini
162
+ - Refactor: Rm redundant archive_analytics checks @cdrini
163
+ - Refactor: Dissolve a-search-result.js component @cdrini
164
+
165
+ # 5.0.0-59
166
+
167
+ - Rewrite 2up view to use css transforms and lit @cdrini
168
+ - Pretty substantial change. Lots of breaking changes to public methods.
169
+
170
+ # 5.0.0-58
171
+
172
+ - Fix BookReader sometimes failing to load when starting in Mode1Up @cdrini
173
+ - Update testing dependencies @cdrini
174
+
175
+ # 5.0.0-57
176
+
177
+ - Fix - do not show Download pane when there aren't any available @iisa
178
+
179
+ # 5.0.0-56
180
+
181
+ - Fix DOMException in sandboxed iframe in chrome @cdrini
182
+
183
+ # 5.0.0-55
184
+
185
+ - Fix BookReader going to 1up in fullscreen on desktop @mheiman
186
+ - Support BookReader running in sandboxed (cookie-less) iframe @cdrini
187
+ - Update IA dependencies to avoid duplicate dependencies @cdrini
188
+
189
+ # 5.0.0-54
190
+
191
+ - Dev: Dispatch custom event from bookreader for ia-book-actions @nsharma123
192
+
193
+ # 5.0.0-53
194
+
195
+ - Dev: update icons & lit versions to help a.o build @iisa
196
+
197
+ # 5.0.0-52
198
+
199
+ # 5.0.0-51
200
+
201
+ - Fix: Bookmark with subfiles was broken @nsharma123
202
+ - Feature: Default 1up mode and options.defaults mode override exiting mode @nsharma123
203
+
204
+ # 5.0.0-50
205
+
206
+ Fix: Search results display @latonv
207
+
208
+ # 5.0.0-49
209
+
210
+ - Dev: remove class shims, v5 deprecations @cdrini
211
+ - Dev: update dependency (@open-wc/testing-helpers) @renovate
212
+ - Dev: e2e - remove ia test + export DesktopNav for external usage @iisa
213
+
214
+ # 5.0.0-48
215
+
216
+ - Fix: move analytics to sample bucket @iisa
217
+ - Dev: update dependencies (concurrently, jest) @renovate
218
+
219
+ # 5.0.0-47
220
+
221
+ - Fix: XSS vulnerability in search results @latonv
222
+ - Dev: Update jQuery to v3 **BREAKING** @cdrini
223
+ - If you were importing `BookReader/jquery-1.10.1.js` you will need to change it to `BookReader/jquery-3.js`
224
+ - Also ensure if other code was using this jquery that it works with jQuery 3!
225
+ - Dev: Update testing dependencies (jest, testcafe) @renovate
226
+
227
+ # 5.0.0-46
228
+
229
+ Fix: Leaf positioning during RTL fliip animation @latonv
230
+ Dev: dependency updates @renovate
231
+ Fix: Disable contextmenu for restricted books @iisa
232
+
233
+ # 5.0.0-45
234
+
235
+ # 5.0.0-44
236
+
237
+ Fix: dynamic `q=<term>` url parameter @iisa
238
+ Dev: dependency updates @renovate
239
+
240
+ # 5.0.0-43
241
+
242
+ Fix: search results panel display asserted page numbers @cdrini
243
+ Dev: dependency updates @renovate
244
+ Dev: node-fetch update @cdrini
245
+
246
+ # 5.0.0-42
247
+
248
+ Dev: update testing dependencies @renovate
249
+ Dev: update `<ia-item-navigator>` @iisa
250
+
251
+ # 5.0.0-40
252
+
253
+ Fix: Better search highlights @cdrini
254
+ Dev: update lit 2 components @iisa
255
+ Dev: update lit @renovate
256
+
257
+ # 5.0.0-39
258
+
259
+ Fix: Performance improvements to scroll/zooming when text layer is larger @cdrini
260
+ Fix: Update zoom in/out icons to match iconochive glyphs @pezvi
261
+ Dev: update dependencies @renovate
262
+
263
+ # 5.0.0-38
264
+
265
+ Dev: Add Renovate Bot @cdrini
266
+ Dev: Update node-fetch @cdrini
267
+ Fix: Search request promise err & fix tests @cdrini
268
+ Dev: Split node workflow into different jobs @cdrini
269
+ Dev: Give cache steps better names in GHA @cdrini
270
+ Dev: Update concurrently + Small speedup to build & test @cdrini
271
+ Dev: Renovate - Auto-update dev dependencies for minor/patch @cdrini
272
+ Fix: Better MS Edge voice selection @cdrini
273
+ Dev: Allow small drops in codecov coverage (< 0.5%) @cdrini
274
+ Dev: Renovate - add `^@internetarchive/icon-` @cdrini
275
+
276
+ # 5.0.0-37
277
+
278
+ Fix: Update all `.then()` to async/await @sancodes
279
+ Fix: Upgrade to Lit 2 @Aadilhassan
280
+ Dev: Update to Node v16.x @duggiefresh
281
+ Dev: Remove unused demo bundle @cdrini
282
+ Dev: Fix README broken link for plugin directory @duggiefresh
283
+ Dev: Update sharing options menu to lit2 @iisa
284
+ Dev: Remove package publishing from GHA @cdrini
285
+
286
+ # 5.0.0-36
287
+
288
+ Fix: Readaloud scrolls along with dext @cdrini
289
+ Dev: ES6 var to let/const updates @sancodes
290
+ Dev: ES6 async/await updates @sancodes
291
+ Dev: Re-enable testcafe tests in GH action @iisa
292
+ Fix: Search results bar clears and closes properly @iisa
293
+
294
+ # 5.0.0-35
295
+
296
+ Fix: global style leak specify colorbox styles @iisa
297
+ Fix: br menu reinits with shared ro load @iisa
298
+ Fix: url plugin does not rewrite with multiple slashes @iisa
299
+
300
+ # 5.0.0-34
301
+
302
+ Dev: update test dependencies @cdrini
303
+ Fix: Update hyphen stitching regex to include dangling "¬" @cdrini
304
+ Fix: pop open multiple files menu at proper width @iisa
305
+
306
+ # 5.0.0-33
307
+
308
+ Fix: restricted books get cover image @iisa
309
+
310
+ # 5.0.0-32
311
+
312
+ Fix: fetch bookmarks from service when logged in @iisa
313
+ Fix: adjust css to help shadydom render properly @iisa
314
+
315
+ # 5.0.0-31
316
+
317
+ Fix: modal loads into dom from `<ia-bookreader>` @iisa
318
+
319
+ # 5.0.0-30
320
+
321
+ - `<ia-bookreader>` is top-most web component @iisa
322
+
323
+ # 5.0.0-29
324
+
325
+ - import ia-item-navigator for menu management @iisa
326
+ - url plugin: suppress default state on load @dualcnhq
327
+
328
+ # 5.0.0-28
329
+
330
+ Dev: Refactor URLPlugin + sync volumes sorting state to URL @dualcnhq @cdrini
331
+
332
+ # 5.0.0-27
333
+
334
+ Dev: eslint fix for $.browser @homewardgamer
335
+ Fix: cache search inside requests @iisa
336
+
337
+ # 5.0.0-26
338
+
339
+ Fix: read aloud play/pause button @nsharma123
340
+ Dev: strict keyboard shortcuts @mc2
341
+ Dev: update IA demo page @iisa
342
+
343
+ # 5.0.0-24
344
+
345
+ Fix: book-nav side panel zoom out @mc2
346
+ Dev: refactor zoom code @mc2
347
+
348
+ # 5.0.0-23
349
+
350
+ Fix: Darken scrollbars in Safari @pezvi
351
+ Fix: Bookmarks service calls when reader is logged in @mc2
352
+ Dev: Move jest tests into separate directory @cdrini
353
+
354
+ # 5.0.0-22
355
+
356
+ - Dev: remove deprecated embed nav view, use standard default @iisa
357
+
358
+ # 5.0.0-21
359
+
360
+ - Dev: Toggle view=theater in fullscreen @mc2
361
+
362
+ # 5.0.0-20
363
+
364
+ - Feature: Add voice selection dropdown to ReadAloud! @mekarpeles
365
+ - Dev: Make jest support root-level imports with "@" @cdrini
366
+ - Dev: Make it easy to run e2e tests on archive.org/browserstack @cdrini
367
+
368
+ # 5.0.0-19
369
+
370
+ - Dev: Refactor dragscrollable from a jquery plugin to a JS class @cdrini
371
+ - Dev: Fix jquery eslint errors @cdrini
372
+ - Dev: Replace deprecated babel-eslint with successor @cdrini
373
+ - Fix: BR not working on iOS 9 / iOS 10! @cdrini, @iisa
374
+ - Added webcomponents, ResizeObserver polyfill
375
+ - ES5-ify lit node_modules
376
+
377
+ # 5.0.0-18
378
+
379
+ - Dev: Update a number of dependencies @cdrini
380
+ - Dev: Added eslint-plugin-no-jquery @soham4abc
381
+ - Feature: Add continuous pinch zooming for touch screens and trackpads! @cdrini
382
+ - This is a _big_ change to the codebase. It involved rewriting 1 up mode in LitElement. This means that BookReader now need webcomponents to function.
383
+ - Breaking changes (unlikely to be used by anyone):
384
+ - Most Mode1Up Bookreader global functions removed (unlikely to be used): `drawLeafsOnePage`, `onePageGetAutofitWidth`, `onePageGetAutofitHeight`, `onePageGetPageTop`, `onePageCalculateReductionFactors`, `centerX1up`, `centerY1up`
385
+ - Some Mode2Up cleanups: Removed `setClickHandler2UP`, `setMouseHandlers2UP`
386
+ - [Web components](https://caniuse.com/custom-elementsv1) now must be supported
387
+ - Reduction factors options no longer applies to 1up
388
+
389
+ # 5.0.0-17
390
+
391
+ - Fix: focus in a textarea disables keyboard shortcuts @cdrini
392
+
393
+ # 5.0.0-16
394
+
395
+ - Dev: remove unused menu toggle plugin @iisa
396
+ - Fix: Book nav loader safari update @iisa
397
+
398
+ # 5.0.0-15
399
+
400
+ - Fix: Typing -/+ in search box no longer zooms @cdrini
401
+ - Dev: Add script for updating dev deps @cdrini
402
+ - Refactor/Fix: Convert search/TTS highlights to use SVG layer @cdrini
403
+ - Fix TTS highlights not positioned correctly in Mode1Up
404
+ - Breaking changes (unlikely these are used by anyone):
405
+ - Remove public method `BookReader.prototype.keyboardNavigationIsDisabled`
406
+ - Remove public method `BookReader.util.sleep`
407
+ - Remove public method `BookReader.prototype.updateSearchHilites1UP`
408
+ - Remove public method `BookReader.prototype.updateSearchHilites2UP`
409
+ - Remove public attribute `BookReader.prototype.ttsHilites`
410
+
411
+ # 5.0.0-14
412
+
413
+ - Fix: Url search param `q=` updates dynamically @nsharma123
414
+ - Fix: Downloads menu text updates @dualcnhq
415
+ - Fix: Volumes updates - icons, labelling, open menu onload @iisa
416
+
417
+ # 5.0.0-13
418
+
419
+ - Enhancement: Add neutral state for sorting volumes @dualcnhq
420
+ - Enhancement: Update subfiles/volumes title sorting logic by filename -> title_asc -> title_desc order then back to filename @dualcnhq
421
+ - Fix: Volume item index count display @dualcnhq
422
+
423
+ # 5.0.0-12
424
+
425
+ - Fix: new side panel: sortable multiple volumes @dualcnhq @iisa
426
+ - Fix: sharing side panel can share subfile/volume @iisa
427
+
428
+ # 5.0.0-11
429
+
430
+ - Fix: standardize button style for download panel @nsharma123
431
+
432
+ # 5.0.0-10
433
+
434
+ - Fix: Make 1up default to full width (up to real world size) @cdrini
435
+ - Fix: Remove "page" from toolbar @cdrini
436
+ - Dev: Update menu slider @iisa
437
+ - Dev: Add semi-colons eslint rule @iisa
438
+
1
439
  # 5.0.0-9
440
+
2
441
  - Fix: search-inside results check for page's index via `leafNum` @nsharma123
442
+
3
443
  # 5.0.0-8
444
+
4
445
  - Fix: cancel search fix naming var @iisa
5
446
 
6
447
  # 5.0.0-7
448
+
7
449
  - Fix: cancel search @iisa
8
450
  - Dev: remove dead css @cdrini
9
451
  - Dev: GHA node_modules caching @cdrini
452
+
10
453
  # 5.0.0-6
454
+
11
455
  - Fix: Fullscreen toggle sets/unsets animating flag @iisa
456
+
12
457
  # 5.0.0-5
458
+
13
459
  - Fix: Book Nav: resize only when bookreader is not animating @iisa
14
460
  - Fix: Web components register themselves at EOF @iisa
15
461
  - Dev: update dependencies with dependabot @drini
462
+
16
463
  # 5.0.0-4
464
+
17
465
  - Dev: update bookmarks login archive_analytics @iisa @dualcnhq
18
466
 
19
467
  # 5.0.0-3
468
+
20
469
  - Fix: bookmarks panel has login CTA @dualcnhq @iisa
21
470
 
22
471
  # 5.0.0-2
472
+
23
473
  - Dev: update testing dependencies @cdrini
24
474
  - Dev: update dev-flow dependencies @cdrini
25
475
  - Dev: reorganize core BR files @cdrini
@@ -29,30 +479,33 @@
29
479
  - Fix: updates to `<book-navigator>` to upgrade archive.org's liner notes display to v5 @iisa
30
480
 
31
481
  # 5.0.0-1
482
+
32
483
  - Actually delete the files mentioned in previous release @cdrini
33
484
  - Dev: Organize BookNavigator files @iisa
34
485
  - Fix: Search results not in correct place in Mode1Up @cdrini
35
486
 
36
487
  # 5.0.0-0
488
+
37
489
  First beta release of v5! Lots of breaking changes:
490
+
38
491
  - Files deleted from `BookReader/` . These are all no longer needed, or bundled in other BookReader JS files
39
- - jquery.bt.min.js
40
- - plugin.theme.js - including methods:
41
- - BookReader.prototype.themes
42
- - BookReader.prototype.updateTheme
43
- - BookReader.prototype.default_theme
44
- - BookReader.prototype.theme
45
- - option enableThemesPlugin
46
- - excanvas.compiled.js
47
- - plugin.print.js - including methods:
48
- - BookReader.prototype.printPage
49
- - BookReader.prototype.getPrintURI
50
- - BookReader.prototype.getPageFile
51
- - jquery.browser.min.js
52
- - soundmanager/*
53
- - jquery.ui.touch-punch.min.js
54
- - mmenu/*
55
- - jquery-ui-1.12.0.min.js
492
+ - jquery.bt.min.js
493
+ - plugin.theme.js - including methods:
494
+ - BookReader.prototype.themes
495
+ - BookReader.prototype.updateTheme
496
+ - BookReader.prototype.default_theme
497
+ - BookReader.prototype.theme
498
+ - option enableThemesPlugin
499
+ - excanvas.compiled.js
500
+ - plugin.print.js - including methods:
501
+ - BookReader.prototype.printPage
502
+ - BookReader.prototype.getPrintURI
503
+ - BookReader.prototype.getPageFile
504
+ - jquery.browser.min.js
505
+ - soundmanager/*
506
+ - jquery.ui.touch-punch.min.js
507
+ - mmenu/*
508
+ - jquery-ui-1.12.0.min.js
56
509
  - BookReader now also requires web components; more documentation on how to use will be coming in the next beta versions.
57
510
  - BookNavigator is a web component wrapper around core BookReader
58
511
  - Add Karma for testing web components
@@ -63,93 +516,131 @@ First beta release of v5! Lots of breaking changes:
63
516
  - BookReader/ build files directory is now completely disposable
64
517
 
65
518
  # 4.40.2
519
+
66
520
  -Fix: page container has `data-side` attr @iisa
67
521
 
68
522
  # 4.40.1
523
+
69
524
  - Fix: Support /search/TERM in url @nsharma123
70
525
  - Dev: Fix reference to deprecated pruneUnused @cdrini
71
526
 
72
527
  # 4.40.0
528
+
73
529
  - Dev: Separate ModeThumb into separate file @cdrini
74
530
  - Feature: Progressive loading of higher resolution images @cdrini
75
- - Potentially breaking change: `data-(side|leaf|reduce|row)` no longer set
76
- - Potentially breaking change: mode class no longer set on page container
77
- - A number of deprecated methods converted to no-ops with `console.warn`
531
+ - Potentially breaking change: `data-(side|leaf|reduce|row)` no longer set
532
+ - Potentially breaking change: mode class no longer set on page container
533
+ - A number of deprecated methods converted to no-ops with `console.warn`
78
534
  - Feature: pow2 reduce by default @cdrini
79
- - New option: `reduceSet: 'pow2' | 'integer' = 'pow2'` limits reduce variables sent to getURI to be powers of 2
535
+ - New option: `reduceSet: 'pow2' | 'integer' = 'pow2'` limits reduce variables sent to getURI to be powers of 2
80
536
  - Dev: Add esbuild to `npm run serve-dev` @iisa
81
537
  - Fix: BookNavigator loaded after JSIAInit @cdrini
82
538
 
83
539
  # 4.39.3
540
+
84
541
  - Hotfix: Fix iOS 8 erroring since 4.39.0 @cdrini
85
542
 
86
543
  # 4.39.2
544
+
87
545
  - Dev: update Readme @Himanshunitrr
88
546
  - Dev: in-file typo fixes @cclauss
89
547
  - Fix: v5 booknav refresh @iisa @dualcnhq
548
+
90
549
  # 4.39.1
550
+
91
551
  - Dev: update Readme @Himanshunitrr
92
552
  - Fix: v5 bookmarks menu update @iisa @dualcnhq
553
+
93
554
  # 4.39.0
555
+
94
556
  - Feature: Mode1Up DPI awareness @cdrini
95
- - Introduces two new optional options: `ppi` and `PageData.ppi`
96
- - Potentially breaking change: zooming in Mode1Up will now zoom at different intervals
557
+ - Introduces two new optional options: `ppi` and `PageData.ppi`
558
+ - Potentially breaking change: zooming in Mode1Up will now zoom at different intervals
97
559
 
98
560
  # 4.38.0
561
+
99
562
  Dev: update dependencies @cdrini
100
563
  Dev: replace travis badge with GHA badge @cdrini
101
564
  Feature: Thumbnail/Gallery view reusing best scaled images @iisa
102
565
  Fix: simplify ImageCache dictionary @iisa
103
566
 
104
567
  # 4.37.0
568
+
105
569
  Fix: new ImageCache that keeps track of requested images & their scale factor @iisa
106
570
  Fix: 2up mode's use of ImageCache @iisa
571
+
107
572
  # 4.36.0
573
+
108
574
  Fix: More image caching - 2up, some sharing with thumbnail draw @iisa
109
575
 
110
576
  # 4.35.1
577
+
111
578
  Fix: 2up, `baseLeafCss` - use function to find "top" value @iisa
579
+
112
580
  # 4.35.0
581
+
113
582
  Fix: show text selection layer if word count is less than 2,500 @cdrini
114
583
  Fix: 2up, only resize spread if current image is better than next size @iisa
584
+
115
585
  # 4.34.0
586
+
116
587
  Fix: exist fullscreen will change to 2up if 2up is available @iisa
588
+
117
589
  # 4.33.0
590
+
118
591
  Fix: use optional `srcSet` in 1up mode @iisa
592
+
119
593
  # 4.32.0
594
+
120
595
  Fix: slim down prefetch group @iisa
121
- Fix: TTS caches xml @cdrini
596
+ Fix: TTS caches xml @cdrini
597
+
122
598
  # 4.31.0
599
+
123
600
  Dev: demo cleanup with @cdrini
124
601
  Fix: 2up - pass reduction factors when creating image urls @iisa
602
+
125
603
  # 4.30.0
604
+
126
605
  Fix: all view modes on desktop & view mode toggl on mobile are now default. @nsharma123
127
606
 
128
607
  # 4.28.0
608
+
129
609
  Fix: adding alt tags to images @nsharma123
610
+
130
611
  # 4.27.0
612
+
131
613
  Fix: update init function to use new flag `autoResize` @iisa
132
614
  Fix: images - `useSrcSet` flag to determine when we fill `srcSet` attribute @iisa
615
+
133
616
  # 4.26.1
617
+
134
618
  Patch: Text selection layer does not get made in thumbnail view @dualcnhq
619
+
135
620
  # 4.26.0
621
+
136
622
  Dev: move to Github actions @cdrini
137
623
  Dev: version bumps @dependabot
138
624
  Fix: Text selection layer gets created for first page, does not get created for last page @dualcnhq
139
625
 
140
626
  # 4.25.0
627
+
141
628
  Fix: Helper changes for stream redirection to read hash fragment params from URL @nsharma123
142
629
 
143
630
  # 4.24.0
631
+
144
632
  Fix: Bookreader layout when initialized in "ReadAloud" mode @nsharma123
145
633
 
146
634
  # 4.23.0
635
+
147
636
  Fix: first search result click now updates url @nsharma123
148
637
 
149
638
  # 4.22.0
639
+
150
640
  Fix: update non-asserted page labelling next to nav scrubber @iisa
151
641
 
152
642
  # 4.21.0
643
+
153
644
  - Fix: Search Plugin Updates (#556) @iisa
154
645
  - always display search results markers
155
646
  - update search results nav tap targets & style
@@ -159,15 +650,18 @@ Fix: update non-asserted page labelling next to nav scrubber @iisa
159
650
  - Dev: move search plugin test files to their own directory (#556) @iisa
160
651
 
161
652
  # 4.20.1
653
+
162
654
  - Fix: Handle empty dejavu.xml files in text selection plugin @iisa
163
655
 
164
656
  # 4.20.0
657
+
165
658
  - Dev: Update 9 dependencies (including webpack, sass, @babel/*) @dependabot-preview + @cdrini
166
659
  - Dev: Move dragscroll code into src @cdrini
167
660
  - Dev: Make webpack treat jquery as an external dependency @cdrini
168
661
  - Fix: Samsung Internet not loading BR on IA @cdrini
169
662
 
170
663
  # 4.19.0
664
+
171
665
  - Fix: `<br>` rendered in search panel @ArunTeltia
172
666
  - Fix: TTS speed dropdown has white text on white in Chrome @participator
173
667
  - Dev: Replace dependency copies with npm packages (jquery, jquery-ui, mmenu, colorbox, touch-punch, jquery.browser) @cdrini
@@ -180,39 +674,49 @@ Fix: update non-asserted page labelling next to nav scrubber @iisa
180
674
  - Fix: Text selection throwing error on page with index=-1 @cdrini
181
675
 
182
676
  # 4.18.7
677
+
183
678
  Fix: update fullscreen toggle methods to fire behaviors in an expected way @iisa
184
679
 
185
680
  # 4.18.6
681
+
186
682
  - Fix: use fullscreen toggle flow when starting fullscreen (#499) @iisa
187
683
 
188
684
  # 4.18.5
685
+
189
686
  - Fix: Waits to resize until first result flipped to (#498) @shaneriley
190
687
 
191
688
  # 4.18.4
689
+
192
690
  - Fix: Adds data attribute to 2up page containers for side designation @shaneriley
193
691
  - Fix: Apdate interstitial modal to fixed with & clean up messaging @iisa
194
692
 
195
693
  # 4.18.3
694
+
196
695
  - Fix: Enrich context to search emitted events @iisa
197
696
  - Fix: Hides directional buttons and shows viewmode buttons on mobile viewports @shaneriley
198
697
 
199
698
  # 4.18.2
699
+
200
700
  - Fix: Search plugin fixes (#491) @shaneriley
201
701
 
202
702
  # 4.18.1
703
+
203
704
  - Fix: Skips subsequent creation of search views when setup called 1+n times @shaneriley
204
705
 
205
706
  # 4.18.0
707
+
206
708
  - Dev: Add eslint for `space-after-keywords`, `space-before-blocks`, `only-multiline` @Yashs911
207
709
  - Dev: Update eslint, sinon, @types/jest, testcafe, sass, webpack @dependabot-preview + @cdrini
208
710
  - Dev: Add 3 more files to eslint @Yashs911
209
711
  - Feature: New options for text selection plugin: single page DJVU XML url @cdrini
210
712
 
211
713
  # 4.17.0
714
+
212
715
  - Fix: text selection on Safari @cdrini
213
716
  - Feature: Search results navigation bar @shaneriley
214
717
 
215
718
  # 4.16.0
719
+
216
720
  - Dev: Emit custom event to trigger @iisa
217
721
  - Feature: Text selection plugin @Pyrojet99
218
722
  - Fix: Wrong openlibrary URL @cdrini
@@ -224,6 +728,7 @@ Fix: update fullscreen toggle methods to fire behaviors in an expected way @iisa
224
728
  - Fix: HTML escaping to prevent XSS (#434) @nsharma123
225
729
 
226
730
  # 4.15.0
731
+
227
732
  - Dev: update lodash dependency @dependabot-preview + @cdrini
228
733
  - Dev: Moves /BookReaderDemo/index.html to /index.html (#394) @anirbansaha782
229
734
  - Fix: Prevents page flipping to last page if navigating to previous page from a book's cover (#419) @iisa
@@ -231,15 +736,19 @@ Fix: update fullscreen toggle methods to fire behaviors in an expected way @iisa
231
736
  - Dev: Updates to e2e testing navigation model & base tests (#421) @iisa
232
737
 
233
738
  # 4.14.3
739
+
234
740
  - Fix: Zoom buttons missing on mobile + other chrome fixes (#416) @shaneriley
235
741
 
236
742
  # 4.14.2
743
+
237
744
  - Dev: Make npm package public (#414) @cdrini
238
745
 
239
746
  # 4.14.1
747
+
240
748
  - Dev: Automate npm publishing on github release (#409, #412) @cdrini
241
749
 
242
750
  # 4.14.0
751
+
243
752
  - Dev: Simplify webpack file (#373) @cdrini
244
753
  - Feature: One page/Two page/Thumbnail view now one button toggler (#375) @shaneriley
245
754
  - Fix: Advanced page demo broken (#383) @Pyrojet99
@@ -251,9 +760,11 @@ Fix: update fullscreen toggle methods to fire behaviors in an expected way @iisa
251
760
  - Feature: New chrome for BookReader! (#381) @shaneriley
252
761
 
253
762
  # 4.13.1
763
+
254
764
  - Fix: Toc entries not showing page number on desktop (#369) @cdrini
255
765
 
256
766
  # 4.13.0
767
+
257
768
  - Fix: BookReader.unbind not actually unbinding (#360) @shaneriley
258
769
  - Dev: New demo with configurable IA id: `demo-internetarchive.html?ocaid=foo` (#356) @Pyrojet99
259
770
  - Dev: Add E2E tests for right-to-left books (#350) @Pyrojet99
@@ -262,6 +773,7 @@ Fix: update fullscreen toggle methods to fire behaviors in an expected way @iisa
262
773
  - Feature: Table of contents panel in mobile view (#351) @Pyrojet99
263
774
 
264
775
  # 4.12.0
776
+
265
777
  - Fix: Test command for Windows users @cdrini
266
778
  - Dev: Autoplay e2e test @pyrojet99
267
779
  - Dev: Enable eslint for tests @Kartik1397
@@ -271,9 +783,11 @@ Fix: update fullscreen toggle methods to fire behaviors in an expected way @iisa
271
783
  - Feature: Visual adjustments checkboxes on mobile @pyrojet99
272
784
 
273
785
  # 4.11.1
786
+
274
787
  - Fix: search urls now redirect to query parameter `q=foo` @mc2
275
788
 
276
789
  # 4.11.0
790
+
277
791
  - Dev: Add E2E tests for searching on desktop @Pyrojet99
278
792
  - Fix: Search result not highlighted when landing on page with matches @iisa
279
793
  - Dev: Remove console logs from jest tests @NayamAmarshe
@@ -285,28 +799,33 @@ Fix: update fullscreen toggle methods to fire behaviors in an expected way @iisa
285
799
  - Dev: Update codecov, iso-language-codes @dependabot-preview + @cdrini
286
800
 
287
801
  # 4.10.0
802
+
288
803
  - Fix: BR shouldn't change URL until the user interacts with the page @mc2
289
804
  - Feature: Add `startFullscreen` option to launch in fullscreen @shaneriley
290
805
  - Feature (beta): Preview pages can be swapped out with search pin clicking @cdrini
291
806
 
292
807
  # 4.9.0
808
+
293
809
  - Fix: -/+ buttons not zooming in Chrome @ishank-dev
294
810
  - Add chapters demo to e2e tests @ishank-dev
295
811
  - Make Travis testcafe runs less flaky @shaneriley
296
812
  - Pin npm version dependencies for consistent builds @cdrini
297
813
  - Standardize HTML structure for pages across view modes @shaneriley
298
- - WARNING: Some of the html elements/classes have changed. Potentially breaking change.
814
+ - WARNING: Some of the html elements/classes have changed. Potentially breaking change.
299
815
  - Feature (beta): Preview pages. Specifying `viewable: false` on pages causes them to render a preview image placeholder. @cdrini
300
816
  - Remove deprecated QUnit tests @Pyrojet99
301
817
  - Remove console.logs in test output @NayamAmarshe
302
818
 
303
819
  # 4.8.0
820
+
304
821
  - Adds customizable layout controls @shaneriley
305
822
 
306
823
  # 4.7.1
824
+
307
825
  - Add new parameters to analytics @bfalling
308
826
 
309
827
  # 4.7.0
828
+
310
829
  Big change: All of BookReader core is now compiled to es5, and a large number of
311
830
  chunks have been re-written in es6. Care has been taken to ensure no public APIs
312
831
  have changed, but note this was a big change.
@@ -316,6 +835,7 @@ have changed, but note this was a big change.
316
835
  - Increase testcafe coverage; @iisa @shaneriley
317
836
 
318
837
  # 4.6.0
838
+
319
839
  Big change: all the plugins are now written in es6, and compiled to es5. There should
320
840
  be no observable changes, but note this was a big change.
321
841
 
@@ -329,57 +849,71 @@ be no observable changes, but note this was a big change.
329
849
  - Add `npm run serve-dev` for auto-watching + auto-refreshing dev server; @cdrini
330
850
 
331
851
  # 4.5.1
852
+
332
853
  - Fix: Click-to-flip now works in 2up mode zoomed in
333
854
  - Fix: Image panning sometimes not working
334
855
  - Fix #144: Hamburger icon only clickable on lines
335
856
  - Add TestCafe support
336
857
 
337
858
  # 4.5.0
859
+
338
860
  - ReadAloud now supports jumping backwards
339
861
  - Pressing -/= (or -/+ on numpad) zooms out/in
340
862
  - FIX #179: ReadAloud now ignores hyphens between lines
341
863
 
342
864
  # 4.4.2
865
+
343
866
  - more robust menu toggle plugin, working well with zoom & panning around in zoom
344
867
  - more tests
345
868
 
346
869
  # 4.4.1
870
+
347
871
  - Remove accidental es6 syntax in BookReader.js (breaking IE11)
348
872
 
349
873
  # 4.4.0
874
+
350
875
  - New ReadAloud controls + engine. Uses browser's SpeechSynthesis API instead of server-side test-to-speech
351
876
 
352
877
  # 4.3.2
878
+
353
879
  - menu toggle plugin, now applies to in-page & fullscreen views + early escapes when navbar isn't present
354
880
 
355
881
  # 4.3.0
882
+
356
883
  - New plugin, `fullscreen_menu_toggle`, allowing center-tap to hide UI
357
884
  - TTS Plugin logs analytics events (if enabled)
358
885
  - ES6 compilation step no longer performed on client; build files are included in repo so clients have no build step
359
886
 
360
887
  # 4.2.5
888
+
361
889
  - Large refactor of plugin.tts.js
362
- - ES6 compliation step
890
+ - ES6 compilation step
363
891
  - Known bug: Clicking on page while TTS is playing won't stop the playback
364
892
 
365
893
  # 4.2.4
894
+
366
895
  - Skips initialization of vendor fullscreen plugin when on a mobile device
367
896
 
368
897
  # 4.2.3
898
+
369
899
  - Creates vendor native fullscreen plugin and example use page
370
900
 
371
901
  # 4.2.2
902
+
372
903
  - Adds options for flipSpeed and flipDelay, the latter used for autoplay
373
904
 
374
905
  # 4.2.1
906
+
375
907
  - Fix rapid reload bug from thumbnail view
376
908
 
377
909
  # 4.2.0
910
+
378
911
  - Add eslint
379
912
  - Fix issue analytics plugin
380
913
  - Make the page display more extendable by splitting it into two functions
381
914
 
382
915
  # 4.1.0
916
+
383
917
  - Change BookReader.js function comments to JSDoc
384
918
  - Move autoplay feature into an optional plugin
385
919
  - Change the format of the current page string in the navbar. eg "1 / 100 (Cover)"
@@ -387,10 +921,12 @@ be no observable changes, but note this was a big change.
387
921
  - Simplify BookReader.prototype.init
388
922
 
389
923
  # 4.0.1
924
+
390
925
  - Add options.navBarTitle, which gets shown to the left of the scrubber.
391
926
  - Fix issue where there was a 1px border on cover leafEdge
392
927
 
393
928
  # 4.0.0
929
+
394
930
  V4 was driven by updating BookReader to work inline on the archive.org details page. This required code refactoring (eg: changing ids to classes), and also updating the design so it integrates well within the details page theatre section.
395
931
 
396
932
  - BookReader selectors made relative to BookReader. This means it shouldn't interfere with parent page, and also more than one BookReader instance can be on the page.
@@ -400,9 +936,11 @@ V4 was driven by updating BookReader to work inline on the archive.org details p
400
936
  - In transition: JavaScript code is formatted with 2 spaces instead of 4
401
937
 
402
938
  # 3.2.1
939
+
403
940
  - Fix so initParams normalizes params.page to params.index, to prevent complexity of priority of page versus index.
404
941
 
405
942
  # 3.2.0
943
+
406
944
  On Archive.org, we needed a way to pass in a default start page for books. These changes make that easier.
407
945
 
408
946
  - Update the way bookreader inits from various params contexts
@@ -411,26 +949,33 @@ On Archive.org, we needed a way to pass in a default start page for books. These
411
949
  - Update to handle both params.index and params.page when provided in defaults. Separate page parsing into separate method.
412
950
 
413
951
  # 3.1.0
952
+
414
953
  - Add new IFrame plugin to enable two-way communication between a BookReader inside an `<iframe>` and its parent window.
415
954
  - Move the `paramsFromCurrent`, `paramsFromFragment`, and `fragmentFromParams` methods back into BookReader core and out of the URL Plugin. This change should be backwards-compatible with previous versions.
416
955
  - Fire a new event, `fragmentChange`, on BookReader when the reader’s state changes.
417
956
 
418
957
  # 3.0.8
958
+
419
959
  - Add additional tracking event when view changes
420
960
 
421
961
  # 3.0.7
962
+
422
963
  - Fix: Assign options.titleLeaf to this.titleLeaf
423
964
 
424
965
  # 3.0.6
966
+
425
967
  - Another fix for plugin.search.js. The path GET param should not have a trailing slash.
426
968
 
427
969
  # 3.0.5
970
+
428
971
  - Hotfix for plugin.search.js. Fixes issue where search results were not rendered on page flip.
429
972
 
430
973
  # 3.0.4
974
+
431
975
  - Hotfix for plugin.search.js. Fixes fulltext search for some books on Archive.org
432
976
 
433
977
  # 3.0.3
978
+
434
979
  - Add more options: showToolbar, showLogo
435
980
  - Add this.options field, which stores the options last used in setup call
436
981
  - Improve `_getDataFlattened` to have simple cache breaker
@@ -439,14 +984,16 @@ On Archive.org, we needed a way to pass in a default start page for books. These
439
984
  - Move constants out of instance, and into class (eg BookReader.constMode1up)
440
985
 
441
986
  # 3.0.2
987
+
442
988
  In the process of upgrading IA, to use the new BookReader API, more changes/fixes were made.
443
989
 
444
990
  - Separate default options into BookReader.defaultOptions. This allows clients which use Internet Archive's JSIA endpoint (see demo-ia-plato.html) to have a hook into changing options. Also update plugins, to extend defaultOptions instead of modifying options in setup functions.
445
- - Add BookReader.version, which helps IA support older versions in the JSIA endpoint (eg https://archive.org/bookreader/BookReaderJSLocate.php?id=theworksofplato01platiala&subPrefix=theworksofplato01platiala).
991
+ - Add BookReader.version, which helps IA support older versions in the JSIA endpoint (eg <https://archive.org/bookreader/BookReaderJSLocate.php?id=theworksofplato01platiala&subPrefix=theworksofplato01platiala>).
446
992
  - Bring some IA-specific code into plugin.chapters.js
447
993
  - Add more options that were previously missed (protected, olHost, subPrefix, bookPath, zip, imageFormat, bookId). These are mostly for plugins. If you intend on using any of the plugins, you can see the full config options there.
448
994
 
449
995
  # 3.0.1
996
+
450
997
  - Fix issue setting info and share dialogs
451
998
 
452
999
  # 3.0.0 Major Release
@@ -457,12 +1004,12 @@ Changes include:
457
1004
 
458
1005
  - Make BookReader easier to use, by adding `options` to the constructor, and adding new `options.data` option. The old way of overriding properties should still work, but it is deprecated. With `options.data`, all BookReader needs is the image URLs and dimensions. To have dynamic image URLs (eg for scaling), omit the URL from `options.data`, and include `options.getPageURI`.
459
1006
  - Factor out extra features into plugins. See `plugins` directory. Example plugins include:
460
- - plugins.chapters.js - render chapter markers
461
- - plugins.search.js - add search ui, and callbacks
462
- - plugins.tts.js - add tts (read aloud) ui, sound library, and callbacks
463
- - plugins.url.js - automatically updates the browser url
464
- - plugins.resume.js - uses cookies to remember the current page
465
- - plugins.mobile_nav.js - adds responsive mobile nav to BookReader
1007
+ - plugins.chapters.js - render chapter markers
1008
+ - plugins.search.js - add search ui, and callbacks
1009
+ - plugins.tts.js - add tts (read aloud) ui, sound library, and callbacks
1010
+ - plugins.url.js - automatically updates the browser url
1011
+ - plugins.resume.js - uses cookies to remember the current page
1012
+ - plugins.mobile_nav.js - adds responsive mobile nav to BookReader
466
1013
  Note that there is minor overhead added when loading multiple script tags. If this is a concern, a build step, can be used to concatenate the files into a single JS file.
467
1014
  - Clean up code: Remove a lot of commented-out code. Remove some unused methods.
468
1015
  - Change some, but not all, CSS ids to classes.
@@ -471,17 +1018,21 @@ Note that there is minor overhead added when loading multiple script tags. If th
471
1018
  - BREAKING: If features that are now in plugins were used, the plugin's JS file will need to be included as well. Note, we would also like to separate the CSS into a separate file for the next major release.
472
1019
 
473
1020
  # 2.1.0
1021
+
474
1022
  - Add auto mode to 1up autosize (in addition to height and width)
475
1023
  - Remove the old responsiveAutofit (which is not needed anymore)
476
1024
 
477
1025
  # 2.0.2
1026
+
478
1027
  - Fix regex issue when searching
479
1028
  - Make the search api endpoint configurable
480
1029
 
481
1030
  # 2.0.1
1031
+
482
1032
  - Add package.json and CHANGELOG
483
1033
  - Remove more IA-specific code
484
1034
 
485
1035
  # 2.0.0
1036
+
486
1037
  - Major release
487
1038
  - Many changes from updated Archive.org bookreader brought back to this open source project.