@internetarchive/bookreader 5.0.0-8 → 5.0.0-81

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