Files
2026-02-09 10:48:21 +01:00

1 line
45 KiB
JavaScript

define(["exports"],function(_exports){function _isNativeReflectConstruct(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(t){}return(_isNativeReflectConstruct=function(){return!!t})()}function ownKeys(e,r){var o,t=Object.keys(e);return Object.getOwnPropertySymbols&&(o=Object.getOwnPropertySymbols(e),r&&(o=o.filter(function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable})),t.push.apply(t,o)),t}function _classPrivateFieldInitSpec(e,t,a){_checkPrivateRedeclaration(e,t),t.set(e,a)}function _checkPrivateRedeclaration(e,t){if(t.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")}function _classPrivateFieldSet(s,a,r){s.set(_assertClassBrand(s,a),r)}function _classPrivateFieldGet(s,a){return s.get(_assertClassBrand(s,a))}function _assertClassBrand(e,t,n){if("function"==typeof e?e===t:e.has(t))return arguments.length<3?t:n;throw new TypeError("Private element is not present on this object")}function _createForOfIteratorHelper(r,e){var o,a,u,n,t="undefined"!=typeof Symbol&&r[Symbol.iterator]||r["@@iterator"];if(t)return u=!(a=!0),{s:function(){t=t.call(r)},n:function(){var r=t.next();return a=r.done,r},e:function(r){u=!0,o=r},f:function(){try{a||null==t.return||t.return()}finally{if(u)throw o}}};if(Array.isArray(r)||(t=function(r,a){{var t;if(r)return"string"==typeof r?_arrayLikeToArray(r,a):"Map"===(t="Object"===(t={}.toString.call(r).slice(8,-1))&&r.constructor?r.constructor.name:t)||"Set"===t?Array.from(r):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?_arrayLikeToArray(r,a):void 0}}(r))||e&&r&&"number"==typeof r.length)return t&&(r=t),n=0,{s:e=function(){},n:function(){return n>=r.length?{done:!0}:{done:!1,value:r[n++]}},e:function(r){throw r},f:e};throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _arrayLikeToArray(r,a){(null==a||a>r.length)&&(a=r.length);for(var e=0,n=Array(a);e<a;e++)n[e]=r[e];return n}Object.defineProperty(_exports,"__esModule",{value:!0}),_exports.Paginator=void 0;function debounce(f,wait,immediate){var timeout;return function(){for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++)args[_key]=arguments[_key];var callNow=immediate&&!timeout;timeout&&clearTimeout(timeout),timeout=setTimeout(function(){timeout=null,immediate||f.apply(void 0,args)},wait),callNow&&f.apply(void 0,args)}}function makeRange(doc,node,start){var end=3<arguments.length&&void 0!==arguments[3]?arguments[3]:start,range=doc.createRange();return range.setStart(node,start),range.setEnd(node,end),range}function getVisibleRange(doc,start,end,mapRect){for(var walker=doc.createTreeWalker(doc.body,filter,{acceptNode:function(node){var _node$localName=null==(_node$localName=node.localName)?void 0:_node$localName.toLowerCase();if("script"===_node$localName||"style"===_node$localName)return FILTER_REJECT;if(1===node.nodeType){var _node$localName=mapRect(node.getBoundingClientRect()),left=_node$localName.left,_node$localName=_node$localName.right;if(_node$localName<start||end<left)return FILTER_REJECT;if(start<=left&&_node$localName<=end)return FILTER_ACCEPT}else{if(null==(left=node.nodeValue)||!left.trim())return FILTER_SKIP;_node$localName=doc.createRange(),left=(_node$localName.selectNodeContents(node),mapRect(_node$localName.getBoundingClientRect())),node=left.left,_node$localName=left.right;if(start<=_node$localName&&node<=end)return FILTER_ACCEPT}return FILTER_SKIP}}),nodes=[],node=walker.nextNode();node;node=walker.nextNode())nodes.push(node);var _nodes$=null!=(_nodes$=nodes[0])?_nodes$:doc.body,_nodes=null!=(_nodes=nodes[nodes.length-1])?_nodes:_nodes$,startOffset=1===_nodes$.nodeType?0:bisectNode(doc,_nodes$,function(a,b){a=mapRect(getBoundingClientRect(a)),b=mapRect(getBoundingClientRect(b));return a.right<start&&b.left>start?0:b.left>start?-1:1}),endOffset=1===_nodes.nodeType?0:bisectNode(doc,_nodes,function(a,b){a=mapRect(getBoundingClientRect(a)),b=mapRect(getBoundingClientRect(b));return a.right<end&&b.left>end?0:b.left>end?-1:1}),range=doc.createRange();return range.setStart(_nodes$,startOffset),range.setEnd(_nodes,endOffset),range}function selectionIsBackward(sel){var range=document.createRange();return range.setStart(sel.anchorNode,sel.anchorOffset),range.setEnd(sel.focusNode,sel.focusOffset),range.collapsed}function setSelectionTo(target,collapse){var range;target.startContainer?range=target.cloneRange():target.nodeType&&(range=document.createRange()).selectNode(target),range&&(target=range.startContainer.ownerDocument.defaultView.getSelection())&&(target.removeAllRanges(),-1===collapse?range.collapse(!0):1===collapse&&range.collapse(),target.addRange(range))}function getBackground(doc){var bodyStyle=doc.defaultView.getComputedStyle(doc.body);return("rgba(0, 0, 0, 0)"===bodyStyle.backgroundColor&&"none"===bodyStyle.backgroundImage?doc.defaultView.getComputedStyle(doc.documentElement):bodyStyle).background}function makeMarginals(length,part){return Array.from({length:length},function(){var div=document.createElement("div"),child=document.createElement("div");return div.append(child),child.setAttribute("part",part),div})}function setStylesImportant(el,styles){for(var style=el.style,_i=0,_Object$entries=Object.entries(styles);_i<_Object$entries.length;_i++){var _Object$entries$_i=babelHelpers.slicedToArray(_Object$entries[_i],2),k=_Object$entries$_i[0],_Object$entries$_i=_Object$entries$_i[1];style.setProperty(k,_Object$entries$_i,"important")}}var easeOutQuad=function(x){return 1-(1-x)*(1-x)},animate=function(a,b,duration,ease,render){return new Promise(function(resolve){var start,step=function(now){null==start&&(start=now);var min,max,now=Math.min(1,(now-start)/duration);render((min=a,max=b,ease(now)*(max-min)+min)),now<1?requestAnimationFrame(step):resolve()};requestAnimationFrame(step)})},uncollapse=function(range){if(null!=range&&range.collapsed){var node,endOffset=range.endOffset,endContainer=range.endContainer;if(1===endContainer.nodeType)return 1===(null==(node=endContainer.childNodes[endOffset])?void 0:node.nodeType)?node:endContainer;if(endOffset+1<endContainer.length)range.setEnd(endContainer,endOffset+1);else{if(!(1<endOffset))return endContainer.parentNode;range.setStart(endContainer,endOffset-1)}}return range},bisectNode=function(doc,node,cb){var mid,result,start=3<arguments.length&&void 0!==arguments[3]?arguments[3]:0,end=4<arguments.length&&void 0!==arguments[4]?arguments[4]:node.nodeValue.length;return end-start==1?cb(makeRange(doc,node,start),makeRange(doc,node,end))<0?start:end:(mid=Math.floor(start+(end-start)/2),(result=cb(makeRange(doc,node,start,mid),makeRange(doc,node,mid,end)))<0?bisectNode(doc,node,cb,start,mid):0<result?bisectNode(doc,node,cb,mid,end):mid)},_NodeFilter=NodeFilter,SHOW_ELEMENT=_NodeFilter.SHOW_ELEMENT,SHOW_TEXT=_NodeFilter.SHOW_TEXT,SHOW_CDATA_SECTION=_NodeFilter.SHOW_CDATA_SECTION,FILTER_ACCEPT=_NodeFilter.FILTER_ACCEPT,FILTER_REJECT=_NodeFilter.FILTER_REJECT,FILTER_SKIP=_NodeFilter.FILTER_SKIP,filter=SHOW_ELEMENT|SHOW_TEXT|SHOW_CDATA_SECTION,getBoundingClientRect=function(target){var _step,top=1/0,right=-1/0,left=1/0,bottom=-1/0,_iterator=_createForOfIteratorHelper(target.getClientRects());try{for(_iterator.s();!(_step=_iterator.n()).done;)var rect=_step.value,left=Math.min(left,rect.left),top=Math.min(top,rect.top),right=Math.max(right,rect.right),bottom=Math.max(bottom,rect.bottom)}catch(err){_iterator.e(err)}finally{_iterator.f()}return new DOMRect(left,top,right-left,bottom-top)},_observer=new WeakMap,_element=new WeakMap,_iframe=new WeakMap,_contentRange=new WeakMap,_overlayer=new WeakMap,_vertical=new WeakMap,_rtl=new WeakMap,_column=new WeakMap,_size=new WeakMap,_layout=new WeakMap,View=function(){return babelHelpers.createClass(function View(_ref){var _this=this,container=_ref.container,_ref=_ref.onExpand;babelHelpers.classCallCheck(this,View),_classPrivateFieldInitSpec(this,_observer,new ResizeObserver(function(){return _this.expand()})),_classPrivateFieldInitSpec(this,_element,document.createElement("div")),_classPrivateFieldInitSpec(this,_iframe,document.createElement("iframe")),_classPrivateFieldInitSpec(this,_contentRange,document.createRange()),_classPrivateFieldInitSpec(this,_overlayer,void 0),_classPrivateFieldInitSpec(this,_vertical,!1),_classPrivateFieldInitSpec(this,_rtl,!1),_classPrivateFieldInitSpec(this,_column,!0),_classPrivateFieldInitSpec(this,_size,void 0),_classPrivateFieldInitSpec(this,_layout,{}),this.container=container,this.onExpand=_ref,_classPrivateFieldGet(_iframe,this).setAttribute("part","filter"),_classPrivateFieldGet(_element,this).append(_classPrivateFieldGet(_iframe,this)),Object.assign(_classPrivateFieldGet(_element,this).style,{boxSizing:"content-box",position:"relative",overflow:"hidden",flex:"0 0 auto",width:"100%",height:"100%",display:"flex",justifyContent:"center",alignItems:"center"}),Object.assign(_classPrivateFieldGet(_iframe,this).style,{overflow:"hidden",border:"0",display:"none",width:"100%",height:"100%"}),_classPrivateFieldGet(_iframe,this).setAttribute("sandbox","allow-same-origin allow-scripts"),_classPrivateFieldGet(_iframe,this).setAttribute("scrolling","no")},[{key:"element",get:function(){return _classPrivateFieldGet(_element,this)}},{key:"document",get:function(){return _classPrivateFieldGet(_iframe,this).contentDocument}},{key:"load",value:async function(src,afterLoad,beforeRender){var _this2=this;if("string"!=typeof src)throw new Error("".concat(src," is not string"));return new Promise(function(resolve){_classPrivateFieldGet(_iframe,_this2).addEventListener("load",function(){var doc=_this2.document,_getDirection=(null!=afterLoad&&afterLoad(doc),_classPrivateFieldGet(_iframe,_this2).style.display="block",function(doc){var _defaultView$getCompu=doc.defaultView.getComputedStyle(doc.body),writingMode=_defaultView$getCompu.writingMode,_defaultView$getCompu=_defaultView$getCompu.direction;return{vertical:"vertical-rl"===writingMode||"vertical-lr"===writingMode,rtl:"rtl"===doc.body.dir||"rtl"===_defaultView$getCompu||"rtl"===doc.documentElement.dir}}(doc)),vertical=_getDirection.vertical,_getDirection=_getDirection.rtl,background=getBackground(doc),vertical=(_classPrivateFieldGet(_iframe,_this2).style.display="none",_classPrivateFieldSet(_vertical,_this2,vertical),_classPrivateFieldSet(_rtl,_this2,_getDirection),_classPrivateFieldGet(_contentRange,_this2).selectNodeContents(doc.body),null==beforeRender?void 0:beforeRender({vertical:vertical,rtl:_getDirection,background:background}));_classPrivateFieldGet(_iframe,_this2).style.display="block",_this2.render(vertical),_classPrivateFieldGet(_observer,_this2).observe(doc.body),doc.fonts.ready.then(function(){return _this2.expand()}),resolve()},{once:!0}),_classPrivateFieldGet(_iframe,_this2).src=src})}},{key:"render",value:function(layout){layout&&(_classPrivateFieldSet(_column,this,"scrolled"!==layout.flow),_classPrivateFieldSet(_layout,this,layout),_classPrivateFieldGet(_column,this)?this.columnize(layout):this.scrolled(layout))}},{key:"scrolled",value:function(_ref2){var gap=_ref2.gap,_ref2=_ref2.columnWidth,vertical=_classPrivateFieldGet(_vertical,this),doc=this.document;setStylesImportant(doc.documentElement,{"box-sizing":"border-box",padding:vertical?"".concat(gap,"px 0"):"0 ".concat(gap,"px"),"column-width":"auto",height:"auto",width:"auto"}),setStylesImportant(doc.body,babelHelpers.defineProperty(babelHelpers.defineProperty({},vertical?"max-height":"max-width","".concat(_ref2,"px")),"margin","auto")),this.setImageSize(),this.expand()}},{key:"columnize",value:function(_ref3){var width=_ref3.width,height=_ref3.height,gap=_ref3.gap,_ref3=_ref3.columnWidth,vertical=_classPrivateFieldGet(_vertical,this),doc=(_classPrivateFieldSet(_size,this,vertical?height:width),this.document);setStylesImportant(doc.documentElement,function(e){for(var r=1;r<arguments.length;r++){var t=null!=arguments[r]?arguments[r]:{};r%2?ownKeys(Object(t),!0).forEach(function(r){babelHelpers.defineProperty(e,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):ownKeys(Object(t)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))})}return e}({"box-sizing":"border-box","column-width":"".concat(Math.trunc(_ref3),"px"),"column-gap":"".concat(gap,"px"),"column-fill":"auto"},vertical?{width:"".concat(width,"px")}:{height:"".concat(height,"px")},{padding:vertical?"".concat(gap/2,"px 0"):"0 ".concat(gap/2,"px"),overflow:"hidden","overflow-wrap":"break-word",position:"static",border:"0",margin:"0","max-height":"none","max-width":"none","min-height":"none","min-width":"none","-webkit-line-box-contain":"block glyphs replaced"})),setStylesImportant(doc.body,{"max-height":"none","max-width":"none",margin:"0"}),this.setImageSize(),this.expand()}},{key:"setImageSize",value:function(){var _step2,_classPrivateFieldGet2=_classPrivateFieldGet(_layout,this),width=_classPrivateFieldGet2.width,height=_classPrivateFieldGet2.height,margin=_classPrivateFieldGet2.margin,vertical=_classPrivateFieldGet(_vertical,this),doc=this.document,_iterator2=_createForOfIteratorHelper(doc.body.querySelectorAll("img, svg, video"));try{for(_iterator2.s();!(_step2=_iterator2.n()).done;){var el=_step2.value,_doc$defaultView$getC=doc.defaultView.getComputedStyle(el),maxHeight=_doc$defaultView$getC.maxHeight,maxWidth=_doc$defaultView$getC.maxWidth;setStylesImportant(el,{"max-height":vertical?"none"!==maxHeight&&"0px"!==maxHeight?maxHeight:"100%":"".concat(height-2*margin,"px"),"max-width":vertical?"".concat(width-2*margin,"px"):"none"!==maxWidth&&"0px"!==maxWidth?maxWidth:"100%","object-fit":"contain","page-break-inside":"avoid","break-inside":"avoid","box-sizing":"border-box"})}}catch(err){_iterator2.e(err)}finally{_iterator2.f()}}},{key:"expand",value:function(){var rootRect,otherSide,side,contentRect,documentElement=this.document.documentElement;_classPrivateFieldGet(_column,this)?(side=_classPrivateFieldGet(_vertical,this)?"height":"width",otherSide=_classPrivateFieldGet(_vertical,this)?"width":"height",contentRect=_classPrivateFieldGet(_contentRange,this).getBoundingClientRect(),rootRect=documentElement.getBoundingClientRect(),rootRect=(_classPrivateFieldGet(_vertical,this)?0:_classPrivateFieldGet(_rtl,this)?rootRect.right-contentRect.right:contentRect.left-rootRect.left)+contentRect[side],contentRect=Math.ceil(rootRect/_classPrivateFieldGet(_size,this))*_classPrivateFieldGet(_size,this),_classPrivateFieldGet(_element,this).style.padding="0",_classPrivateFieldGet(_iframe,this).style[side]="".concat(contentRect,"px"),_classPrivateFieldGet(_element,this).style[side]="".concat(contentRect+2*_classPrivateFieldGet(_size,this),"px"),_classPrivateFieldGet(_iframe,this).style[otherSide]="100%",_classPrivateFieldGet(_element,this).style[otherSide]="100%",documentElement.style[side]="".concat(_classPrivateFieldGet(_size,this),"px"),_classPrivateFieldGet(_overlayer,this)&&(_classPrivateFieldGet(_overlayer,this).element.style.margin="0",_classPrivateFieldGet(_overlayer,this).element.style.left=_classPrivateFieldGet(_vertical,this)?"0":"".concat(_classPrivateFieldGet(_size,this),"px"),_classPrivateFieldGet(_overlayer,this).element.style.top=_classPrivateFieldGet(_vertical,this)?"".concat(_classPrivateFieldGet(_size,this),"px"):"0",_classPrivateFieldGet(_overlayer,this).element.style[side]="".concat(contentRect,"px"),_classPrivateFieldGet(_overlayer,this).redraw())):(rootRect=_classPrivateFieldGet(_vertical,this)?"width":"height",otherSide=_classPrivateFieldGet(_vertical,this)?"height":"width",side=documentElement.getBoundingClientRect()[rootRect],contentRect=_classPrivateFieldGet(_layout,this).margin,documentElement=_classPrivateFieldGet(_vertical,this)?"0 ".concat(contentRect,"px"):"".concat(contentRect,"px 0"),_classPrivateFieldGet(_element,this).style.padding=documentElement,_classPrivateFieldGet(_iframe,this).style[rootRect]="".concat(side,"px"),_classPrivateFieldGet(_element,this).style[rootRect]="".concat(side,"px"),_classPrivateFieldGet(_iframe,this).style[otherSide]="100%",_classPrivateFieldGet(_element,this).style[otherSide]="100%",_classPrivateFieldGet(_overlayer,this)&&(_classPrivateFieldGet(_overlayer,this).element.style.margin=documentElement,_classPrivateFieldGet(_overlayer,this).element.style.left="0",_classPrivateFieldGet(_overlayer,this).element.style.top="0",_classPrivateFieldGet(_overlayer,this).element.style[rootRect]="".concat(side,"px"),_classPrivateFieldGet(_overlayer,this).redraw())),this.onExpand()}},{key:"overlayer",get:function(){return _classPrivateFieldGet(_overlayer,this)},set:function(overlayer){_classPrivateFieldSet(_overlayer,this,overlayer),_classPrivateFieldGet(_element,this).append(overlayer.element)}},{key:"destroy",value:function(){this.document&&_classPrivateFieldGet(_observer,this).unobserve(this.document.body)}}])}(),_root=new WeakMap,_observer2=new WeakMap,_top=new WeakMap,_background=new WeakMap,_container=new WeakMap,_header=new WeakMap,_footer=new WeakMap,_view=new WeakMap,_vertical2=new WeakMap,_rtl2=new WeakMap,_margin=new WeakMap,_index=new WeakMap,_anchor=new WeakMap,_justAnchored=new WeakMap,_locked=new WeakMap,_styles=new WeakMap,_styleMap=new WeakMap,_mediaQuery=new WeakMap,_mediaQueryListener=new WeakMap,_scrollBounds=new WeakMap,_touchState=new WeakMap,_touchScrolled=new WeakMap,_lastVisibleRange=new WeakMap,_Paginator_brand=new WeakSet,_NodeFilter=_exports.Paginator=function(_HTMLElement){function Paginator(){babelHelpers.classCallCheck(this,Paginator),t=this,o=Paginator,o=babelHelpers.getPrototypeOf(o),function(e,a){_checkPrivateRedeclaration(e,a),a.add(e)}(_this3=babelHelpers.possibleConstructorReturn(t,_isNativeReflectConstruct()?Reflect.construct(o,e||[],babelHelpers.getPrototypeOf(t).constructor):o.apply(t,e)),_Paginator_brand),_classPrivateFieldInitSpec(_this3,_root,_this3.attachShadow({mode:"closed"})),_classPrivateFieldInitSpec(_this3,_observer2,new ResizeObserver(function(){return _this3.render()})),_classPrivateFieldInitSpec(_this3,_top,void 0),_classPrivateFieldInitSpec(_this3,_background,void 0),_classPrivateFieldInitSpec(_this3,_container,void 0),_classPrivateFieldInitSpec(_this3,_header,void 0),_classPrivateFieldInitSpec(_this3,_footer,void 0),_classPrivateFieldInitSpec(_this3,_view,void 0),_classPrivateFieldInitSpec(_this3,_vertical2,!1),_classPrivateFieldInitSpec(_this3,_rtl2,!1),_classPrivateFieldInitSpec(_this3,_margin,0),_classPrivateFieldInitSpec(_this3,_index,-1),_classPrivateFieldInitSpec(_this3,_anchor,0),_classPrivateFieldInitSpec(_this3,_justAnchored,!1),_classPrivateFieldInitSpec(_this3,_locked,!1),_classPrivateFieldInitSpec(_this3,_styles,void 0),_classPrivateFieldInitSpec(_this3,_styleMap,new WeakMap),_classPrivateFieldInitSpec(_this3,_mediaQuery,matchMedia("(prefers-color-scheme: dark)")),_classPrivateFieldInitSpec(_this3,_mediaQueryListener,void 0),_classPrivateFieldInitSpec(_this3,_scrollBounds,void 0),_classPrivateFieldInitSpec(_this3,_touchState,void 0),_classPrivateFieldInitSpec(_this3,_touchScrolled,void 0),_classPrivateFieldInitSpec(_this3,_lastVisibleRange,void 0),_classPrivateFieldGet(_root,_this3).innerHTML='<style>\n :host {\n display: block;\n container-type: size;\n }\n :host, #top {\n box-sizing: border-box;\n position: relative;\n overflow: hidden;\n width: 100%;\n height: 100%;\n }\n #top {\n --_gap: 7%;\n --_margin: 48px;\n --_max-inline-size: 720px;\n --_max-block-size: 1440px;\n --_max-column-count: 2;\n --_max-column-count-portrait: 1;\n --_max-column-count-spread: var(--_max-column-count);\n --_half-gap: calc(var(--_gap) / 2);\n --_max-width: calc(var(--_max-inline-size) * var(--_max-column-count-spread));\n --_max-height: var(--_max-block-size);\n display: grid;\n grid-template-columns:\n minmax(var(--_half-gap), 1fr)\n var(--_half-gap)\n minmax(0, calc(var(--_max-width) - var(--_gap)))\n var(--_half-gap)\n minmax(var(--_half-gap), 1fr);\n grid-template-rows:\n minmax(var(--_margin), 1fr)\n minmax(0, var(--_max-height))\n minmax(var(--_margin), 1fr);\n &.vertical {\n --_max-column-count-spread: var(--_max-column-count-portrait);\n --_max-width: var(--_max-block-size);\n --_max-height: calc(var(--_max-inline-size) * var(--_max-column-count-spread));\n }\n @container (orientation: portrait) {\n & {\n --_max-column-count-spread: var(--_max-column-count-portrait);\n }\n &.vertical {\n --_max-column-count-spread: var(--_max-column-count);\n }\n }\n }\n #background {\n grid-column: 1 / -1;\n grid-row: 1 / -1;\n }\n #container {\n grid-column: 2 / 5;\n grid-row: 2;\n overflow: hidden;\n }\n :host([flow="scrolled"]) #container {\n grid-column: 1 / -1;\n grid-row: 1 / -1;\n overflow: auto;\n }\n #header {\n grid-column: 3 / 4;\n grid-row: 1;\n }\n #footer {\n grid-column: 3 / 4;\n grid-row: 3;\n align-self: end;\n }\n #header, #footer {\n display: grid;\n height: var(--_margin);\n }\n :is(#header, #footer) > * {\n display: flex;\n align-items: center;\n min-width: 0;\n }\n :is(#header, #footer) > * > * {\n width: 100%;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n text-align: center;\n font-size: .75em;\n opacity: .6;\n }\n </style>\n <div id="top">\n <div id="background" part="filter"></div>\n <div id="header"></div>\n <div id="container"></div>\n <div id="footer"></div>\n </div>\n ',_classPrivateFieldSet(_top,_this3,_classPrivateFieldGet(_root,_this3).getElementById("top")),_classPrivateFieldSet(_background,_this3,_classPrivateFieldGet(_root,_this3).getElementById("background")),_classPrivateFieldSet(_container,_this3,_classPrivateFieldGet(_root,_this3).getElementById("container")),_classPrivateFieldSet(_header,_this3,_classPrivateFieldGet(_root,_this3).getElementById("header")),_classPrivateFieldSet(_footer,_this3,_classPrivateFieldGet(_root,_this3).getElementById("footer")),_classPrivateFieldGet(_observer2,_this3).observe(_classPrivateFieldGet(_container,_this3)),_classPrivateFieldGet(_container,_this3).addEventListener("scroll",function(){return _this3.dispatchEvent(new Event("scroll"))}),_classPrivateFieldGet(_container,_this3).addEventListener("scroll",debounce(function(){_this3.scrolled&&(_classPrivateFieldGet(_justAnchored,_this3)?_classPrivateFieldSet(_justAnchored,_this3,!1):_assertClassBrand(_Paginator_brand,_this3,_afterScroll).call(_this3,"scroll"))},250));var _this3,t,o,e,opts={passive:!1},checkPointerSelection=(_this3.addEventListener("touchstart",_assertClassBrand(_Paginator_brand,_this3,_onTouchStart).bind(_this3),opts),_this3.addEventListener("touchmove",_assertClassBrand(_Paginator_brand,_this3,_onTouchMove).bind(_this3),opts),_this3.addEventListener("touchend",_assertClassBrand(_Paginator_brand,_this3,_onTouchEnd).bind(_this3)),_this3.addEventListener("load",function(_ref4){_ref4=_ref4.detail.doc;_ref4.addEventListener("touchstart",_assertClassBrand(_Paginator_brand,_this3,_onTouchStart).bind(_this3),opts),_ref4.addEventListener("touchmove",_assertClassBrand(_Paginator_brand,_this3,_onTouchMove).bind(_this3),opts),_ref4.addEventListener("touchend",_assertClassBrand(_Paginator_brand,_this3,_onTouchEnd).bind(_this3))}),_this3.addEventListener("relocate",function(_ref5){_ref5=_ref5.detail;"selection"===_ref5.reason?setSelectionTo(_classPrivateFieldGet(_anchor,_this3),0):"navigation"===_ref5.reason&&(1===_classPrivateFieldGet(_anchor,_this3)?setSelectionTo(_ref5.range,1):"number"==typeof _classPrivateFieldGet(_anchor,_this3)?setSelectionTo(_ref5.range,-1):setSelectionTo(_classPrivateFieldGet(_anchor,_this3),-1))}),debounce(function(range,sel){var selRange;sel.rangeCount&&(selRange=sel.getRangeAt(0),(sel=selectionIsBackward(sel))&&selRange.compareBoundaryPoints(Range.START_TO_START,range)<0?_this3.prev():!sel&&0<selRange.compareBoundaryPoints(Range.END_TO_END,range)&&_this3.next())},700));return _this3.addEventListener("load",function(_ref6){var doc=_ref6.detail.doc,isPointerSelecting=!1,isKeyboardSelecting=(doc.addEventListener("pointerdown",function(){return isPointerSelecting=!0}),doc.addEventListener("pointerup",function(){return isPointerSelecting=!1}),!1);doc.addEventListener("keydown",function(){return isKeyboardSelecting=!0}),doc.addEventListener("keyup",function(){return isKeyboardSelecting=!1}),doc.addEventListener("selectionchange",function(){var sel,range;_this3.scrolled||(range=_classPrivateFieldGet(_lastVisibleRange,_this3))&&(sel=doc.getSelection()).rangeCount&&(isPointerSelecting&&"Range"===sel.type?checkPointerSelection(range,sel):isKeyboardSelecting&&(range=sel.getRangeAt(0).cloneRange(),selectionIsBackward(sel)||range.collapse(),_assertClassBrand(_Paginator_brand,_this3,_scrollToAnchor).call(_this3,range)))}),doc.addEventListener("focusin",function(e){return _this3.scrolled?null:requestAnimationFrame(function(){return _assertClassBrand(_Paginator_brand,_this3,_scrollToAnchor).call(_this3,e.target)})})}),_classPrivateFieldSet(_mediaQueryListener,_this3,function(){_classPrivateFieldGet(_view,_this3)&&(_classPrivateFieldGet(_background,_this3).style.background=getBackground(_classPrivateFieldGet(_view,_this3).document))}),_classPrivateFieldGet(_mediaQuery,_this3).addEventListener("change",_classPrivateFieldGet(_mediaQueryListener,_this3)),_this3}return babelHelpers.inherits(Paginator,_HTMLElement),babelHelpers.createClass(Paginator,[{key:"attributeChangedCallback",value:function(name,_,value){switch(name){case"flow":this.render();break;case"gap":case"margin":case"max-block-size":case"max-column-count":_classPrivateFieldGet(_top,this).style.setProperty("--_"+name,value);break;case"max-inline-size":_classPrivateFieldGet(_top,this).style.setProperty("--_"+name,value),this.render()}}},{key:"open",value:function(book){this.bookDir=book.dir,this.sections=book.sections,null!=(book=book.transformTarget)&&book.addEventListener("data",function(_ref7){var w,h,_ref7=_ref7.detail;"text/css"===_ref7.type&&(w=innerWidth,h=innerHeight,_ref7.data=Promise.resolve(_ref7.data).then(function(data){return data.replace(/(?<=[{\s;])-epub-/gi,"").replace(/(\d*\.?\d+)vw/gi,function(_,d){return parseFloat(d)*w/100+"px"}).replace(/(\d*\.?\d+)vh/gi,function(_,d){return parseFloat(d)*h/100+"px"}).replace(/page-break-(after|before|inside)\s*:/gi,function(_,x){return"-webkit-column-break-".concat(x,":")}).replace(/break-(after|before|inside)\s*:\s*(avoid-)?page/gi,function(_,x,y){return"break-".concat(x,": ").concat(null!=y?y:"","column")})}))})}},{key:"render",value:function(){_classPrivateFieldGet(_view,this)&&(_classPrivateFieldGet(_view,this).render(_assertClassBrand(_Paginator_brand,this,_beforeRender).call(this,{vertical:_classPrivateFieldGet(_vertical2,this),rtl:_classPrivateFieldGet(_rtl2,this)})),_assertClassBrand(_Paginator_brand,this,_scrollToAnchor).call(this,_classPrivateFieldGet(_anchor,this)))}},{key:"scrolled",get:function(){return"scrolled"===this.getAttribute("flow")}},{key:"scrollProp",get:function(){var scrolled=this.scrolled;return _classPrivateFieldGet(_vertical2,this)?scrolled?"scrollLeft":"scrollTop":scrolled?"scrollTop":"scrollLeft"}},{key:"sideProp",get:function(){var scrolled=this.scrolled;return _classPrivateFieldGet(_vertical2,this)?scrolled?"width":"height":scrolled?"height":"width"}},{key:"size",get:function(){return _classPrivateFieldGet(_container,this).getBoundingClientRect()[this.sideProp]}},{key:"viewSize",get:function(){return _classPrivateFieldGet(_view,this).element.getBoundingClientRect()[this.sideProp]}},{key:"start",get:function(){return Math.abs(_classPrivateFieldGet(_container,this)[this.scrollProp])}},{key:"end",get:function(){return this.start+this.size}},{key:"page",get:function(){return Math.floor((this.start+this.end)/2/this.size)}},{key:"pages",get:function(){return Math.round(this.viewSize/this.size)}},{key:"scrollBy",value:function(dx,dy){var dy=_classPrivateFieldGet(_vertical2,this)?dy:dx,dx=_classPrivateFieldGet(_container,this),scrollProp=this.scrollProp,_classPrivateFieldGet4=_classPrivateFieldGet(_scrollBounds,this),_classPrivateFieldGet4=babelHelpers.slicedToArray(_classPrivateFieldGet4,3),offset=_classPrivateFieldGet4[0],a=_classPrivateFieldGet4[1],_classPrivateFieldGet4=_classPrivateFieldGet4[2],rtl=_classPrivateFieldGet(_rtl2,this);dx[scrollProp]=Math.max(rtl?offset-_classPrivateFieldGet4:offset-a,Math.min(rtl?offset+a:offset+_classPrivateFieldGet4,dx[scrollProp]+dy))}},{key:"snap",value:function(vx,vy){var _this4=this,vy=_classPrivateFieldGet(_vertical2,this)?vy:vx,vx=_classPrivateFieldGet(_scrollBounds,this),vx=babelHelpers.slicedToArray(vx,3),offset=vx[0],a=vx[1],vx=vx[2],start=this.start,end=this.end,pages=this.pages,size=this.size,a=Math.abs(offset)-a,offset=Math.abs(offset)+vx,vx=vy*(_classPrivateFieldGet(_rtl2,this)?-size:size),page=Math.floor(Math.max(a,Math.min(offset,(start+end)/2+(isNaN(vx)?0:vx)))/size);_assertClassBrand(_Paginator_brand,this,_scrollToPage).call(this,page,"snap").then(function(){var dir=page<=0?-1:pages-1<=page?1:null;if(dir)return _assertClassBrand(_Paginator_brand,_this4,_goTo).call(_this4,{index:_assertClassBrand(_Paginator_brand,_this4,_adjacentIndex).call(_this4,dir),anchor:dir<0?function(){return 1}:function(){return 0}})})}},{key:"scrollToAnchor",value:async function(anchor,select){return _assertClassBrand(_Paginator_brand,this,_scrollToAnchor).call(this,anchor,select?"selection":"navigation")}},{key:"goTo",value:async function(target){if(!_classPrivateFieldGet(_locked,this))return target=await target,_assertClassBrand(_Paginator_brand,this,_canGoToIndex).call(this,target.index)?_assertClassBrand(_Paginator_brand,this,_goTo).call(this,target):void 0}},{key:"atStart",get:function(){return null==_assertClassBrand(_Paginator_brand,this,_adjacentIndex).call(this,-1)&&this.page<=1}},{key:"atEnd",get:function(){return null==_assertClassBrand(_Paginator_brand,this,_adjacentIndex).call(this,1)&&this.page>=this.pages-2}},{key:"prev",value:function(distance){return _assertClassBrand(_Paginator_brand,this,_turnPage).call(this,-1,distance)}},{key:"next",value:function(distance){return _assertClassBrand(_Paginator_brand,this,_turnPage).call(this,1,distance)}},{key:"prevSection",value:function(){return this.goTo({index:_assertClassBrand(_Paginator_brand,this,_adjacentIndex).call(this,-1)})}},{key:"nextSection",value:function(){return this.goTo({index:_assertClassBrand(_Paginator_brand,this,_adjacentIndex).call(this,1)})}},{key:"firstSection",value:function(){var index=this.sections.findIndex(function(section){return"no"!==section.linear});return this.goTo({index:index})}},{key:"lastSection",value:function(){var index=this.sections.findLastIndex(function(section){return"no"!==section.linear});return this.goTo({index:index})}},{key:"getContents",value:function(){return _classPrivateFieldGet(_view,this)?[{index:_classPrivateFieldGet(_index,this),overlayer:_classPrivateFieldGet(_view,this).overlayer,doc:_classPrivateFieldGet(_view,this).document}]:[]}},{key:"setStyles",value:function(styles){var $beforeStyle,beforeStyle,_styles2,_this5=this,_classPrivateFieldGet8=(_classPrivateFieldSet(_styles,this,styles),_classPrivateFieldGet(_styleMap,this).get(null==(_classPrivateFieldGet8=_classPrivateFieldGet(_view,this))?void 0:_classPrivateFieldGet8.document));_classPrivateFieldGet8&&($beforeStyle=(_classPrivateFieldGet8=babelHelpers.slicedToArray(_classPrivateFieldGet8,2))[0],_classPrivateFieldGet8=_classPrivateFieldGet8[1],Array.isArray(styles)?(beforeStyle=(_styles2=babelHelpers.slicedToArray(styles,2))[0],_styles2=_styles2[1],$beforeStyle.textContent=beforeStyle,_classPrivateFieldGet8.textContent=_styles2):_classPrivateFieldGet8.textContent=styles,requestAnimationFrame(function(){return _classPrivateFieldGet(_background,_this5).style.background=getBackground(_classPrivateFieldGet(_view,_this5).document)}),null!=($beforeStyle=_classPrivateFieldGet(_view,this)))&&null!=($beforeStyle=$beforeStyle.document)&&null!=($beforeStyle=$beforeStyle.fonts)&&null!=($beforeStyle=$beforeStyle.ready)&&$beforeStyle.then(function(){return _classPrivateFieldGet(_view,_this5).expand()})}},{key:"focusView",value:function(){_classPrivateFieldGet(_view,this).document.defaultView.focus()}},{key:"destroy",value:function(){var _this$sections$_class;_classPrivateFieldGet(_observer2,this).unobserve(this),_classPrivateFieldGet(_view,this).destroy(),_classPrivateFieldSet(_view,this,null),null!=(_this$sections$_class=this.sections[_classPrivateFieldGet(_index,this)])&&null!=_this$sections$_class.unload&&_this$sections$_class.unload(),_classPrivateFieldGet(_mediaQuery,this).removeEventListener("change",_classPrivateFieldGet(_mediaQueryListener,this))}}])}(babelHelpers.wrapNativeSuper(HTMLElement));function _createView(){var _this6=this;return _classPrivateFieldGet(_view,this)&&(_classPrivateFieldGet(_view,this).destroy(),_classPrivateFieldGet(_container,this).removeChild(_classPrivateFieldGet(_view,this).element)),_classPrivateFieldSet(_view,this,new View({container:this,onExpand:function(){return _assertClassBrand(_Paginator_brand,_this6,_scrollToAnchor).call(_this6,_classPrivateFieldGet(_anchor,_this6))}})),_classPrivateFieldGet(_container,this).append(_classPrivateFieldGet(_view,this).element),_classPrivateFieldGet(_view,this)}function _beforeRender(_ref8){var _columnWidth,vertical=_ref8.vertical,rtl=_ref8.rtl,_ref8=_ref8.background,_ref8=(_classPrivateFieldSet(_vertical2,this,vertical),_classPrivateFieldSet(_rtl2,this,rtl),_classPrivateFieldGet(_top,this).classList.toggle("vertical",vertical),_classPrivateFieldGet(_background,this).style.background=_ref8,_classPrivateFieldGet(_container,this).getBoundingClientRect()),width=_ref8.width,_ref8=_ref8.height,size=vertical?_ref8:width,style=getComputedStyle(_classPrivateFieldGet(_top,this)),maxInlineSize=parseFloat(style.getPropertyValue("--_max-inline-size")),maxColumnCount=parseInt(style.getPropertyValue("--_max-column-count-spread")),margin=parseFloat(style.getPropertyValue("--_margin")),style=(_classPrivateFieldSet(_margin,this,margin),parseFloat(style.getPropertyValue("--_gap"))/100),style=-style/(style-1)*size,flow=this.getAttribute("flow");return"scrolled"===flow?(this.setAttribute("dir",vertical?"rtl":"ltr"),_classPrivateFieldGet(_top,this).style.padding="0",_columnWidth=maxInlineSize,this.heads=null,this.feet=null,_classPrivateFieldGet(_header,this).replaceChildren(),_classPrivateFieldGet(_footer,this).replaceChildren(),{flow:flow,margin:margin,gap:style,columnWidth:_columnWidth}):(_columnWidth=size/(flow=Math.min(maxColumnCount,Math.ceil(size/maxInlineSize)))-style,this.setAttribute("dir",rtl?"rtl":"ltr"),maxColumnCount=vertical?Math.min(2,Math.ceil(width/maxInlineSize)):flow,size={gridTemplateColumns:"repeat(".concat(maxColumnCount,", 1fr)"),gap:"".concat(style,"px"),direction:"rtl"===this.bookDir?"rtl":"ltr"},Object.assign(_classPrivateFieldGet(_header,this).style,size),Object.assign(_classPrivateFieldGet(_footer,this).style,size),rtl=makeMarginals(maxColumnCount,"head"),vertical=makeMarginals(maxColumnCount,"foot"),this.heads=rtl.map(function(el){return el.children[0]}),this.feet=vertical.map(function(el){return el.children[0]}),(maxInlineSize=_classPrivateFieldGet(_header,this)).replaceChildren.apply(maxInlineSize,babelHelpers.toConsumableArray(rtl)),(flow=_classPrivateFieldGet(_footer,this)).replaceChildren.apply(flow,babelHelpers.toConsumableArray(vertical)),{height:_ref8,width:width,margin:margin,gap:style,columnWidth:_columnWidth})}function _onTouchStart(e){var touch=e.changedTouches[0];_classPrivateFieldSet(_touchState,this,{x:null==touch?void 0:touch.screenX,y:null==touch?void 0:touch.screenY,t:e.timeStamp,vx:0,xy:0})}function _onTouchMove(e){var x,touch,dx,dy,dt,state=_classPrivateFieldGet(_touchState,this);state.pinched||(state.pinched=1<globalThis.visualViewport.scale,this.scrolled)||state.pinched||(1<e.touches.length?_classPrivateFieldGet(_touchScrolled,this)&&e.preventDefault():(e.preventDefault(),x=(touch=e.changedTouches[0]).screenX,touch=touch.screenY,dx=state.x-x,dy=state.y-touch,dt=e.timeStamp-state.t,state.x=x,state.y=touch,state.t=e.timeStamp,state.vx=dx/dt,state.vy=dy/dt,_classPrivateFieldSet(_touchScrolled,this,!0),this.scrollBy(dx,dy)))}function _onTouchEnd(){var _this7=this;_classPrivateFieldSet(_touchScrolled,this,!1),this.scrolled||requestAnimationFrame(function(){1===globalThis.visualViewport.scale&&_this7.snap(_classPrivateFieldGet(_touchState,_this7).vx,_classPrivateFieldGet(_touchState,_this7).vy)})}function _getRectMapper(){var size,margin,pxSize;return this.scrolled?(size=this.viewSize,margin=_classPrivateFieldGet(_margin,this),_classPrivateFieldGet(_vertical2,this)?function(_ref9){var left=_ref9.left,_ref9=_ref9.right;return{left:size-_ref9-margin,right:size-left-margin}}:function(_ref0){var top=_ref0.top,_ref0=_ref0.bottom;return{left:top+margin,right:_ref0+margin}}):(pxSize=this.pages*this.size,_classPrivateFieldGet(_rtl2,this)?function(_ref1){var left=_ref1.left,_ref1=_ref1.right;return{left:pxSize-_ref1,right:pxSize-left}}:_classPrivateFieldGet(_vertical2,this)?function(_ref10){return{left:_ref10.top,right:_ref10.bottom}}:function(f){return f})}async function _scrollToRect(rect,reason){var _offset;return this.scrolled?(_offset=_assertClassBrand(_Paginator_brand,this,_getRectMapper).call(this)(rect).left-_classPrivateFieldGet(_margin,this),_assertClassBrand(_Paginator_brand,this,_scrollTo).call(this,_offset,reason)):(_offset=_assertClassBrand(_Paginator_brand,this,_getRectMapper).call(this)(rect).left,_assertClassBrand(_Paginator_brand,this,_scrollToPage).call(this,Math.floor(_offset/this.size)+(_classPrivateFieldGet(_rtl2,this)?-1:1),reason))}async function _scrollTo(offset,reason,smooth){var _this8=this,element=_classPrivateFieldGet(_container,this),scrollProp=this.scrollProp,size=this.size;if(element[scrollProp]!==offset){if(this.scrolled&&_classPrivateFieldGet(_vertical2,this)&&(offset=-offset),("snap"===reason||smooth)&&this.hasAttribute("animated"))return animate(element[scrollProp],offset,300,easeOutQuad,function(x){return element[scrollProp]=x}).then(function(){_classPrivateFieldSet(_scrollBounds,_this8,[offset,_this8.atStart?0:size,_this8.atEnd?0:size]),_assertClassBrand(_Paginator_brand,_this8,_afterScroll).call(_this8,reason)});element[scrollProp]=offset}_classPrivateFieldSet(_scrollBounds,this,[offset,this.atStart?0:size,this.atEnd?0:size]),_assertClassBrand(_Paginator_brand,this,_afterScroll).call(this,reason)}async function _scrollToPage(page,reason,smooth){page=this.size*(_classPrivateFieldGet(_rtl2,this)?-page:page);return _assertClassBrand(_Paginator_brand,this,_scrollTo).call(this,page,reason,smooth)}async function _scrollToAnchor(anchor){var reason=1<arguments.length&&void 0!==arguments[1]?arguments[1]:"anchor",_uncollapse=(_classPrivateFieldSet(_anchor,this,anchor),null==(_uncollapse=uncollapse(anchor))||null==_uncollapse.getClientRects?void 0:_uncollapse.getClientRects());if(_uncollapse)return(_uncollapse=Array.from(_uncollapse).find(function(r){return 0<r.width&&0<r.height})||_uncollapse[0])?void await _assertClassBrand(_Paginator_brand,this,_scrollToRect).call(this,_uncollapse,reason):void 0;this.scrolled?await _assertClassBrand(_Paginator_brand,this,_scrollTo).call(this,anchor*this.viewSize,reason):(_uncollapse=this.pages)&&(_uncollapse=Math.round(anchor*(_uncollapse-2-1)),await _assertClassBrand(_Paginator_brand,this,_scrollToPage).call(this,_uncollapse+1,reason))}function _getVisibleRange(){var size;return this.scrolled?getVisibleRange(_classPrivateFieldGet(_view,this).document,this.start+_classPrivateFieldGet(_margin,this),this.end-_classPrivateFieldGet(_margin,this),_assertClassBrand(_Paginator_brand,this,_getRectMapper).call(this)):(size=_classPrivateFieldGet(_rtl2,this)?-this.size:this.size,getVisibleRange(_classPrivateFieldGet(_view,this).document,this.start-size,this.end-size,_assertClassBrand(_Paginator_brand,this,_getRectMapper).call(this)))}function _afterScroll(reason){var range=_assertClassBrand(_Paginator_brand,this,_getVisibleRange).call(this);_classPrivateFieldSet(_lastVisibleRange,this,range),"selection"!==reason&&"navigation"!==reason&&"anchor"!==reason?_classPrivateFieldSet(_anchor,this,range):_classPrivateFieldSet(_justAnchored,this,!0);var pages,reason={reason:reason,range:range,index:_classPrivateFieldGet(_index,this)};this.scrolled?reason.fraction=this.start/this.viewSize:0<this.pages&&(range=this.page,pages=this.pages,_classPrivateFieldGet(_header,this).style.visibility=1<range?"visible":"hidden",reason.fraction=(range-1)/(pages-2),reason.size=1/(pages-2)),this.dispatchEvent(new CustomEvent("relocate",{detail:reason}))}async function _display(promise){var view,beforeRender,_this9=this,promise=await promise,index=promise.index,src=promise.src,anchor=promise.anchor,onLoad=promise.onLoad,promise=promise.select,_classPrivateFieldGet11=(_classPrivateFieldSet(_index,this,index),null==(_classPrivateFieldGet11=_classPrivateFieldGet(_view,this))||null==(_classPrivateFieldGet11=_classPrivateFieldGet11.document)?void 0:_classPrivateFieldGet11.hasFocus());src&&(view=_assertClassBrand(_Paginator_brand,this,_createView).call(this),beforeRender=_assertClassBrand(_Paginator_brand,this,_beforeRender).bind(this),await view.load(src,function(doc){var $styleBefore,$style;doc.head&&($styleBefore=doc.createElement("style"),doc.head.prepend($styleBefore),$style=doc.createElement("style"),doc.head.append($style),_classPrivateFieldGet(_styleMap,_this9).set(doc,[$styleBefore,$style])),null!=onLoad&&onLoad({doc:doc,index:index})},beforeRender),this.dispatchEvent(new CustomEvent("create-overlayer",{detail:{doc:view.document,index:index,attach:function(overlayer){return view.overlayer=overlayer}}})),_classPrivateFieldSet(_view,this,view)),await this.scrollToAnchor(null!=(src="function"==typeof anchor?anchor(_classPrivateFieldGet(_view,this).document):anchor)?src:0,promise),_classPrivateFieldGet11&&this.focusView()}function _canGoToIndex(index){return 0<=index&&index<=this.sections.length-1}async function _goTo(_ref12){var oldIndex,onLoad,_this0=this,index=_ref12.index,anchor=_ref12.anchor,select=_ref12.select;index===_classPrivateFieldGet(_index,this)?await _assertClassBrand(_Paginator_brand,this,_display).call(this,{index:index,anchor:anchor,select:select}):(oldIndex=_classPrivateFieldGet(_index,this),onLoad=function(detail){var _this0$sections$oldIn;null!=(_this0$sections$oldIn=_this0.sections[oldIndex])&&null!=_this0$sections$oldIn.unload&&_this0$sections$oldIn.unload(),_this0.setStyles(_classPrivateFieldGet(_styles,_this0)),_this0.dispatchEvent(new CustomEvent("load",{detail:detail}))},await _assertClassBrand(_Paginator_brand,this,_display).call(this,Promise.resolve(this.sections[index].load()).then(function(src){return{index:index,src:src,anchor:anchor,onLoad:onLoad,select:select}}).catch(function(e){return console.warn(e),console.warn(new Error("Failed to load section ".concat(index))),{}})))}function _scrollPrev(distance){var page;return!_classPrivateFieldGet(_view,this)||(this.scrolled?!(0<this.start)||_assertClassBrand(_Paginator_brand,this,_scrollTo).call(this,Math.max(0,this.start-(null!=distance?distance:this.size)),null,!0):this.atStart?void 0:(page=this.page-1,_assertClassBrand(_Paginator_brand,this,_scrollToPage).call(this,page,"page",!0).then(function(){return page<=0})))}function _scrollNext(distance){var page,pages;return!_classPrivateFieldGet(_view,this)||(this.scrolled?!(2<this.viewSize-this.end)||_assertClassBrand(_Paginator_brand,this,_scrollTo).call(this,Math.min(this.viewSize,distance?this.start+distance:this.end),null,!0):this.atEnd?void 0:(page=this.page+1,pages=this.pages,_assertClassBrand(_Paginator_brand,this,_scrollToPage).call(this,page,"page",!0).then(function(){return pages-1<=page})))}function _adjacentIndex(dir){for(var _this$sections$index,index=_classPrivateFieldGet(_index,this)+dir;_assertClassBrand(_Paginator_brand,this,_canGoToIndex).call(this,index);index+=dir)if("no"!==(null==(_this$sections$index=this.sections[index])?void 0:_this$sections$index.linear))return index}async function _turnPage(dir,distance){var prev,ms;_classPrivateFieldGet(_locked,this)||(_classPrivateFieldSet(_locked,this,!0),(distance=await _assertClassBrand(_Paginator_brand,this,(prev=-1===dir)?_scrollPrev:_scrollNext).call(this,distance))&&await _assertClassBrand(_Paginator_brand,this,_goTo).call(this,{index:_assertClassBrand(_Paginator_brand,this,_adjacentIndex).call(this,dir),anchor:prev?function(){return 1}:function(){return 0}}),!distance&&this.hasAttribute("animated")||(ms=100,await new Promise(function(resolve){return setTimeout(resolve,ms)})),_classPrivateFieldSet(_locked,this,!1))}babelHelpers.defineProperty(_NodeFilter,"observedAttributes",["flow","gap","margin","max-inline-size","max-block-size","max-column-count"]),customElements.define("foliate-paginator",_NodeFilter)});