@internetarchive/bookreader 5.0.0-8-multiple-files → 5.0.0-80

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