summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJohn Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>2020-09-01 06:51:29 +0200
committernpmbuildbot[bot] <npmbuildbot[bot]@users.noreply.github.com>2020-10-16 07:10:00 +0000
commitf612c264bbd21288e41866756bb151e133686df3 (patch)
tree364843f65670290064479d8b6385a2993bb13785
parent14addf399445650c53cf12238815e36ab9da5b3e (diff)
Non-cropped layout
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com> Signed-off-by: npmbuildbot[bot] <npmbuildbot[bot]@users.noreply.github.com>
-rw-r--r--.eslintrc.js5
-rw-r--r--appinfo/routes.php2
-rw-r--r--js/photos-0.js117
-rw-r--r--js/photos-0.js.map2
-rw-r--r--js/photos-1.js117
-rw-r--r--js/photos-1.js.map2
-rw-r--r--js/photos-10.js4
-rw-r--r--js/photos-10.js.map2
-rw-r--r--js/photos-2.js12
-rw-r--r--js/photos-2.js.map2
-rw-r--r--js/photos-3.js76
-rw-r--r--js/photos-3.js.map2
-rw-r--r--js/photos-4.js276
-rw-r--r--js/photos-4.js.map2
-rw-r--r--js/photos-5.js10
-rw-r--r--js/photos-5.js.map2
-rw-r--r--js/photos-6.js12
-rw-r--r--js/photos-6.js.map2
-rw-r--r--js/photos-7.js6
-rw-r--r--js/photos-7.js.map2
-rw-r--r--js/photos-8.js4
-rw-r--r--js/photos-8.js.map2
-rw-r--r--js/photos-9.js4
-rw-r--r--js/photos-9.js.map2
-rw-r--r--js/photos-main.js121
-rw-r--r--js/photos-main.js.map2
-rw-r--r--lib/Controller/ApiController.php73
-rw-r--r--lib/Controller/PageController.php36
-rw-r--r--package-lock.json14
-rw-r--r--package.json1
-rw-r--r--src/Photos.vue13
-rw-r--r--src/components/File.vue17
-rw-r--r--src/components/Settings/CroppedLayoutSettings.vue48
-rw-r--r--src/mixins/GridConfig.js2
-rw-r--r--src/mixins/UserConfig.js64
-rw-r--r--webpack.js2
36 files changed, 684 insertions, 376 deletions
diff --git a/.eslintrc.js b/.eslintrc.js
index 00e437c1..89bcc517 100644
--- a/.eslintrc.js
+++ b/.eslintrc.js
@@ -1,5 +1,8 @@
module.exports = {
extends: [
'@nextcloud'
- ]
+ ],
+ globals: {
+ appName: true
+ }
};
diff --git a/appinfo/routes.php b/appinfo/routes.php
index 46da55c7..b3b3a3d2 100644
--- a/appinfo/routes.php
+++ b/appinfo/routes.php
@@ -23,6 +23,8 @@
return [
'routes' => [
+ ['name' => 'api#setUserConfig', 'url' => '/api/v1/config/{key}', 'verb' => 'PUT'],
+
['name' => 'page#index', 'url' => '/', 'verb' => 'GET'],
['name' => 'page#index', 'url' => '/videos', 'verb' => 'GET', 'postfix' => 'videos'],
['name' => 'page#index', 'url' => '/favorites', 'verb' => 'GET', 'postfix' => 'favorites'],
diff --git a/js/photos-0.js b/js/photos-0.js
index 8bb5b265..f909cdfb 100644
--- a/js/photos-0.js
+++ b/js/photos-0.js
@@ -1,115 +1,2 @@
-(window.webpackJsonp=window.webpackJsonp||[]).push([[0],{184:function(e,t,s){"use strict";var n=s(265),o=Object.prototype.toString;function r(e){return"[object Array]"===o.call(e)}function i(e){return void 0===e}function c(e){return null!==e&&"object"==typeof e}function a(e){if("[object Object]"!==o.call(e))return!1;var t=Object.getPrototypeOf(e);return null===t||t===Object.prototype}function m(e){return"[object Function]"===o.call(e)}function A(e,t){if(null!=e)if("object"!=typeof e&&(e=[e]),r(e))for(var s=0,n=e.length;s<n;s++)t.call(null,e[s],s,e);else for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&t.call(null,e[o],o,e)}e.exports={isArray:r,isArrayBuffer:function(e){return"[object ArrayBuffer]"===o.call(e)},isBuffer:function(e){return null!==e&&!i(e)&&null!==e.constructor&&!i(e.constructor)&&"function"==typeof e.constructor.isBuffer&&e.constructor.isBuffer(e)},isFormData:function(e){return"undefined"!=typeof FormData&&e instanceof FormData},isArrayBufferView:function(e){return"undefined"!=typeof ArrayBuffer&&ArrayBuffer.isView?ArrayBuffer.isView(e):e&&e.buffer&&e.buffer instanceof ArrayBuffer},isString:function(e){return"string"==typeof e},isNumber:function(e){return"number"==typeof e},isObject:c,isPlainObject:a,isUndefined:i,isDate:function(e){return"[object Date]"===o.call(e)},isFile:function(e){return"[object File]"===o.call(e)},isBlob:function(e){return"[object Blob]"===o.call(e)},isFunction:m,isStream:function(e){return c(e)&&m(e.pipe)},isURLSearchParams:function(e){return"undefined"!=typeof URLSearchParams&&e instanceof URLSearchParams},isStandardBrowserEnv:function(){return("undefined"==typeof navigator||"ReactNative"!==navigator.product&&"NativeScript"!==navigator.product&&"NS"!==navigator.product)&&("undefined"!=typeof window&&"undefined"!=typeof document)},forEach:A,merge:function e(){var t={};function s(s,n){a(t[n])&&a(s)?t[n]=e(t[n],s):a(s)?t[n]=e({},s):r(s)?t[n]=s.slice():t[n]=s}for(var n=0,o=arguments.length;n<o;n++)A(arguments[n],s);return t},extend:function(e,t,s){return A(t,(function(t,o){e[o]=s&&"function"==typeof t?n(t,s):t})),e},trim:function(e){return e.replace(/^\s*/,"").replace(/\s*$/,"")},stripBOM:function(e){return 65279===e.charCodeAt(0)&&(e=e.slice(1)),e}}},212:function(e,t,s){"use strict";s(124),Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n,o=(n=s(494))&&n.__esModule?n:{default:n},r=s(23);var i=o.default.create({headers:{requesttoken:(0,r.getRequestToken)()}}),c=Object.assign(i,{CancelToken:o.default.CancelToken,isCancel:o.default.isCancel});(0,r.onRequestTokenUpdate)((function(e){return i.defaults.headers.requesttoken=e}));var a=c;t.default=a},222:function(e,t,s){e.exports=function(e){var t={};function s(n){if(t[n])return t[n].exports;var o=t[n]={i:n,l:!1,exports:{}};return e[n].call(o.exports,o,o.exports,s),o.l=!0,o.exports}return s.m=e,s.c=t,s.d=function(e,t,n){s.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},s.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},s.t=function(e,t){if(1&t&&(e=s(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(s.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)s.d(n,o,function(t){return e[t]}.bind(null,o));return n},s.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return s.d(t,"a",t),t},s.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},s.p="",s(s.s="fb15")}({"24fb":function(e,t,s){"use strict";e.exports=function(e){var t=[];return t.toString=function(){return this.map((function(t){var s=function(e,t){var s=e[1]||"",n=e[3];if(!n)return s;if(t&&"function"==typeof btoa){var o=(i=n,c=btoa(unescape(encodeURIComponent(JSON.stringify(i)))),a="sourceMappingURL=data:application/json;charset=utf-8;base64,".concat(c),"/*# ".concat(a," */")),r=n.sources.map((function(e){return"/*# sourceURL=".concat(n.sourceRoot||"").concat(e," */")}));return[s].concat(r).concat([o]).join("\n")}var i,c,a;return[s].join("\n")}(t,e);return t[2]?"@media ".concat(t[2]," {").concat(s,"}"):s})).join("")},t.i=function(e,s,n){"string"==typeof e&&(e=[[null,e,""]]);var o={};if(n)for(var r=0;r<this.length;r++){var i=this[r][0];null!=i&&(o[i]=!0)}for(var c=0;c<e.length;c++){var a=[].concat(e[c]);n&&o[a[0]]||(s&&(a[2]?a[2]="".concat(s," and ").concat(a[2]):a[2]=s),t.push(a))}},t}},4117:function(e,t,s){"use strict";var n=s("9cbf");s.n(n).a},"499e":function(e,t,s){"use strict";function n(e,t){for(var s=[],n={},o=0;o<t.length;o++){var r=t[o],i=r[0],c={id:e+":"+o,css:r[1],media:r[2],sourceMap:r[3]};n[i]?n[i].parts.push(c):s.push(n[i]={id:i,parts:[c]})}return s}s.r(t),s.d(t,"default",(function(){return u}));var o="undefined"!=typeof document;if("undefined"!=typeof DEBUG&&DEBUG&&!o)throw new Error("vue-style-loader cannot be used in a non-browser environment. Use { target: 'node' } in your Webpack config to indicate a server-rendering environment.");var r={},i=o&&(document.head||document.getElementsByTagName("head")[0]),c=null,a=0,m=!1,A=function(){},l=null,g="undefined"!=typeof navigator&&/msie [6-9]\b/.test(navigator.userAgent.toLowerCase());function u(e,t,s,o){m=s,l=o||{};var i=n(e,t);return d(i),function(t){for(var s=[],o=0;o<i.length;o++){var c=i[o];(a=r[c.id]).refs--,s.push(a)}t?d(i=n(e,t)):i=[];for(o=0;o<s.length;o++){var a;if(0===(a=s[o]).refs){for(var m=0;m<a.parts.length;m++)a.parts[m]();delete r[a.id]}}}}function d(e){for(var t=0;t<e.length;t++){var s=e[t],n=r[s.id];if(n){n.refs++;for(var o=0;o<n.parts.length;o++)n.parts[o](s.parts[o]);for(;o<s.parts.length;o++)n.parts.push(f(s.parts[o]));n.parts.length>s.parts.length&&(n.parts.length=s.parts.length)}else{var i=[];for(o=0;o<s.parts.length;o++)i.push(f(s.parts[o]));r[s.id]={id:s.id,refs:1,parts:i}}}}function p(){var e=document.createElement("style");return e.type="text/css",i.appendChild(e),e}function f(e){var t,s,n=document.querySelector('style[data-vue-ssr-id~="'+e.id+'"]');if(n){if(m)return A;n.parentNode.removeChild(n)}if(g){var o=a++;n=c||(c=p()),t=M.bind(null,n,o,!1),s=M.bind(null,n,o,!0)}else n=p(),t=E.bind(null,n),s=function(){n.parentNode.removeChild(n)};return t(e),function(n){if(n){if(n.css===e.css&&n.media===e.media&&n.sourceMap===e.sourceMap)return;t(e=n)}else s()}}var v,h=(v=[],function(e,t){return v[e]=t,v.filter(Boolean).join("\n")});function M(e,t,s,n){var o=s?"":n.css;if(e.styleSheet)e.styleSheet.cssText=h(t,o);else{var r=document.createTextNode(o),i=e.childNodes;i[t]&&e.removeChild(i[t]),i.length?e.insertBefore(r,i[t]):e.appendChild(r)}}function E(e,t){var s=t.css,n=t.media,o=t.sourceMap;if(n&&e.setAttribute("media",n),l.ssrId&&e.setAttribute("data-vue-ssr-id",t.id),o&&(s+="\n/*# sourceURL="+o.sources[0]+" */",s+="\n/*# sourceMappingURL=data:application/json;base64,"+btoa(unescape(encodeURIComponent(JSON.stringify(o))))+" */"),e.styleSheet)e.styleSheet.cssText=s;else{for(;e.firstChild;)e.removeChild(e.firstChild);e.appendChild(document.createTextNode(s))}}},8875:function(e,t,s){var n,o,r;"undefined"!=typeof self&&self,o=[],void 0===(r="function"==typeof(n=function(){return function e(){var t=Object.getOwnPropertyDescriptor(document,"currentScript");if(!t&&"currentScript"in document&&document.currentScript)return document.currentScript;if(t&&t.get!==e&&document.currentScript)return document.currentScript;try{throw new Error}catch(e){var s,n,o,r=/.*at [^(]*\((.*):(.+):(.+)\)$/gi.exec(e.stack)||/@([^@]*):(\d+):(\d+)\s*$/gi.exec(e.stack),i=r&&r[1]||!1,c=r&&r[2]||!1,a=document.location.href.replace(document.location.hash,""),m=document.getElementsByTagName("script");i===a&&(s=document.documentElement.outerHTML,n=new RegExp("(?:[^\\n]+?\\n){0,"+(c-2)+"}[^<]*<script>([\\d\\D]*?)<\\/script>[\\d\\D]*","i"),o=s.replace(n,"$1").trim());for(var A=0;A<m.length;A++){if("interactive"===m[A].readyState)return m[A];if(m[A].src===i)return m[A];if(i===a&&m[A].innerHTML&&m[A].innerHTML.trim()===o)return m[A]}return null}}})?n.apply(t,o):n)||(e.exports=r)},"88c2":function(e,t,s){(t=s("24fb")(!1)).push([e.i,".grid[data-v-8e6a98ac]{display:grid;align-items:center}",""]),e.exports=t},"8bbf":function(e,t){e.exports=s(0)},"9cbf":function(e,t,s){var n=s("88c2");"string"==typeof n&&(n=[[e.i,n,""]]),n.locals&&(e.exports=n.locals);(0,s("499e").default)("8a458e06",n,!0,{sourceMap:!1,shadowMode:!1})},fb15:function(e,t,s){"use strict";if(s.r(t),"undefined"!=typeof window){var n=window.document.currentScript,o=s("8875");n=o(),"currentScript"in document||Object.defineProperty(document,"currentScript",{get:o});var r=n&&n.src.match(/(.+\/)[^/]+\.js(\?.*)?$/);r&&(s.p=r[1])}function i(e,t,s,n){var o,r=arguments.length,i=r<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,s):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)i=Reflect.decorate(e,t,s,n);else for(var c=e.length-1;c>=0;c--)(o=e[c])&&(i=(r<3?o(i):r>3?o(t,s,i):o(t,s))||i);return r>3&&i&&Object.defineProperty(t,s,i),i}function c(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)}var a=s("8bbf"),m=s.n(a);
-/**
- * vue-class-component v7.2.6
- * (c) 2015-present Evan You
- * @license MIT
- */
-function A(e){return(A="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})(e)}function l(e,t,s){return t in e?Object.defineProperty(e,t,{value:s,enumerable:!0,configurable:!0,writable:!0}):e[t]=s,e}function g(e){return function(e){if(Array.isArray(e)){for(var t=0,s=new Array(e.length);t<e.length;t++)s[t]=e[t];return s}}(e)||function(e){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e))return Array.from(e)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance")}()}function u(){return"undefined"!=typeof Reflect&&Reflect.defineMetadata&&Reflect.getOwnMetadataKeys}function d(e,t){p(e,t),Object.getOwnPropertyNames(t.prototype).forEach((function(s){p(e.prototype,t.prototype,s)})),Object.getOwnPropertyNames(t).forEach((function(s){p(e,t,s)}))}function p(e,t,s){(s?Reflect.getOwnMetadataKeys(t,s):Reflect.getOwnMetadataKeys(t)).forEach((function(n){var o=s?Reflect.getOwnMetadata(n,t,s):Reflect.getOwnMetadata(n,t);s?Reflect.defineMetadata(n,o,e,s):Reflect.defineMetadata(n,o,e)}))}var f={__proto__:[]}instanceof Array;function v(e){return function(t,s,n){var o="function"==typeof t?t:t.constructor;o.__decorators__||(o.__decorators__=[]),"number"!=typeof n&&(n=void 0),o.__decorators__.push((function(t){return e(t,s,n)}))}}function h(e,t){var s=t.prototype._init;t.prototype._init=function(){var t=this,s=Object.getOwnPropertyNames(e);if(e.$options.props)for(var n in e.$options.props)e.hasOwnProperty(n)||s.push(n);s.forEach((function(s){Object.defineProperty(t,s,{get:function(){return e[s]},set:function(t){e[s]=t},configurable:!0})}))};var n=new t;t.prototype._init=s;var o={};return Object.keys(n).forEach((function(e){void 0!==n[e]&&(o[e]=n[e])})),o}var M=["data","beforeCreate","created","beforeMount","mounted","beforeDestroy","destroyed","beforeUpdate","updated","activated","deactivated","render","errorCaptured","serverPrefetch"];function E(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};t.name=t.name||e._componentTag||e.name;var s=e.prototype;Object.getOwnPropertyNames(s).forEach((function(e){if("constructor"!==e)if(M.indexOf(e)>-1)t[e]=s[e];else{var n=Object.getOwnPropertyDescriptor(s,e);void 0!==n.value?"function"==typeof n.value?(t.methods||(t.methods={}))[e]=n.value:(t.mixins||(t.mixins=[])).push({data:function(){return l({},e,n.value)}}):(n.get||n.set)&&((t.computed||(t.computed={}))[e]={get:n.get,set:n.set})}})),(t.mixins||(t.mixins=[])).push({data:function(){return h(this,e)}});var n=e.__decorators__;n&&(n.forEach((function(e){return e(t)})),delete e.__decorators__);var o=Object.getPrototypeOf(e.prototype),r=o instanceof m.a?o.constructor:m.a,i=r.extend(t);return P(i,e,r),u()&&d(i,e),i}var T={prototype:!0,arguments:!0,callee:!0,caller:!0};function P(e,t,s){Object.getOwnPropertyNames(t).forEach((function(n){if(!T[n]){var o=Object.getOwnPropertyDescriptor(e,n);if(!o||o.configurable){var r,i,c=Object.getOwnPropertyDescriptor(t,n);if(!f){if("cid"===n)return;var a=Object.getOwnPropertyDescriptor(s,n);if(r=c.value,i=A(r),null!=r&&("object"===i||"function"===i)&&a&&a.value===c.value)return}0,Object.defineProperty(e,n,c)}}}))}function y(e){return"function"==typeof e?E(e):function(t){return E(t,e)}}y.registerHooks=function(e){M.push.apply(M,g(e))};var k=y;function S(e){var t=function(){var s=this,n="function"==typeof e?e.call(this):e;for(var o in(n=Object.create(n||null)).__reactiveInject__=Object.create(this.__reactiveInject__||{}),t.managed)n[t.managed[o]]=this[o];var r=function(e){n[t.managedReactive[e]]=i[e],Object.defineProperty(n.__reactiveInject__,t.managedReactive[e],{enumerable:!0,get:function(){return s[e]}})},i=this;for(var o in t.managedReactive)r(o);return n};return t.managed={},t.managedReactive={},t}function j(e){return"function"!=typeof e||!e.managed&&!e.managedReactive}function w(e){Array.isArray(e.inject)||(e.inject=e.inject||{},e.inject.__reactiveInject__={from:"__reactiveInject__",default:{}})}function x(e){return v((function(t,s){var n=t.provide;w(t),j(n)&&(n=t.provide=S(n)),n.managedReactive[s]=e||s}))}var C="undefined"!=typeof Reflect&&void 0!==Reflect.getMetadata;function b(e,t,s){if(C&&!Array.isArray(e)&&"function"!=typeof e&&void 0===e.type){var n=Reflect.getMetadata("design:type",t,s);n!==Object&&(e.type=n)}}function I(e){return void 0===e&&(e={}),function(t,s){b(e,t,s),v((function(t,s){(t.props||(t.props={}))[s]=e}))(t,s)}}const N=(e,t)=>e>720&&t>480?10:5,B=e=>Math.floor(e/250),D=e=>Math.round(1.5*e),L=(e,t,s)=>{const n=e/t;return Math.round(s*n)},F=(e,...t)=>{e&&console.debug(...t)};var O,z;let Q=class extends m.a{constructor(){super(...arguments),this.updateLock=!1,this.bottomReached=!1,this.ref=null,this.containerData={windowSize:{height:0,width:0},windowScroll:{x:0,y:0},elementWindowOffset:0,elementSize:{height:0,width:0}}}get loadingBatch(){return this.loader&&this.updateLock}get configData(){return this.computeConfigData(this.containerData,this.items)}get layoutData(){return this.computeLayoutData(this.configData)}get renderData(){return this.computeRenderData(this.configData,this.containerData,this.layoutData)}mounted(){window.addEventListener("resize",this.resize),window.addEventListener("scroll",this.scroll),this.initializeGridData()}beforeDestroy(){window.removeEventListener("resize",this.resize),window.removeEventListener("scroll",this.scroll)}resize(){this.computeContainerData()}scroll(){this.computeContainerData(),this.loadMoreData(this.containerData).catch(e=>{e&&console.error("Fail to load next data batch",e)}).then()}initializeGridData(){this.ref=this.$refs.virtualGrid,this.computeContainerData()}async loadMoreData(e){const t=e.windowScroll.y+e.windowSize.height,s=e.elementWindowOffset+e.elementSize.height-this.updateTriggerMargin;if(!this.bottomReached&&t>s&&!this.updateLock){this.updateLock=!0,F(this.debug,"Loading next batch");await this.updateFunction()&&(F(this.debug,"Bottom reached"),this.bottomReached=!0),this.updateLock=!1}return Promise.resolve()}computeContainerData(){if(null===this.ref)return;const e=this.getWindowSize(),t=this.getWindowScroll(),s=this.getElementOffset(this.ref),n=this.getElementSize(this.ref);this.containerData={windowSize:e,windowScroll:t,elementWindowOffset:s,elementSize:n}}computeConfigData(e,t){if(null===e||null===t)return{windowMargin:0,gridGap:0,columnCount:1,entries:[]};const s=e.elementSize?e.elementSize.width:null,n=this.getWindowMargin(e.windowSize.height),o=this.getGridGap(s,e.windowSize.height),r=this.getColumnCount(s),i=this.getColumnWidth(r,o,s),c=t.map(e=>{if(!e.width)return e;const t=i*e.columnSpan+o*(e.columnSpan-1);return{...e,height:this.getItemRatioHeight(e.height,e.width,t),width:t}});return{windowMargin:n,gridGap:o,columnCount:r,entries:c}}computeLayoutData(e){if(null===e)return{cells:[],totalHeight:0};let t=1,s=0,n=0,o=0;return{cells:e.entries.map((r,i)=>{const{columnCount:c,gridGap:a}=e;let m=r.columnSpan,A=r.height;m<1&&(m=c);const l=(i+o)%c;r.newRow&&0!==l&&(o+=c-l);const g=i+o,u=g%c+1,d=Math.floor(g/c)+1;if(u+m>c+1){const e=u+m-c-1;A*=1-e/m,m-=e}m>1&&(o+=m-1),d!==t&&(t=d,s+=n+a,n=0);const p=s,f=Math.round(A);return n=Math.max(n,f),{...r,columnNumber:u,rowNumber:d,offset:p,height:f,columnSpan:m}}),totalHeight:s+n}}computeRenderData(e,t,s){if(null===s||null===e)return{cellsToRender:[],firstRenderedRowNumber:0,firstRenderedRowOffset:0};const n=[];let o=null,r=null;if(null!==t.elementWindowOffset){const i=t.elementWindowOffset;for(const c of s.cells){const s=i+c.offset,a=s+c.height,m=t.windowScroll.y,A=m+t.windowSize.height,l=m-e.windowMargin;s>A+e.windowMargin||(a<l||(null===o&&(o=c.rowNumber),c.rowNumber===o&&(r=r?Math.min(r,c.offset):c.offset),n.push(c)))}}return{cellsToRender:n,firstRenderedRowNumber:o,firstRenderedRowOffset:r}}getColumnWidth(e,t,s){if(null===e||null===t||null===s)return null;const n=(e-1)*t;return Math.round((s-n)/e)}getGridRowStart(e,t){if(null===t)return;const s=null!==t.firstRenderedRowNumber?t.firstRenderedRowNumber-1:0;return""+(e.rowNumber-s)}resetGrid(){this.bottomReached=!1,this.initializeGridData()}isSameElementSize(e,t){return e.width===t.width&&e.height===t.height}getWindowSize(){return{width:window.innerWidth,height:window.innerHeight}}getElementSize(e){const t=e.getBoundingClientRect();return{width:t.width,height:t.height}}isSameElementScroll(e,t){return e.x===t.x&&e.y===t.y}getWindowScroll(){return{x:window.scrollX,y:window.scrollY}}getElementOffset(e){return window.scrollY+e.getBoundingClientRect().top}};i([I({required:!0}),c("design:type",Array)],Q.prototype,"items",void 0),i([I({default:()=>()=>!0}),c("design:type",Function)],Q.prototype,"updateFunction",void 0),i([I({default:()=>N}),c("design:type",Function)],Q.prototype,"getGridGap",void 0),i([I({default:()=>B}),c("design:type",Function)],Q.prototype,"getColumnCount",void 0),i([I({default:()=>D}),c("design:type",Function)],Q.prototype,"getWindowMargin",void 0),i([I({default:()=>L}),c("design:type",Function)],Q.prototype,"getItemRatioHeight",void 0),i([I({default:500}),c("design:type",Number)],Q.prototype,"updateTriggerMargin",void 0),i([I({default:null}),c("design:type","function"==typeof(O=void 0!==m.a&&m.a.Component)?O:Object)],Q.prototype,"loader",void 0),i([I({default:!1}),c("design:type",Boolean)],Q.prototype,"debug",void 0),i([x(),c("design:type",Boolean)],Q.prototype,"updateLock",void 0),i([x(),c("design:type",Boolean)],Q.prototype,"bottomReached",void 0),i([x(),c("design:type","function"==typeof(z="undefined"!=typeof Element&&Element)?z:Object)],Q.prototype,"ref",void 0),i([x(),c("design:type",Object)],Q.prototype,"containerData",void 0),Q=i([k],Q);var U=Q;s("4117");var G=function(e,t,s,n,o,r,i,c){var a,m="function"==typeof e?e.options:e;if(t&&(m.render=t,m.staticRenderFns=s,m._compiled=!0),n&&(m.functional=!0),r&&(m._scopeId="data-v-"+r),i?(a=function(e){(e=e||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||"undefined"==typeof __VUE_SSR_CONTEXT__||(e=__VUE_SSR_CONTEXT__),o&&o.call(this,e),e&&e._registeredComponents&&e._registeredComponents.add(i)},m._ssrRegister=a):o&&(a=c?function(){o.call(this,(m.functional?this.parent:this).$root.$options.shadowRoot)}:o),a)if(m.functional){m._injectStyles=a;var A=m.render;m.render=function(e,t){return a.call(t),A(e,t)}}else{var l=m.beforeCreate;m.beforeCreate=l?[].concat(l,a):[a]}return{exports:e,options:m}}(U,(function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",{ref:"virtualGrid",style:{boxSizing:"border-box",height:e.layoutData.totalHeight+"px",paddingTop:null!==e.renderData&&null!==e.renderData.firstRenderedRowOffset?e.renderData.firstRenderedRowOffset+"px":"0px"}},[s("div",{staticClass:"grid",style:{"grid-template-columns":"repeat("+e.configData.columnCount+", 1fr)",gap:e.configData.gridGap+"px"}},e._l(e.renderData.cellsToRender,(function(t){return s("div",{key:t.id,style:{height:t.height,"grid-column-start":t.columnNumber,"grid-column-end":t.columnNumber+t.columnSpan,"grid-row-start":e.getGridRowStart(t,e.renderData)}},[s(t.renderComponent,{tag:"component",attrs:{item:t}})],1)})),0),s(e.loadingBatch&&e.loader,{tag:"component"})],1)}),[],!1,null,"8e6a98ac",null).exports;t.default=G}})},265:function(e,t,s){"use strict";e.exports=function(e,t){return function(){for(var s=new Array(arguments.length),n=0;n<s.length;n++)s[n]=arguments[n];return e.apply(t,s)}}},266:function(e,t,s){"use strict";var n=s(184);function o(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}e.exports=function(e,t,s){if(!t)return e;var r;if(s)r=s(t);else if(n.isURLSearchParams(t))r=t.toString();else{var i=[];n.forEach(t,(function(e,t){null!=e&&(n.isArray(e)?t+="[]":e=[e],n.forEach(e,(function(e){n.isDate(e)?e=e.toISOString():n.isObject(e)&&(e=JSON.stringify(e)),i.push(o(t)+"="+o(e))})))})),r=i.join("&")}if(r){var c=e.indexOf("#");-1!==c&&(e=e.slice(0,c)),e+=(-1===e.indexOf("?")?"?":"&")+r}return e}},267:function(e,t,s){"use strict";e.exports=function(e){return!(!e||!e.__CANCEL__)}},268:function(e,t,s){"use strict";(function(t){var n=s(184),o=s(500),r={"Content-Type":"application/x-www-form-urlencoded"};function i(e,t){!n.isUndefined(e)&&n.isUndefined(e["Content-Type"])&&(e["Content-Type"]=t)}var c,a={adapter:(("undefined"!=typeof XMLHttpRequest||void 0!==t&&"[object process]"===Object.prototype.toString.call(t))&&(c=s(269)),c),transformRequest:[function(e,t){return o(t,"Accept"),o(t,"Content-Type"),n.isFormData(e)||n.isArrayBuffer(e)||n.isBuffer(e)||n.isStream(e)||n.isFile(e)||n.isBlob(e)?e:n.isArrayBufferView(e)?e.buffer:n.isURLSearchParams(e)?(i(t,"application/x-www-form-urlencoded;charset=utf-8"),e.toString()):n.isObject(e)?(i(t,"application/json;charset=utf-8"),JSON.stringify(e)):e}],transformResponse:[function(e){if("string"==typeof e)try{e=JSON.parse(e)}catch(e){}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,validateStatus:function(e){return e>=200&&e<300}};a.headers={common:{Accept:"application/json, text/plain, */*"}},n.forEach(["delete","get","head"],(function(e){a.headers[e]={}})),n.forEach(["post","put","patch"],(function(e){a.headers[e]=n.merge(r)})),e.exports=a}).call(this,s(73))},269:function(e,t,s){"use strict";var n=s(184),o=s(501),r=s(503),i=s(266),c=s(504),a=s(507),m=s(508),A=s(270);e.exports=function(e){return new Promise((function(t,s){var l=e.data,g=e.headers;n.isFormData(l)&&delete g["Content-Type"],(n.isBlob(l)||n.isFile(l))&&l.type&&delete g["Content-Type"];var u=new XMLHttpRequest;if(e.auth){var d=e.auth.username||"",p=unescape(encodeURIComponent(e.auth.password))||"";g.Authorization="Basic "+btoa(d+":"+p)}var f=c(e.baseURL,e.url);if(u.open(e.method.toUpperCase(),i(f,e.params,e.paramsSerializer),!0),u.timeout=e.timeout,u.onreadystatechange=function(){if(u&&4===u.readyState&&(0!==u.status||u.responseURL&&0===u.responseURL.indexOf("file:"))){var n="getAllResponseHeaders"in u?a(u.getAllResponseHeaders()):null,r={data:e.responseType&&"text"!==e.responseType?u.response:u.responseText,status:u.status,statusText:u.statusText,headers:n,config:e,request:u};o(t,s,r),u=null}},u.onabort=function(){u&&(s(A("Request aborted",e,"ECONNABORTED",u)),u=null)},u.onerror=function(){s(A("Network Error",e,null,u)),u=null},u.ontimeout=function(){var t="timeout of "+e.timeout+"ms exceeded";e.timeoutErrorMessage&&(t=e.timeoutErrorMessage),s(A(t,e,"ECONNABORTED",u)),u=null},n.isStandardBrowserEnv()){var v=(e.withCredentials||m(f))&&e.xsrfCookieName?r.read(e.xsrfCookieName):void 0;v&&(g[e.xsrfHeaderName]=v)}if("setRequestHeader"in u&&n.forEach(g,(function(e,t){void 0===l&&"content-type"===t.toLowerCase()?delete g[t]:u.setRequestHeader(t,e)})),n.isUndefined(e.withCredentials)||(u.withCredentials=!!e.withCredentials),e.responseType)try{u.responseType=e.responseType}catch(t){if("json"!==e.responseType)throw t}"function"==typeof e.onDownloadProgress&&u.addEventListener("progress",e.onDownloadProgress),"function"==typeof e.onUploadProgress&&u.upload&&u.upload.addEventListener("progress",e.onUploadProgress),e.cancelToken&&e.cancelToken.promise.then((function(e){u&&(u.abort(),s(e),u=null)})),l||(l=null),u.send(l)}))}},270:function(e,t,s){"use strict";var n=s(502);e.exports=function(e,t,s,o,r){var i=new Error(e);return n(i,t,s,o,r)}},271:function(e,t,s){"use strict";var n=s(184);e.exports=function(e,t){t=t||{};var s={},o=["url","method","data"],r=["headers","auth","proxy","params"],i=["baseURL","transformRequest","transformResponse","paramsSerializer","timeout","timeoutMessage","withCredentials","adapter","responseType","xsrfCookieName","xsrfHeaderName","onUploadProgress","onDownloadProgress","decompress","maxContentLength","maxBodyLength","maxRedirects","transport","httpAgent","httpsAgent","cancelToken","socketPath","responseEncoding"],c=["validateStatus"];function a(e,t){return n.isPlainObject(e)&&n.isPlainObject(t)?n.merge(e,t):n.isPlainObject(t)?n.merge({},t):n.isArray(t)?t.slice():t}function m(o){n.isUndefined(t[o])?n.isUndefined(e[o])||(s[o]=a(void 0,e[o])):s[o]=a(e[o],t[o])}n.forEach(o,(function(e){n.isUndefined(t[e])||(s[e]=a(void 0,t[e]))})),n.forEach(r,m),n.forEach(i,(function(o){n.isUndefined(t[o])?n.isUndefined(e[o])||(s[o]=a(void 0,e[o])):s[o]=a(void 0,t[o])})),n.forEach(c,(function(n){n in t?s[n]=a(e[n],t[n]):n in e&&(s[n]=a(void 0,e[n]))}));var A=o.concat(r).concat(i).concat(c),l=Object.keys(e).concat(Object.keys(t)).filter((function(e){return-1===A.indexOf(e)}));return n.forEach(l,m),s}},272:function(e,t,s){"use strict";function n(e){this.message=e}n.prototype.toString=function(){return"Cancel"+(this.message?": "+this.message:"")},n.prototype.__CANCEL__=!0,e.exports=n},494:function(e,t,s){e.exports=s(495)},495:function(e,t,s){"use strict";var n=s(184),o=s(265),r=s(496),i=s(271);function c(e){var t=new r(e),s=o(r.prototype.request,t);return n.extend(s,r.prototype,t),n.extend(s,t),s}var a=c(s(268));a.Axios=r,a.create=function(e){return c(i(a.defaults,e))},a.Cancel=s(272),a.CancelToken=s(509),a.isCancel=s(267),a.all=function(e){return Promise.all(e)},a.spread=s(510),e.exports=a,e.exports.default=a},496:function(e,t,s){"use strict";var n=s(184),o=s(266),r=s(497),i=s(498),c=s(271);function a(e){this.defaults=e,this.interceptors={request:new r,response:new r}}a.prototype.request=function(e){"string"==typeof e?(e=arguments[1]||{}).url=arguments[0]:e=e||{},(e=c(this.defaults,e)).method?e.method=e.method.toLowerCase():this.defaults.method?e.method=this.defaults.method.toLowerCase():e.method="get";var t=[i,void 0],s=Promise.resolve(e);for(this.interceptors.request.forEach((function(e){t.unshift(e.fulfilled,e.rejected)})),this.interceptors.response.forEach((function(e){t.push(e.fulfilled,e.rejected)}));t.length;)s=s.then(t.shift(),t.shift());return s},a.prototype.getUri=function(e){return e=c(this.defaults,e),o(e.url,e.params,e.paramsSerializer).replace(/^\?/,"")},n.forEach(["delete","get","head","options"],(function(e){a.prototype[e]=function(t,s){return this.request(c(s||{},{method:e,url:t}))}})),n.forEach(["post","put","patch"],(function(e){a.prototype[e]=function(t,s,n){return this.request(c(n||{},{method:e,url:t,data:s}))}})),e.exports=a},497:function(e,t,s){"use strict";var n=s(184);function o(){this.handlers=[]}o.prototype.use=function(e,t){return this.handlers.push({fulfilled:e,rejected:t}),this.handlers.length-1},o.prototype.eject=function(e){this.handlers[e]&&(this.handlers[e]=null)},o.prototype.forEach=function(e){n.forEach(this.handlers,(function(t){null!==t&&e(t)}))},e.exports=o},498:function(e,t,s){"use strict";var n=s(184),o=s(499),r=s(267),i=s(268);function c(e){e.cancelToken&&e.cancelToken.throwIfRequested()}e.exports=function(e){return c(e),e.headers=e.headers||{},e.data=o(e.data,e.headers,e.transformRequest),e.headers=n.merge(e.headers.common||{},e.headers[e.method]||{},e.headers),n.forEach(["delete","get","head","post","put","patch","common"],(function(t){delete e.headers[t]})),(e.adapter||i.adapter)(e).then((function(t){return c(e),t.data=o(t.data,t.headers,e.transformResponse),t}),(function(t){return r(t)||(c(e),t&&t.response&&(t.response.data=o(t.response.data,t.response.headers,e.transformResponse))),Promise.reject(t)}))}},499:function(e,t,s){"use strict";var n=s(184);e.exports=function(e,t,s){return n.forEach(s,(function(s){e=s(e,t)})),e}},500:function(e,t,s){"use strict";var n=s(184);e.exports=function(e,t){n.forEach(e,(function(s,n){n!==t&&n.toUpperCase()===t.toUpperCase()&&(e[t]=s,delete e[n])}))}},501:function(e,t,s){"use strict";var n=s(270);e.exports=function(e,t,s){var o=s.config.validateStatus;s.status&&o&&!o(s.status)?t(n("Request failed with status code "+s.status,s.config,null,s.request,s)):e(s)}},502:function(e,t,s){"use strict";e.exports=function(e,t,s,n,o){return e.config=t,s&&(e.code=s),e.request=n,e.response=o,e.isAxiosError=!0,e.toJSON=function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:this.config,code:this.code}},e}},503:function(e,t,s){"use strict";var n=s(184);e.exports=n.isStandardBrowserEnv()?{write:function(e,t,s,o,r,i){var c=[];c.push(e+"="+encodeURIComponent(t)),n.isNumber(s)&&c.push("expires="+new Date(s).toGMTString()),n.isString(o)&&c.push("path="+o),n.isString(r)&&c.push("domain="+r),!0===i&&c.push("secure"),document.cookie=c.join("; ")},read:function(e){var t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove:function(e){this.write(e,"",Date.now()-864e5)}}:{write:function(){},read:function(){return null},remove:function(){}}},504:function(e,t,s){"use strict";var n=s(505),o=s(506);e.exports=function(e,t){return e&&!n(t)?o(e,t):t}},505:function(e,t,s){"use strict";e.exports=function(e){return/^([a-z][a-z\d\+\-\.]*:)?\/\//i.test(e)}},506:function(e,t,s){"use strict";e.exports=function(e,t){return t?e.replace(/\/+$/,"")+"/"+t.replace(/^\/+/,""):e}},507:function(e,t,s){"use strict";var n=s(184),o=["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"];e.exports=function(e){var t,s,r,i={};return e?(n.forEach(e.split("\n"),(function(e){if(r=e.indexOf(":"),t=n.trim(e.substr(0,r)).toLowerCase(),s=n.trim(e.substr(r+1)),t){if(i[t]&&o.indexOf(t)>=0)return;i[t]="set-cookie"===t?(i[t]?i[t]:[]).concat([s]):i[t]?i[t]+", "+s:s}})),i):i}},508:function(e,t,s){"use strict";var n=s(184);e.exports=n.isStandardBrowserEnv()?function(){var e,t=/(msie|trident)/i.test(navigator.userAgent),s=document.createElement("a");function o(e){var n=e;return t&&(s.setAttribute("href",n),n=s.href),s.setAttribute("href",n),{href:s.href,protocol:s.protocol?s.protocol.replace(/:$/,""):"",host:s.host,search:s.search?s.search.replace(/^\?/,""):"",hash:s.hash?s.hash.replace(/^#/,""):"",hostname:s.hostname,port:s.port,pathname:"/"===s.pathname.charAt(0)?s.pathname:"/"+s.pathname}}return e=o(window.location.href),function(t){var s=n.isString(t)?o(t):t;return s.protocol===e.protocol&&s.host===e.host}}():function(){return!0}},509:function(e,t,s){"use strict";var n=s(272);function o(e){if("function"!=typeof e)throw new TypeError("executor must be a function.");