@internetarchive/bookreader 5.0.0-96 → 5.0.0-97

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (40) hide show
  1. package/BookReader/474.js +2 -0
  2. package/BookReader/474.js.map +1 -0
  3. package/BookReader/BookReader.css +32 -26
  4. package/BookReader/BookReader.js +1 -1
  5. package/BookReader/BookReader.js.map +1 -1
  6. package/BookReader/bergamot-translator-worker.js +2966 -0
  7. package/BookReader/bergamot-translator-worker.wasm +0 -0
  8. package/BookReader/ia-bookreader-bundle.js +1 -1
  9. package/BookReader/ia-bookreader-bundle.js.map +1 -1
  10. package/BookReader/images/icon_experiment.svg +1 -0
  11. package/BookReader/images/translate.svg +1 -0
  12. package/BookReader/plugins/plugin.experiments.js +1 -1
  13. package/BookReader/plugins/plugin.experiments.js.map +1 -1
  14. package/BookReader/plugins/plugin.text_selection.js +1 -1
  15. package/BookReader/plugins/plugin.text_selection.js.map +1 -1
  16. package/BookReader/plugins/plugin.translate.js +3 -0
  17. package/BookReader/plugins/plugin.translate.js.LICENSE.txt +1 -0
  18. package/BookReader/plugins/plugin.translate.js.map +1 -0
  19. package/BookReader/plugins/plugin.tts.js +1 -1
  20. package/BookReader/plugins/plugin.tts.js.map +1 -1
  21. package/BookReader/plugins/translator-worker.js +2 -0
  22. package/BookReader/plugins/translator-worker.js.map +1 -0
  23. package/BookReader/translator-worker.js +475 -0
  24. package/package.json +6 -3
  25. package/src/BookNavigator/book-navigator.js +1 -0
  26. package/src/BookReader/Mode1UpLit.js +6 -1
  27. package/src/BookReader/Mode2UpLit.js +11 -1
  28. package/src/BookReader/Navbar/Navbar.js +61 -0
  29. package/src/BookReader.js +22 -139
  30. package/src/assets/images/icon_experiment.svg +1 -0
  31. package/src/assets/images/translate.svg +1 -0
  32. package/src/css/_BRnav.scss +0 -24
  33. package/src/css/_BRsearch.scss +0 -5
  34. package/src/css/_TextSelection.scss +32 -1
  35. package/src/plugins/plugin.experiments.js +34 -9
  36. package/src/plugins/plugin.text_selection.js +8 -20
  37. package/src/plugins/translate/TranslationManager.js +167 -0
  38. package/src/plugins/translate/plugin.translate.js +414 -0
  39. package/src/plugins/tts/utils.js +9 -20
  40. package/src/util/cache.js +20 -0
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><g fill="#fff" fill-rule="evenodd"><path d="M20.531 91.304h59.514a2.174 2.174 0 0 0 1.881-3.262L56.14 43.476a2.17 2.17 0 0 0-1.881-1.085h-9.43c-.795 0-1.527.435-1.908 1.134L18.623 88.09a2.174 2.174 0 0 0 1.908 3.214"/><path fill-rule="nonzero" d="M58.234 0c3.986 0 7.075 2.926 7.075 6.522 0 1.948-1.175 3.497-3.133 4.787a2.72 2.72 0 0 0-1.22 2.266v17.266c0 1.404.362 2.783 1.052 4.006l29.939 52.995A8.14 8.14 0 0 1 93 91.848C93 96.35 89.345 100 84.836 100h-69.67a8.2 8.2 0 0 1-3.918-1 8.146 8.146 0 0 1-3.245-11.064l29.092-53.107a8.14 8.14 0 0 0 1.001-3.912V13.576c0-.852-.4-1.65-1.073-2.161l-.148-.105c-1.873-1.235-3.03-2.706-3.126-4.536l-.007-.252C33.742 2.925 36.827 0 40.817 0zm0 5.435H40.817q-.501 0-.963.292l-.153.105a.515.515 0 0 0-.104.72l.054.062.063.052.161.109a8.15 8.15 0 0 1 3.658 6.497l.006.303v17.342c0 2.279-.574 4.521-1.67 6.52L12.779 90.544a2.715 2.715 0 0 0 2.387 4.021h69.671a2.72 2.72 0 0 0 2.37-4.052L57.268 37.517a13.6 13.6 0 0 1-1.756-6.676V13.575a8.15 8.15 0 0 1 3.424-6.635l.241-.166a.646.646 0 0 0-.02-1.091 1.6 1.6 0 0 0-.733-.242z"/></g></svg>
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><g fill="#FFF"><path d="M73.377 40V29.018q0-1.8-1.334-3.089t-3.133-1.29h-7.702v6.54L47 20.558 61.208 10v6.6h7.825q5.337 0 9.151 3.69T82 29.14V40zM26.623 60v10.982q0 1.8 1.334 3.089t3.133 1.29h7.702v-6.54L53 79.442 38.792 90v-6.6h-7.825q-5.337 0-9.151-3.69T18 70.86V60z"/><g fill-rule="evenodd"><path d="M36.171 0q1.193 0 2.362.35 1.17.351 1.678.626L42 1.953V55H.884q-.397-.4-.619-1.076A5.4 5.4 0 0 1 0 52.749V0zM20.294 11l-3.94 1.417a32 32 0 0 1 2.387 3.296q.405.642.78 1.286L5 17v3h6.424q1.32 5.349 4.33 9.732a35 35 0 0 0 3.411 4.227q-5.26 4.549-13.133 6.641l1.95 3.4q8.76-2.815 13.907-7.472a33 33 0 0 0 2.27 1.76Q29.08 41.775 35.013 44L37 40.736q-5.7-2.106-10.215-5.13a31 31 0 0 1-2.35-1.74Q29.4 27.978 31.579 20h4.389v-3l-12.215-.001a37 37 0 0 0-1.124-2.222A43 43 0 0 0 20.294 11m7.447 9q-2.042 6.847-5.991 11.393a33 33 0 0 1-2.96-3.534Q16.185 24.275 15 20zM94.171 45q1.193 0 2.362.35 1.17.351 1.678.626l1.789.977V100H58.884q-.397-.4-.619-1.076A5.4 5.4 0 0 1 58 97.749V45zM82.994 56h-7.842L62 89h7.696l2.728-7.349H85.43L88.06 89H96zm-3.88 8.25 4.136 12.375h-8.5l4.273-12.375z"/></g></g></svg>
@@ -1,3 +1,3 @@
1
1
  /*! For license information please see plugin.experiments.js.LICENSE.txt */
2
- "use strict";(self.webpackChunk_internetarchive_bookreader=self.webpackChunk_internetarchive_bookreader||[]).push([[830],{3921:function(e,t,r){var n=r(6518),i=r(2652),o=r(4659);n({target:"Object",stat:!0},{fromEntries:function(e){var t={};return i(e,(function(e,r){o(t,e,r)}),{AS_ENTRIES:!0}),t}})},1041:function(e,t,r){function n(e){return n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},n(e)}function i(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,o(n.key),n)}}function o(e){var t=function(e,t){if("object"!=n(e)||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var i=r.call(e,"string");if("object"!=n(i))return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==n(t)?t:t+""}r.d(t,{S:function(){return a}}),r(2675),r(9463),r(2259),r(5700),r(3792),r(9572),r(8130),r(9085),r(6099),r(7764),r(2953);var a=function(){return e=function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.br=t,this.options},(t=[{key:"setup",value:function(e){this.options=Object.assign({},this.options,e)}},{key:"init",value:function(){}},{key:"_configurePageContainer",value:function(e){}},{key:"_configureToolbar",value:function(e){}},{key:"_bindNavigationHandlers",value:function(){}},{key:"extendNavBar",value:function(e){}}])&&i(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}()},6732:function(e,t,r){r(2675),r(9463),r(5700),r(6412),r(2259),r(8125),r(8706),r(4490),r(4782),r(4731),r(479),r(875),r(825),r(8781),r(7764),r(2953),r(113),r(3792),r(2062),r(3418),r(4554),r(739),r(9572),r(2010),r(8130),r(9085),r(2811),r(3921),r(3851),r(9432),r(6099),r(3362),r(888),r(7495),r(5440),r(3500);var n,i,o,a,c,s,l=r(420),u=r(1041),f=r(9696),p=r(8004);function d(e){return d="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},d(e)}function h(e,t,r,n){var i=y();if(n)for(var o=0;o<n.length;o++)i=n[o](i);var a=t((function(e){i.initializeInstanceElements(e,c.elements)}),r),c=i.decorateClass(function(e){for(var t=[],r=function(e){return"method"===e.kind&&e.key===o.key&&e.placement===o.placement},n=0;n<e.length;n++){var i,o=e[n];if("method"===o.kind&&(i=t.find(r)))if(g(o.descriptor)||g(i.descriptor)){if(b(o)||b(i))throw new ReferenceError("Duplicated methods ("+o.key+") can't be decorated.");i.descriptor=o.descriptor}else{if(b(o)){if(b(i))throw new ReferenceError("Decorators can't be placed on different accessors with for the same property ("+o.key+").");i.decorators=o.decorators}m(o,i)}else t.push(o)}return t}(a.d.map(v)),e);return i.initializeClassElements(a.F,c.elements),i.runClassFinishers(a.F,c.finishers)}function y(){y=function(){return e};var e={elementsDefinitionOrder:[["method"],["field"]],initializeInstanceElements:function(e,t){["method","field"].forEach((function(r){t.forEach((function(t){t.kind===r&&"own"===t.placement&&this.defineClassElement(e,t)}),this)}),this)},initializeClassElements:function(e,t){var r=e.prototype;["method","field"].forEach((function(n){t.forEach((function(t){var i=t.placement;if(t.kind===n&&("static"===i||"prototype"===i)){var o="static"===i?e:r;this.defineClassElement(o,t)}}),this)}),this)},defineClassElement:function(e,t){var r=t.descriptor;if("field"===t.kind){var n=t.initializer;r={enumerable:r.enumerable,writable:r.writable,configurable:r.configurable,value:void 0===n?void 0:n.call(e)}}Object.defineProperty(e,t.key,r)},decorateClass:function(e,t){var r=[],n=[],i={static:[],prototype:[],own:[]};if(e.forEach((function(e){this.addElementPlacement(e,i)}),this),e.forEach((function(e){if(!b(e))return r.push(e);var t=this.decorateElement(e,i);r.push(t.element),r.push.apply(r,t.extras),n.push.apply(n,t.finishers)}),this),!t)return{elements:r,finishers:n};var o=this.decorateConstructor(r,t);return n.push.apply(n,o.finishers),o.finishers=n,o},addElementPlacement:function(e,t,r){var n=t[e.placement];if(!r&&-1!==n.indexOf(e.key))throw new TypeError("Duplicated element ("+e.key+")");n.push(e.key)},decorateElement:function(e,t){for(var r=[],n=[],i=e.decorators,o=i.length-1;o>=0;o--){var a=t[e.placement];a.splice(a.indexOf(e.key),1);var c=this.fromElementDescriptor(e),s=this.toElementFinisherExtras((0,i[o])(c)||c);e=s.element,this.addElementPlacement(e,t),s.finisher&&n.push(s.finisher);var l=s.extras;if(l){for(var u=0;u<l.length;u++)this.addElementPlacement(l[u],t);r.push.apply(r,l)}}return{element:e,finishers:n,extras:r}},decorateConstructor:function(e,t){for(var r=[],n=t.length-1;n>=0;n--){var i=this.fromClassDescriptor(e),o=this.toClassDescriptor((0,t[n])(i)||i);if(void 0!==o.finisher&&r.push(o.finisher),void 0!==o.elements){e=o.elements;for(var a=0;a<e.length-1;a++)for(var c=a+1;c<e.length;c++)if(e[a].key===e[c].key&&e[a].placement===e[c].placement)throw new TypeError("Duplicated element ("+e[a].key+")")}}return{elements:e,finishers:r}},fromElementDescriptor:function(e){var t={kind:e.kind,key:e.key,placement:e.placement,descriptor:e.descriptor};return Object.defineProperty(t,Symbol.toStringTag,{value:"Descriptor",configurable:!0}),"field"===e.kind&&(t.initializer=e.initializer),t},toElementDescriptors:function(e){if(void 0!==e)return(t=e,function(e){if(Array.isArray(e))return e}(t)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(t)||S(t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()).map((function(e){var t=this.toElementDescriptor(e);return this.disallowProperty(e,"finisher","An element descriptor"),this.disallowProperty(e,"extras","An element descriptor"),t}),this);var t},toElementDescriptor:function(e){var t=e.kind+"";if("method"!==t&&"field"!==t)throw new TypeError('An element descriptor\'s .kind property must be either "method" or "field", but a decorator created an element descriptor with .kind "'+t+'"');var r=I(e.key),n=e.placement+"";if("static"!==n&&"prototype"!==n&&"own"!==n)throw new TypeError('An element descriptor\'s .placement property must be one of "static", "prototype" or "own", but a decorator created an element descriptor with .placement "'+n+'"');var i=e.descriptor;this.disallowProperty(e,"elements","An element descriptor");var o={kind:t,key:r,placement:n,descriptor:Object.assign({},i)};return"field"!==t?this.disallowProperty(e,"initializer","A method descriptor"):(this.disallowProperty(i,"get","The property descriptor of a field descriptor"),this.disallowProperty(i,"set","The property descriptor of a field descriptor"),this.disallowProperty(i,"value","The property descriptor of a field descriptor"),o.initializer=e.initializer),o},toElementFinisherExtras:function(e){return{element:this.toElementDescriptor(e),finisher:w(e,"finisher"),extras:this.toElementDescriptors(e.extras)}},fromClassDescriptor:function(e){var t={kind:"class",elements:e.map(this.fromElementDescriptor,this)};return Object.defineProperty(t,Symbol.toStringTag,{value:"Descriptor",configurable:!0}),t},toClassDescriptor:function(e){var t=e.kind+"";if("class"!==t)throw new TypeError('A class descriptor\'s .kind property must be "class", but a decorator created a class descriptor with .kind "'+t+'"');this.disallowProperty(e,"key","A class descriptor"),this.disallowProperty(e,"placement","A class descriptor"),this.disallowProperty(e,"descriptor","A class descriptor"),this.disallowProperty(e,"initializer","A class descriptor"),this.disallowProperty(e,"extras","A class descriptor");var r=w(e,"finisher");return{elements:this.toElementDescriptors(e.elements),finisher:r}},runClassFinishers:function(e,t){for(var r=0;r<t.length;r++){var n=(0,t[r])(e);if(void 0!==n){if("function"!=typeof n)throw new TypeError("Finishers must return a constructor.");e=n}}return e},disallowProperty:function(e,t,r){if(void 0!==e[t])throw new TypeError(r+" can't have a ."+t+" property.")}};return e}function v(e){var t,r=I(e.key);"method"===e.kind?t={value:e.value,writable:!0,configurable:!0,enumerable:!1}:"get"===e.kind?t={get:e.value,configurable:!0,enumerable:!1}:"set"===e.kind?t={set:e.value,configurable:!0,enumerable:!1}:"field"===e.kind&&(t={configurable:!0,writable:!0,enumerable:!0});var n={kind:"field"===e.kind?"field":"method",key:r,placement:e.static?"static":"field"===e.kind?"own":"prototype",descriptor:t};return e.decorators&&(n.decorators=e.decorators),"field"===e.kind&&(n.initializer=e.value),n}function m(e,t){void 0!==e.descriptor.get?t.descriptor.get=e.descriptor.get:t.descriptor.set=e.descriptor.set}function b(e){return e.decorators&&e.decorators.length}function g(e){return void 0!==e&&!(void 0===e.value&&void 0===e.writable)}function w(e,t){var r=e[t];if(void 0!==r&&"function"!=typeof r)throw new TypeError("Expected '"+t+"' to be a function");return r}function k(e,t,r,n){var i=E(L(1&n?e.prototype:e),t,r);return 2&n&&"function"==typeof i?function(e){return i.apply(r,e)}:i}function E(){return E="undefined"!=typeof Reflect&&Reflect.get?Reflect.get.bind():function(e,t,r){var n=function(e,t){for(;!{}.hasOwnProperty.call(e,t)&&null!==(e=L(e)););return e}(e,t);if(n){var i=Object.getOwnPropertyDescriptor(n,t);return i.get?i.get.call(arguments.length<3?e:r):i.value}},E.apply(null,arguments)}function x(e,t){return t||(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}}))}function P(e,t){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=S(e))||t&&e&&"number"==typeof e.length){r&&(e=r);var n=0,i=function(){};return{s:i,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:i}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,a=!0,c=!1;return{s:function(){r=r.call(e)},n:function(){var e=r.next();return a=e.done,e},e:function(e){c=!0,o=e},f:function(){try{a||null==r.return||r.return()}finally{if(c)throw o}}}}function S(e,t){if(e){if("string"==typeof e)return O(e,t);var r={}.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?O(e,t):void 0}}function O(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}function _(e,t,r){return t=L(t),function(e,t){if(t&&("object"==d(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,j()?Reflect.construct(t,r||[],L(e).constructor):t.apply(e,r))}function j(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(j=function(){return!!e})()}function L(e){return L=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},L(e)}function A(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&C(e,t)}function C(e,t){return C=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},C(e,t)}function T(){T=function(){return t};var e,t={},r=Object.prototype,n=r.hasOwnProperty,i=Object.defineProperty||function(e,t,r){e[t]=r.value},o="function"==typeof Symbol?Symbol:{},a=o.iterator||"@@iterator",c=o.asyncIterator||"@@asyncIterator",s=o.toStringTag||"@@toStringTag";function l(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{l({},"")}catch(e){l=function(e,t,r){return e[t]=r}}function u(e,t,r,n){var o=t&&t.prototype instanceof b?t:b,a=Object.create(o.prototype),c=new C(n||[]);return i(a,"_invoke",{value:_(e,r,c)}),a}function f(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}t.wrap=u;var p="suspendedStart",h="suspendedYield",y="executing",v="completed",m={};function b(){}function g(){}function w(){}var k={};l(k,a,(function(){return this}));var E=Object.getPrototypeOf,x=E&&E(E(D([])));x&&x!==r&&n.call(x,a)&&(k=x);var P=w.prototype=b.prototype=Object.create(k);function S(e){["next","throw","return"].forEach((function(t){l(e,t,(function(e){return this._invoke(t,e)}))}))}function O(e,t){function r(i,o,a,c){var s=f(e[i],e,o);if("throw"!==s.type){var l=s.arg,u=l.value;return u&&"object"==d(u)&&n.call(u,"__await")?t.resolve(u.__await).then((function(e){r("next",e,a,c)}),(function(e){r("throw",e,a,c)})):t.resolve(u).then((function(e){l.value=e,a(l)}),(function(e){return r("throw",e,a,c)}))}c(s.arg)}var o;i(this,"_invoke",{value:function(e,n){function i(){return new t((function(t,i){r(e,n,t,i)}))}return o=o?o.then(i,i):i()}})}function _(t,r,n){var i=p;return function(o,a){if(i===y)throw Error("Generator is already running");if(i===v){if("throw"===o)throw a;return{value:e,done:!0}}for(n.method=o,n.arg=a;;){var c=n.delegate;if(c){var s=j(c,n);if(s){if(s===m)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(i===p)throw i=v,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);i=y;var l=f(t,r,n);if("normal"===l.type){if(i=n.done?v:h,l.arg===m)continue;return{value:l.arg,done:n.done}}"throw"===l.type&&(i=v,n.method="throw",n.arg=l.arg)}}}function j(t,r){var n=r.method,i=t.iterator[n];if(i===e)return r.delegate=null,"throw"===n&&t.iterator.return&&(r.method="return",r.arg=e,j(t,r),"throw"===r.method)||"return"!==n&&(r.method="throw",r.arg=new TypeError("The iterator does not provide a '"+n+"' method")),m;var o=f(i,t.iterator,r.arg);if("throw"===o.type)return r.method="throw",r.arg=o.arg,r.delegate=null,m;var a=o.arg;return a?a.done?(r[t.resultName]=a.value,r.next=t.nextLoc,"return"!==r.method&&(r.method="next",r.arg=e),r.delegate=null,m):a:(r.method="throw",r.arg=new TypeError("iterator result is not an object"),r.delegate=null,m)}function L(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function A(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function C(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(L,this),this.reset(!0)}function D(t){if(t||""===t){var r=t[a];if(r)return r.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var i=-1,o=function r(){for(;++i<t.length;)if(n.call(t,i))return r.value=t[i],r.done=!1,r;return r.value=e,r.done=!0,r};return o.next=o}}throw new TypeError(d(t)+" is not iterable")}return g.prototype=w,i(P,"constructor",{value:w,configurable:!0}),i(w,"constructor",{value:g,configurable:!0}),g.displayName=l(w,s,"GeneratorFunction"),t.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===g||"GeneratorFunction"===(t.displayName||t.name))},t.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,w):(e.__proto__=w,l(e,s,"GeneratorFunction")),e.prototype=Object.create(P),e},t.awrap=function(e){return{__await:e}},S(O.prototype),l(O.prototype,c,(function(){return this})),t.AsyncIterator=O,t.async=function(e,r,n,i,o){void 0===o&&(o=Promise);var a=new O(u(e,r,n,i),o);return t.isGeneratorFunction(r)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},S(P),l(P,s,"Generator"),l(P,a,(function(){return this})),l(P,"toString",(function(){return"[object Generator]"})),t.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},t.values=D,C.prototype={constructor:C,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=e,this.done=!1,this.delegate=null,this.method="next",this.arg=e,this.tryEntries.forEach(A),!t)for(var r in this)"t"===r.charAt(0)&&n.call(this,r)&&!isNaN(+r.slice(1))&&(this[r]=e)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var r=this;function i(n,i){return c.type="throw",c.arg=t,r.next=n,i&&(r.method="next",r.arg=e),!!i}for(var o=this.tryEntries.length-1;o>=0;--o){var a=this.tryEntries[o],c=a.completion;if("root"===a.tryLoc)return i("end");if(a.tryLoc<=this.prev){var s=n.call(a,"catchLoc"),l=n.call(a,"finallyLoc");if(s&&l){if(this.prev<a.catchLoc)return i(a.catchLoc,!0);if(this.prev<a.finallyLoc)return i(a.finallyLoc)}else if(s){if(this.prev<a.catchLoc)return i(a.catchLoc,!0)}else{if(!l)throw Error("try statement without catch or finally");if(this.prev<a.finallyLoc)return i(a.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r>=0;--r){var i=this.tryEntries[r];if(i.tryLoc<=this.prev&&n.call(i,"finallyLoc")&&this.prev<i.finallyLoc){var o=i;break}}o&&("break"===e||"continue"===e)&&o.tryLoc<=t&&t<=o.finallyLoc&&(o=null);var a=o?o.completion:{};return a.type=e,a.arg=t,o?(this.method="next",this.next=o.finallyLoc,m):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),m},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),A(r),m}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var i=n.arg;A(r)}return i}}throw Error("illegal catch attempt")},delegateYield:function(t,r,n){return this.delegate={iterator:D(t),resultName:r,nextLoc:n},"next"===this.method&&(this.arg=e),m}},t}function D(e,t,r,n,i,o,a){try{var c=e[o](a),s=c.value}catch(e){return void r(e)}c.done?t(s):Promise.resolve(s).then(n,i)}function M(e){return function(){var t=this,r=arguments;return new Promise((function(n,i){var o=e.apply(t,r);function a(e){D(o,n,i,a,c,"next",e)}function c(e){D(o,n,i,a,c,"throw",e)}a(void 0)}))}}function F(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function R(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,I(n.key),n)}}function z(e,t,r){return t&&R(e.prototype,t),r&&R(e,r),Object.defineProperty(e,"prototype",{writable:!1}),e}function N(e,t,r){return(t=I(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function I(e){var t=function(e,t){if("object"!=d(e)||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!=d(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==d(t)?t:t+""}var B=window.BookReader,q=function(){return z((function e(){F(this,e),N(this,"name",void 0),N(this,"title",void 0),N(this,"description",void 0),N(this,"icon",void 0),N(this,"enabled",void 0),N(this,"learnMore",void 0),N(this,"assetRoot","/BookReader/"),N(this,"enabledLoading",!1)}),[{key:"buildAssetPath",value:function(e){return"".concat(this.assetRoot).concat(e)}},{key:"enable",value:(t=M(T().mark((function e(t){return T().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:t.manual;case 1:case"end":return e.stop()}}),e)}))),function(e){return t.apply(this,arguments)})},{key:"disable",value:(e=M(T().mark((function e(){return T().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:case"end":return e.stop()}}),e)}))),function(){return e.apply(this,arguments)})}]);var e,t}(),G=function(e){function t(){var e;F(this,t);for(var r=arguments.length,n=new Array(r),i=0;i<r;i++)n[i]=arguments[i];return N(e=_(this,t,[].concat(n)),"options",{enabled:!0,localStorageKey:"BrExperiments"}),N(e,"experiments",[new(function(e){function t(){var e;F(this,t);for(var r=arguments.length,n=new Array(r),i=0;i<r;i++)n[i]=arguments[i];return N(e=_(this,t,[].concat(n)),"name","hypothesis"),N(e,"title","Hypothes.is"),N(e,"description","Create public, collaborative, or fully private annotations on books and the web."),N(e,"learnMore","https://web.hypothes.is/about/"),N(e,"icon","images/hypothesis.ico"),N(e,"enabled",!1),e}return A(t,e),z(t,[{key:"enable",value:(n=M(T().mark((function e(t){var r,n,i;return T().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=t.manual,n=void 0!==r&&r,(i=document.createElement("script")).type="application/json",i.className="js-hypothesis-config",i.textContent=JSON.stringify({openSidebar:n,assetRoot:this.buildAssetPath("hypothesis/")}),document.head.appendChild(i),e.abrupt("return",H(this.buildAssetPath("hypothesis/build/boot.js")));case 7:case"end":return e.stop()}}),e,this)}))),function(e){return n.apply(this,arguments)})},{key:"disable",value:(r=M(T().mark((function e(){return T().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:(0,p.sleep)(0).then((function(){window.location.reload()}));case 1:case"end":return e.stop()}}),e)}))),function(){return r.apply(this,arguments)})}]);var r,n}(q))]),N(e,"_panel",void 0),e}return A(t,e),z(t,[{key:"init",value:(o=M(T().mark((function e(){var t,r,n;return T().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this.options.enabled){e.next=2;break}return e.abrupt("return");case 2:t=P(this.experiments);try{for(t.s();!(r=t.n()).done;)(n=r.value).assetRoot=this.br.options.imagesBaseURL.replace(/images\/$/,""),n.icon=n.buildAssetPath(n.icon)}catch(e){t.e(e)}finally{t.f()}return this._loadExperimentStates(),e.next=7,Promise.resolve();case 7:this._render();case 8:case"end":return e.stop()}}),e,this)}))),function(){return o.apply(this,arguments)})},{key:"_loadExperimentStates",value:function(){var e=JSON.parse(localStorage.getItem(this.options.localStorageKey)||"{}");this.experiments.forEach((function(t){void 0!==e[t.name]&&(t.enabled=e[t.name],t.enabled&&t.enable({manual:!1}))}))}},{key:"_saveExperimentStates",value:function(){var e=Object.fromEntries(this.experiments.map((function(e){return[e.name,e.enabled]})));localStorage.setItem(this.options.localStorageKey,JSON.stringify(e))}},{key:"_toggleExperiment",value:(r=M(T().mark((function e(t,r){var n;return T().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t.enabledLoading=!0,null===(n=this.br.plugins.archiveAnalytics)||void 0===n||n.sendEvent("BRExperiment-".concat(t.name),r?"Enable":"Disable"),this._panel.requestUpdate(),!r){e.next=8;break}return e.next=6,t.enable({manual:!0});case 6:e.next=10;break;case 8:return e.next=10,t.disable();case 10:t.enabledLoading=!1,t.enabled=r,this._panel.requestUpdate();case 13:case"end":return e.stop()}}),e,this)}))),function(e,t){return r.apply(this,arguments)})},{key:"_render",value:function(){var e=this;this.br.shell.menuProviders.experiments={id:"experiments",icon:(0,l.qy)(n||(n=x(['\n <svg xmlns="http://www.w3.org/2000/svg" width="34" viewBox="0 0 24 24"><path fill="currentColor" d="M10 5.75h1.25v2.5H9.5c-.41 0-.75.34-.75.75s.34.75.75.75h.25v1.96A5.72 5.72 0 0 0 6.25 17c0 3.17 2.58 5.75 5.75 5.75s5.75-2.58 5.75-5.75c0-2.33-1.39-4.4-3.5-5.29V9.75h.25c.41 0 .75-.34.75-.75s-.34-.75-.75-.75h-1.75v-1.5H14c1.52 0 2.75-1.23 2.75-2.75V3c0-.41-.34-.75-.75-.75h-2c-.579 0-1.115.178-1.558.483A2.75 2.75 0 0 0 10 1.25H8c-.41 0-.75.34-.75.75v1c0 1.52 1.23 2.75 2.75 2.75m2.75-.5V5c0-.69.56-1.25 1.25-1.25h1.25V4c0 .69-.56 1.25-1.25 1.25zm-1.5 6.98V9.75h1.5v2.48c0 .33.22.62.53.72c1.77.56 2.97 2.19 2.97 4.06A4.26 4.26 0 0 1 12 21.26a4.26 4.26 0 0 1-4.25-4.25c0-1.87 1.19-3.5 2.97-4.06c.32-.1.53-.39.53-.72m-2.5-9.48H10c.69 0 1.25.56 1.25 1.25v.25H10c-.69 0-1.25-.56-1.25-1.25z" color="currentColor"/></svg>\n ']))),label:"Experiments",component:(0,l.qy)(i||(i=x(['<br-experiments-panel\n .experiments="','"\n @connected="','"\n @toggle="','"\n />'])),this.experiments,(function(t){return e._panel=t.target}),function(){var t=M(T().mark((function t(r){return T().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,e._toggleExperiment(r.detail.experiment,r.detail.enabled);case 2:e._saveExperimentStates();case 3:case"end":return t.stop()}}),t)})));return function(e){return t.apply(this,arguments)}}())},this.br.shell.updateMenuContents()}}]);var r,o}(u.S);function H(e){return Z.apply(this,arguments)}function Z(){return(Z=M(T().mark((function e(t){return T().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",new Promise((function(e,r){var n=document.createElement("script");n.src=t,n.onload=function(){return e()},n.onerror=function(){return r(new Error("Failed to load script: ".concat(t)))},document.head.appendChild(n)})));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}null==B||B.registerPlugin("experiments",G),h([(0,f.EM)("br-experiments-panel")],(function(e,t){var r,n=function(t){function r(){var t;F(this,r);for(var n=arguments.length,i=new Array(n),o=0;o<n;o++)i[o]=arguments[o];return t=_(this,r,[].concat(i)),e(t),t}return A(r,t),z(r)}(t);return{F:n,d:[{kind:"field",decorators:[(0,f.MZ)({type:Array})],key:"experiments",value:function(){return[]}},{kind:"method",key:"render",value:function(){var e=this;return(0,l.qy)(o||(o=x(['\n <div style="padding: 10px">\n ',"\n </div>\n "])),this.experiments.map((function(t){return(0,l.qy)(a||(a=x(['\n <br-experiment-toggle\n .icon="','"\n .title="','"\n .description="','"\n .enabled="','"\n .loading="','"\n .learnMore="','"\n @toggle="','"\n ></br-experiment-toggle>\n '])),t.icon,t.title,t.description,t.enabled,t.enabledLoading,t.learnMore,(function(r){return e._dispatchToggle(t,r.detail.enabled)}))})))}},{kind:"method",key:"_dispatchToggle",value:(r=M(T().mark((function e(t,r){return T().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:this.dispatchEvent(new CustomEvent("toggle",{detail:{experiment:t,enabled:r}}));case 1:case"end":return e.stop()}}),e,this)}))),function(e,t){return r.apply(this,arguments)})},{kind:"method",key:"connectedCallback",value:function(){k(n,"connectedCallback",this,3)([]),this.dispatchEvent(new CustomEvent("connected"))}}]}}),l.WF),h([(0,f.EM)("br-experiment-toggle")],(function(e,t){var r=function(t){function r(){var t;F(this,r);for(var n=arguments.length,i=new Array(n),o=0;o<n;o++)i[o]=arguments[o];return t=_(this,r,[].concat(i)),e(t),t}return A(r,t),z(r)}(t);return{F:r,d:[{kind:"field",decorators:[(0,f.MZ)({type:String})],key:"icon",value:function(){return""}},{kind:"field",decorators:[(0,f.MZ)({type:String})],key:"title",value:function(){return""}},{kind:"field",decorators:[(0,f.MZ)({type:String})],key:"description",value:function(){return""}},{kind:"field",decorators:[(0,f.MZ)({type:Boolean})],key:"enabled",value:function(){return!1}},{kind:"field",decorators:[(0,f.MZ)({type:Boolean})],key:"loading",value:function(){return!1}},{kind:"field",decorators:[(0,f.MZ)({type:String})],key:"learnMore",value:function(){return""}},{kind:"field",decorators:[(0,f.wk)()],key:"_longLoading",value:function(){return!1}},{kind:"method",key:"update",value:function(e){var t=this;k(r,"update",this,3)([e]),e.has("loading")&&(this.loading?(0,p.sleep)(500).then((function(){t.loading&&(t._longLoading=!0,t.requestUpdate())})):this._longLoading=!1)}},{kind:"method",key:"render",value:function(){return(0,l.qy)(c||(c=x(['\n <div class="experiment-card">\n <div style="display: flex; align-items: center; gap: 10px;">\n <img src="','" style="width: 20px; height: 20px;" alt="" />\n <div style="flex-grow: 1; font-weight: bold;">','</div>\n </div>\n <p style="opacity: 0.9">\n ','\n <a href="','" target="_blank">Learn more</a>.\n </p>\n <div style="display: flex">\n <div style="flex-grow: 1;"></div>\n <button @click="','" .disabled="','">\n ',"\n </button>\n </div>\n </div>\n "])),this.icon,this.title,this.description,this.learnMore,this._dispatchToggle,this.loading,this._longLoading?"Loading…":this.enabled?"Disable":"Enable")}},{kind:"get",static:!0,key:"styles",value:function(){return(0,l.AH)(s||(s=x(["\n .experiment-card {\n border-radius: 8px;\n background-color: #fff2;\n padding: 10px;\n display: flex;\n flex-direction: column;\n }\n\n .experiment-card p {\n margin: 6px 0;\n }\n "])))}},{kind:"method",key:"_dispatchToggle",value:function(){this.dispatchEvent(new CustomEvent("toggle",{detail:{enabled:!this.enabled}}))}}]}}),l.WF)}},function(e){e(e.s=6732)}]);
2
+ "use strict";(self.webpackChunk_internetarchive_bookreader=self.webpackChunk_internetarchive_bookreader||[]).push([[830],{3921:function(e,t,r){var n=r(6518),i=r(2652),o=r(4659);n({target:"Object",stat:!0},{fromEntries:function(e){var t={};return i(e,(function(e,r){o(t,e,r)}),{AS_ENTRIES:!0}),t}})},1041:function(e,t,r){function n(e){return n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},n(e)}function i(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,o(n.key),n)}}function o(e){var t=function(e,t){if("object"!=n(e)||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var i=r.call(e,"string");if("object"!=n(i))return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==n(t)?t:t+""}r.d(t,{S:function(){return a}}),r(2675),r(9463),r(2259),r(5700),r(3792),r(9572),r(8130),r(9085),r(6099),r(7764),r(2953);var a=function(){return e=function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.br=t,this.options},(t=[{key:"setup",value:function(e){this.options=Object.assign({},this.options,e)}},{key:"init",value:function(){}},{key:"_configurePageContainer",value:function(e){}},{key:"_configureToolbar",value:function(e){}},{key:"_bindNavigationHandlers",value:function(){}},{key:"extendNavBar",value:function(e){}}])&&i(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e;var e,t}()},6732:function(e,t,r){r(2675),r(9463),r(5700),r(6412),r(2259),r(8125),r(8706),r(4490),r(4782),r(4731),r(479),r(875),r(825),r(8781),r(7764),r(2953),r(2008),r(113),r(4423),r(3792),r(2062),r(3418),r(4554),r(739),r(9572),r(2010),r(8130),r(9085),r(2811),r(3921),r(3851),r(9432),r(6099),r(3362),r(888),r(7495),r(1699),r(5440),r(3500);var n,i,o,a,s,c,l,u=r(420),f=r(1041),p=r(9696),d=r(8004);function h(e){return h="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},h(e)}function y(e,t,r,n){var i=v();if(n)for(var o=0;o<n.length;o++)i=n[o](i);var a=t((function(e){i.initializeInstanceElements(e,s.elements)}),r),s=i.decorateClass(function(e){for(var t=[],r=function(e){return"method"===e.kind&&e.key===o.key&&e.placement===o.placement},n=0;n<e.length;n++){var i,o=e[n];if("method"===o.kind&&(i=t.find(r)))if(w(o.descriptor)||w(i.descriptor)){if(g(o)||g(i))throw new ReferenceError("Duplicated methods ("+o.key+") can't be decorated.");i.descriptor=o.descriptor}else{if(g(o)){if(g(i))throw new ReferenceError("Decorators can't be placed on different accessors with for the same property ("+o.key+").");i.decorators=o.decorators}b(o,i)}else t.push(o)}return t}(a.d.map(m)),e);return i.initializeClassElements(a.F,s.elements),i.runClassFinishers(a.F,s.finishers)}function v(){v=function(){return e};var e={elementsDefinitionOrder:[["method"],["field"]],initializeInstanceElements:function(e,t){["method","field"].forEach((function(r){t.forEach((function(t){t.kind===r&&"own"===t.placement&&this.defineClassElement(e,t)}),this)}),this)},initializeClassElements:function(e,t){var r=e.prototype;["method","field"].forEach((function(n){t.forEach((function(t){var i=t.placement;if(t.kind===n&&("static"===i||"prototype"===i)){var o="static"===i?e:r;this.defineClassElement(o,t)}}),this)}),this)},defineClassElement:function(e,t){var r=t.descriptor;if("field"===t.kind){var n=t.initializer;r={enumerable:r.enumerable,writable:r.writable,configurable:r.configurable,value:void 0===n?void 0:n.call(e)}}Object.defineProperty(e,t.key,r)},decorateClass:function(e,t){var r=[],n=[],i={static:[],prototype:[],own:[]};if(e.forEach((function(e){this.addElementPlacement(e,i)}),this),e.forEach((function(e){if(!g(e))return r.push(e);var t=this.decorateElement(e,i);r.push(t.element),r.push.apply(r,t.extras),n.push.apply(n,t.finishers)}),this),!t)return{elements:r,finishers:n};var o=this.decorateConstructor(r,t);return n.push.apply(n,o.finishers),o.finishers=n,o},addElementPlacement:function(e,t,r){var n=t[e.placement];if(!r&&-1!==n.indexOf(e.key))throw new TypeError("Duplicated element ("+e.key+")");n.push(e.key)},decorateElement:function(e,t){for(var r=[],n=[],i=e.decorators,o=i.length-1;o>=0;o--){var a=t[e.placement];a.splice(a.indexOf(e.key),1);var s=this.fromElementDescriptor(e),c=this.toElementFinisherExtras((0,i[o])(s)||s);e=c.element,this.addElementPlacement(e,t),c.finisher&&n.push(c.finisher);var l=c.extras;if(l){for(var u=0;u<l.length;u++)this.addElementPlacement(l[u],t);r.push.apply(r,l)}}return{element:e,finishers:n,extras:r}},decorateConstructor:function(e,t){for(var r=[],n=t.length-1;n>=0;n--){var i=this.fromClassDescriptor(e),o=this.toClassDescriptor((0,t[n])(i)||i);if(void 0!==o.finisher&&r.push(o.finisher),void 0!==o.elements){e=o.elements;for(var a=0;a<e.length-1;a++)for(var s=a+1;s<e.length;s++)if(e[a].key===e[s].key&&e[a].placement===e[s].placement)throw new TypeError("Duplicated element ("+e[a].key+")")}}return{elements:e,finishers:r}},fromElementDescriptor:function(e){var t={kind:e.kind,key:e.key,placement:e.placement,descriptor:e.descriptor};return Object.defineProperty(t,Symbol.toStringTag,{value:"Descriptor",configurable:!0}),"field"===e.kind&&(t.initializer=e.initializer),t},toElementDescriptors:function(e){if(void 0!==e)return(t=e,function(e){if(Array.isArray(e))return e}(t)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(t)||_(t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()).map((function(e){var t=this.toElementDescriptor(e);return this.disallowProperty(e,"finisher","An element descriptor"),this.disallowProperty(e,"extras","An element descriptor"),t}),this);var t},toElementDescriptor:function(e){var t=e.kind+"";if("method"!==t&&"field"!==t)throw new TypeError('An element descriptor\'s .kind property must be either "method" or "field", but a decorator created an element descriptor with .kind "'+t+'"');var r=B(e.key),n=e.placement+"";if("static"!==n&&"prototype"!==n&&"own"!==n)throw new TypeError('An element descriptor\'s .placement property must be one of "static", "prototype" or "own", but a decorator created an element descriptor with .placement "'+n+'"');var i=e.descriptor;this.disallowProperty(e,"elements","An element descriptor");var o={kind:t,key:r,placement:n,descriptor:Object.assign({},i)};return"field"!==t?this.disallowProperty(e,"initializer","A method descriptor"):(this.disallowProperty(i,"get","The property descriptor of a field descriptor"),this.disallowProperty(i,"set","The property descriptor of a field descriptor"),this.disallowProperty(i,"value","The property descriptor of a field descriptor"),o.initializer=e.initializer),o},toElementFinisherExtras:function(e){return{element:this.toElementDescriptor(e),finisher:k(e,"finisher"),extras:this.toElementDescriptors(e.extras)}},fromClassDescriptor:function(e){var t={kind:"class",elements:e.map(this.fromElementDescriptor,this)};return Object.defineProperty(t,Symbol.toStringTag,{value:"Descriptor",configurable:!0}),t},toClassDescriptor:function(e){var t=e.kind+"";if("class"!==t)throw new TypeError('A class descriptor\'s .kind property must be "class", but a decorator created a class descriptor with .kind "'+t+'"');this.disallowProperty(e,"key","A class descriptor"),this.disallowProperty(e,"placement","A class descriptor"),this.disallowProperty(e,"descriptor","A class descriptor"),this.disallowProperty(e,"initializer","A class descriptor"),this.disallowProperty(e,"extras","A class descriptor");var r=k(e,"finisher");return{elements:this.toElementDescriptors(e.elements),finisher:r}},runClassFinishers:function(e,t){for(var r=0;r<t.length;r++){var n=(0,t[r])(e);if(void 0!==n){if("function"!=typeof n)throw new TypeError("Finishers must return a constructor.");e=n}}return e},disallowProperty:function(e,t,r){if(void 0!==e[t])throw new TypeError(r+" can't have a ."+t+" property.")}};return e}function m(e){var t,r=B(e.key);"method"===e.kind?t={value:e.value,writable:!0,configurable:!0,enumerable:!1}:"get"===e.kind?t={get:e.value,configurable:!0,enumerable:!1}:"set"===e.kind?t={set:e.value,configurable:!0,enumerable:!1}:"field"===e.kind&&(t={configurable:!0,writable:!0,enumerable:!0});var n={kind:"field"===e.kind?"field":"method",key:r,placement:e.static?"static":"field"===e.kind?"own":"prototype",descriptor:t};return e.decorators&&(n.decorators=e.decorators),"field"===e.kind&&(n.initializer=e.value),n}function b(e,t){void 0!==e.descriptor.get?t.descriptor.get=e.descriptor.get:t.descriptor.set=e.descriptor.set}function g(e){return e.decorators&&e.decorators.length}function w(e){return void 0!==e&&!(void 0===e.value&&void 0===e.writable)}function k(e,t){var r=e[t];if(void 0!==r&&"function"!=typeof r)throw new TypeError("Expected '"+t+"' to be a function");return r}function E(e,t,r,n){var i=x(A(1&n?e.prototype:e),t,r);return 2&n&&"function"==typeof i?function(e){return i.apply(r,e)}:i}function x(){return x="undefined"!=typeof Reflect&&Reflect.get?Reflect.get.bind():function(e,t,r){var n=function(e,t){for(;!{}.hasOwnProperty.call(e,t)&&null!==(e=A(e)););return e}(e,t);if(n){var i=Object.getOwnPropertyDescriptor(n,t);return i.get?i.get.call(arguments.length<3?e:r):i.value}},x.apply(null,arguments)}function P(e,t){return t||(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}}))}function S(e,t){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=_(e))||t&&e&&"number"==typeof e.length){r&&(e=r);var n=0,i=function(){};return{s:i,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:i}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,a=!0,s=!1;return{s:function(){r=r.call(e)},n:function(){var e=r.next();return a=e.done,e},e:function(e){s=!0,o=e},f:function(){try{a||null==r.return||r.return()}finally{if(s)throw o}}}}function _(e,t){if(e){if("string"==typeof e)return O(e,t);var r={}.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?O(e,t):void 0}}function O(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}function j(e,t,r){return t=A(t),function(e,t){if(t&&("object"==h(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,L()?Reflect.construct(t,r||[],A(e).constructor):t.apply(e,r))}function L(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(L=function(){return!!e})()}function A(e){return A=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},A(e)}function T(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&C(e,t)}function C(e,t){return C=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},C(e,t)}function D(){D=function(){return t};var e,t={},r=Object.prototype,n=r.hasOwnProperty,i=Object.defineProperty||function(e,t,r){e[t]=r.value},o="function"==typeof Symbol?Symbol:{},a=o.iterator||"@@iterator",s=o.asyncIterator||"@@asyncIterator",c=o.toStringTag||"@@toStringTag";function l(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{l({},"")}catch(e){l=function(e,t,r){return e[t]=r}}function u(e,t,r,n){var o=t&&t.prototype instanceof b?t:b,a=Object.create(o.prototype),s=new T(n||[]);return i(a,"_invoke",{value:O(e,r,s)}),a}function f(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}t.wrap=u;var p="suspendedStart",d="suspendedYield",y="executing",v="completed",m={};function b(){}function g(){}function w(){}var k={};l(k,a,(function(){return this}));var E=Object.getPrototypeOf,x=E&&E(E(C([])));x&&x!==r&&n.call(x,a)&&(k=x);var P=w.prototype=b.prototype=Object.create(k);function S(e){["next","throw","return"].forEach((function(t){l(e,t,(function(e){return this._invoke(t,e)}))}))}function _(e,t){function r(i,o,a,s){var c=f(e[i],e,o);if("throw"!==c.type){var l=c.arg,u=l.value;return u&&"object"==h(u)&&n.call(u,"__await")?t.resolve(u.__await).then((function(e){r("next",e,a,s)}),(function(e){r("throw",e,a,s)})):t.resolve(u).then((function(e){l.value=e,a(l)}),(function(e){return r("throw",e,a,s)}))}s(c.arg)}var o;i(this,"_invoke",{value:function(e,n){function i(){return new t((function(t,i){r(e,n,t,i)}))}return o=o?o.then(i,i):i()}})}function O(t,r,n){var i=p;return function(o,a){if(i===y)throw Error("Generator is already running");if(i===v){if("throw"===o)throw a;return{value:e,done:!0}}for(n.method=o,n.arg=a;;){var s=n.delegate;if(s){var c=j(s,n);if(c){if(c===m)continue;return c}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(i===p)throw i=v,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);i=y;var l=f(t,r,n);if("normal"===l.type){if(i=n.done?v:d,l.arg===m)continue;return{value:l.arg,done:n.done}}"throw"===l.type&&(i=v,n.method="throw",n.arg=l.arg)}}}function j(t,r){var n=r.method,i=t.iterator[n];if(i===e)return r.delegate=null,"throw"===n&&t.iterator.return&&(r.method="return",r.arg=e,j(t,r),"throw"===r.method)||"return"!==n&&(r.method="throw",r.arg=new TypeError("The iterator does not provide a '"+n+"' method")),m;var o=f(i,t.iterator,r.arg);if("throw"===o.type)return r.method="throw",r.arg=o.arg,r.delegate=null,m;var a=o.arg;return a?a.done?(r[t.resultName]=a.value,r.next=t.nextLoc,"return"!==r.method&&(r.method="next",r.arg=e),r.delegate=null,m):a:(r.method="throw",r.arg=new TypeError("iterator result is not an object"),r.delegate=null,m)}function L(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function A(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function T(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(L,this),this.reset(!0)}function C(t){if(t||""===t){var r=t[a];if(r)return r.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var i=-1,o=function r(){for(;++i<t.length;)if(n.call(t,i))return r.value=t[i],r.done=!1,r;return r.value=e,r.done=!0,r};return o.next=o}}throw new TypeError(h(t)+" is not iterable")}return g.prototype=w,i(P,"constructor",{value:w,configurable:!0}),i(w,"constructor",{value:g,configurable:!0}),g.displayName=l(w,c,"GeneratorFunction"),t.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===g||"GeneratorFunction"===(t.displayName||t.name))},t.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,w):(e.__proto__=w,l(e,c,"GeneratorFunction")),e.prototype=Object.create(P),e},t.awrap=function(e){return{__await:e}},S(_.prototype),l(_.prototype,s,(function(){return this})),t.AsyncIterator=_,t.async=function(e,r,n,i,o){void 0===o&&(o=Promise);var a=new _(u(e,r,n,i),o);return t.isGeneratorFunction(r)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},S(P),l(P,c,"Generator"),l(P,a,(function(){return this})),l(P,"toString",(function(){return"[object Generator]"})),t.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},t.values=C,T.prototype={constructor:T,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=e,this.done=!1,this.delegate=null,this.method="next",this.arg=e,this.tryEntries.forEach(A),!t)for(var r in this)"t"===r.charAt(0)&&n.call(this,r)&&!isNaN(+r.slice(1))&&(this[r]=e)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var r=this;function i(n,i){return s.type="throw",s.arg=t,r.next=n,i&&(r.method="next",r.arg=e),!!i}for(var o=this.tryEntries.length-1;o>=0;--o){var a=this.tryEntries[o],s=a.completion;if("root"===a.tryLoc)return i("end");if(a.tryLoc<=this.prev){var c=n.call(a,"catchLoc"),l=n.call(a,"finallyLoc");if(c&&l){if(this.prev<a.catchLoc)return i(a.catchLoc,!0);if(this.prev<a.finallyLoc)return i(a.finallyLoc)}else if(c){if(this.prev<a.catchLoc)return i(a.catchLoc,!0)}else{if(!l)throw Error("try statement without catch or finally");if(this.prev<a.finallyLoc)return i(a.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r>=0;--r){var i=this.tryEntries[r];if(i.tryLoc<=this.prev&&n.call(i,"finallyLoc")&&this.prev<i.finallyLoc){var o=i;break}}o&&("break"===e||"continue"===e)&&o.tryLoc<=t&&t<=o.finallyLoc&&(o=null);var a=o?o.completion:{};return a.type=e,a.arg=t,o?(this.method="next",this.next=o.finallyLoc,m):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),m},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),A(r),m}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var i=n.arg;A(r)}return i}}throw Error("illegal catch attempt")},delegateYield:function(t,r,n){return this.delegate={iterator:C(t),resultName:r,nextLoc:n},"next"===this.method&&(this.arg=e),m}},t}function M(e,t,r,n,i,o,a){try{var s=e[o](a),c=s.value}catch(e){return void r(e)}s.done?t(c):Promise.resolve(c).then(n,i)}function R(e){return function(){var t=this,r=arguments;return new Promise((function(n,i){var o=e.apply(t,r);function a(e){M(o,n,i,a,s,"next",e)}function s(e){M(o,n,i,a,s,"throw",e)}a(void 0)}))}}function F(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function z(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,B(n.key),n)}}function N(e,t,r){return t&&z(e.prototype,t),r&&z(e,r),Object.defineProperty(e,"prototype",{writable:!1}),e}function I(e,t,r){return(t=B(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function B(e){var t=function(e,t){if("object"!=h(e)||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!=h(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==h(t)?t:t+""}var q=window.BookReader,G=function(){return N((function e(){F(this,e),I(this,"name",void 0),I(this,"title",void 0),I(this,"description",void 0),I(this,"icon",void 0),I(this,"enabled",void 0),I(this,"learnMore",void 0),I(this,"br",void 0),I(this,"assetRoot","/BookReader/"),I(this,"enabledLoading",!1)}),[{key:"buildAssetPath",value:function(e){return"".concat(this.assetRoot).concat(e)}},{key:"enable",value:(t=R(D().mark((function e(t){return D().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:t.manual;case 1:case"end":return e.stop()}}),e)}))),function(e){return t.apply(this,arguments)})},{key:"disable",value:(e=R(D().mark((function e(){return D().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:case"end":return e.stop()}}),e)}))),function(){return e.apply(this,arguments)})}]);var e,t}(),Z=function(e){function t(){var e;F(this,t);for(var r=arguments.length,n=new Array(r),i=0;i<r;i++)n[i]=arguments[i];return I(e=j(this,t,[].concat(n)),"options",{enabled:!0,localStorageKey:"BrExperiments",enabledExperiments:["translate"]}),I(e,"allExperiments",[new(function(e){function t(){var e;F(this,t);for(var r=arguments.length,n=new Array(r),i=0;i<r;i++)n[i]=arguments[i];return I(e=j(this,t,[].concat(n)),"name","translate"),I(e,"title","Translate Plugin"),I(e,"description","Translate books directly in your browser."),I(e,"learnMore","https://mozilla.github.io/translations/"),I(e,"icon","images/translate.svg"),I(e,"enabled",!1),e}return T(t,e),N(t,[{key:"enable",value:(n=R(D().mark((function e(t){return D().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t.manual,e.next=3,U(this.buildAssetPath("plugins/plugin.translate.js"));case 3:this.br.initializePlugin("translate");case 4:case"end":return e.stop()}}),e,this)}))),function(e){return n.apply(this,arguments)})},{key:"disable",value:(r=R(D().mark((function e(){return D().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:(0,d.sleep)(0).then((function(){window.location.reload()}));case 1:case"end":return e.stop()}}),e)}))),function(){return r.apply(this,arguments)})}]);var r,n}(G)),new(function(e){function t(){var e;F(this,t);for(var r=arguments.length,n=new Array(r),i=0;i<r;i++)n[i]=arguments[i];return I(e=j(this,t,[].concat(n)),"name","hypothesis"),I(e,"title","Hypothes.is"),I(e,"description","Create public, collaborative, or fully private annotations on books and the web."),I(e,"learnMore","https://web.hypothes.is/about/"),I(e,"icon","images/hypothesis.ico"),I(e,"enabled",!1),e}return T(t,e),N(t,[{key:"enable",value:(n=R(D().mark((function e(t){var r,n,i;return D().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=t.manual,n=void 0!==r&&r,(i=document.createElement("script")).type="application/json",i.className="js-hypothesis-config",i.textContent=JSON.stringify({openSidebar:n,assetRoot:this.buildAssetPath("hypothesis/")}),document.head.appendChild(i),e.abrupt("return",U(this.buildAssetPath("hypothesis/build/boot.js")));case 7:case"end":return e.stop()}}),e,this)}))),function(e){return n.apply(this,arguments)})},{key:"disable",value:(r=R(D().mark((function e(){return D().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:(0,d.sleep)(0).then((function(){window.location.reload()}));case 1:case"end":return e.stop()}}),e)}))),function(){return r.apply(this,arguments)})}]);var r,n}(G))]),I(e,"_panel",void 0),e}return T(t,e),N(t,[{key:"init",value:(o=R(D().mark((function e(){var t,r,n;return D().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this.options.enabled){e.next=2;break}return e.abrupt("return");case 2:t=S(this.allExperiments);try{for(t.s();!(r=t.n()).done;)(n=r.value).assetRoot=this.br.options.imagesBaseURL.replace(/images\/$/,""),n.icon=n.buildAssetPath(n.icon),n.br=this.br}catch(e){t.e(e)}finally{t.f()}return this._loadExperimentStates(),e.next=7,Promise.resolve();case 7:this._render();case 8:case"end":return e.stop()}}),e,this)}))),function(){return o.apply(this,arguments)})},{key:"_loadExperimentStates",value:function(){var e=JSON.parse(localStorage.getItem(this.options.localStorageKey)||"{}");this.allExperiments.forEach((function(t){void 0!==e[t.name]&&(t.enabled=e[t.name],t.enabled&&t.enable({manual:!1}))}))}},{key:"_saveExperimentStates",value:function(){var e=Object.fromEntries(this.allExperiments.map((function(e){return[e.name,e.enabled]})));localStorage.setItem(this.options.localStorageKey,JSON.stringify(e))}},{key:"_toggleExperiment",value:(r=R(D().mark((function e(t,r){var n;return D().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t.enabledLoading=!0,null===(n=this.br.plugins.archiveAnalytics)||void 0===n||n.sendEvent("BRExperiment-".concat(t.name),r?"Enable":"Disable"),this._panel.requestUpdate(),!r){e.next=8;break}return e.next=6,t.enable({manual:!0});case 6:e.next=10;break;case 8:return e.next=10,t.disable();case 10:t.enabledLoading=!1,t.enabled=r,this._panel.requestUpdate();case 13:case"end":return e.stop()}}),e,this)}))),function(e,t){return r.apply(this,arguments)})},{key:"_render",value:function(){var e=this;this.br.shell.menuProviders.experiments={id:"experiments",icon:(0,u.qy)(n||(n=P(['\n <img src="','/icon_experiment.svg" width="26"/>\n '])),this.br.options.imagesBaseURL),label:"Experiments",component:(0,u.qy)(i||(i=P(['<br-experiments-panel\n .experiments="','"\n @connected="','"\n @toggle="','"\n />'])),this.allExperiments.filter((function(t){return e.options.enabledExperiments.includes(t.name)})),(function(t){return e._panel=t.target}),function(){var t=R(D().mark((function t(r){return D().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,e._toggleExperiment(r.detail.experiment,r.detail.enabled);case 2:e._saveExperimentStates();case 3:case"end":return t.stop()}}),t)})));return function(e){return t.apply(this,arguments)}}())},this.br.shell.updateMenuContents()}}]);var r,o}(f.S);function U(e){return H.apply(this,arguments)}function H(){return(H=R(D().mark((function e(t){return D().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",new Promise((function(e,r){var n=document.createElement("script");n.src=t,n.onload=function(){return e()},n.onerror=function(){return r(new Error("Failed to load script: ".concat(t)))},document.head.appendChild(n)})));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}null==q||q.registerPlugin("experiments",Z),y([(0,p.EM)("br-experiments-panel")],(function(e,t){var r,n=function(t){function r(){var t;F(this,r);for(var n=arguments.length,i=new Array(n),o=0;o<n;o++)i[o]=arguments[o];return t=j(this,r,[].concat(i)),e(t),t}return T(r,t),N(r)}(t);return{F:n,d:[{kind:"field",decorators:[(0,p.MZ)({type:Array})],key:"experiments",value:function(){return[]}},{kind:"method",key:"render",value:function(){var e=this;return(0,u.qy)(o||(o=P(['\n <div style="padding: 10px">\n ',"\n </div>\n "])),this.experiments.map((function(t){return(0,u.qy)(a||(a=P(['\n <br-experiment-toggle\n .icon="','"\n .title="','"\n .description="','"\n .enabled="','"\n .loading="','"\n .learnMore="','"\n @toggle="','"\n ></br-experiment-toggle>\n '])),t.icon,t.title,t.description,t.enabled,t.enabledLoading,t.learnMore,(function(r){return e._dispatchToggle(t,r.detail.enabled)}))})))}},{kind:"method",key:"_dispatchToggle",value:(r=R(D().mark((function e(t,r){return D().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:this.dispatchEvent(new CustomEvent("toggle",{detail:{experiment:t,enabled:r}}));case 1:case"end":return e.stop()}}),e,this)}))),function(e,t){return r.apply(this,arguments)})},{kind:"method",key:"connectedCallback",value:function(){E(n,"connectedCallback",this,3)([]),this.dispatchEvent(new CustomEvent("connected"))}}]}}),u.WF),y([(0,p.EM)("br-experiment-toggle")],(function(e,t){var r=function(t){function r(){var t;F(this,r);for(var n=arguments.length,i=new Array(n),o=0;o<n;o++)i[o]=arguments[o];return t=j(this,r,[].concat(i)),e(t),t}return T(r,t),N(r)}(t);return{F:r,d:[{kind:"field",decorators:[(0,p.MZ)({type:String})],key:"icon",value:function(){return""}},{kind:"field",decorators:[(0,p.MZ)({type:String})],key:"title",value:function(){return""}},{kind:"field",decorators:[(0,p.MZ)({type:String})],key:"description",value:function(){return""}},{kind:"field",decorators:[(0,p.MZ)({type:Boolean})],key:"enabled",value:function(){return!1}},{kind:"field",decorators:[(0,p.MZ)({type:Boolean})],key:"loading",value:function(){return!1}},{kind:"field",decorators:[(0,p.MZ)({type:String})],key:"learnMore",value:function(){return""}},{kind:"field",decorators:[(0,p.wk)()],key:"_longLoading",value:function(){return!1}},{kind:"method",key:"update",value:function(e){var t=this;E(r,"update",this,3)([e]),e.has("loading")&&(this.loading?(0,d.sleep)(500).then((function(){t.loading&&(t._longLoading=!0,t.requestUpdate())})):this._longLoading=!1)}},{kind:"method",key:"render",value:function(){return(0,u.qy)(s||(s=P(['\n <div class="experiment-card" style="margin-bottom: 10px;">\n <div style="display: flex; align-items: center; gap: 10px;">\n <img src="','" style="width: 20px; height: 20px;" alt="" />\n <div style="flex-grow: 1; font-weight: bold;">','</div>\n </div>\n <p style="opacity: 0.9">\n ',"\n ",'\n </p>\n <div style="display: flex">\n <div style="flex-grow: 1;"></div>\n <button @click="','" .disabled="','">\n ',"\n </button>\n </div>\n </div>\n "])),this.icon,this.title,this.description,this.learnMore?(0,u.qy)(c||(c=P(['<a href="','" target="_blank">Learn more</a>.'])),this.learnMore):"",this._dispatchToggle,this.loading,this._longLoading?"Loading…":this.enabled?"Disable":"Enable")}},{kind:"get",static:!0,key:"styles",value:function(){return(0,u.AH)(l||(l=P(["\n .experiment-card {\n border-radius: 8px;\n background-color: #fff2;\n padding: 10px;\n display: flex;\n flex-direction: column;\n }\n\n .experiment-card p {\n margin: 6px 0;\n }\n "])))}},{kind:"method",key:"_dispatchToggle",value:function(){this.dispatchEvent(new CustomEvent("toggle",{detail:{enabled:!this.enabled}}))}}]}}),u.WF)}},function(e){e(e.s=6732)}]);
3
3
  //# sourceMappingURL=plugin.experiments.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"plugins/plugin.experiments.js","mappings":"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","sources":["webpack://@internetarchive/bookreader/./node_modules/core-js/modules/es.object.from-entries.js","webpack://@internetarchive/bookreader/./src/BookReaderPlugin.js","webpack://@internetarchive/bookreader/./src/plugins/plugin.experiments.js"],"sourcesContent":["'use strict';\nvar $ = require('../internals/export');\nvar iterate = require('../internals/iterate');\nvar createProperty = require('../internals/create-property');\n\n// `Object.fromEntries` method\n// https://github.com/tc39/proposal-object-from-entries\n$({ target: 'Object', stat: true }, {\n fromEntries: function fromEntries(iterable) {\n var obj = {};\n iterate(iterable, function (k, v) {\n createProperty(obj, k, v);\n }, { AS_ENTRIES: true });\n return obj;\n }\n});\n","// @ts-check\n/** @typedef {import(\"./BookReader.js\").default} BookReader */\n\n/**\n * @template TOptions\n */\nexport class BookReaderPlugin {\n /**\n * @param {BookReader} br\n */\n constructor(br) {\n /** @type {BookReader} */\n this.br = br;\n /** @type {TOptions} */\n this.options;\n }\n\n /**\n * @abstract\n * @param {TOptions} options\n **/\n setup(options) {\n this.options = Object.assign({}, this.options, options);\n }\n\n /** @abstract */\n init() {}\n\n /**\n * @abstract\n * @protected\n * @param {import (\"./BookReader/PageContainer.js\").PageContainer} pageContainer\n */\n _configurePageContainer(pageContainer) {\n }\n\n /**\n * @abstract\n * @protected\n * @param {JQuery<HTMLElement>} $toolbarElement\n */\n _configureToolbar($toolbarElement) {\n }\n\n /** @abstract @protected */\n _bindNavigationHandlers() {}\n\n /**\n * @param {JQuery<HTMLElement>} $navBar\n */\n extendNavBar($navBar) {}\n}\n","// @ts-check\nimport { css, html, LitElement } from 'lit';\nimport { BookReaderPlugin } from '../BookReaderPlugin.js';\nimport { customElement, property, state } from 'lit/decorators.js';\nimport { sleep } from '../BookReader/utils.js';\n\n// @ts-ignore\nconst BookReader = /** @type {typeof import('@/src/BookReader.js').default} */(window.BookReader);\n\nclass ExperimentModel {\n /** @type {string} test */\n name;\n /** @type {string} */\n title;\n /** @type {string} */\n description;\n /** @type {string} */\n icon;\n /** @type {boolean} */\n enabled;\n /** @type {string} */\n learnMore;\n\n assetRoot = '/BookReader/';\n\n enabledLoading = false;\n\n /**\n * @param {string} path\n */\n buildAssetPath(path) {\n return `${this.assetRoot}${path}`;\n }\n\n /**\n * @param {object} param0\n * @param {boolean} param0.manual Whether the experiment was enabled manually\n */\n async enable({ manual }) { }\n async disable() { }\n}\n\nexport class ExperimentsPlugin extends BookReaderPlugin {\n options = {\n enabled: true,\n\n /** Where the state of this plugin is saved in localStorage */\n localStorageKey: 'BrExperiments',\n }\n\n /** @type {ExperimentModel[]} */\n experiments = [\n new class extends ExperimentModel {\n name = 'hypothesis';\n title = 'Hypothes.is';\n description = 'Create public, collaborative, or fully private annotations on books and the web.';\n learnMore = 'https://web.hypothes.is/about/';\n icon = 'images/hypothesis.ico';\n enabled = false;\n\n async enable({ manual = false }) {\n // Hypothesis configs ; see https://h.readthedocs.io/projects/client/en/latest/publishers/config.html\n const configScript = document.createElement('script');\n configScript.type = 'application/json';\n configScript.className = 'js-hypothesis-config';\n configScript.textContent = JSON.stringify({\n // Open the sidebar if this is the first time enabling\n openSidebar: manual,\n assetRoot: this.buildAssetPath('hypothesis/'),\n });\n\n document.head.appendChild(configScript);\n return importAsScript(this.buildAssetPath('hypothesis/build/boot.js'));\n // For testing\n // return importAsScript('http://localhost:3001/hypothesis');\n }\n\n async disable() {\n // need to reload to remove the Hypothesis script\n // Sleep so that the event loop can finish processing before the reload\n sleep(0).then(() => {\n window.location.reload();\n });\n }\n }(),\n ]\n\n /** @type {BrExperimentsPanel} */\n _panel;\n\n async init() {\n if (!this.options.enabled) {\n return;\n }\n\n for (const experiment of this.experiments) {\n // TODO: imagesBaseURL should be replaced with assetRoot everywhere\n experiment.assetRoot = this.br.options.imagesBaseURL.replace(/images\\/$/, '');\n experiment.icon = experiment.buildAssetPath(experiment.icon);\n }\n\n this._loadExperimentStates();\n await Promise.resolve();\n this._render();\n }\n\n _loadExperimentStates() {\n const savedStates = JSON.parse(localStorage.getItem(this.options.localStorageKey) || '{}');\n this.experiments.forEach(experiment => {\n if (savedStates[experiment.name] !== undefined) {\n experiment.enabled = savedStates[experiment.name];\n if (experiment.enabled) {\n experiment.enable({ manual: false });\n }\n }\n });\n }\n\n _saveExperimentStates() {\n const states = Object.fromEntries(\n this.experiments.map(experiment => [experiment.name, experiment.enabled]),\n );\n localStorage.setItem(this.options.localStorageKey, JSON.stringify(states));\n }\n\n /**\n * @param {ExperimentModel} experiment\n * @param {boolean} enabled\n */\n async _toggleExperiment(experiment, enabled) {\n experiment.enabledLoading = true;\n this.br.plugins.archiveAnalytics?.sendEvent(`BRExperiment-${experiment.name}`, enabled ? 'Enable' : 'Disable');\n this._panel.requestUpdate();\n\n if (enabled) {\n await experiment.enable({ manual: true });\n } else {\n await experiment.disable();\n }\n experiment.enabledLoading = false;\n experiment.enabled = enabled;\n this._panel.requestUpdate();\n }\n\n _render() {\n this.br.shell.menuProviders['experiments'] = {\n id: 'experiments',\n // https://icon-sets.iconify.design/hugeicons/?icon-filter=eco-lab-02&query=lab\n icon: html`\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"34\" viewBox=\"0 0 24 24\"><path fill=\"currentColor\" d=\"M10 5.75h1.25v2.5H9.5c-.41 0-.75.34-.75.75s.34.75.75.75h.25v1.96A5.72 5.72 0 0 0 6.25 17c0 3.17 2.58 5.75 5.75 5.75s5.75-2.58 5.75-5.75c0-2.33-1.39-4.4-3.5-5.29V9.75h.25c.41 0 .75-.34.75-.75s-.34-.75-.75-.75h-1.75v-1.5H14c1.52 0 2.75-1.23 2.75-2.75V3c0-.41-.34-.75-.75-.75h-2c-.579 0-1.115.178-1.558.483A2.75 2.75 0 0 0 10 1.25H8c-.41 0-.75.34-.75.75v1c0 1.52 1.23 2.75 2.75 2.75m2.75-.5V5c0-.69.56-1.25 1.25-1.25h1.25V4c0 .69-.56 1.25-1.25 1.25zm-1.5 6.98V9.75h1.5v2.48c0 .33.22.62.53.72c1.77.56 2.97 2.19 2.97 4.06A4.26 4.26 0 0 1 12 21.26a4.26 4.26 0 0 1-4.25-4.25c0-1.87 1.19-3.5 2.97-4.06c.32-.1.53-.39.53-.72m-2.5-9.48H10c.69 0 1.25.56 1.25 1.25v.25H10c-.69 0-1.25-.56-1.25-1.25z\" color=\"currentColor\"/></svg>\n `,\n label: 'Experiments',\n component: html`<br-experiments-panel\n .experiments=\"${this.experiments}\"\n @connected=\"${e => this._panel = e.target}\"\n @toggle=\"${async e => {\n await this._toggleExperiment(e.detail.experiment, e.detail.enabled);\n this._saveExperimentStates();\n }}\"\n />`,\n };\n this.br.shell.updateMenuContents();\n }\n}\nBookReader?.registerPlugin('experiments', ExperimentsPlugin);\n\n@customElement('br-experiments-panel')\nexport class BrExperimentsPanel extends LitElement {\n\n /** @type {ExperimentModel[]} */\n @property({ type: Array }) experiments = [];\n\n render() {\n return html`\n <div style=\"padding: 10px\">\n ${this.experiments.map(\n experiment => html`\n <br-experiment-toggle\n .icon=\"${experiment.icon}\"\n .title=\"${experiment.title}\"\n .description=\"${experiment.description}\"\n .enabled=\"${experiment.enabled}\"\n .loading=\"${experiment.enabledLoading}\"\n .learnMore=\"${experiment.learnMore}\"\n @toggle=\"${e => this._dispatchToggle(experiment, e.detail.enabled)}\"\n ></br-experiment-toggle>\n `,\n )}\n </div>\n `;\n }\n\n /**\n * @param {ExperimentModel} experiment\n * @param {boolean} enabled\n */\n async _dispatchToggle(experiment, enabled) {\n this.dispatchEvent(new CustomEvent('toggle', {\n detail: { experiment, enabled },\n }));\n }\n\n connectedCallback() {\n super.connectedCallback();\n this.dispatchEvent(new CustomEvent('connected'));\n }\n}\n\n@customElement('br-experiment-toggle')\nexport class BrExperimentToggle extends LitElement {\n @property({ type: String }) icon = '';\n @property({ type: String }) title = '';\n @property({ type: String }) description = '';\n @property({ type: Boolean }) enabled = false;\n @property({ type: Boolean }) loading = false;\n @property({ type: String }) learnMore = '';\n\n /**\n * We want to disable the button immediately if loading, but only display\n * the loading indicator after 200ms.\n */\n @state() _longLoading = false;\n\n /** @override */\n update(changedProperties) {\n super.update(changedProperties);\n if (changedProperties.has('loading')) {\n if (this.loading) {\n sleep(500).then(() => {\n if (this.loading) {\n this._longLoading = true;\n this.requestUpdate();\n }\n });\n } else {\n this._longLoading = false;\n }\n }\n }\n\n render() {\n return html`\n <div class=\"experiment-card\">\n <div style=\"display: flex; align-items: center; gap: 10px;\">\n <img src=\"${this.icon}\" style=\"width: 20px; height: 20px;\" alt=\"\" />\n <div style=\"flex-grow: 1; font-weight: bold;\">${this.title}</div>\n </div>\n <p style=\"opacity: 0.9\">\n ${this.description}\n <a href=\"${this.learnMore}\" target=\"_blank\">Learn more</a>.\n </p>\n <div style=\"display: flex\">\n <div style=\"flex-grow: 1;\"></div>\n <button @click=\"${this._dispatchToggle}\" .disabled=\"${this.loading}\">\n ${this._longLoading ? 'Loading…' : this.enabled ? 'Disable' : 'Enable'}\n </button>\n </div>\n </div>\n `;\n }\n\n static get styles() {\n return css`\n .experiment-card {\n border-radius: 8px;\n background-color: #fff2;\n padding: 10px;\n display: flex;\n flex-direction: column;\n }\n\n .experiment-card p {\n margin: 6px 0;\n }\n `;\n }\n\n _dispatchToggle() {\n this.dispatchEvent(new CustomEvent('toggle', { detail: { enabled: !this.enabled } }));\n }\n}\n\n/**\n * @param {string} url\n */\nasync function importAsScript(url) {\n return new Promise((resolve, reject) => {\n const script = document.createElement('script');\n script.src = url;\n script.onload = () => resolve();\n script.onerror = () => reject(new Error(`Failed to load script: ${url}`));\n document.head.appendChild(script);\n });\n}\n"],"names":["$","iterate","createProperty","target","stat","fromEntries","iterable","obj","k","v","AS_ENTRIES","BookReaderPlugin","br","_classCallCheck","this","options","key","value","Object","assign","pageContainer","$toolbarElement","$navBar","_regeneratorRuntime","e","t","r","prototype","n","hasOwnProperty","o","defineProperty","i","Symbol","a","iterator","c","asyncIterator","u","toStringTag","define","enumerable","configurable","writable","wrap","Generator","create","Context","makeInvokeMethod","tryCatch","type","arg","call","h","l","f","s","y","GeneratorFunction","GeneratorFunctionPrototype","p","d","getPrototypeOf","values","g","defineIteratorMethods","forEach","_invoke","AsyncIterator","invoke","_typeof","resolve","__await","then","callInvokeWithMethodAndArg","Error","done","method","delegate","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","return","TypeError","resultName","next","nextLoc","pushTryEntry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","push","resetTryEntry","completion","reset","isNaN","length","displayName","isGeneratorFunction","constructor","name","mark","setPrototypeOf","__proto__","awrap","async","Promise","keys","reverse","pop","prev","charAt","slice","stop","rval","handle","complete","finish","catch","delegateYield","asyncGeneratorStep","_asyncToGenerator","arguments","apply","_next","_throw","_defineProperties","_toPropertyKey","_createClass","_defineProperty","toPrimitive","String","_toPrimitive","BookReader","window","ExperimentModel","path","concat","assetRoot","_enable","_callee","_ref","_context","manual","_x","_disable","_callee2","_context2","ExperimentsPlugin","_BookReaderPlugin","_this","_len","args","Array","_key","_callSuper","enabled","localStorageKey","_ExperimentModel2","_class","_this2","_len2","_key2","_inherits","_enable2","_callee3","_ref2","_ref2$manual","configScript","_context3","document","createElement","className","textContent","JSON","stringify","openSidebar","buildAssetPath","head","appendChild","importAsScript","_x2","_disable2","_callee4","_context4","sleep","location","reload","_init","_callee5","_iterator","_step","experiment","_context5","_createForOfIteratorHelper","experiments","imagesBaseURL","replace","icon","err","_loadExperimentStates","_render","savedStates","parse","localStorage","getItem","undefined","enable","states","map","setItem","_toggleExperiment2","_callee6","_this$br$plugins$arch","_context6","enabledLoading","plugins","archiveAnalytics","sendEvent","_panel","requestUpdate","disable","_x3","_x4","_this3","shell","menuProviders","id","html","_templateObject","_taggedTemplateLiteral","label","component","_templateObject2","_ref3","_callee7","_context7","_toggleExperiment","detail","_saveExperimentStates","_x5","updateMenuContents","_x8","_importAsScript","_callee9","url","_context9","reject","script","src","onload","onerror","registerPlugin","_decorate","customElement","_initialize","_LitElement","_dispatchToggle2","BrExperimentsPanel","_LitElement2","_this4","_len3","_key3","F","kind","decorators","property","_this5","_templateObject3","_templateObject4","title","description","learnMore","_dispatchToggle","_callee8","_context8","dispatchEvent","CustomEvent","_x6","_x7","_superPropGet","LitElement","_initialize2","_LitElement3","BrExperimentToggle","_LitElement4","_this6","_len4","_key4","Boolean","state","changedProperties","_this7","has","loading","_longLoading","_templateObject5","static","css","_templateObject6"],"sourceRoot":""}
1
+ {"version":3,"file":"plugins/plugin.experiments.js","mappings":"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","sources":["webpack://@internetarchive/bookreader/./node_modules/core-js/modules/es.object.from-entries.js","webpack://@internetarchive/bookreader/./src/BookReaderPlugin.js","webpack://@internetarchive/bookreader/./src/plugins/plugin.experiments.js"],"sourcesContent":["'use strict';\nvar $ = require('../internals/export');\nvar iterate = require('../internals/iterate');\nvar createProperty = require('../internals/create-property');\n\n// `Object.fromEntries` method\n// https://github.com/tc39/proposal-object-from-entries\n$({ target: 'Object', stat: true }, {\n fromEntries: function fromEntries(iterable) {\n var obj = {};\n iterate(iterable, function (k, v) {\n createProperty(obj, k, v);\n }, { AS_ENTRIES: true });\n return obj;\n }\n});\n","// @ts-check\n/** @typedef {import(\"./BookReader.js\").default} BookReader */\n\n/**\n * @template TOptions\n */\nexport class BookReaderPlugin {\n /**\n * @param {BookReader} br\n */\n constructor(br) {\n /** @type {BookReader} */\n this.br = br;\n /** @type {TOptions} */\n this.options;\n }\n\n /**\n * @abstract\n * @param {TOptions} options\n **/\n setup(options) {\n this.options = Object.assign({}, this.options, options);\n }\n\n /** @abstract */\n init() {}\n\n /**\n * @abstract\n * @protected\n * @param {import (\"./BookReader/PageContainer.js\").PageContainer} pageContainer\n */\n _configurePageContainer(pageContainer) {\n }\n\n /**\n * @abstract\n * @protected\n * @param {JQuery<HTMLElement>} $toolbarElement\n */\n _configureToolbar($toolbarElement) {\n }\n\n /** @abstract @protected */\n _bindNavigationHandlers() {}\n\n /**\n * @param {JQuery<HTMLElement>} $navBar\n */\n extendNavBar($navBar) {}\n}\n","// @ts-check\nimport { css, html, LitElement } from 'lit';\nimport { BookReaderPlugin } from '../BookReaderPlugin.js';\nimport { customElement, property, state } from 'lit/decorators.js';\nimport { sleep } from '../BookReader/utils.js';\n\n// @ts-ignore\nconst BookReader = /** @type {typeof import('@/src/BookReader.js').default} */(window.BookReader);\n\nclass ExperimentModel {\n /** @type {string} test */\n name;\n /** @type {string} */\n title;\n /** @type {string} */\n description;\n /** @type {string} */\n icon;\n /** @type {boolean} */\n enabled;\n /** @type {string} */\n learnMore;\n\n /** @type {import(\"@/src/BookReader.js\").default} */\n br;\n\n assetRoot = '/BookReader/';\n\n enabledLoading = false;\n\n /**\n * @param {string} path\n */\n buildAssetPath(path) {\n return `${this.assetRoot}${path}`;\n }\n\n /**\n * @param {object} param0\n * @param {boolean} param0.manual Whether the experiment was enabled manually\n */\n async enable({ manual }) { }\n async disable() { }\n}\n\nexport class ExperimentsPlugin extends BookReaderPlugin {\n options = {\n enabled: true,\n\n /** Where the state of this plugin is saved in localStorage */\n localStorageKey: 'BrExperiments',\n\n /** The experiments that should be shown in the experiments panel */\n enabledExperiments: ['translate'],\n }\n\n /** @type {ExperimentModel[]} */\n allExperiments = [\n new class extends ExperimentModel {\n name = 'translate';\n title = 'Translate Plugin';\n description = \"Translate books directly in your browser.\";\n learnMore = 'https://mozilla.github.io/translations/';\n icon = 'images/translate.svg';\n enabled = false;\n async enable({ manual = false}) {\n await importAsScript(this.buildAssetPath('plugins/plugin.translate.js'));\n this.br.initializePlugin('translate');\n }\n async disable() {\n // need to reload to remove translate plugin script\n // Sleep so that the event loop can finish processing before the reload\n sleep(0).then(() => {\n window.location.reload();\n });\n }\n }(),\n new class extends ExperimentModel {\n name = 'hypothesis';\n title = 'Hypothes.is';\n description = 'Create public, collaborative, or fully private annotations on books and the web.';\n learnMore = 'https://web.hypothes.is/about/';\n icon = 'images/hypothesis.ico';\n enabled = false;\n\n async enable({ manual = false }) {\n // Hypothesis configs ; see https://h.readthedocs.io/projects/client/en/latest/publishers/config.html\n const configScript = document.createElement('script');\n configScript.type = 'application/json';\n configScript.className = 'js-hypothesis-config';\n configScript.textContent = JSON.stringify({\n // Open the sidebar if this is the first time enabling\n openSidebar: manual,\n assetRoot: this.buildAssetPath('hypothesis/'),\n });\n\n document.head.appendChild(configScript);\n return importAsScript(this.buildAssetPath('hypothesis/build/boot.js'));\n // For testing\n // return importAsScript('http://localhost:3001/hypothesis');\n }\n\n async disable() {\n // need to reload to remove the Hypothesis script\n // Sleep so that the event loop can finish processing before the reload\n sleep(0).then(() => {\n window.location.reload();\n });\n }\n }(),\n ]\n\n /** @type {BrExperimentsPanel} */\n _panel;\n\n async init() {\n if (!this.options.enabled) {\n return;\n }\n\n for (const experiment of this.allExperiments) {\n // TODO: imagesBaseURL should be replaced with assetRoot everywhere\n experiment.assetRoot = this.br.options.imagesBaseURL.replace(/images\\/$/, '');\n experiment.icon = experiment.buildAssetPath(experiment.icon);\n experiment.br = this.br;\n }\n\n this._loadExperimentStates();\n await Promise.resolve();\n this._render();\n }\n\n _loadExperimentStates() {\n const savedStates = JSON.parse(localStorage.getItem(this.options.localStorageKey) || '{}');\n this.allExperiments.forEach(experiment => {\n if (savedStates[experiment.name] !== undefined) {\n experiment.enabled = savedStates[experiment.name];\n if (experiment.enabled) {\n experiment.enable({ manual: false });\n }\n }\n });\n }\n\n _saveExperimentStates() {\n const states = Object.fromEntries(\n this.allExperiments.map(experiment => [experiment.name, experiment.enabled]),\n );\n localStorage.setItem(this.options.localStorageKey, JSON.stringify(states));\n }\n\n /**\n * @param {ExperimentModel} experiment\n * @param {boolean} enabled\n */\n async _toggleExperiment(experiment, enabled) {\n experiment.enabledLoading = true;\n this.br.plugins.archiveAnalytics?.sendEvent(`BRExperiment-${experiment.name}`, enabled ? 'Enable' : 'Disable');\n this._panel.requestUpdate();\n\n if (enabled) {\n await experiment.enable({ manual: true });\n } else {\n await experiment.disable();\n }\n experiment.enabledLoading = false;\n experiment.enabled = enabled;\n this._panel.requestUpdate();\n }\n\n _render() {\n this.br.shell.menuProviders['experiments'] = {\n id: 'experiments',\n icon: html`\n <img src=\"${this.br.options.imagesBaseURL}/icon_experiment.svg\" width=\"26\"/>\n `,\n label: 'Experiments',\n component: html`<br-experiments-panel\n .experiments=\"${this.allExperiments.filter(experiment => this.options.enabledExperiments.includes(experiment.name))}\"\n @connected=\"${e => this._panel = e.target}\"\n @toggle=\"${async e => {\n await this._toggleExperiment(e.detail.experiment, e.detail.enabled);\n this._saveExperimentStates();\n }}\"\n />`,\n };\n this.br.shell.updateMenuContents();\n }\n}\nBookReader?.registerPlugin('experiments', ExperimentsPlugin);\n\n@customElement('br-experiments-panel')\nexport class BrExperimentsPanel extends LitElement {\n\n /** @type {ExperimentModel[]} */\n @property({ type: Array }) experiments = [];\n\n render() {\n return html`\n <div style=\"padding: 10px\">\n ${this.experiments.map(\n experiment => html`\n <br-experiment-toggle\n .icon=\"${experiment.icon}\"\n .title=\"${experiment.title}\"\n .description=\"${experiment.description}\"\n .enabled=\"${experiment.enabled}\"\n .loading=\"${experiment.enabledLoading}\"\n .learnMore=\"${experiment.learnMore}\"\n @toggle=\"${e => this._dispatchToggle(experiment, e.detail.enabled)}\"\n ></br-experiment-toggle>\n `,\n )}\n </div>\n `;\n }\n\n /**\n * @param {ExperimentModel} experiment\n * @param {boolean} enabled\n */\n async _dispatchToggle(experiment, enabled) {\n this.dispatchEvent(new CustomEvent('toggle', {\n detail: { experiment, enabled },\n }));\n }\n\n connectedCallback() {\n super.connectedCallback();\n this.dispatchEvent(new CustomEvent('connected'));\n }\n}\n\n@customElement('br-experiment-toggle')\nexport class BrExperimentToggle extends LitElement {\n @property({ type: String }) icon = '';\n @property({ type: String }) title = '';\n @property({ type: String }) description = '';\n @property({ type: Boolean }) enabled = false;\n @property({ type: Boolean }) loading = false;\n @property({ type: String }) learnMore = '';\n\n /**\n * We want to disable the button immediately if loading, but only display\n * the loading indicator after 200ms.\n */\n @state() _longLoading = false;\n\n /** @override */\n update(changedProperties) {\n super.update(changedProperties);\n if (changedProperties.has('loading')) {\n if (this.loading) {\n sleep(500).then(() => {\n if (this.loading) {\n this._longLoading = true;\n this.requestUpdate();\n }\n });\n } else {\n this._longLoading = false;\n }\n }\n }\n\n render() {\n return html`\n <div class=\"experiment-card\" style=\"margin-bottom: 10px;\">\n <div style=\"display: flex; align-items: center; gap: 10px;\">\n <img src=\"${this.icon}\" style=\"width: 20px; height: 20px;\" alt=\"\" />\n <div style=\"flex-grow: 1; font-weight: bold;\">${this.title}</div>\n </div>\n <p style=\"opacity: 0.9\">\n ${this.description}\n ${this.learnMore ? html`<a href=\"${this.learnMore}\" target=\"_blank\">Learn more</a>.` : ''}\n </p>\n <div style=\"display: flex\">\n <div style=\"flex-grow: 1;\"></div>\n <button @click=\"${this._dispatchToggle}\" .disabled=\"${this.loading}\">\n ${this._longLoading ? 'Loading…' : this.enabled ? 'Disable' : 'Enable'}\n </button>\n </div>\n </div>\n `;\n }\n\n static get styles() {\n return css`\n .experiment-card {\n border-radius: 8px;\n background-color: #fff2;\n padding: 10px;\n display: flex;\n flex-direction: column;\n }\n\n .experiment-card p {\n margin: 6px 0;\n }\n `;\n }\n\n _dispatchToggle() {\n this.dispatchEvent(new CustomEvent('toggle', { detail: { enabled: !this.enabled } }));\n }\n}\n\n/**\n * @param {string} url\n */\nasync function importAsScript(url) {\n return new Promise((resolve, reject) => {\n const script = document.createElement('script');\n script.src = url;\n script.onload = () => resolve();\n script.onerror = () => reject(new Error(`Failed to load script: ${url}`));\n document.head.appendChild(script);\n });\n}\n"],"names":["$","iterate","createProperty","target","stat","fromEntries","iterable","obj","k","v","AS_ENTRIES","BookReaderPlugin","br","_classCallCheck","this","options","key","value","Object","assign","pageContainer","$toolbarElement","$navBar","_regeneratorRuntime","e","t","r","prototype","n","hasOwnProperty","o","defineProperty","i","Symbol","a","iterator","c","asyncIterator","u","toStringTag","define","enumerable","configurable","writable","wrap","Generator","create","Context","makeInvokeMethod","tryCatch","type","arg","call","h","l","f","s","y","GeneratorFunction","GeneratorFunctionPrototype","p","d","getPrototypeOf","values","g","defineIteratorMethods","forEach","_invoke","AsyncIterator","invoke","_typeof","resolve","__await","then","callInvokeWithMethodAndArg","Error","done","method","delegate","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","return","TypeError","resultName","next","nextLoc","pushTryEntry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","push","resetTryEntry","completion","reset","isNaN","length","displayName","isGeneratorFunction","constructor","name","mark","setPrototypeOf","__proto__","awrap","async","Promise","keys","reverse","pop","prev","charAt","slice","stop","rval","handle","complete","finish","catch","delegateYield","asyncGeneratorStep","_asyncToGenerator","arguments","apply","_next","_throw","_defineProperties","_toPropertyKey","_createClass","_defineProperty","toPrimitive","String","_toPrimitive","BookReader","window","ExperimentModel","path","concat","assetRoot","_enable","_callee","_ref","_context","manual","_x","_disable","_callee2","_context2","ExperimentsPlugin","_BookReaderPlugin","_this","_len","args","Array","_key","_callSuper","enabled","localStorageKey","enabledExperiments","_ExperimentModel2","_class","_this2","_len2","_key2","_inherits","_enable2","_callee3","_ref2","_context3","importAsScript","buildAssetPath","initializePlugin","_x2","_disable2","_callee4","_context4","sleep","location","reload","_ExperimentModel3","_class2","_this3","_len3","_key3","_enable3","_callee5","_ref3","_ref3$manual","configScript","_context5","document","createElement","className","textContent","JSON","stringify","openSidebar","head","appendChild","_x3","_disable3","_callee6","_context6","_init","_callee7","_iterator","_step","experiment","_context7","_createForOfIteratorHelper","allExperiments","imagesBaseURL","replace","icon","err","_loadExperimentStates","_render","savedStates","parse","localStorage","getItem","undefined","enable","states","map","setItem","_toggleExperiment2","_callee8","_this$br$plugins$arch","_context8","enabledLoading","plugins","archiveAnalytics","sendEvent","_panel","requestUpdate","disable","_x4","_x5","_this4","shell","menuProviders","id","html","_templateObject","_taggedTemplateLiteral","label","component","_templateObject2","filter","includes","_ref4","_callee9","_context9","_toggleExperiment","detail","_saveExperimentStates","_x6","updateMenuContents","_x9","_importAsScript","_callee11","url","_context11","reject","script","src","onload","onerror","registerPlugin","_decorate","customElement","_initialize","_LitElement","_dispatchToggle2","BrExperimentsPanel","_LitElement2","_this5","_len4","_key4","F","kind","decorators","property","_this6","_templateObject3","experiments","_templateObject4","title","description","learnMore","_dispatchToggle","_callee10","_context10","dispatchEvent","CustomEvent","_x7","_x8","_superPropGet","LitElement","_initialize2","_LitElement3","BrExperimentToggle","_LitElement4","_this7","_len5","_key5","Boolean","state","changedProperties","_this8","has","loading","_longLoading","_templateObject5","_templateObject6","static","css","_templateObject7"],"sourceRoot":""}
@@ -1,3 +1,3 @@
1
1
  /*! For license information please see plugin.text_selection.js.LICENSE.txt */
2
- "use strict";(self.webpackChunk_internetarchive_bookreader=self.webpackChunk_internetarchive_bookreader||[]).push([[326],{706:function(t,e,r){var n=r(350).PROPER,o=r(9039),i=r(7452);t.exports=function(t){return o((function(){return!!i[t]()||"​…᠎"!=="​…᠎"[t]()||n&&i[t].name!==t}))}},2762:function(t,e,r){var n=r(6518),o=r(3802).trim;n({target:"String",proto:!0,forced:r(706)("trim")},{trim:function(){return o(this)}})},1041:function(t,e,r){function n(t){return n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},n(t)}function o(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,i(n.key),n)}}function i(t){var e=function(t,e){if("object"!=n(t)||!t)return t;var r=t[Symbol.toPrimitive];if(void 0!==r){var o=r.call(t,"string");if("object"!=n(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==n(e)?e:e+""}r.d(e,{S:function(){return a}}),r(2675),r(9463),r(2259),r(5700),r(3792),r(9572),r(8130),r(9085),r(6099),r(7764),r(2953);var a=function(){return t=function t(e){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),this.br=e,this.options},(e=[{key:"setup",value:function(t){this.options=Object.assign({},this.options,t)}},{key:"init",value:function(){}},{key:"_configurePageContainer",value:function(t){}},{key:"_configureToolbar",value:function(t){}},{key:"_bindNavigationHandlers",value:function(){}},{key:"extendNavBar",value:function(t){}}])&&o(t.prototype,e),Object.defineProperty(t,"prototype",{writable:!1}),t;var t,e}()},2763:function(t,e,r){r(2675),r(9463),r(6412),r(2259),r(5700),r(8125),r(8706),r(113),r(3418),r(3792),r(8598),r(2062),r(4490),r(4782),r(6910),r(9572),r(2010),r(4731),r(6033),r(479),r(8130),r(9085),r(875),r(6099),r(8459),r(3362),r(825),r(7495),r(8781),r(9449),r(7764),r(2762),r(3500),r(2953);var n=r(4907),o=r(1669);function i(t){return i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},i(t)}function a(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,u(n.key),n)}}function c(t,e,r){return(e=u(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function u(t){var e=function(t,e){if("object"!=i(t)||!t)return t;var r=t[Symbol.toPrimitive];if(void 0!==r){var n=r.call(t,"string");if("object"!=i(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==i(e)?e:e+""}var l=function(){return t=function t(e,r){var n=this;!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),c(this,"selecting",!1),c(this,"startedInSelector",!1),c(this,"target",null),c(this,"_onSelectionChange",(function(){var t=window.getSelection();if(!n.selecting&&t.toString()){var e=o(t.anchorNode).closest(n.selector)[0];if(!e)return;n.target=e,n.selecting=!0,n.handler("started",n.target)}!n.selecting||!t.isCollapsed&&t.toString()&&o(t.anchorNode).closest(n.selector)[0]||(n.selecting=!1,n.handler("cleared",n.target))})),this.selector=e,this.handler=r},(e=[{key:"attach",value:function(){document.addEventListener("selectionchange",this._onSelectionChange)}},{key:"detach",value:function(){document.removeEventListener("selectionchange",this._onSelectionChange)}}])&&a(t.prototype,e),Object.defineProperty(t,"prototype",{writable:!1}),t;var t,e}(),s=r(1041),f=r(9073),p=r(1669);function h(t){return h="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},h(t)}var d=k().mark(W),y=k().mark(G),v=k().mark(H),m=k().mark(U),g=k().mark($);function b(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var r=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=r){var n,o,i,a,c=[],u=!0,l=!1;try{if(i=(r=r.call(t)).next,0===e){if(Object(r)!==r)return;u=!1}else for(;!(u=(n=i.call(r)).done)&&(c.push(n.value),c.length!==e);u=!0);}catch(t){l=!0,o=t}finally{try{if(!u&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(l)throw o}}return c}}(t,e)||x(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function w(t,e){var r="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!r){if(Array.isArray(t)||(r=x(t))||e&&t&&"number"==typeof t.length){r&&(t=r);var n=0,o=function(){};return{s:o,n:function(){return n>=t.length?{done:!0}:{done:!1,value:t[n++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,c=!1;return{s:function(){r=r.call(t)},n:function(){var t=r.next();return a=t.done,t},e:function(t){c=!0,i=t},f:function(){try{a||null==r.return||r.return()}finally{if(c)throw i}}}}function x(t,e){if(t){if("string"==typeof t)return S(t,e);var r={}.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?S(t,e):void 0}}function S(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=Array(e);r<e;r++)n[r]=t[r];return n}function k(){k=function(){return e};var t,e={},r=Object.prototype,n=r.hasOwnProperty,o=Object.defineProperty||function(t,e,r){t[e]=r.value},i="function"==typeof Symbol?Symbol:{},a=i.iterator||"@@iterator",c=i.asyncIterator||"@@asyncIterator",u=i.toStringTag||"@@toStringTag";function l(t,e,r){return Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{l({},"")}catch(t){l=function(t,e,r){return t[e]=r}}function s(t,e,r,n){var i=e&&e.prototype instanceof g?e:g,a=Object.create(i.prototype),c=new _(n||[]);return o(a,"_invoke",{value:R(t,r,c)}),a}function f(t,e,r){try{return{type:"normal",arg:t.call(e,r)}}catch(t){return{type:"throw",arg:t}}}e.wrap=s;var p="suspendedStart",d="suspendedYield",y="executing",v="completed",m={};function g(){}function b(){}function w(){}var x={};l(x,a,(function(){return this}));var S=Object.getPrototypeOf,E=S&&S(S(B([])));E&&E!==r&&n.call(E,a)&&(x=E);var P=w.prototype=g.prototype=Object.create(x);function j(t){["next","throw","return"].forEach((function(e){l(t,e,(function(t){return this._invoke(e,t)}))}))}function C(t,e){function r(o,i,a,c){var u=f(t[o],t,i);if("throw"!==u.type){var l=u.arg,s=l.value;return s&&"object"==h(s)&&n.call(s,"__await")?e.resolve(s.__await).then((function(t){r("next",t,a,c)}),(function(t){r("throw",t,a,c)})):e.resolve(s).then((function(t){l.value=t,a(l)}),(function(t){return r("throw",t,a,c)}))}c(u.arg)}var i;o(this,"_invoke",{value:function(t,n){function o(){return new e((function(e,o){r(t,n,e,o)}))}return i=i?i.then(o,o):o()}})}function R(e,r,n){var o=p;return function(i,a){if(o===y)throw Error("Generator is already running");if(o===v){if("throw"===i)throw a;return{value:t,done:!0}}for(n.method=i,n.arg=a;;){var c=n.delegate;if(c){var u=L(c,n);if(u){if(u===m)continue;return u}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(o===p)throw o=v,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);o=y;var l=f(e,r,n);if("normal"===l.type){if(o=n.done?v:d,l.arg===m)continue;return{value:l.arg,done:n.done}}"throw"===l.type&&(o=v,n.method="throw",n.arg=l.arg)}}}function L(e,r){var n=r.method,o=e.iterator[n];if(o===t)return r.delegate=null,"throw"===n&&e.iterator.return&&(r.method="return",r.arg=t,L(e,r),"throw"===r.method)||"return"!==n&&(r.method="throw",r.arg=new TypeError("The iterator does not provide a '"+n+"' method")),m;var i=f(o,e.iterator,r.arg);if("throw"===i.type)return r.method="throw",r.arg=i.arg,r.delegate=null,m;var a=i.arg;return a?a.done?(r[e.resultName]=a.value,r.next=e.nextLoc,"return"!==r.method&&(r.method="next",r.arg=t),r.delegate=null,m):a:(r.method="throw",r.arg=new TypeError("iterator result is not an object"),r.delegate=null,m)}function O(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function A(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function _(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(O,this),this.reset(!0)}function B(e){if(e||""===e){var r=e[a];if(r)return r.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var o=-1,i=function r(){for(;++o<e.length;)if(n.call(e,o))return r.value=e[o],r.done=!1,r;return r.value=t,r.done=!0,r};return i.next=i}}throw new TypeError(h(e)+" is not iterable")}return b.prototype=w,o(P,"constructor",{value:w,configurable:!0}),o(w,"constructor",{value:b,configurable:!0}),b.displayName=l(w,u,"GeneratorFunction"),e.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===b||"GeneratorFunction"===(e.displayName||e.name))},e.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,w):(t.__proto__=w,l(t,u,"GeneratorFunction")),t.prototype=Object.create(P),t},e.awrap=function(t){return{__await:t}},j(C.prototype),l(C.prototype,c,(function(){return this})),e.AsyncIterator=C,e.async=function(t,r,n,o,i){void 0===i&&(i=Promise);var a=new C(s(t,r,n,o),i);return e.isGeneratorFunction(r)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},j(P),l(P,u,"Generator"),l(P,a,(function(){return this})),l(P,"toString",(function(){return"[object Generator]"})),e.keys=function(t){var e=Object(t),r=[];for(var n in e)r.push(n);return r.reverse(),function t(){for(;r.length;){var n=r.pop();if(n in e)return t.value=n,t.done=!1,t}return t.done=!0,t}},e.values=B,_.prototype={constructor:_,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=t,this.done=!1,this.delegate=null,this.method="next",this.arg=t,this.tryEntries.forEach(A),!e)for(var r in this)"t"===r.charAt(0)&&n.call(this,r)&&!isNaN(+r.slice(1))&&(this[r]=t)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var r=this;function o(n,o){return c.type="throw",c.arg=e,r.next=n,o&&(r.method="next",r.arg=t),!!o}for(var i=this.tryEntries.length-1;i>=0;--i){var a=this.tryEntries[i],c=a.completion;if("root"===a.tryLoc)return o("end");if(a.tryLoc<=this.prev){var u=n.call(a,"catchLoc"),l=n.call(a,"finallyLoc");if(u&&l){if(this.prev<a.catchLoc)return o(a.catchLoc,!0);if(this.prev<a.finallyLoc)return o(a.finallyLoc)}else if(u){if(this.prev<a.catchLoc)return o(a.catchLoc,!0)}else{if(!l)throw Error("try statement without catch or finally");if(this.prev<a.finallyLoc)return o(a.finallyLoc)}}}},abrupt:function(t,e){for(var r=this.tryEntries.length-1;r>=0;--r){var o=this.tryEntries[r];if(o.tryLoc<=this.prev&&n.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,m):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),m},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),A(r),m}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var o=n.arg;A(r)}return o}}throw Error("illegal catch attempt")},delegateYield:function(e,r,n){return this.delegate={iterator:B(e),resultName:r,nextLoc:n},"next"===this.method&&(this.arg=t),m}},e}function E(t,e,r,n,o,i,a){try{var c=t[i](a),u=c.value}catch(t){return void r(t)}c.done?e(u):Promise.resolve(u).then(n,o)}function P(t){return function(){var e=this,r=arguments;return new Promise((function(n,o){var i=t.apply(e,r);function a(t){E(i,n,o,a,c,"next",t)}function c(t){E(i,n,o,a,c,"throw",t)}a(void 0)}))}}function j(t,e,r){return e=R(e),function(t,e){if(e&&("object"==h(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,C()?Reflect.construct(e,r||[],R(t).constructor):e.apply(t,r))}function C(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(C=function(){return!!t})()}function R(t){return R=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},R(t)}function L(t,e){return L=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},L(t,e)}function O(t,e,r){return(e=T(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function A(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function _(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,T(n.key),n)}}function B(t,e,r){return e&&_(t.prototype,e),r&&_(t,r),Object.defineProperty(t,"prototype",{writable:!1}),t}function T(t){var e=function(t,e){if("object"!=h(t)||!t)return t;var r=t[Symbol.toPrimitive];if(void 0!==r){var n=r.call(t,"string");if("object"!=h(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==h(e)?e:e+""}var I=window.BookReader,D=function(){return B((function t(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:10;A(this,t),this.maxSize=e,this.entries=[]}),[{key:"add",value:function(t){this.entries.length>=this.maxSize&&this.entries.shift(),this.entries.push(t)}}])}(),N=function(t){function e(t){var r;return A(this,e),O(r=j(this,e,[t]),"options",{enabled:!0,fullDjvuXmlUrl:null,singlePageDjvuXmlUrl:null,jsonp:!1,maxProtectedWords:200}),O(r,"djvuPagesPromise",null),O(r,"pageTextCache",new D),O(r,"maxWordRendered",2500),O(r,"_limitSelection",(function(){var t=window.getSelection();if(t.rangeCount){var e=t.getRangeAt(0),n=!!e.startContainer.parentElement.closest(".BRcontainer"),o=!!e.endContainer.parentElement.closest(".BRcontainer");if(n||o)if(n&&o){var i=function(t,e){var r,n=0,o=w(t);try{for(o.s();!(r=o.n()).done;){var i=r.value;if(n==e)return i;n++}}catch(t){o.e(t)}finally{o.f()}}(W($(e.startContainer,e.endContainer),(function(t){var e;return null===(e=t.classList)||void 0===e?void 0:e.contains("BRwordElement")})),r.options.maxProtectedWords-1);if(i&&e.endContainer.parentNode!=i){var a=document.createRange();a.setStart(e.startContainer,e.startOffset),a.setEnd(i.firstChild,i.textContent.length),t.removeAllRanges(),t.addRange(a)}}else t.removeAllRanges()}})),O(r,"_onSelectionChange",(function(t,e){if("started"===t)r.textSelectingMode(e);else{if("cleared"!==t)throw new Error("Unknown type ".concat(t));r.defaultMode(e)}})),r.rtl="rl"===r.br.pageProgression,r.selectionObserver=new l(".BRtextLayer",r._onSelectionChange),r}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&L(t,e)}(e,t),B(e,[{key:"init",value:function(){var t=this;this.options.enabled&&(this.loadData(),this.selectionObserver.attach(),new l(".BRtextLayer",(function(e){var r;"started"==e&&(null===(r=t.br.plugins.archiveAnalytics)||void 0===r||r.sendEvent("BookReader","SelectStart"),t.br.refs.$br.find(".BRpagecontainer--hasSelection").removeClass("BRpagecontainer--hasSelection"),p(window.getSelection().anchorNode).closest(".BRpagecontainer").addClass("BRpagecontainer--hasSelection"))})).attach(),this.br.protected&&(document.addEventListener("selectionchange",this._limitSelection),p(document.body).on("contextmenu dragstart copy",(function(t){var e=document.getSelection();if(null!=e&&e.toString()&&p(".BRtextLayer").toArray().some((function(t){return e.containsNode(t,!0)})))return t.preventDefault(),!1}))))}},{key:"_configurePageContainer",value:function(t){return this.br.mode!==this.br.constModeThumb&&t.page&&this.createTextLayer(t),t}},{key:"loadData",value:function(){this.options.singlePageDjvuXmlUrl||(this.djvuPagesPromise=p.ajax({type:"GET",url:(0,f.g)(this.options.fullDjvuXmlUrl,this.br.options.vars),dataType:this.options.jsonp?"jsonp":"html",cache:!0,xhrFields:{withCredentials:this.br.protected},error:function(t){}}).then((function(t){try{var e=p.parseXML(t);return e&&p(e).find("OBJECT")}catch(t){return}})))}},{key:"getPageText",value:(o=P(k().mark((function t(e){var r,n,o,i,a;return k().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(!this.options.singlePageDjvuXmlUrl){t.next=19;break}if(!(r=this.pageTextCache.entries.find((function(t){return t.index==e})))){t.next=4;break}return t.abrupt("return",r.response);case 4:return t.next=6,p.ajax({type:"GET",url:(0,f.g)(this.options.singlePageDjvuXmlUrl,this.br.options.vars,{pageIndex:e}),dataType:this.options.jsonp?"jsonp":"html",cache:!0,xhrFields:{withCredentials:this.br.protected},error:function(t){}});case 6:return n=t.sent,t.prev=7,o=p.parseXML(n),i=o&&p(o).find("OBJECT")[0],this.pageTextCache.add({index:e,response:i}),t.abrupt("return",i);case 14:return t.prev=14,t.t0=t.catch(7),t.abrupt("return",void 0);case 17:t.next=24;break;case 19:return t.next=21,this.djvuPagesPromise;case 21:if(!(a=t.sent)){t.next=24;break}return t.abrupt("return",a[e]);case 24:case"end":return t.stop()}}),t,this,[[7,14]])}))),function(t){return o.apply(this,arguments)})},{key:"interceptCopy",value:function(t){t[0].addEventListener("copy",(function(t){var e=document.getSelection();t.clipboardData.setData("text/plain",e.toString()),t.preventDefault()}))}},{key:"defaultMode",value:function(t){var e=this,r=p(t).closest(".BRpagecontainer");t.style.pointerEvents="none",r.find("img").css("pointer-events","auto"),p(t).off(".textSelectPluginHandler");var n=this.mouseIsDown,o=this.mouseIsDown;n&&(t.style.pointerEvents="auto"),p(t).on("mousedown.textSelectPluginHandler",(function(t){e.mouseIsDown=!0,p(t.target).is(".BRwordElement, .BRspace")&&t.stopPropagation()})),p(t).on("mouseup.textSelectPluginHandler",(function(r){e.mouseIsDown=!1,t.style.pointerEvents="none",o&&(o=!1,r.stopPropagation())}))}},{key:"textSelectingMode",value:function(t){var e=this,r=p(t).closest(".BRpagecontainer");t.style.pointerEvents="all",r.find("img").css("pointer-events","none"),p(t).off(".textSelectPluginHandler"),p(t).on("mousedown.textSelectPluginHandler",(function(t){e.mouseIsDown=!0,t.stopPropagation()})),p(t).on("mouseup.textSelectPluginHandler",(function(t){e.mouseIsDown=!1,t.stopPropagation()}))}},{key:"stopPageFlip",value:function(t){var e=this,r=t.find(".BRtextLayer");r.length&&(r.each((function(t,r){return e.defaultMode(r)})),this.br.protected||this.interceptCopy(t))}},{key:"createTextLayer",value:(r=P(k().mark((function t(e){var r,o,i,a,c,u,l,s,f,h,d,y,v,m,g,x,S,E,P,j,C,R,L,O,A=this;return k().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(r=e.page.index,!(o=e.$container).find(".BRtextLayer").length){t.next=5;break}return t.abrupt("return");case 5:return t.next=7,this.getPageText(r);case 7:if(i=t.sent){t.next=10;break}return t.abrupt("return");case 10:if(X(i),!((a=p(i).find("WORD").length)>this.maxWordRendered)){t.next=15;break}return console.log("Page ".concat(r," has too many words (").concat(a," > ").concat(this.maxWordRendered,"). Not rendering text layer.")),t.abrupt("return");case 15:c=(0,n.Ql)(e.page,"BRtextLayer"),u=parseFloat(e.$container[0].style.width)/e.page.width,l=parseFloat(e.$container[0].style.height)/e.page.height,c.style.transform="scale(".concat(u,", ").concat(l,")"),c.setAttribute("dir",this.rtl?"rtl":"ltr"),s=p(i).find("PARAGRAPH[coords]").toArray(),f=s.map((function(t){var e=A.renderParagraph(t);return c.appendChild(e),e})),h=F(c,".BRparagraphElement"),d=0,y=w(U(s,f));try{for(y.s();!(v=y.n()).done;)m=b(v.value,2),g=m[0],x=m[1],S=p(g).attr("coords").split(",").map(parseFloat),E=h.get(x),P=b(S,4),j=P[0],C=P[2],R=P[3],L=this.rtl?E.right-C:j-E.left,O=R-(E.top+d),x.style[this.rtl?"marginRight":"marginLeft"]="".concat(L,"px"),x.style.marginTop="".concat(O,"px"),d+=O,c.appendChild(x)}catch(t){y.e(t)}finally{y.f()}o.append(c),this.stopPageFlip(o);case 28:case"end":return t.stop()}}),t,this)}))),function(t){return r.apply(this,arguments)})},{key:"renderParagraph",value:function(t){var e=document.createElement("p");e.classList.add("BRparagraphElement");var r=b(p(t).attr("coords").split(",").map(parseFloat),4),n=r[0],o=r[1],i=r[2],a=r[3],c=[],u=p(t).find("LINE[coords]").toArray();if(!u.length)return e;var l,s=w(H(G(u,M)));try{for(s.s();!(l=s.n()).done;){var f=b(l.value,3),h=f[0],d=f[1],y=f[2],v=d.ocrElement==u[u.length-1],m=document.createElement("span");m.classList.add("BRlineElement");var g,k=w(d.words.entries());try{for(k.s();!(g=k.n()).done;){var E=b(g.value,2),P=E[0],j=E[1],C=b(p(j).attr("coords").split(",").map(parseFloat),4),R=C[1],L=C[2],O=C[3],A=R-O;if(c.push(A),0==P&&null!=h&&h.lastWord.textContent.trim().endsWith("-")){var _=b(p((y||h).firstWord).attr("coords").split(",").map(parseFloat),3)[0];p(j).attr("coords","".concat(_,",").concat(R,",").concat(L,",").concat(O))}var B=document.createElement("span");if(B.setAttribute("class","BRwordElement"),B.textContent=j.textContent.trim(),P>0){var T=document.createElement("span");T.classList.add("BRspace"),T.textContent=" ",m.append(T),m.appendChild(document.createTextNode(" "))}m.appendChild(B)}}catch(t){k.e(t)}finally{k.f()}var I=d.lastWord.textContent.trim().endsWith("-"),D=m.children[m.children.length-1];I&&!v&&(D.textContent=D.textContent.trim().slice(0,-1),D.classList.add("BRwordElement--hyphen")),e.appendChild(m),v||I||e.appendChild(document.createTextNode(" "))}}catch(t){s.e(t)}finally{s.f()}c.sort((function(t,e){return t-e}));var N=c[Math.floor(.85*c.length)]+4;e.style.left="".concat(n,"px"),e.style.top="".concat(a,"px"),e.style.width="".concat(i-n,"px"),e.style.height="".concat(o-a,"px"),e.style.fontSize="".concat(N,"px");var W,X=F(e,".BRwordElement"),Y=w(U(p(t).find("WORD").toArray(),e.querySelectorAll(".BRwordElement")));try{for(Y.s();!(W=Y.n()).done;){var $=b(W.value,2),q=$[0],z=$[1],J=X.get(z),Q=b(p(q).attr("coords").split(",").map(parseFloat),3),K=Q[0],V=Q[2]-K;q.textContent.endsWith(" ")&&(V=V*(q.textContent.length-1)/q.textContent.length);var Z=V-J.width;z.style.letterSpacing="".concat(Z/(q.textContent.length-1),"px")}}catch(t){Y.e(t)}finally{Y.f()}X=F(e,".BRwordElement");var tt,et,rt=F(e,".BRspace"),nt=p(t).find("LINE[coords]").toArray(),ot=Array.from(e.querySelectorAll(".BRlineElement")),it=a,at=w(U(nt,ot));try{for(at.s();!(tt=at.n()).done;){var ct,ut=b(tt.value,2),lt=ut[0],st=ut[1],ft=p(lt).find("WORD").toArray(),pt=this.rtl?i:n,ht=w(U(ft,st.querySelectorAll(".BRwordElement")));try{for(ht.s();!(ct=ht.n()).done;){var dt=b(ct.value,2),yt=dt[0],vt=dt[1],mt=X.get(vt),gt=b(p(yt).attr("coords").split(",").map(parseFloat),3),bt=gt[0],wt=gt[2],xt=this.rtl?-(wt-pt):bt-pt;if(vt.previousElementSibling){var St=vt.previousElementSibling;St.style.letterSpacing="".concat(xt-rt.get(St).width,"px")}else vt.style[this.rtl?"paddingRight":"paddingLeft"]="".concat(xt,"px");this.rtl?pt-=xt+mt.width:pt+=xt+mt.width}}catch(t){ht.e(t)}finally{ht.f()}var kt=Math.min.apply(Math,function(t){if(Array.isArray(t))return S(t)}(et=ft.map((function(t){return parseFloat(p(t).attr("coords").split(",")[3])})))||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(et)||x(et)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}())-it;st.previousElementSibling&&(st.previousElementSibling.style.lineHeight="".concat(kt,"px"),it+=kt)}}catch(t){at.e(t)}finally{at.f()}return ot[ot.length-1].style.lineHeight="".concat(o-it,"px"),e.appendChild(document.createElement("br")),e}}]);var r,o}(s.S);function F(t,e){var r={position:t.style.position,visibility:t.style.visibility,top:t.style.top,left:t.style.left,transform:t.style.transform};t.style.position="absolute",t.style.visibility="hidden",t.style.top="0",t.style.left="0",t.style.transform="none",document.body.appendChild(t);var n=new Map(Array.from(t.querySelectorAll(e)).map((function(t){var e=t.getBoundingClientRect();return[t,new Y(e.left+window.scrollX,e.top+window.scrollY,e.width,e.height)]})));return document.body.removeChild(t),Object.assign(t.style,r),n}function M(t){var e=p(t).find("WORD").toArray();return{ocrElement:t,words:e,firstWord:e[0],lastWord:e[e.length-1]}}function W(t,e){var r,n,o;return k().wrap((function(i){for(;;)switch(i.prev=i.next){case 0:r=w(t),i.prev=1,r.s();case 3:if((n=r.n()).done){i.next=10;break}if(o=n.value,!e(o)){i.next=8;break}return i.next=8,o;case 8:i.next=3;break;case 10:i.next=15;break;case 12:i.prev=12,i.t0=i.catch(1),r.e(i.t0);case 15:return i.prev=15,r.f(),i.finish(15);case 18:case"end":return i.stop()}}),d,null,[[1,12,15,18]])}function G(t,e){var r,n,o;return k().wrap((function(i){for(;;)switch(i.prev=i.next){case 0:r=w(t),i.prev=1,r.s();case 3:if((n=r.n()).done){i.next=9;break}return o=n.value,i.next=7,e(o);case 7:i.next=3;break;case 9:i.next=14;break;case 11:i.prev=11,i.t0=i.catch(1),r.e(i.t0);case 14:return i.prev=14,r.f(),i.finish(14);case 17:case"end":return i.stop()}}),y,null,[[1,11,14,17]])}function H(t){var e,r,n,o,i,a;return k().wrap((function(c){for(;;)switch(c.prev=c.next){case 0:e=void 0,r=void 0,n=void 0,o=w(t),c.prev=4,o.s();case 6:if((i=o.n()).done){c.next=17;break}if(a=i.value,void 0===r){c.next=12;break}return n=a,c.next=12,[e,r,n];case 12:e=r,r=a,n=void 0;case 15:c.next=6;break;case 17:c.next=22;break;case 19:c.prev=19,c.t0=c.catch(4),o.e(c.t0);case 22:return c.prev=22,o.f(),c.finish(22);case 25:if(void 0===r){c.next=28;break}return c.next=28,[e,r,n];case 28:case"end":return c.stop()}}),v,null,[[4,19,22,25]])}function U(t,e){var r,n,o,i;return k().wrap((function(a){for(;;)switch(a.prev=a.next){case 0:r=t[Symbol.iterator](),n=e[Symbol.iterator]();case 2:if(o=r.next(),i=n.next(),!o.done||!i.done){a.next=7;break}return a.abrupt("return");case 7:if(!o.done&&!i.done){a.next=9;break}throw new Error("zip: one of the iterators is done");case 9:return a.next=11,[o.value,i.value];case 11:a.next=2;break;case 13:case"end":return a.stop()}}),m)}function X(t){if(!p(t).attr("coords")&&t.children){var e=p(t).children().toArray();if(0!==e.length){var r,n=w(e);try{for(n.s();!(r=n.n()).done;)X(r.value)}catch(t){n.e(t)}finally{n.f()}var o,i=[],a=w(e);try{for(a.s();!(o=a.n()).done;){var c=o.value;p(c).attr("coords")&&i.push(p(c).attr("coords").split(",").map(parseFloat))}}catch(t){a.e(t)}finally{a.f()}var u=function(t){var e,r=1/0,n=-1/0,o=-1/0,i=1/0,a=w(t);try{for(a.s();!(e=a.n()).done;){var c=b(e.value,4),u=c[0],l=c[1],s=c[2],f=c[3];r=Math.min(r,u),n=Math.max(n,l),o=Math.max(o,s),i=Math.min(i,f)}}catch(t){a.e(t)}finally{a.f()}return[r,n,o,i]}(i);Math.abs(u[0])!=1/0&&p(t).attr("coords",u.join(","))}}}null==I||I.registerPlugin("textSelection",N);var Y=function(){return B((function t(e,r,n,o){A(this,t),this.x=e,this.y=r,this.width=n,this.height=o}),[{key:"right",get:function(){return this.x+this.width}},{key:"bottom",get:function(){return this.y+this.height}},{key:"top",get:function(){return this.y}},{key:"left",get:function(){return this.x}}])}();function $(t,e){var r,n;return k().wrap((function(o){for(;;)switch(o.prev=o.next){case 0:return n=function(t){var o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},i=o.children,a=void 0===i||i,c=o.parents,u=void 0===c||c,l=o.siblings,s=void 0===l||l;return k().mark((function o(){var i;return k().wrap((function(o){for(;;)switch(o.prev=o.next){case 0:if(t!==e){o.next=5;break}return r=!0,o.next=4,t;case 4:return o.abrupt("return");case 5:return o.next=7,t;case 7:if(!a||!t.firstChild){o.next=11;break}return o.delegateYield(n(t.firstChild,{children:!0,parents:!1,siblings:!0}),"t0",9);case 9:if(!r){o.next=11;break}return o.abrupt("return");case 11:if(!s){o.next=20;break}i=t.nextSibling;case 13:if(!i){o.next=20;break}return o.delegateYield(n(i,{children:!0,parents:!1,siblings:!1}),"t1",15);case 15:if(!r){o.next=17;break}return o.abrupt("return");case 17:i=i.nextSibling,o.next=13;break;case 20:if(!u||!t.parentNode){o.next=24;break}return o.delegateYield(n(t.parentNode,{children:!1,parents:!0,siblings:!0}),"t2",22);case 22:if(!r){o.next=24;break}return o.abrupt("return");case 24:case"end":return o.stop()}}),o)}))()},r=!1,o.delegateYield(n(t),"t0",3);case 3:case"end":return o.stop()}}),g)}},9073:function(t,e,r){function n(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=Array(e);r<e;r++)n[r]=t[r];return n}function o(t,e){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:i;return null==t?void 0:t.replace(/\{\{([^}]*?)\}\}/g,(function(t,i){if(!i)return t;var a,c=function(t){if(Array.isArray(t))return t}(a=i.split("|").map((function(t){return t.trim()})))||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(a)||function(t,e){if(t){if("string"==typeof t)return n(t,e);var r={}.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?n(t,e):void 0}}(a)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}(),u=c[0],l=c.slice(1);if(!(u in r)&&!(u in e))return t;var s=u in r?r[u]:u in e?e[u]:null;return l.map((function(t){return o[t]})).reduce((function(t,e){return e(t)}),s&&s.toString())}))}r.d(e,{g:function(){return o}}),r(2675),r(9463),r(2259),r(3418),r(3792),r(2062),r(2712),r(4782),r(2010),r(6099),r(7495),r(8781),r(7764),r(5440),r(2762),r(2953);var i={urlencode:encodeURIComponent}}},function(t){t(t.s=2763)}]);
2
+ "use strict";(self.webpackChunk_internetarchive_bookreader=self.webpackChunk_internetarchive_bookreader||[]).push([[326],{706:function(t,e,r){var n=r(350).PROPER,o=r(9039),i=r(7452);t.exports=function(t){return o((function(){return!!i[t]()||"​…᠎"!=="​…᠎"[t]()||n&&i[t].name!==t}))}},2762:function(t,e,r){var n=r(6518),o=r(3802).trim;n({target:"String",proto:!0,forced:r(706)("trim")},{trim:function(){return o(this)}})},1041:function(t,e,r){function n(t){return n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},n(t)}function o(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,i(n.key),n)}}function i(t){var e=function(t,e){if("object"!=n(t)||!t)return t;var r=t[Symbol.toPrimitive];if(void 0!==r){var o=r.call(t,"string");if("object"!=n(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==n(e)?e:e+""}r.d(e,{S:function(){return a}}),r(2675),r(9463),r(2259),r(5700),r(3792),r(9572),r(8130),r(9085),r(6099),r(7764),r(2953);var a=function(){return t=function t(e){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),this.br=e,this.options},(e=[{key:"setup",value:function(t){this.options=Object.assign({},this.options,t)}},{key:"init",value:function(){}},{key:"_configurePageContainer",value:function(t){}},{key:"_configureToolbar",value:function(t){}},{key:"_bindNavigationHandlers",value:function(){}},{key:"extendNavBar",value:function(t){}}])&&o(t.prototype,e),Object.defineProperty(t,"prototype",{writable:!1}),t;var t,e}()},2763:function(t,e,r){r(2675),r(9463),r(6412),r(2259),r(5700),r(8125),r(8706),r(113),r(3418),r(3792),r(8598),r(2062),r(4490),r(4782),r(6910),r(9572),r(2010),r(4731),r(6033),r(479),r(8130),r(9085),r(875),r(6099),r(8459),r(3362),r(825),r(7495),r(8781),r(9449),r(7764),r(2762),r(3500),r(2953);var n=r(4907),o=r(1669);function i(t){return i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},i(t)}function a(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,u(n.key),n)}}function c(t,e,r){return(e=u(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function u(t){var e=function(t,e){if("object"!=i(t)||!t)return t;var r=t[Symbol.toPrimitive];if(void 0!==r){var n=r.call(t,"string");if("object"!=i(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==i(e)?e:e+""}var l=function(){return t=function t(e,r){var n=this;!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),c(this,"selecting",!1),c(this,"startedInSelector",!1),c(this,"target",null),c(this,"_onSelectionChange",(function(){var t=window.getSelection();if(!n.selecting&&t.toString()){var e=o(t.anchorNode).closest(n.selector)[0];if(!e)return;n.target=e,n.selecting=!0,n.handler("started",n.target)}!n.selecting||!t.isCollapsed&&t.toString()&&o(t.anchorNode).closest(n.selector)[0]||(n.selecting=!1,n.handler("cleared",n.target))})),this.selector=e,this.handler=r},(e=[{key:"attach",value:function(){document.addEventListener("selectionchange",this._onSelectionChange)}},{key:"detach",value:function(){document.removeEventListener("selectionchange",this._onSelectionChange)}}])&&a(t.prototype,e),Object.defineProperty(t,"prototype",{writable:!1}),t;var t,e}(),s=r(1041),f=r(9073),p=r(4565),h=r(1669);function d(t){return d="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},d(t)}var y=E().mark(W),v=E().mark(G),m=E().mark(H),g=E().mark(U),b=E().mark($);function w(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var r=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=r){var n,o,i,a,c=[],u=!0,l=!1;try{if(i=(r=r.call(t)).next,0===e){if(Object(r)!==r)return;u=!1}else for(;!(u=(n=i.call(r)).done)&&(c.push(n.value),c.length!==e);u=!0);}catch(t){l=!0,o=t}finally{try{if(!u&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(l)throw o}}return c}}(t,e)||S(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function x(t,e){var r="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!r){if(Array.isArray(t)||(r=S(t))||e&&t&&"number"==typeof t.length){r&&(t=r);var n=0,o=function(){};return{s:o,n:function(){return n>=t.length?{done:!0}:{done:!1,value:t[n++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,c=!1;return{s:function(){r=r.call(t)},n:function(){var t=r.next();return a=t.done,t},e:function(t){c=!0,i=t},f:function(){try{a||null==r.return||r.return()}finally{if(c)throw i}}}}function S(t,e){if(t){if("string"==typeof t)return k(t,e);var r={}.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?k(t,e):void 0}}function k(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=Array(e);r<e;r++)n[r]=t[r];return n}function E(){E=function(){return e};var t,e={},r=Object.prototype,n=r.hasOwnProperty,o=Object.defineProperty||function(t,e,r){t[e]=r.value},i="function"==typeof Symbol?Symbol:{},a=i.iterator||"@@iterator",c=i.asyncIterator||"@@asyncIterator",u=i.toStringTag||"@@toStringTag";function l(t,e,r){return Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{l({},"")}catch(t){l=function(t,e,r){return t[e]=r}}function s(t,e,r,n){var i=e&&e.prototype instanceof g?e:g,a=Object.create(i.prototype),c=new T(n||[]);return o(a,"_invoke",{value:R(t,r,c)}),a}function f(t,e,r){try{return{type:"normal",arg:t.call(e,r)}}catch(t){return{type:"throw",arg:t}}}e.wrap=s;var p="suspendedStart",h="suspendedYield",y="executing",v="completed",m={};function g(){}function b(){}function w(){}var x={};l(x,a,(function(){return this}));var S=Object.getPrototypeOf,k=S&&S(S(_([])));k&&k!==r&&n.call(k,a)&&(x=k);var P=w.prototype=g.prototype=Object.create(x);function j(t){["next","throw","return"].forEach((function(e){l(t,e,(function(t){return this._invoke(e,t)}))}))}function C(t,e){function r(o,i,a,c){var u=f(t[o],t,i);if("throw"!==u.type){var l=u.arg,s=l.value;return s&&"object"==d(s)&&n.call(s,"__await")?e.resolve(s.__await).then((function(t){r("next",t,a,c)}),(function(t){r("throw",t,a,c)})):e.resolve(s).then((function(t){l.value=t,a(l)}),(function(t){return r("throw",t,a,c)}))}c(u.arg)}var i;o(this,"_invoke",{value:function(t,n){function o(){return new e((function(e,o){r(t,n,e,o)}))}return i=i?i.then(o,o):o()}})}function R(e,r,n){var o=p;return function(i,a){if(o===y)throw Error("Generator is already running");if(o===v){if("throw"===i)throw a;return{value:t,done:!0}}for(n.method=i,n.arg=a;;){var c=n.delegate;if(c){var u=O(c,n);if(u){if(u===m)continue;return u}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(o===p)throw o=v,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);o=y;var l=f(e,r,n);if("normal"===l.type){if(o=n.done?v:h,l.arg===m)continue;return{value:l.arg,done:n.done}}"throw"===l.type&&(o=v,n.method="throw",n.arg=l.arg)}}}function O(e,r){var n=r.method,o=e.iterator[n];if(o===t)return r.delegate=null,"throw"===n&&e.iterator.return&&(r.method="return",r.arg=t,O(e,r),"throw"===r.method)||"return"!==n&&(r.method="throw",r.arg=new TypeError("The iterator does not provide a '"+n+"' method")),m;var i=f(o,e.iterator,r.arg);if("throw"===i.type)return r.method="throw",r.arg=i.arg,r.delegate=null,m;var a=i.arg;return a?a.done?(r[e.resultName]=a.value,r.next=e.nextLoc,"return"!==r.method&&(r.method="next",r.arg=t),r.delegate=null,m):a:(r.method="throw",r.arg=new TypeError("iterator result is not an object"),r.delegate=null,m)}function L(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function A(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function T(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(L,this),this.reset(!0)}function _(e){if(e||""===e){var r=e[a];if(r)return r.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var o=-1,i=function r(){for(;++o<e.length;)if(n.call(e,o))return r.value=e[o],r.done=!1,r;return r.value=t,r.done=!0,r};return i.next=i}}throw new TypeError(d(e)+" is not iterable")}return b.prototype=w,o(P,"constructor",{value:w,configurable:!0}),o(w,"constructor",{value:b,configurable:!0}),b.displayName=l(w,u,"GeneratorFunction"),e.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===b||"GeneratorFunction"===(e.displayName||e.name))},e.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,w):(t.__proto__=w,l(t,u,"GeneratorFunction")),t.prototype=Object.create(P),t},e.awrap=function(t){return{__await:t}},j(C.prototype),l(C.prototype,c,(function(){return this})),e.AsyncIterator=C,e.async=function(t,r,n,o,i){void 0===i&&(i=Promise);var a=new C(s(t,r,n,o),i);return e.isGeneratorFunction(r)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},j(P),l(P,u,"Generator"),l(P,a,(function(){return this})),l(P,"toString",(function(){return"[object Generator]"})),e.keys=function(t){var e=Object(t),r=[];for(var n in e)r.push(n);return r.reverse(),function t(){for(;r.length;){var n=r.pop();if(n in e)return t.value=n,t.done=!1,t}return t.done=!0,t}},e.values=_,T.prototype={constructor:T,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=t,this.done=!1,this.delegate=null,this.method="next",this.arg=t,this.tryEntries.forEach(A),!e)for(var r in this)"t"===r.charAt(0)&&n.call(this,r)&&!isNaN(+r.slice(1))&&(this[r]=t)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var r=this;function o(n,o){return c.type="throw",c.arg=e,r.next=n,o&&(r.method="next",r.arg=t),!!o}for(var i=this.tryEntries.length-1;i>=0;--i){var a=this.tryEntries[i],c=a.completion;if("root"===a.tryLoc)return o("end");if(a.tryLoc<=this.prev){var u=n.call(a,"catchLoc"),l=n.call(a,"finallyLoc");if(u&&l){if(this.prev<a.catchLoc)return o(a.catchLoc,!0);if(this.prev<a.finallyLoc)return o(a.finallyLoc)}else if(u){if(this.prev<a.catchLoc)return o(a.catchLoc,!0)}else{if(!l)throw Error("try statement without catch or finally");if(this.prev<a.finallyLoc)return o(a.finallyLoc)}}}},abrupt:function(t,e){for(var r=this.tryEntries.length-1;r>=0;--r){var o=this.tryEntries[r];if(o.tryLoc<=this.prev&&n.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,m):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),m},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),A(r),m}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var o=n.arg;A(r)}return o}}throw Error("illegal catch attempt")},delegateYield:function(e,r,n){return this.delegate={iterator:_(e),resultName:r,nextLoc:n},"next"===this.method&&(this.arg=t),m}},e}function P(t,e,r,n,o,i,a){try{var c=t[i](a),u=c.value}catch(t){return void r(t)}c.done?e(u):Promise.resolve(u).then(n,o)}function j(t){return function(){var e=this,r=arguments;return new Promise((function(n,o){var i=t.apply(e,r);function a(t){P(i,n,o,a,c,"next",t)}function c(t){P(i,n,o,a,c,"throw",t)}a(void 0)}))}}function C(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function R(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,I(n.key),n)}}function O(t,e,r){return e&&R(t.prototype,e),r&&R(t,r),Object.defineProperty(t,"prototype",{writable:!1}),t}function L(t,e,r){return e=T(e),function(t,e){if(e&&("object"==d(e)||"function"==typeof e))return e;if(void 0!==e)throw new TypeError("Derived constructors may only return object or undefined");return function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t)}(t,A()?Reflect.construct(e,r||[],T(t).constructor):e.apply(t,r))}function A(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(A=function(){return!!t})()}function T(t){return T=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},T(t)}function _(t,e){return _=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},_(t,e)}function B(t,e,r){return(e=I(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function I(t){var e=function(t,e){if("object"!=d(t)||!t)return t;var r=t[Symbol.toPrimitive];if(void 0!==r){var n=r.call(t,"string");if("object"!=d(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==d(e)?e:e+""}var D=window.BookReader,N=function(t){function e(t){var r;return C(this,e),B(r=L(this,e,[t]),"options",{enabled:!0,fullDjvuXmlUrl:null,singlePageDjvuXmlUrl:null,jsonp:!1,maxProtectedWords:200}),B(r,"djvuPagesPromise",null),B(r,"pageTextCache",new p.l),B(r,"maxWordRendered",2500),B(r,"_limitSelection",(function(){var t=window.getSelection();if(t.rangeCount){var e=t.getRangeAt(0),n=!!e.startContainer.parentElement.closest(".BRcontainer"),o=!!e.endContainer.parentElement.closest(".BRcontainer");if(n||o)if(n&&o){var i=function(t,e){var r,n=0,o=x(t);try{for(o.s();!(r=o.n()).done;){var i=r.value;if(n==e)return i;n++}}catch(t){o.e(t)}finally{o.f()}}(W($(e.startContainer,e.endContainer),(function(t){var e;return null===(e=t.classList)||void 0===e?void 0:e.contains("BRwordElement")})),r.options.maxProtectedWords-1);if(i&&e.endContainer.parentNode!=i){var a=document.createRange();a.setStart(e.startContainer,e.startOffset),a.setEnd(i.firstChild,i.textContent.length),t.removeAllRanges(),t.addRange(a)}}else t.removeAllRanges()}})),B(r,"_onSelectionChange",(function(t,e){if("started"===t)r.textSelectingMode(e);else{if("cleared"!==t)throw new Error("Unknown type ".concat(t));r.defaultMode(e)}})),r.rtl="rl"===r.br.pageProgression,r.selectionObserver=new l(".BRtextLayer",r._onSelectionChange),r}return function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),Object.defineProperty(t,"prototype",{writable:!1}),e&&_(t,e)}(e,t),O(e,[{key:"init",value:function(){var t=this;this.options.enabled&&(this.loadData(),this.selectionObserver.attach(),new l(".BRtextLayer",(function(e){var r;"started"==e&&(null===(r=t.br.plugins.archiveAnalytics)||void 0===r||r.sendEvent("BookReader","SelectStart"),t.br.refs.$br.find(".BRpagecontainer--hasSelection").removeClass("BRpagecontainer--hasSelection"),h(window.getSelection().anchorNode).closest(".BRpagecontainer").addClass("BRpagecontainer--hasSelection"))})).attach(),this.br.protected&&(document.addEventListener("selectionchange",this._limitSelection),h(document.body).on("contextmenu dragstart copy",(function(t){var e=document.getSelection();if(null!=e&&e.toString()&&h(".BRtextLayer").toArray().some((function(t){return e.containsNode(t,!0)})))return t.preventDefault(),!1}))))}},{key:"_configurePageContainer",value:function(t){return this.br.mode!==this.br.constModeThumb&&t.page&&this.createTextLayer(t),t}},{key:"loadData",value:function(){this.options.singlePageDjvuXmlUrl||(this.djvuPagesPromise=h.ajax({type:"GET",url:(0,f.g)(this.options.fullDjvuXmlUrl,this.br.options.vars),dataType:this.options.jsonp?"jsonp":"html",cache:!0,xhrFields:{withCredentials:this.br.protected},error:function(t){}}).then((function(t){try{var e=h.parseXML(t);return e&&h(e).find("OBJECT")}catch(t){return}})))}},{key:"getPageText",value:(o=j(E().mark((function t(e){var r,n,o,i,a;return E().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(!this.options.singlePageDjvuXmlUrl){t.next=19;break}if(!(r=this.pageTextCache.entries.find((function(t){return t.index==e})))){t.next=4;break}return t.abrupt("return",r.response);case 4:return t.next=6,h.ajax({type:"GET",url:(0,f.g)(this.options.singlePageDjvuXmlUrl,this.br.options.vars,{pageIndex:e}),dataType:this.options.jsonp?"jsonp":"html",cache:!0,xhrFields:{withCredentials:this.br.protected},error:function(t){}});case 6:return n=t.sent,t.prev=7,o=h.parseXML(n),i=o&&h(o).find("OBJECT")[0],this.pageTextCache.add({index:e,response:i}),t.abrupt("return",i);case 14:return t.prev=14,t.t0=t.catch(7),t.abrupt("return",void 0);case 17:t.next=24;break;case 19:return t.next=21,this.djvuPagesPromise;case 21:if(!(a=t.sent)){t.next=24;break}return t.abrupt("return",a[e]);case 24:case"end":return t.stop()}}),t,this,[[7,14]])}))),function(t){return o.apply(this,arguments)})},{key:"interceptCopy",value:function(t){t[0].addEventListener("copy",(function(t){var e=document.getSelection();t.clipboardData.setData("text/plain",e.toString()),t.preventDefault()}))}},{key:"defaultMode",value:function(t){var e=this,r=h(t).closest(".BRpagecontainer");t.style.pointerEvents="none",r.find("img").css("pointer-events","auto"),h(t).off(".textSelectPluginHandler");var n=this.mouseIsDown,o=this.mouseIsDown;n&&(t.style.pointerEvents="auto"),h(t).on("mousedown.textSelectPluginHandler",(function(t){e.mouseIsDown=!0,h(t.target).is(".BRwordElement, .BRspace")&&t.stopPropagation()})),h(t).on("mouseup.textSelectPluginHandler",(function(r){e.mouseIsDown=!1,t.style.pointerEvents="none",o&&(o=!1,r.stopPropagation())}))}},{key:"textSelectingMode",value:function(t){var e=this,r=h(t).closest(".BRpagecontainer");t.style.pointerEvents="all",r.find("img").css("pointer-events","none"),h(t).off(".textSelectPluginHandler"),h(t).on("mousedown.textSelectPluginHandler",(function(t){e.mouseIsDown=!0,t.stopPropagation()})),h(t).on("mouseup.textSelectPluginHandler",(function(t){e.mouseIsDown=!1,t.stopPropagation()}))}},{key:"stopPageFlip",value:function(t){var e=this,r=t.find(".BRtextLayer");r.length&&(r.each((function(t,r){return e.defaultMode(r)})),this.br.protected||this.interceptCopy(t))}},{key:"createTextLayer",value:(r=j(E().mark((function t(e){var r,o,i,a,c,u,l,s,f,p,d,y,v,m,g,b,S,k,P,j,C,R,O,L,A=this;return E().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(r=e.page.index,!(o=e.$container).find(".BRtextLayer").length){t.next=5;break}return t.abrupt("return");case 5:return t.next=7,this.getPageText(r);case 7:if(i=t.sent){t.next=10;break}return t.abrupt("return");case 10:if(X(i),!((a=h(i).find("WORD").length)>this.maxWordRendered)){t.next=15;break}return console.log("Page ".concat(r," has too many words (").concat(a," > ").concat(this.maxWordRendered,"). Not rendering text layer.")),t.abrupt("return");case 15:return c=(0,n.Ql)(e.page,"BRtextLayer"),t.next=18,Promise.resolve();case 18:u=parseFloat(e.$container[0].style.width)/e.page.width,l=parseFloat(e.$container[0].style.height)/e.page.height,c.style.transform="scale(".concat(u,", ").concat(l,")"),c.setAttribute("dir",this.rtl?"rtl":"ltr"),s=h(i).find("PARAGRAPH[coords]").toArray(),f=s.map((function(t){var e=A.renderParagraph(t);return c.appendChild(e),e})),p=F(c,".BRparagraphElement"),d=0,y=x(U(s,f));try{for(y.s();!(v=y.n()).done;)m=w(v.value,2),g=m[0],b=m[1],S=h(g).attr("coords").split(",").map(parseFloat),k=p.get(b),P=w(S,4),j=P[0],C=P[2],R=P[3],O=this.rtl?k.right-C:j-k.left,L=R-(k.top+d),b.style[this.rtl?"marginRight":"marginLeft"]="".concat(O,"px"),b.style.marginTop="".concat(L,"px"),d+=L,c.appendChild(b)}catch(t){y.e(t)}finally{y.f()}o.append(c),this.stopPageFlip(o),this.br.trigger("textLayerRendered",{pageIndex:r,pageContainer:e});case 31:case"end":return t.stop()}}),t,this)}))),function(t){return r.apply(this,arguments)})},{key:"renderParagraph",value:function(t){var e=document.createElement("p");e.classList.add("BRparagraphElement");var r=w(h(t).attr("coords").split(",").map(parseFloat),4),n=r[0],o=r[1],i=r[2],a=r[3],c=[],u=h(t).find("LINE[coords]").toArray();if(!u.length)return e;var l,s=x(H(G(u,M)));try{for(s.s();!(l=s.n()).done;){var f=w(l.value,3),p=f[0],d=f[1],y=f[2],v=d.ocrElement==u[u.length-1],m=document.createElement("span");m.classList.add("BRlineElement");var g,b=x(d.words.entries());try{for(b.s();!(g=b.n()).done;){var E=w(g.value,2),P=E[0],j=E[1],C=w(h(j).attr("coords").split(",").map(parseFloat),4),R=C[1],O=C[2],L=C[3],A=R-L;if(c.push(A),0==P&&null!=p&&p.lastWord.textContent.trim().endsWith("-")){var T=w(h((y||p).firstWord).attr("coords").split(",").map(parseFloat),3)[0];h(j).attr("coords","".concat(T,",").concat(R,",").concat(O,",").concat(L))}var _=document.createElement("span");if(_.setAttribute("class","BRwordElement"),_.textContent=j.textContent.trim(),P>0){var B=document.createElement("span");B.classList.add("BRspace"),B.textContent=" ",m.append(B),m.appendChild(document.createTextNode(" "))}m.appendChild(_)}}catch(t){b.e(t)}finally{b.f()}var I=d.lastWord.textContent.trim().endsWith("-"),D=m.children[m.children.length-1];I&&!v&&(D.textContent=D.textContent.trim().slice(0,-1),D.classList.add("BRwordElement--hyphen")),e.appendChild(m),v||I||e.appendChild(document.createTextNode(" "))}}catch(t){s.e(t)}finally{s.f()}c.sort((function(t,e){return t-e}));var N=c[Math.floor(.85*c.length)]+4;e.style.left="".concat(n,"px"),e.style.top="".concat(a,"px"),e.style.width="".concat(i-n,"px"),e.style.height="".concat(o-a,"px"),e.style.fontSize="".concat(N,"px");var W,X=F(e,".BRwordElement"),Y=x(U(h(t).find("WORD").toArray(),e.querySelectorAll(".BRwordElement")));try{for(Y.s();!(W=Y.n()).done;){var $=w(W.value,2),q=$[0],z=$[1],J=X.get(z),Q=w(h(q).attr("coords").split(",").map(parseFloat),3),K=Q[0],V=Q[2]-K;q.textContent.endsWith(" ")&&(V=V*(q.textContent.length-1)/q.textContent.length);var Z=V-J.width;z.style.letterSpacing="".concat(Z/(q.textContent.length-1),"px")}}catch(t){Y.e(t)}finally{Y.f()}X=F(e,".BRwordElement");var tt,et,rt=F(e,".BRspace"),nt=h(t).find("LINE[coords]").toArray(),ot=Array.from(e.querySelectorAll(".BRlineElement")),it=a,at=x(U(nt,ot));try{for(at.s();!(tt=at.n()).done;){var ct,ut=w(tt.value,2),lt=ut[0],st=ut[1],ft=h(lt).find("WORD").toArray(),pt=this.rtl?i:n,ht=x(U(ft,st.querySelectorAll(".BRwordElement")));try{for(ht.s();!(ct=ht.n()).done;){var dt=w(ct.value,2),yt=dt[0],vt=dt[1],mt=X.get(vt),gt=w(h(yt).attr("coords").split(",").map(parseFloat),3),bt=gt[0],wt=gt[2],xt=this.rtl?-(wt-pt):bt-pt;if(vt.previousElementSibling){var St=vt.previousElementSibling;St.style.letterSpacing="".concat(xt-rt.get(St).width,"px")}else vt.style[this.rtl?"paddingRight":"paddingLeft"]="".concat(xt,"px");this.rtl?pt-=xt+mt.width:pt+=xt+mt.width}}catch(t){ht.e(t)}finally{ht.f()}var kt=Math.min.apply(Math,function(t){if(Array.isArray(t))return k(t)}(et=ft.map((function(t){return parseFloat(h(t).attr("coords").split(",")[3])})))||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(et)||S(et)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}())-it;st.previousElementSibling&&(st.previousElementSibling.style.lineHeight="".concat(kt,"px"),it+=kt)}}catch(t){at.e(t)}finally{at.f()}return ot[ot.length-1].style.lineHeight="".concat(o-it,"px"),e.appendChild(document.createElement("br")),e}}]);var r,o}(s.S);function F(t,e){var r={position:t.style.position,visibility:t.style.visibility,top:t.style.top,left:t.style.left,transform:t.style.transform};t.style.position="absolute",t.style.visibility="hidden",t.style.top="0",t.style.left="0",t.style.transform="none",document.body.appendChild(t);var n=new Map(Array.from(t.querySelectorAll(e)).map((function(t){var e=t.getBoundingClientRect();return[t,new Y(e.left+window.scrollX,e.top+window.scrollY,e.width,e.height)]})));return document.body.removeChild(t),Object.assign(t.style,r),n}function M(t){var e=h(t).find("WORD").toArray();return{ocrElement:t,words:e,firstWord:e[0],lastWord:e[e.length-1]}}function W(t,e){var r,n,o;return E().wrap((function(i){for(;;)switch(i.prev=i.next){case 0:r=x(t),i.prev=1,r.s();case 3:if((n=r.n()).done){i.next=10;break}if(o=n.value,!e(o)){i.next=8;break}return i.next=8,o;case 8:i.next=3;break;case 10:i.next=15;break;case 12:i.prev=12,i.t0=i.catch(1),r.e(i.t0);case 15:return i.prev=15,r.f(),i.finish(15);case 18:case"end":return i.stop()}}),y,null,[[1,12,15,18]])}function G(t,e){var r,n,o;return E().wrap((function(i){for(;;)switch(i.prev=i.next){case 0:r=x(t),i.prev=1,r.s();case 3:if((n=r.n()).done){i.next=9;break}return o=n.value,i.next=7,e(o);case 7:i.next=3;break;case 9:i.next=14;break;case 11:i.prev=11,i.t0=i.catch(1),r.e(i.t0);case 14:return i.prev=14,r.f(),i.finish(14);case 17:case"end":return i.stop()}}),v,null,[[1,11,14,17]])}function H(t){var e,r,n,o,i,a;return E().wrap((function(c){for(;;)switch(c.prev=c.next){case 0:e=void 0,r=void 0,n=void 0,o=x(t),c.prev=4,o.s();case 6:if((i=o.n()).done){c.next=17;break}if(a=i.value,void 0===r){c.next=12;break}return n=a,c.next=12,[e,r,n];case 12:e=r,r=a,n=void 0;case 15:c.next=6;break;case 17:c.next=22;break;case 19:c.prev=19,c.t0=c.catch(4),o.e(c.t0);case 22:return c.prev=22,o.f(),c.finish(22);case 25:if(void 0===r){c.next=28;break}return c.next=28,[e,r,n];case 28:case"end":return c.stop()}}),m,null,[[4,19,22,25]])}function U(t,e){var r,n,o,i;return E().wrap((function(a){for(;;)switch(a.prev=a.next){case 0:r=t[Symbol.iterator](),n=e[Symbol.iterator]();case 2:if(o=r.next(),i=n.next(),!o.done||!i.done){a.next=7;break}return a.abrupt("return");case 7:if(!o.done&&!i.done){a.next=9;break}throw new Error("zip: one of the iterators is done");case 9:return a.next=11,[o.value,i.value];case 11:a.next=2;break;case 13:case"end":return a.stop()}}),g)}function X(t){if(!h(t).attr("coords")&&t.children){var e=h(t).children().toArray();if(0!==e.length){var r,n=x(e);try{for(n.s();!(r=n.n()).done;)X(r.value)}catch(t){n.e(t)}finally{n.f()}var o,i=[],a=x(e);try{for(a.s();!(o=a.n()).done;){var c=o.value;h(c).attr("coords")&&i.push(h(c).attr("coords").split(",").map(parseFloat))}}catch(t){a.e(t)}finally{a.f()}var u=function(t){var e,r=1/0,n=-1/0,o=-1/0,i=1/0,a=x(t);try{for(a.s();!(e=a.n()).done;){var c=w(e.value,4),u=c[0],l=c[1],s=c[2],f=c[3];r=Math.min(r,u),n=Math.max(n,l),o=Math.max(o,s),i=Math.min(i,f)}}catch(t){a.e(t)}finally{a.f()}return[r,n,o,i]}(i);Math.abs(u[0])!=1/0&&h(t).attr("coords",u.join(","))}}}null==D||D.registerPlugin("textSelection",N);var Y=function(){return O((function t(e,r,n,o){C(this,t),this.x=e,this.y=r,this.width=n,this.height=o}),[{key:"right",get:function(){return this.x+this.width}},{key:"bottom",get:function(){return this.y+this.height}},{key:"top",get:function(){return this.y}},{key:"left",get:function(){return this.x}}])}();function $(t,e){var r,n;return E().wrap((function(o){for(;;)switch(o.prev=o.next){case 0:return n=function(t){var o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},i=o.children,a=void 0===i||i,c=o.parents,u=void 0===c||c,l=o.siblings,s=void 0===l||l;return E().mark((function o(){var i;return E().wrap((function(o){for(;;)switch(o.prev=o.next){case 0:if(t!==e){o.next=5;break}return r=!0,o.next=4,t;case 4:return o.abrupt("return");case 5:return o.next=7,t;case 7:if(!a||!t.firstChild){o.next=11;break}return o.delegateYield(n(t.firstChild,{children:!0,parents:!1,siblings:!0}),"t0",9);case 9:if(!r){o.next=11;break}return o.abrupt("return");case 11:if(!s){o.next=20;break}i=t.nextSibling;case 13:if(!i){o.next=20;break}return o.delegateYield(n(i,{children:!0,parents:!1,siblings:!1}),"t1",15);case 15:if(!r){o.next=17;break}return o.abrupt("return");case 17:i=i.nextSibling,o.next=13;break;case 20:if(!u||!t.parentNode){o.next=24;break}return o.delegateYield(n(t.parentNode,{children:!1,parents:!0,siblings:!0}),"t2",22);case 22:if(!r){o.next=24;break}return o.abrupt("return");case 24:case"end":return o.stop()}}),o)}))()},r=!1,o.delegateYield(n(t),"t0",3);case 3:case"end":return o.stop()}}),b)}},4565:function(t,e,r){function n(t){return n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},n(t)}function o(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,i(n.key),n)}}function i(t){var e=function(t,e){if("object"!=n(t)||!t)return t;var r=t[Symbol.toPrimitive];if(void 0!==r){var o=r.call(t,"string");if("object"!=n(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==n(e)?e:e+""}r.d(e,{l:function(){return a}}),r(2675),r(9463),r(2259),r(5700),r(3792),r(9572),r(8130),r(6099),r(7764),r(2953);var a=function(){return t=function t(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:10;!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),this.maxSize=e,this.entries=[]},(e=[{key:"add",value:function(t){this.entries.length>=this.maxSize&&this.entries.shift(),this.entries.push(t)}}])&&o(t.prototype,e),Object.defineProperty(t,"prototype",{writable:!1}),t;var t,e}()},9073:function(t,e,r){function n(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=Array(e);r<e;r++)n[r]=t[r];return n}function o(t,e){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:i;return null==t?void 0:t.replace(/\{\{([^}]*?)\}\}/g,(function(t,i){if(!i)return t;var a,c=function(t){if(Array.isArray(t))return t}(a=i.split("|").map((function(t){return t.trim()})))||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(a)||function(t,e){if(t){if("string"==typeof t)return n(t,e);var r={}.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?n(t,e):void 0}}(a)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}(),u=c[0],l=c.slice(1);if(!(u in r)&&!(u in e))return t;var s=u in r?r[u]:u in e?e[u]:null;return l.map((function(t){return o[t]})).reduce((function(t,e){return e(t)}),s&&s.toString())}))}r.d(e,{g:function(){return o}}),r(2675),r(9463),r(2259),r(3418),r(3792),r(2062),r(2712),r(4782),r(2010),r(6099),r(7495),r(8781),r(7764),r(5440),r(2762),r(2953);var i={urlencode:encodeURIComponent}}},function(t){t(t.s=2763)}]);
3
3
  //# sourceMappingURL=plugin.text_selection.js.map