Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nextcloud/photos.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>2021-08-04 09:58:09 +0300
committerJohn Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>2021-08-04 10:32:29 +0300
commitfbe36ce52cd961f70a01a78e3f01ebe663ff6f40 (patch)
tree1143a89e8807f1631edff3405dbede1227ca5d36 /js/photos-node_modules_nextcloud_moment_node_modules_moment_locale_sync_recursive_-src_patchedRequest_j-3cb869.js.map
parentae937c2076293b4e063dd0f56b9eba5a583ec9fe (diff)
Fix illustrations
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
Diffstat (limited to 'js/photos-node_modules_nextcloud_moment_node_modules_moment_locale_sync_recursive_-src_patchedRequest_j-3cb869.js.map')
-rw-r--r--js/photos-node_modules_nextcloud_moment_node_modules_moment_locale_sync_recursive_-src_patchedRequest_j-3cb869.js.map2
1 files changed, 1 insertions, 1 deletions
diff --git a/js/photos-node_modules_nextcloud_moment_node_modules_moment_locale_sync_recursive_-src_patchedRequest_j-3cb869.js.map b/js/photos-node_modules_nextcloud_moment_node_modules_moment_locale_sync_recursive_-src_patchedRequest_j-3cb869.js.map
index 79846f06..3bc8ecb1 100644
--- a/js/photos-node_modules_nextcloud_moment_node_modules_moment_locale_sync_recursive_-src_patchedRequest_j-3cb869.js.map
+++ b/js/photos-node_modules_nextcloud_moment_node_modules_moment_locale_sync_recursive_-src_patchedRequest_j-3cb869.js.map
@@ -1 +1 @@
-{"version":3,"sources":["webpack:///photos/node_modules/@nextcloud/moment/node_modules/moment/locale|sync|/^\\.\\/.*$","webpack:///photos/src/patchedRequest.js","webpack:///photos/src/services/DavClient.js","webpack:///photos/src/services/DavRequest.js","webpack:///photos/src/components/Loader.vue?vue&type=style&index=0&lang=scss&","webpack:///photos/src/components/SeparatorVirtualGrid.vue?vue&type=style&index=0&id=a2e7025e&lang=scss&scoped=true&","webpack:///photos/src/views/Timeline.vue?vue&type=style&index=0&id=01e8a950&lang=scss&scoped=true&","webpack:///photos/src/views/Timeline.vue?vue&type=template&id=01e8a950&scoped=true&","webpack:///photos/src/services/PhotoSearch.js","webpack:///photos/src/components/SeparatorVirtualGrid.vue","webpack:///photos/src/components/SeparatorVirtualGrid.vue?vue&type=script&lang=js&","webpack://photos/./src/components/SeparatorVirtualGrid.vue?0ffc","webpack://photos/./src/components/SeparatorVirtualGrid.vue?8076","webpack:///photos/src/components/SeparatorVirtualGrid.vue?vue&type=template&id=a2e7025e&scoped=true&","webpack:///photos/src/components/Loader.vue","webpack:///photos/src/components/Loader.vue?vue&type=script&lang=js&","webpack://photos/./src/components/Loader.vue?eb1b","webpack://photos/./src/components/Loader.vue?5508","webpack:///photos/src/components/Loader.vue?vue&type=template&id=7bbb2dd6&","webpack:///photos/src/views/Timeline.vue","webpack:///photos/src/views/Timeline.vue?vue&type=script&lang=js&","webpack://photos/./src/views/Timeline.vue?3092","webpack://photos/./src/views/Timeline.vue?2f21"],"names":["map","webpackContext","req","id","webpackContextResolve","__webpack_require__","o","e","Error","code","keys","Object","resolve","module","exports","request","require","oldPrepareRequestOptions","prepareRequestOptions","requestOptions","methodOptions","cancelToken","method","webdav","patch","axios","remote","generateRemoteUrl","client","parseUrl","pathname","props","___CSS_LOADER_EXPORT___","push","onlyFavorites","options","assign","page","perPage","sizes","mimesType","allMimes","prefixPath","getCurrentUser","uid","orMime","reduce","str","mime","eqFavorites","headers","data","deep","details","response","genFileInfo","filename","replace","_vm","this","_h","$createElement","_c","_self","staticClass","style","height","item","_v","_s","injected","month","year","_t","error","attrs","t","loading","_e","key","path","rootTitle","ref","contentList","getContent","gridConfig","count","gap","loaderComponent"],"mappings":"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","file":"photos-node_modules_nextcloud_moment_node_modules_moment_locale_sync_recursive_-src_patchedRequest_j-3cb869.js?v=6daef624b78d49e273f1","sourcesContent":["var map = {\n\t\"./af\": 77653,\n\t\"./af.js\": 77653,\n\t\"./ar\": 28093,\n\t\"./ar-dz\": 41943,\n\t\"./ar-dz.js\": 41943,\n\t\"./ar-kw\": 23969,\n\t\"./ar-kw.js\": 23969,\n\t\"./ar-ly\": 40594,\n\t\"./ar-ly.js\": 40594,\n\t\"./ar-ma\": 18369,\n\t\"./ar-ma.js\": 18369,\n\t\"./ar-sa\": 32579,\n\t\"./ar-sa.js\": 32579,\n\t\"./ar-tn\": 76442,\n\t\"./ar-tn.js\": 76442,\n\t\"./ar.js\": 28093,\n\t\"./az\": 86425,\n\t\"./az.js\": 86425,\n\t\"./be\": 22004,\n\t\"./be.js\": 22004,\n\t\"./bg\": 42982,\n\t\"./bg.js\": 42982,\n\t\"./bm\": 21067,\n\t\"./bm.js\": 21067,\n\t\"./bn\": 8366,\n\t\"./bn.js\": 8366,\n\t\"./bo\": 95040,\n\t\"./bo.js\": 95040,\n\t\"./br\": 521,\n\t\"./br.js\": 521,\n\t\"./bs\": 83242,\n\t\"./bs.js\": 83242,\n\t\"./ca\": 73046,\n\t\"./ca.js\": 73046,\n\t\"./cs\": 25794,\n\t\"./cs.js\": 25794,\n\t\"./cv\": 28231,\n\t\"./cv.js\": 28231,\n\t\"./cy\": 10927,\n\t\"./cy.js\": 10927,\n\t\"./da\": 42832,\n\t\"./da.js\": 42832,\n\t\"./de\": 15916,\n\t\"./de-at\": 3331,\n\t\"./de-at.js\": 3331,\n\t\"./de-ch\": 45524,\n\t\"./de-ch.js\": 45524,\n\t\"./de.js\": 15916,\n\t\"./dv\": 44700,\n\t\"./dv.js\": 44700,\n\t\"./el\": 88752,\n\t\"./el.js\": 88752,\n\t\"./en-SG\": 16706,\n\t\"./en-SG.js\": 16706,\n\t\"./en-au\": 90444,\n\t\"./en-au.js\": 90444,\n\t\"./en-ca\": 65959,\n\t\"./en-ca.js\": 65959,\n\t\"./en-gb\": 62762,\n\t\"./en-gb.js\": 62762,\n\t\"./en-ie\": 40909,\n\t\"./en-ie.js\": 40909,\n\t\"./en-il\": 79909,\n\t\"./en-il.js\": 79909,\n\t\"./en-nz\": 75200,\n\t\"./en-nz.js\": 75200,\n\t\"./eo\": 27447,\n\t\"./eo.js\": 27447,\n\t\"./es\": 86756,\n\t\"./es-do\": 47049,\n\t\"./es-do.js\": 47049,\n\t\"./es-us\": 57133,\n\t\"./es-us.js\": 57133,\n\t\"./es.js\": 86756,\n\t\"./et\": 72182,\n\t\"./et.js\": 72182,\n\t\"./eu\": 14419,\n\t\"./eu.js\": 14419,\n\t\"./fa\": 2916,\n\t\"./fa.js\": 2916,\n\t\"./fi\": 49964,\n\t\"./fi.js\": 49964,\n\t\"./fo\": 26094,\n\t\"./fo.js\": 26094,\n\t\"./fr\": 35833,\n\t\"./fr-ca\": 56994,\n\t\"./fr-ca.js\": 56994,\n\t\"./fr-ch\": 2740,\n\t\"./fr-ch.js\": 2740,\n\t\"./fr.js\": 35833,\n\t\"./fy\": 69542,\n\t\"./fy.js\": 69542,\n\t\"./ga\": 93264,\n\t\"./ga.js\": 93264,\n\t\"./gd\": 77457,\n\t\"./gd.js\": 77457,\n\t\"./gl\": 83043,\n\t\"./gl.js\": 83043,\n\t\"./gom-latn\": 28379,\n\t\"./gom-latn.js\": 28379,\n\t\"./gu\": 406,\n\t\"./gu.js\": 406,\n\t\"./he\": 73219,\n\t\"./he.js\": 73219,\n\t\"./hi\": 99834,\n\t\"./hi.js\": 99834,\n\t\"./hr\": 28754,\n\t\"./hr.js\": 28754,\n\t\"./hu\": 93945,\n\t\"./hu.js\": 93945,\n\t\"./hy-am\": 81319,\n\t\"./hy-am.js\": 81319,\n\t\"./id\": 24875,\n\t\"./id.js\": 24875,\n\t\"./is\": 23724,\n\t\"./is.js\": 23724,\n\t\"./it\": 79906,\n\t\"./it-ch\": 34303,\n\t\"./it-ch.js\": 34303,\n\t\"./it.js\": 79906,\n\t\"./ja\": 77105,\n\t\"./ja.js\": 77105,\n\t\"./jv\": 15026,\n\t\"./jv.js\": 15026,\n\t\"./ka\": 67416,\n\t\"./ka.js\": 67416,\n\t\"./kk\": 79734,\n\t\"./kk.js\": 79734,\n\t\"./km\": 60757,\n\t\"./km.js\": 60757,\n\t\"./kn\": 58369,\n\t\"./kn.js\": 58369,\n\t\"./ko\": 77687,\n\t\"./ko.js\": 77687,\n\t\"./ku\": 95544,\n\t\"./ku.js\": 95544,\n\t\"./ky\": 85431,\n\t\"./ky.js\": 85431,\n\t\"./lb\": 13613,\n\t\"./lb.js\": 13613,\n\t\"./lo\": 34252,\n\t\"./lo.js\": 34252,\n\t\"./lt\": 84619,\n\t\"./lt.js\": 84619,\n\t\"./lv\": 93760,\n\t\"./lv.js\": 93760,\n\t\"./me\": 93393,\n\t\"./me.js\": 93393,\n\t\"./mi\": 12369,\n\t\"./mi.js\": 12369,\n\t\"./mk\": 48664,\n\t\"./mk.js\": 48664,\n\t\"./ml\": 23099,\n\t\"./ml.js\": 23099,\n\t\"./mn\": 98539,\n\t\"./mn.js\": 98539,\n\t\"./mr\": 778,\n\t\"./mr.js\": 778,\n\t\"./ms\": 39970,\n\t\"./ms-my\": 82625,\n\t\"./ms-my.js\": 82625,\n\t\"./ms.js\": 39970,\n\t\"./mt\": 15714,\n\t\"./mt.js\": 15714,\n\t\"./my\": 53055,\n\t\"./my.js\": 53055,\n\t\"./nb\": 73945,\n\t\"./nb.js\": 73945,\n\t\"./ne\": 63645,\n\t\"./ne.js\": 63645,\n\t\"./nl\": 4829,\n\t\"./nl-be\": 12823,\n\t\"./nl-be.js\": 12823,\n\t\"./nl.js\": 4829,\n\t\"./nn\": 23756,\n\t\"./nn.js\": 23756,\n\t\"./pa-in\": 97877,\n\t\"./pa-in.js\": 97877,\n\t\"./pl\": 53066,\n\t\"./pl.js\": 53066,\n\t\"./pt\": 28677,\n\t\"./pt-br\": 81592,\n\t\"./pt-br.js\": 81592,\n\t\"./pt.js\": 28677,\n\t\"./ro\": 32722,\n\t\"./ro.js\": 32722,\n\t\"./ru\": 59138,\n\t\"./ru.js\": 59138,\n\t\"./sd\": 32568,\n\t\"./sd.js\": 32568,\n\t\"./se\": 49753,\n\t\"./se.js\": 49753,\n\t\"./si\": 58024,\n\t\"./si.js\": 58024,\n\t\"./sk\": 31058,\n\t\"./sk.js\": 31058,\n\t\"./sl\": 43452,\n\t\"./sl.js\": 43452,\n\t\"./sq\": 2795,\n\t\"./sq.js\": 2795,\n\t\"./sr\": 26976,\n\t\"./sr-cyrl\": 38819,\n\t\"./sr-cyrl.js\": 38819,\n\t\"./sr.js\": 26976,\n\t\"./ss\": 7467,\n\t\"./ss.js\": 7467,\n\t\"./sv\": 42787,\n\t\"./sv.js\": 42787,\n\t\"./sw\": 80298,\n\t\"./sw.js\": 80298,\n\t\"./ta\": 57532,\n\t\"./ta.js\": 57532,\n\t\"./te\": 76076,\n\t\"./te.js\": 76076,\n\t\"./tet\": 40452,\n\t\"./tet.js\": 40452,\n\t\"./tg\": 64794,\n\t\"./tg.js\": 64794,\n\t\"./th\": 48245,\n\t\"./th.js\": 48245,\n\t\"./tl-ph\": 36056,\n\t\"./tl-ph.js\": 36056,\n\t\"./tlh\": 15249,\n\t\"./tlh.js\": 15249,\n\t\"./tr\": 22053,\n\t\"./tr.js\": 22053,\n\t\"./tzl\": 39871,\n\t\"./tzl.js\": 39871,\n\t\"./tzm\": 39574,\n\t\"./tzm-latn\": 19210,\n\t\"./tzm-latn.js\": 19210,\n\t\"./tzm.js\": 39574,\n\t\"./ug-cn\": 91532,\n\t\"./ug-cn.js\": 91532,\n\t\"./uk\": 11432,\n\t\"./uk.js\": 11432,\n\t\"./ur\": 88523,\n\t\"./ur.js\": 88523,\n\t\"./uz\": 54958,\n\t\"./uz-latn\": 68735,\n\t\"./uz-latn.js\": 68735,\n\t\"./uz.js\": 54958,\n\t\"./vi\": 83398,\n\t\"./vi.js\": 83398,\n\t\"./x-pseudo\": 56665,\n\t\"./x-pseudo.js\": 56665,\n\t\"./yo\": 11642,\n\t\"./yo.js\": 11642,\n\t\"./zh-cn\": 5462,\n\t\"./zh-cn.js\": 5462,\n\t\"./zh-hk\": 92530,\n\t\"./zh-hk.js\": 92530,\n\t\"./zh-tw\": 97333,\n\t\"./zh-tw.js\": 97333\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 93365;","/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n */\n\nconst request = require('webdav/dist/node/request')\n\nconst oldPrepareRequestOptions = request.prepareRequestOptions\n\n// While we wait for official cancellable webdav requests\n// https://github.com/perry-mitchell/webdav-client/issues/179\n// let's properly forward our axios options through webdav to axios\n\nrequest.prepareRequestOptions = function(requestOptions, methodOptions) {\n\t// add our cancelToken support\n\tif (methodOptions.cancelToken && typeof methodOptions.cancelToken === 'object') {\n\t\trequestOptions.cancelToken = methodOptions.cancelToken\n\t}\n\n\t// exploit old method\n\toldPrepareRequestOptions(requestOptions, methodOptions)\n\n\t// allow us to override the request method\n\tif (methodOptions.method && typeof methodOptions.method === 'string') {\n\t\trequestOptions.method = methodOptions.method\n\t}\n}\n\nmodule.exports = request\n","/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n */\n\nimport webdav from 'webdav'\nimport axios from '@nextcloud/axios'\nimport parseUrl from 'url-parse'\nimport { generateRemoteUrl } from '@nextcloud/router'\n\n// force our axios\nconst patcher = webdav.getPatcher()\npatcher.patch('request', axios)\n\n// init webdav client on default dav endpoint\nconst remote = generateRemoteUrl('dav')\nconst client = webdav.createClient(remote)\n\nexport const remotePath = parseUrl(remote).pathname\nexport default client\n","/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n */\nconst props = `\n\t<oc:fileid />\n\t<d:getlastmodified />\n\t<d:getetag />\n\t<d:getcontenttype />\n\t<d:getcontentlength />\n\t<nc:has-preview />\n\t<oc:favorite />\n\t<d:resourcetype />`\n\nexport { props }\nexport default `<?xml version=\"1.0\"?>\n\t\t\t<d:propfind xmlns:d=\"DAV:\"\n\t\t\t\txmlns:oc=\"http://owncloud.org/ns\"\n\t\t\t\txmlns:nc=\"http://nextcloud.org/ns\"\n\t\t\t\txmlns:ocs=\"http://open-collaboration-services.org/ns\">\n\t\t\t\t<d:prop>\n\t\t\t\t\t${props}\n\t\t\t\t</d:prop>\n\t\t\t</d:propfind>`\n","// Imports\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(true);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".loader{display:grid;height:60px}\", \"\",{\"version\":3,\"sources\":[\"webpack://src/components/Loader.vue\"],\"names\":[],\"mappings\":\"AAsCA,QACC,YAAA,CACA,WAAA\",\"sourcesContent\":[\"$sizes: (400: (count: 3, marginTop: 66, marginW: 8), 700: (count: 4, marginTop: 66, marginW: 8), 1024: (count: 5, marginTop: 66, marginW: 44), 1280: (count: 4, marginTop: 66, marginW: 44), 1440: (count: 5, marginTop: 88, marginW: 66), 1600: (count: 6, marginTop: 88, marginW: 66), 2048: (count: 7, marginTop: 88, marginW: 66), 2560: (count: 8, marginTop: 88, marginW: 88), 3440: (count: 9, marginTop: 88, marginW: 88), max: (count: 10, marginTop: 88, marginW: 88));\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.loader {\\n\\tdisplay: grid;\\n\\theight: 60px;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(true);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".grid-title[data-v-a2e7025e]{grid-column:1/8;padding:48px 0 12px 0;margin:0}.grid-title span[data-v-a2e7025e]{font-weight:normal}.grid-title.first-title[data-v-a2e7025e]{padding:0 0 12px 0}\", \"\",{\"version\":3,\"sources\":[\"webpack://src/components/SeparatorVirtualGrid.vue\"],\"names\":[],\"mappings\":\"AA8CA,6BACC,eAAA,CACA,qBAAA,CACA,QAAA,CACA,kCACC,kBAAA,CAED,yCACC,kBAAA\",\"sourcesContent\":[\"$sizes: (400: (count: 3, marginTop: 66, marginW: 8), 700: (count: 4, marginTop: 66, marginW: 8), 1024: (count: 5, marginTop: 66, marginW: 44), 1280: (count: 4, marginTop: 66, marginW: 44), 1440: (count: 5, marginTop: 88, marginW: 66), 1600: (count: 6, marginTop: 88, marginW: 66), 2048: (count: 7, marginTop: 88, marginW: 66), 2560: (count: 8, marginTop: 88, marginW: 88), 3440: (count: 9, marginTop: 88, marginW: 88), max: (count: 10, marginTop: 88, marginW: 88));\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.grid-title {\\n\\tgrid-column: 1/8;\\n\\tpadding: 48px 0 12px 0;\\n\\tmargin: 0;\\n\\tspan {\\n\\t\\tfont-weight: normal;\\n\\t}\\n\\t&.first-title {\\n\\t\\tpadding: 0 0 12px 0;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(true);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"@media(min-width: 0px)and (max-width: 400px){.grid-container[data-v-01e8a950]{padding:0px 8px 256px 8px}}@media(min-width: 400px)and (max-width: 700px){.grid-container[data-v-01e8a950]{padding:0px 8px 256px 8px}}@media(min-width: 700px)and (max-width: 1024px){.grid-container[data-v-01e8a950]{padding:0px 44px 256px 44px}}@media(min-width: 1024px)and (max-width: 1280px){.grid-container[data-v-01e8a950]{padding:0px 44px 256px 44px}}@media(min-width: 1280px)and (max-width: 1440px){.grid-container[data-v-01e8a950]{padding:0px 66px 256px 66px}}@media(min-width: 1440px)and (max-width: 1600px){.grid-container[data-v-01e8a950]{padding:0px 66px 256px 66px}}@media(min-width: 1600px)and (max-width: 2048px){.grid-container[data-v-01e8a950]{padding:0px 66px 256px 66px}}@media(min-width: 2048px)and (max-width: 2560px){.grid-container[data-v-01e8a950]{padding:0px 88px 256px 88px}}@media(min-width: 2560px)and (max-width: 3440px){.grid-container[data-v-01e8a950]{padding:0px 88px 256px 88px}}@media(min-width: 3440px){.grid-container[data-v-01e8a950]{padding:0px 88px 256px 88px}}\", \"\",{\"version\":3,\"sources\":[\"webpack://src/mixins/GridSizes.scss\",\"webpack://src/views/Timeline.vue\"],\"names\":[],\"mappings\":\"AAoCG,6CCyQH,iCAEE,yBAAA,CAAA,CD3QC,+CCyQH,iCAEE,yBAAA,CAAA,CD3QC,gDCyQH,iCAEE,2BAAA,CAAA,CD3QC,iDCyQH,iCAEE,2BAAA,CAAA,CD3QC,iDCyQH,iCAEE,2BAAA,CAAA,CD3QC,iDCyQH,iCAEE,2BAAA,CAAA,CD3QC,iDCyQH,iCAEE,2BAAA,CAAA,CD3QC,iDCyQH,iCAEE,2BAAA,CAAA,CD3QC,iDCyQH,iCAEE,2BAAA,CAAA,CD/QC,0BC6QH,iCAEE,2BAAA,CAAA\",\"sourcesContent\":[\"/**\\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\\n *\\n * @author John Molakvoæ <skjnldsv@protonmail.com>\\n *\\n * @license AGPL-3.0-or-later\\n *\\n * This program is free software: you can redistribute it and/or modify\\n * it under the terms of the GNU Affero General Public License as\\n * published by the Free Software Foundation, either version 3 of the\\n * License, or (at your option) any later version.\\n *\\n * This program is distributed in the hope that it will be useful,\\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\\n * GNU Affero General Public License for more details.\\n *\\n * You should have received a copy of the GNU Affero General Public License\\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\\n *\\n */\\n@use 'sass:map';\\n\\n@mixin grid-sizes() {\\n\\t$previous: 0;\\n\\n\\t@each $size, $config in $sizes {\\n\\t\\t$count: map-get($config, 'count');\\n\\t\\t$marginTop: map-get($config, 'marginTop');\\n\\t\\t$marginW: map-get($config, 'marginW');\\n\\n\\t\\t@if $size == 'max' {\\n\\t\\t\\t@media (min-width: #{$previous}px) {\\n\\t\\t\\t\\t@content($marginTop, $marginW);\\n\\t\\t\\t}\\n\\t\\t} @else {\\n\\t\\t\\t@media (min-width: #{$previous}px) and (max-width: #{$size}px) {\\n\\t\\t\\t\\t@content($marginTop, $marginW);\\n\\t\\t\\t}\\n\\t\\t}\\n\\t\\t$previous: $size;\\n\\t}\\n}\\n\",\"$sizes: (400: (count: 3, marginTop: 66, marginW: 8), 700: (count: 4, marginTop: 66, marginW: 8), 1024: (count: 5, marginTop: 66, marginW: 44), 1280: (count: 4, marginTop: 66, marginW: 44), 1440: (count: 5, marginTop: 88, marginW: 66), 1600: (count: 6, marginTop: 88, marginW: 66), 2048: (count: 7, marginTop: 88, marginW: 66), 2560: (count: 8, marginTop: 88, marginW: 88), 3440: (count: 9, marginTop: 88, marginW: 88), max: (count: 10, marginTop: 88, marginW: 88));\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n@import '../mixins/GridSizes.scss';\\n\\n.grid-container {\\n\\t@include grid-sizes using ($marginTop, $marginW) {\\n\\t\\tpadding: 0px #{$marginW}px 256px #{$marginW}px;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.error === 404)?_c('EmptyContent',{attrs:{\"illustration-name\":\"folder\"}},[_vm._v(\"\\n\\t\"+_vm._s(_vm.t('photos', 'This folder does not exist'))+\"\\n\")]):(_vm.error)?_c('EmptyContent',[_vm._v(\"\\n\\t\"+_vm._s(_vm.t('photos', 'An error occurred'))+\"\\n\")]):(!_vm.loading)?_c('div',[(_vm.isEmpty)?_c('Navigation',{key:\"navigation\",attrs:{\"basename\":_vm.path,\"filename\":'/',\"root-title\":_vm.rootTitle}}):_vm._e(),_vm._v(\" \"),(_vm.isEmpty)?_c('EmptyContent',{attrs:{\"illustration-name\":\"empty\"}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.t('photos', 'No photos in here'))+\"\\n\\t\")]):_vm._e(),_vm._v(\" \"),_c('div',{staticClass:\"grid-container\"},[_c('VirtualGrid',{ref:\"virtualgrid\",attrs:{\"items\":_vm.contentList,\"update-function\":_vm.getContent,\"get-column-count\":function () { return _vm.gridConfig.count; },\"get-grid-gap\":function () { return _vm.gridConfig.gap; },\"update-trigger-margin\":700,\"loader\":_vm.loaderComponent}})],1)],1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n */\n\nimport { genFileInfo } from '../utils/fileUtils'\nimport { getCurrentUser } from '@nextcloud/auth'\nimport { allMimes } from './AllowedMimes'\nimport client from './DavClient'\nimport { props } from './DavRequest'\nimport { sizes } from '../assets/grid-sizes'\n\n/**\n * List files from a folder and filter out unwanted mimes\n *\n * @param {boolean} [onlyFavorites=false] not used\n * @param {object} [options] used for the cancellable requests\n * @param {number} [options.page=0] which page to start (starts at 0)\n * @param {number} [options.perPage] how many to display per page default is 5 times the max number per line from the grid-sizes config file\n * @param {boolean} [options.full=false] get full data of the files\n * @return {Array} the file list\n */\nexport default async function(onlyFavorites = false, options = {}) {\n\n\t// default function options\n\toptions = Object.assign({}, {\n\t\tpage: 0, // start at the first page\n\t\tperPage: sizes.max.count * 10, // ten rows of the max width\n\t\tmimesType: allMimes, // all mimes types\n\t}, options)\n\n\tconst prefixPath = `/files/${getCurrentUser().uid}`\n\n\t// generating the search or condition\n\t// based on the allowed mimetypes\n\tconst orMime = options.mimesType.reduce((str, mime) => `${str}\n\t\t<d:eq>\n\t\t\t<d:prop>\n\t\t\t\t<d:getcontenttype/>\n\t\t\t</d:prop>\n\t\t\t<d:literal>${mime}</d:literal>\n\t\t</d:eq>\n\t`, '')\n\n\tconst eqFavorites = onlyFavorites\n\t\t? `<d:eq>\n\t\t\t\t<d:prop>\n\t\t\t\t\t<oc:favorite/>\n\t\t\t\t</d:prop>\n\t\t\t\t<d:literal>1</d:literal>\n\t\t\t</d:eq>`\n\t\t: ''\n\n\toptions = Object.assign({\n\t\tmethod: 'SEARCH',\n\t\theaders: {\n\t\t\t'content-Type': 'text/xml',\n\t\t},\n\t\tdata: `<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n\t\t\t<d:searchrequest xmlns:d=\"DAV:\"\n\t\t\t\txmlns:oc=\"http://owncloud.org/ns\"\n\t\t\t\txmlns:nc=\"http://nextcloud.org/ns\"\n\t\t\t\txmlns:ns=\"https://github.com/icewind1991/SearchDAV/ns\"\n\t\t\t\txmlns:ocs=\"http://open-collaboration-services.org/ns\">\n\t\t\t\t<d:basicsearch>\n\t\t\t\t\t<d:select>\n\t\t\t\t\t\t<d:prop>\n\t\t\t\t\t\t\t${props}\n\t\t\t\t\t\t</d:prop>\n\t\t\t\t\t</d:select>\n\t\t\t\t\t<d:from>\n\t\t\t\t\t\t<d:scope>\n\t\t\t\t\t\t\t<d:href>${prefixPath}</d:href>\n\t\t\t\t\t\t\t<d:depth>infinity</d:depth>\n\t\t\t\t\t\t</d:scope>\n\t\t\t\t\t</d:from>\n\t\t\t\t\t<d:where>\n\t\t\t\t\t\t<d:and>\n\t\t\t\t\t\t\t<d:or>\n\t\t\t\t\t\t\t\t${orMime}\n\t\t\t\t\t\t\t</d:or>\n\t\t\t\t\t\t\t${eqFavorites}\n\t\t\t\t\t\t</d:and>\n\t\t\t\t\t</d:where>\n\t\t\t\t\t<d:orderby>\n\t\t\t\t\t\t<d:order>\n\t\t\t\t\t\t\t<d:prop><d:getlastmodified/></d:prop>\n\t\t\t\t\t\t\t<d:descending/>\n\t\t\t\t\t\t</d:order>\n\t\t\t\t\t</d:orderby>\n\t\t\t\t\t<d:limit>\n\t\t\t\t\t\t<d:nresults>${options.perPage}</d:nresults>\n\t\t\t\t\t\t<ns:firstresult>${options.page * options.perPage}</ns:firstresult>\n\t\t\t\t\t</d:limit>\n\t\t\t\t</d:basicsearch>\n\t\t\t</d:searchrequest>`,\n\t\tdeep: true,\n\t\tdetails: true,\n\t}, options)\n\n\tconst response = await client.getDirectoryContents('', options)\n\n\treturn response.data\n\t\t.map(data => genFileInfo(data))\n\t\t// remove prefix path from full file path\n\t\t.map(data => Object.assign({}, data, { filename: data.filename.replace(prefixPath, '') }))\n\n}\n","<!--\n - @copyright Copyright (c) 2020 Corentin Mors\n -\n - @license AGPL-3.0-or-later\n -\n - @author Corentin Mors <medias@pixelswap.fr>\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n -\n -->\n\n<template>\n\t<h2 class=\"grid-title\" :style=\"{height: item.height + 'px'}\">\n\t\t{{ item.injected.month }}\n\t\t<span>{{ item.injected.year }}</span>\n\t</h2>\n</template>\n\n<script>\nexport default {\n\tname: 'SeparatorVirtualGrid',\n\n\tinheritAttrs: false,\n\n\tprops: {\n\t\titem: {\n\t\t\ttype: Object,\n\t\t\trequired: true,\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.grid-title {\n\tgrid-column: 1/8;\n\tpadding: 48px 0 12px 0;\n\tmargin: 0;\n\tspan {\n\t\tfont-weight: normal;\n\t}\n\t&.first-title {\n\t\tpadding: 0 0 12px 0;\n\t}\n}\n</style>\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SeparatorVirtualGrid.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SeparatorVirtualGrid.vue?vue&type=script&lang=js&\"","import api from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import content from \"!!../../node_modules/css-loader/dist/cjs.js!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/dist/cjs.js!../../node_modules/sass-loader/dist/cjs.js??clonedRuleSet-2[0].rules[0].use[3]!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SeparatorVirtualGrid.vue?vue&type=style&index=0&id=a2e7025e&lang=scss&scoped=true&\";\n\nvar options = {};\n\noptions.insert = \"head\";\noptions.singleton = false;\n\nvar update = api(content, options);\n\n\n\nexport default content.locals || {};","import { render, staticRenderFns } from \"./SeparatorVirtualGrid.vue?vue&type=template&id=a2e7025e&scoped=true&\"\nimport script from \"./SeparatorVirtualGrid.vue?vue&type=script&lang=js&\"\nexport * from \"./SeparatorVirtualGrid.vue?vue&type=script&lang=js&\"\nimport style0 from \"./SeparatorVirtualGrid.vue?vue&type=style&index=0&id=a2e7025e&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"a2e7025e\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('h2',{staticClass:\"grid-title\",style:({height: _vm.item.height + 'px'})},[_vm._v(\"\\n\\t\"+_vm._s(_vm.item.injected.month)+\"\\n\\t\"),_c('span',[_vm._v(_vm._s(_vm.item.injected.year))])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<!--\n - @copyright Copyright (c) 2020 Corentin Mors\n -\n - @license AGPL-3.0-or-later\n -\n - @author Corentin Mors <medias@pixelswap.fr>\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n -\n -->\n\n<template>\n\t<div class=\"loader\">\n\t\t<slot name=\"icon\">\n\t\t\t<span class=\"icon-loading\" />\n\t\t</slot>\n\t</div>\n</template>\n\n<script>\nexport default {\n\tname: 'Loader',\n}\n</script>\n\n<style lang=\"scss\">\n.loader {\n\tdisplay: grid;\n\theight: 60px;\n}\n</style>\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Loader.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Loader.vue?vue&type=script&lang=js&\"","import api from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import content from \"!!../../node_modules/css-loader/dist/cjs.js!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/dist/cjs.js!../../node_modules/sass-loader/dist/cjs.js??clonedRuleSet-2[0].rules[0].use[3]!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Loader.vue?vue&type=style&index=0&lang=scss&\";\n\nvar options = {};\n\noptions.insert = \"head\";\noptions.singleton = false;\n\nvar update = api(content, options);\n\n\n\nexport default content.locals || {};","import { render, staticRenderFns } from \"./Loader.vue?vue&type=template&id=7bbb2dd6&\"\nimport script from \"./Loader.vue?vue&type=script&lang=js&\"\nexport * from \"./Loader.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Loader.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"loader\"},[_vm._t(\"icon\",function(){return [_c('span',{staticClass:\"icon-loading\"})]})],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<!--\n - @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @author John Molakvoæ <skjnldsv@protonmail.com>\n - @author Corentin Mors <medias@pixelswap.fr>\n -\n - @license AGPL-3.0-or-later\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n -\n -->\n\n<template>\n\t<!-- Errors handlers-->\n\t<EmptyContent v-if=\"error === 404\" illustration-name=\"folder\">\n\t\t{{ t('photos', 'This folder does not exist') }}\n\t</EmptyContent>\n\t<EmptyContent v-else-if=\"error\">\n\t\t{{ t('photos', 'An error occurred') }}\n\t</EmptyContent>\n\n\t<!-- Folder content -->\n\t<div v-else-if=\"!loading\">\n\t\t<Navigation\n\t\t\tv-if=\"isEmpty\"\n\t\t\tkey=\"navigation\"\n\t\t\t:basename=\"path\"\n\t\t\t:filename=\"'/'\"\n\t\t\t:root-title=\"rootTitle\" />\n\n\t\t<EmptyContent v-if=\"isEmpty\" illustration-name=\"empty\">\n\t\t\t{{ t('photos', 'No photos in here') }}\n\t\t</EmptyContent>\n\n\t\t<div class=\"grid-container\">\n\t\t\t<VirtualGrid\n\t\t\t\tref=\"virtualgrid\"\n\t\t\t\t:items=\"contentList\"\n\t\t\t\t:update-function=\"getContent\"\n\t\t\t\t:get-column-count=\"() => gridConfig.count\"\n\t\t\t\t:get-grid-gap=\"() => gridConfig.gap\"\n\t\t\t\t:update-trigger-margin=\"700\"\n\t\t\t\t:loader=\"loaderComponent\" />\n\t\t</div>\n\t</div>\n</template>\n\n<script>\nimport moment from '@nextcloud/moment'\nimport { mapGetters } from 'vuex'\n\nimport getPhotos from '../services/PhotoSearch'\n\nimport EmptyContent from '../components/EmptyContent'\nimport File from '../components/File'\nimport SeparatorVirtualGrid from '../components/SeparatorVirtualGrid'\nimport VirtualGrid from 'vue-virtual-grid'\nimport Navigation from '../components/Navigation'\nimport Loader from '../components/Loader'\n\nimport cancelableRequest from '../utils/CancelableRequest'\nimport GridConfigMixin from '../mixins/GridConfig'\nimport { allMimes } from '../services/AllowedMimes'\n\nexport default {\n\tname: 'Timeline',\n\tcomponents: {\n\t\tEmptyContent,\n\t\tVirtualGrid,\n\t\tNavigation,\n\t},\n\tmixins: [GridConfigMixin],\n\tprops: {\n\t\tloading: {\n\t\t\ttype: Boolean,\n\t\t\trequired: true,\n\t\t},\n\t\tonlyFavorites: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\t\tmimesType: {\n\t\t\ttype: Array,\n\t\t\tdefault: () => allMimes,\n\t\t},\n\t\trootTitle: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t\tpath: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t},\n\t},\n\n\tdata() {\n\t\treturn {\n\t\t\tcancelRequest: null,\n\t\t\tdone: false,\n\t\t\terror: null,\n\t\t\tpage: 0,\n\t\t\tlastSection: '',\n\t\t\tloaderComponent: Loader,\n\t\t}\n\t},\n\n\tcomputed: {\n\t\t// global lists\n\t\t...mapGetters([\n\t\t\t'files',\n\t\t\t'timeline',\n\t\t]),\n\t\t// list of loaded medias\n\t\tfileList() {\n\t\t\treturn this.timeline.map((fileId) => this.files[fileId])\n\t\t},\n\t\t// list of displayed content in the grid (titles + medias)\n\t\tcontentList() {\n\t\t\t/** The goal of this flat map is to return an array of images separated by titles (months)\n\t\t\t * ie: [{month1}, {image1}, {image2}, {month2}, {image3}, {image4}, {image5}]\n\t\t\t * First we get the current month+year of the image\n\t\t\t * We compare it to the previous image month+year\n\t\t\t * If there is a difference we have to insert a title object before the current image\n\t\t\t * If it's equal we just add the current image to the array\n\t\t\t * Note: the injected param of objects are used to pass custom params to the grid lib\n\t\t\t * In our case injected could be an image/video (aka file) or a title (year/month)\n\t\t\t * Note2: titles are rendered full width and images are rendered on 1 column and 256x256 ratio\n\t\t\t */\n\t\t\treturn this.fileList.flatMap((file, index) => {\n\t\t\t\tconst finalArray = []\n\t\t\t\tconst currentSection = this.getFormatedDate(file.lastmod, 'YYYY MMMM')\n\t\t\t\tif (this.lastSection !== currentSection) {\n\t\t\t\t\tfinalArray.push({\n\t\t\t\t\t\tid: `title-${index}`,\n\t\t\t\t\t\tinjected: {\n\t\t\t\t\t\t\tyear: this.getFormatedDate(file.lastmod, 'YYYY'),\n\t\t\t\t\t\t\tmonth: this.getFormatedDate(file.lastmod, 'MMMM'),\n\t\t\t\t\t\t},\n\t\t\t\t\t\theight: 90,\n\t\t\t\t\t\tcolumnSpan: 0, // means full width\n\t\t\t\t\t\tnewRow: true,\n\t\t\t\t\t\trenderComponent: SeparatorVirtualGrid,\n\t\t\t\t\t})\n\t\t\t\t\tthis.lastSection = currentSection // we keep track of the last section for the next batch\n\t\t\t\t}\n\t\t\t\tfinalArray.push({\n\t\t\t\t\tid: `img-${file.fileid}`,\n\t\t\t\t\tinjected: {\n\t\t\t\t\t\t...file,\n\t\t\t\t\t\tlist: this.fileList,\n\t\t\t\t\t\tloadMore: this.getContent,\n\t\t\t\t\t\tcanLoop: false,\n\t\t\t\t\t},\n\t\t\t\t\twidth: 256,\n\t\t\t\t\theight: 256,\n\t\t\t\t\tcolumnSpan: 1,\n\t\t\t\t\trenderComponent: File,\n\t\t\t\t})\n\t\t\t\treturn finalArray\n\t\t\t})\n\t\t},\n\t\t// is current folder empty?\n\t\tisEmpty() {\n\t\t\treturn this.fileList.length === 0\n\t\t},\n\t},\n\n\twatch: {\n\t\tasync onlyFavorites() {\n\t\t\t// reset component\n\t\t\tthis.resetState()\n\t\t\tthis.getContent()\n\t\t},\n\t\tasync mimesType() {\n\t\t\t// reset component\n\t\t\tthis.resetState()\n\t\t\tthis.getContent()\n\t\t},\n\t},\n\n\tbeforeMount() {\n\t\tthis.getContent()\n\t},\n\n\tbeforeDestroy() {\n\t\t// cancel any pending requests\n\t\tif (this.cancelRequest) {\n\t\t\tthis.cancelRequest('Changed view')\n\t\t}\n\t\tthis.resetState()\n\t},\n\n\tmethods: {\n\t\t/** Return next batch of data depending on global offset\n\t\t *\n\t\t * @param {boolean} doReturn Returns a Promise with the list instead of a boolean\n\t\t * @return {Promise<boolean>} Returns a Promise with a boolean that stops infinite loading\n\t\t */\n\t\tasync getContent(doReturn) {\n\t\t\tif (this.done) {\n\t\t\t\treturn Promise.resolve(true)\n\t\t\t}\n\n\t\t\t// cancel any pending requests\n\t\t\tif (this.cancelRequest) {\n\t\t\t\tthis.cancelRequest('Changed view')\n\t\t\t}\n\n\t\t\t// if we don't already have some cached data let's show a loader\n\t\t\tif (this.timeline.length === 0) {\n\t\t\t\tthis.$emit('update:loading', true)\n\t\t\t}\n\n\t\t\t// done loading even with errors\n\t\t\tconst { request, cancel } = cancelableRequest(getPhotos)\n\t\t\tthis.cancelRequest = cancel\n\n\t\t\tconst numberOfImagesPerBatch = this.gridConfig.count * 5 // loading 5 rows\n\n\t\t\ttry {\n\t\t\t\t// Load next batch of images\n\t\t\t\tconst files = await request(this.onlyFavorites, {\n\t\t\t\t\tpage: this.page,\n\t\t\t\t\tperPage: numberOfImagesPerBatch,\n\t\t\t\t\tmimesType: this.mimesType,\n\t\t\t\t})\n\n\t\t\t\t// If we get less files than requested that means we got to the end\n\t\t\t\tif (files.length !== numberOfImagesPerBatch) {\n\t\t\t\t\tthis.done = true\n\t\t\t\t}\n\n\t\t\t\tthis.$store.dispatch('updateTimeline', files)\n\t\t\t\tthis.$store.dispatch('appendFiles', files)\n\n\t\t\t\tthis.page += 1\n\n\t\t\t\tif (doReturn) {\n\t\t\t\t\treturn Promise.resolve(files)\n\t\t\t\t}\n\n\t\t\t\treturn Promise.resolve(false)\n\t\t\t} catch (error) {\n\t\t\t\tif (error.response && error.response.status) {\n\t\t\t\t\tif (error.response.status === 404) {\n\t\t\t\t\t\tthis.error = 404\n\t\t\t\t\t\tsetTimeout(() => {\n\t\t\t\t\t\t\tthis.$router.push({ name: this.$route.name })\n\t\t\t\t\t\t}, 3000)\n\t\t\t\t\t} else {\n\t\t\t\t\t\tthis.error = error\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t// cancelled request, moving on...\n\t\t\t\tconsole.error('Error fetching timeline', error)\n\t\t\t\treturn Promise.resolve(true)\n\t\t\t} finally {\n\t\t\t\t// done loading even with errors\n\t\t\t\tthis.$emit('update:loading', false)\n\t\t\t\tthis.cancelRequest = null\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Reset this component data to a pristine state\n\t\t */\n\t\tresetState() {\n\t\t\tthis.$store.dispatch('resetTimeline')\n\t\t\tthis.done = false\n\t\t\tthis.error = null\n\t\t\tthis.page = 0\n\t\t\tthis.lastSection = ''\n\t\t\tthis.$emit('update:loading', true)\n\t\t\tthis.$refs.virtualgrid.resetGrid()\n\t\t},\n\n\t\tgetFormatedDate(string, format) {\n\t\t\treturn moment(string).format(format)\n\t\t},\n\n\t},\n\n}\n</script>\n\n<style lang=\"scss\" scoped>\n@import '../mixins/GridSizes.scss';\n\n.grid-container {\n\t@include grid-sizes using ($marginTop, $marginW) {\n\t\tpadding: 0px #{$marginW}px 256px #{$marginW}px;\n\t}\n}\n</style>\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Timeline.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Timeline.vue?vue&type=script&lang=js&\"","import api from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import content from \"!!../../node_modules/css-loader/dist/cjs.js!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/dist/cjs.js!../../node_modules/sass-loader/dist/cjs.js??clonedRuleSet-2[0].rules[0].use[3]!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Timeline.vue?vue&type=style&index=0&id=01e8a950&lang=scss&scoped=true&\";\n\nvar options = {};\n\noptions.insert = \"head\";\noptions.singleton = false;\n\nvar update = api(content, options);\n\n\n\nexport default content.locals || {};","import { render, staticRenderFns } from \"./Timeline.vue?vue&type=template&id=01e8a950&scoped=true&\"\nimport script from \"./Timeline.vue?vue&type=script&lang=js&\"\nexport * from \"./Timeline.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Timeline.vue?vue&type=style&index=0&id=01e8a950&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"01e8a950\",\n null\n \n)\n\nexport default component.exports"],"sourceRoot":""} \ No newline at end of file
+{"version":3,"sources":["webpack:///photos/node_modules/@nextcloud/moment/node_modules/moment/locale|sync|/^\\.\\/.*$","webpack:///photos/src/patchedRequest.js","webpack:///photos/src/services/DavClient.js","webpack:///photos/src/services/DavRequest.js","webpack:///photos/src/components/Loader.vue?vue&type=style&index=0&lang=scss&","webpack:///photos/src/components/SeparatorVirtualGrid.vue?vue&type=style&index=0&id=a2e7025e&lang=scss&scoped=true&","webpack:///photos/src/views/Timeline.vue?vue&type=style&index=0&id=01e8a950&lang=scss&scoped=true&","webpack:///photos/src/views/Timeline.vue?vue&type=template&id=01e8a950&scoped=true&","webpack:///photos/src/services/PhotoSearch.js","webpack:///photos/src/components/SeparatorVirtualGrid.vue","webpack:///photos/src/components/SeparatorVirtualGrid.vue?vue&type=script&lang=js&","webpack://photos/./src/components/SeparatorVirtualGrid.vue?0ffc","webpack://photos/./src/components/SeparatorVirtualGrid.vue?8076","webpack:///photos/src/components/SeparatorVirtualGrid.vue?vue&type=template&id=a2e7025e&scoped=true&","webpack:///photos/src/components/Loader.vue","webpack:///photos/src/components/Loader.vue?vue&type=script&lang=js&","webpack://photos/./src/components/Loader.vue?eb1b","webpack://photos/./src/components/Loader.vue?5508","webpack:///photos/src/components/Loader.vue?vue&type=template&id=7bbb2dd6&","webpack:///photos/src/views/Timeline.vue","webpack:///photos/src/views/Timeline.vue?vue&type=script&lang=js&","webpack://photos/./src/views/Timeline.vue?3092","webpack://photos/./src/views/Timeline.vue?2f21"],"names":["map","webpackContext","req","id","webpackContextResolve","__webpack_require__","o","e","Error","code","keys","Object","resolve","module","exports","request","require","oldPrepareRequestOptions","prepareRequestOptions","requestOptions","methodOptions","cancelToken","method","webdav","patch","axios","remote","generateRemoteUrl","client","parseUrl","pathname","props","___CSS_LOADER_EXPORT___","push","onlyFavorites","options","assign","page","perPage","sizes","mimesType","allMimes","prefixPath","getCurrentUser","uid","orMime","reduce","str","mime","eqFavorites","headers","data","deep","details","response","genFileInfo","filename","replace","_vm","this","_h","$createElement","_c","_self","staticClass","style","height","item","_v","_s","injected","month","year","_t","error","attrs","t","loading","_e","key","path","rootTitle","ref","contentList","getContent","gridConfig","count","gap","loaderComponent"],"mappings":";sLAAA,IAAIA,EAAM,CACT,OAAQ,MACR,UAAW,MACX,OAAQ,MACR,UAAW,MACX,aAAc,MACd,UAAW,MACX,aAAc,MACd,UAAW,MACX,aAAc,MACd,UAAW,MACX,aAAc,MACd,UAAW,MACX,aAAc,MACd,UAAW,MACX,aAAc,MACd,UAAW,MACX,OAAQ,MACR,UAAW,MACX,OAAQ,MACR,UAAW,MACX,OAAQ,MACR,UAAW,MACX,OAAQ,MACR,UAAW,MACX,OAAQ,KACR,UAAW,KACX,OAAQ,MACR,UAAW,MACX,OAAQ,IACR,UAAW,IACX,OAAQ,MACR,UAAW,MACX,OAAQ,MACR,UAAW,MACX,OAAQ,MACR,UAAW,MACX,OAAQ,MACR,UAAW,MACX,OAAQ,MACR,UAAW,MACX,OAAQ,MACR,UAAW,MACX,OAAQ,MACR,UAAW,KACX,aAAc,KACd,UAAW,MACX,aAAc,MACd,UAAW,MACX,OAAQ,MACR,UAAW,MACX,OAAQ,MACR,UAAW,MACX,UAAW,MACX,aAAc,MACd,UAAW,MACX,aAAc,MACd,UAAW,MACX,aAAc,MACd,UAAW,MACX,aAAc,MACd,UAAW,MACX,aAAc,MACd,UAAW,MACX,aAAc,MACd,UAAW,MACX,aAAc,MACd,OAAQ,MACR,UAAW,MACX,OAAQ,MACR,UAAW,MACX,aAAc,MACd,UAAW,MACX,aAAc,MACd,UAAW,MACX,OAAQ,MACR,UAAW,MACX,OAAQ,MACR,UAAW,MACX,OAAQ,KACR,UAAW,KACX,OAAQ,MACR,UAAW,MACX,OAAQ,MACR,UAAW,MACX,OAAQ,MACR,UAAW,MACX,aAAc,MACd,UAAW,KACX,aAAc,KACd,UAAW,MACX,OAAQ,MACR,UAAW,MACX,OAAQ,MACR,UAAW,MACX,OAAQ,MACR,UAAW,MACX,OAAQ,MACR,UAAW,MACX,aAAc,MACd,gBAAiB,MACjB,OAAQ,IACR,UAAW,IACX,OAAQ,MACR,UAAW,MACX,OAAQ,MACR,UAAW,MACX,OAAQ,MACR,UAAW,MACX,OAAQ,MACR,UAAW,MACX,UAAW,MACX,aAAc,MACd,OAAQ,MACR,UAAW,MACX,OAAQ,MACR,UAAW,MACX,OAAQ,MACR,UAAW,MACX,aAAc,MACd,UAAW,MACX,OAAQ,MACR,UAAW,MACX,OAAQ,MACR,UAAW,MACX,OAAQ,MACR,UAAW,MACX,OAAQ,MACR,UAAW,MACX,OAAQ,MACR,UAAW,MACX,OAAQ,MACR,UAAW,MACX,OAAQ,MACR,UAAW,MACX,OAAQ,MACR,UAAW,MACX,OAAQ,MACR,UAAW,MACX,OAAQ,MACR,UAAW,MACX,OAAQ,MACR,UAAW,MACX,OAAQ,MACR,UAAW,MACX,OAAQ,MACR,UAAW,MACX,OAAQ,MACR,UAAW,MACX,OAAQ,MACR,UAAW,MACX,OAAQ,MACR,UAAW,MACX,OAAQ,MACR,UAAW,MACX,OAAQ,MACR,UAAW,MACX,OAAQ,IACR,UAAW,IACX,OAAQ,MACR,UAAW,MACX,aAAc,MACd,UAAW,MACX,OAAQ,MACR,UAAW,MACX,OAAQ,MACR,UAAW,MACX,OAAQ,MACR,UAAW,MACX,OAAQ,MACR,UAAW,MACX,OAAQ,KACR,UAAW,MACX,aAAc,MACd,UAAW,KACX,OAAQ,MACR,UAAW,MACX,UAAW,MACX,aAAc,MACd,OAAQ,MACR,UAAW,MACX,OAAQ,MACR,UAAW,MACX,aAAc,MACd,UAAW,MACX,OAAQ,MACR,UAAW,MACX,OAAQ,MACR,UAAW,MACX,OAAQ,MACR,UAAW,MACX,OAAQ,MACR,UAAW,MACX,OAAQ,MACR,UAAW,MACX,OAAQ,MACR,UAAW,MACX,OAAQ,MACR,UAAW,MACX,OAAQ,KACR,UAAW,KACX,OAAQ,MACR,YAAa,MACb,eAAgB,MAChB,UAAW,MACX,OAAQ,KACR,UAAW,KACX,OAAQ,MACR,UAAW,MACX,OAAQ,MACR,UAAW,MACX,OAAQ,MACR,UAAW,MACX,OAAQ,MACR,UAAW,MACX,QAAS,MACT,WAAY,MACZ,OAAQ,MACR,UAAW,MACX,OAAQ,MACR,UAAW,MACX,UAAW,MACX,aAAc,MACd,QAAS,MACT,WAAY,MACZ,OAAQ,MACR,UAAW,MACX,QAAS,MACT,WAAY,MACZ,QAAS,MACT,aAAc,MACd,gBAAiB,MACjB,WAAY,MACZ,UAAW,MACX,aAAc,MACd,OAAQ,MACR,UAAW,MACX,OAAQ,MACR,UAAW,MACX,OAAQ,MACR,YAAa,MACb,eAAgB,MAChB,UAAW,MACX,OAAQ,MACR,UAAW,MACX,aAAc,MACd,gBAAiB,MACjB,OAAQ,MACR,UAAW,MACX,UAAW,KACX,aAAc,KACd,UAAW,MACX,aAAc,MACd,UAAW,MACX,aAAc,OAIf,SAASC,EAAeC,GACvB,IAAIC,EAAKC,EAAsBF,GAC/B,OAAOG,EAAoBF,GAE5B,SAASC,EAAsBF,GAC9B,IAAIG,EAAoBC,EAAEN,EAAKE,GAAM,CACpC,IAAIK,EAAI,IAAIC,MAAM,uBAAyBN,EAAM,KAEjD,MADAK,EAAEE,KAAO,mBACHF,EAEP,OAAOP,EAAIE,GAEZD,EAAeS,KAAO,WACrB,OAAOC,OAAOD,KAAKV,IAEpBC,EAAeW,QAAUR,EACzBS,EAAOC,QAAUb,EACjBA,EAAeE,GAAK,O,qPC9PpB,IAAMY,EAAUC,EAAQ,OAElBC,EAA2BF,EAAQG,sBAMzCH,EAAQG,sBAAwB,SAASC,EAAgBC,GAEpDA,EAAcC,aAAoD,WAArC,EAAOD,EAAcC,eACrDF,EAAeE,YAAcD,EAAcC,aAI5CJ,EAAyBE,EAAgBC,GAGrCA,EAAcE,QAA0C,iBAAzBF,EAAcE,SAChDH,EAAeG,OAASF,EAAcE,SAIxCT,EAAOC,QAAUC,G,+GCjBDQ,iBACRC,MAAM,UAAWC,WAGzB,IAAMC,GAASC,OAAkB,OAC3BC,EAASL,iBAAoBG,GAETG,IAASH,GAAQI,SAC3C,W,6CCfA,IAAMC,EAAQ,+KAWC,sPAMRA,EANP,6C,6DC7BIC,E,MAA0B,IAA4B,GAE1DA,EAAwBC,KAAK,CAACpB,EAAOV,GAAI,oCAAqC,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,uCAAuC,MAAQ,GAAG,SAAW,4BAA4B,eAAiB,CAAC,klBAAklB,WAAa,MAEnzB,W,6DCJI6B,E,MAA0B,IAA4B,GAE1DA,EAAwBC,KAAK,CAACpB,EAAOV,GAAI,gMAAiM,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,qDAAqD,MAAQ,GAAG,SAAW,0EAA0E,eAAiB,CAAC,4tBAA4tB,WAAa,MAErpC,W,6DCJI6B,E,MAA0B,IAA4B,GAE1DA,EAAwBC,KAAK,CAACpB,EAAOV,GAAI,ujCAAwjC,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,sCAAsC,oCAAoC,MAAQ,GAAG,SAAW,8SAA8S,eAAiB,CAAC,82CAA82C,wtCAAwtC,WAAa,MAE/mI,W,2DCNA,I,2ZCsCe,aAAf,+B,iDAAe,gIAAe+B,EAAf,gCAAsCC,EAAtC,+BAAgD,GAG9DA,EAAUxB,OAAOyB,OAAO,GAAI,CAC3BC,KAAM,EACNC,QAA2B,GAAlBC,kBACTC,UAAWC,MACTN,GAEGO,EATQ,kBASeC,sBAAiBC,KAIxCC,EAASV,EAAQK,UAAUM,QAAO,SAACC,EAAKC,GAAN,gBAAkBD,EAAlB,wGAKzBC,EALyB,mCAOrC,IAEGC,EAAcf,EAAa,yHAO9B,GAEHC,EAAUxB,OAAOyB,OAAO,CACvBd,OAAQ,SACR4B,QAAS,CACR,eAAgB,YAEjBC,KAAM,4XAAF,OASGpB,IATH,4HAcWW,EAdX,8LAqBIG,EArBJ,kDAuBGI,EAvBH,wRAiCcd,EAAQG,QAjCtB,sDAkCkBH,EAAQE,KAAOF,EAAQG,QAlCzC,+FAsCJc,MAAM,EACNC,SAAS,GACPlB,GA5EW,SA8ESP,yBAA4B,GAAIO,GA9EzC,cA8ERmB,EA9EQ,yBAgFPA,EAASH,KACdnD,KAAI,SAAAmD,GAAI,OAAII,QAAYJ,MAExBnD,KAAI,SAAAmD,GAAI,OAAIxC,OAAOyB,OAAO,GAAIe,EAAM,CAAEK,SAAUL,EAAKK,SAASC,QAAQf,EAAY,UAnFtE,6C,gDCRf,MC9BqL,ED8BrL,CACA,4BAEA,gBAEA,OACA,MACA,YACA,e,mCEnCIP,EAAU,CAEd,OAAiB,OACjB,WAAoB,GAEP,IAAI,IAASA,GAIX,W,eCOf,SAXgB,OACd,GCTW,WAAa,IAAIuB,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,KAAK,CAACE,YAAY,aAAaC,MAAM,CAAEC,OAAQR,EAAIS,KAAKD,OAAS,OAAQ,CAACR,EAAIU,GAAG,OAAOV,EAAIW,GAAGX,EAAIS,KAAKG,SAASC,OAAO,QAAQT,EAAG,OAAO,CAACJ,EAAIU,GAAGV,EAAIW,GAAGX,EAAIS,KAAKG,SAASE,aACxP,IDWpB,EACA,KACA,WACA,M,2CEgBF,MC/BuK,ED+BvK,CACA,e,eE7BI,EAAU,CAEd,OAAiB,OACjB,WAAoB,GAEP,IAAI,IAAS,GAIX,WCOf,SAXgB,OACd,GCTW,WAAa,IAAId,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,MAAM,CAACE,YAAY,UAAU,CAACN,EAAIe,GAAG,QAAO,WAAW,MAAO,CAACX,EAAG,OAAO,CAACE,YAAY,sBAAqB,KACxL,IDWpB,EACA,KACA,KACA,M,+hCE4DF,MC3EyK,ED2EzK,CACA,gBACA,YACA,iBACA,gBACA,gBAEA,aACA,OACA,SACA,aACA,aAEA,eACA,aACA,YAEA,WACA,WACA,iCAEA,WACA,YACA,aAEA,MACA,YACA,aAIA,KA/BA,WAgCA,OACA,mBACA,QACA,WACA,OACA,eACA,oBAIA,iBAEA,SACA,QACA,cAJA,IAOA,SAPA,WAOA,WACA,4DAGA,YAXA,WAWA,WAWA,4CACA,SACA,2CA4BA,OA3BA,oBACA,QACA,sBACA,UACA,yCACA,2CAEA,UACA,aACA,UACA,oBAEA,iBAEA,QACA,2BACA,gBACA,GADA,IAEA,gBACA,sBACA,aAEA,UACA,WACA,aACA,sBAEA,MAIA,QAxDA,WAyDA,mCAIA,OACA,cADA,WACA,0IAEA,eACA,eAHA,8CAKA,UANA,WAMA,0IAEA,eACA,eAHA,+CAOA,YApHA,WAqHA,mBAGA,cAxHA,WA0HA,oBACA,mCAEA,mBAGA,SAMA,WANA,SAMA,+JACA,OADA,yCAEA,qBAFA,cAMA,iBACA,gCAIA,uBACA,6BAZA,GAgBA,YAhBA,EAgBA,UAhBA,EAgBA,OACA,kBAEA,uBAnBA,mBAuBA,mBACA,YACA,UACA,wBA1BA,YAuBA,EAvBA,QA8BA,aACA,WAGA,sCACA,mCAEA,WAEA,EAvCA,0CAwCA,oBAxCA,iCA2CA,qBA3CA,yCA6CA,sCACA,4BACA,YACA,uBACA,uCACA,MAEA,cAKA,wCAzDA,kBA0DA,qBA1DA,yBA6DA,6BACA,qBA9DA,gFAqEA,WA3EA,WA4EA,sCACA,aACA,gBACA,YACA,oBACA,gCACA,oCAGA,gBArFA,SAqFA,KACA,2B,eE9RI,EAAU,CAEd,OAAiB,OACjB,WAAoB,GAEP,IAAI,IAAS,GAIX,WCOf,SAXgB,OACd,GfTW,WAAa,IAAIN,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAsB,MAAdF,EAAIgB,MAAeZ,EAAG,eAAe,CAACa,MAAM,CAAC,oBAAoB,WAAW,CAACjB,EAAIU,GAAG,OAAOV,EAAIW,GAAGX,EAAIkB,EAAE,SAAU,+BAA+B,QAASlB,EAAS,MAAEI,EAAG,eAAe,CAACJ,EAAIU,GAAG,OAAOV,EAAIW,GAAGX,EAAIkB,EAAE,SAAU,sBAAsB,QAAUlB,EAAImB,QAA8oBnB,EAAIoB,KAAzoBhB,EAAG,MAAM,CAAEJ,EAAW,QAAEI,EAAG,aAAa,CAACiB,IAAI,aAAaJ,MAAM,CAAC,SAAWjB,EAAIsB,KAAK,SAAW,IAAI,aAAatB,EAAIuB,aAAavB,EAAIoB,KAAKpB,EAAIU,GAAG,KAAMV,EAAW,QAAEI,EAAG,eAAe,CAACa,MAAM,CAAC,oBAAoB,UAAU,CAACjB,EAAIU,GAAG,SAASV,EAAIW,GAAGX,EAAIkB,EAAE,SAAU,sBAAsB,UAAUlB,EAAIoB,KAAKpB,EAAIU,GAAG,KAAKN,EAAG,MAAM,CAACE,YAAY,kBAAkB,CAACF,EAAG,cAAc,CAACoB,IAAI,cAAcP,MAAM,CAAC,MAAQjB,EAAIyB,YAAY,kBAAkBzB,EAAI0B,WAAW,mBAAmB,WAAc,OAAO1B,EAAI2B,WAAWC,OAAS,eAAe,WAAc,OAAO5B,EAAI2B,WAAWE,KAAO,wBAAwB,IAAI,OAAS7B,EAAI8B,oBAAoB,IAAI,KACv9B,IeWpB,EACA,KACA,WACA,M","file":"photos-node_modules_nextcloud_moment_node_modules_moment_locale_sync_recursive_-src_patchedRequest_j-3cb869.js?v=4b77539038790cdf55f9","sourcesContent":["var map = {\n\t\"./af\": 77653,\n\t\"./af.js\": 77653,\n\t\"./ar\": 28093,\n\t\"./ar-dz\": 41943,\n\t\"./ar-dz.js\": 41943,\n\t\"./ar-kw\": 23969,\n\t\"./ar-kw.js\": 23969,\n\t\"./ar-ly\": 40594,\n\t\"./ar-ly.js\": 40594,\n\t\"./ar-ma\": 18369,\n\t\"./ar-ma.js\": 18369,\n\t\"./ar-sa\": 32579,\n\t\"./ar-sa.js\": 32579,\n\t\"./ar-tn\": 76442,\n\t\"./ar-tn.js\": 76442,\n\t\"./ar.js\": 28093,\n\t\"./az\": 86425,\n\t\"./az.js\": 86425,\n\t\"./be\": 22004,\n\t\"./be.js\": 22004,\n\t\"./bg\": 42982,\n\t\"./bg.js\": 42982,\n\t\"./bm\": 21067,\n\t\"./bm.js\": 21067,\n\t\"./bn\": 8366,\n\t\"./bn.js\": 8366,\n\t\"./bo\": 95040,\n\t\"./bo.js\": 95040,\n\t\"./br\": 521,\n\t\"./br.js\": 521,\n\t\"./bs\": 83242,\n\t\"./bs.js\": 83242,\n\t\"./ca\": 73046,\n\t\"./ca.js\": 73046,\n\t\"./cs\": 25794,\n\t\"./cs.js\": 25794,\n\t\"./cv\": 28231,\n\t\"./cv.js\": 28231,\n\t\"./cy\": 10927,\n\t\"./cy.js\": 10927,\n\t\"./da\": 42832,\n\t\"./da.js\": 42832,\n\t\"./de\": 15916,\n\t\"./de-at\": 3331,\n\t\"./de-at.js\": 3331,\n\t\"./de-ch\": 45524,\n\t\"./de-ch.js\": 45524,\n\t\"./de.js\": 15916,\n\t\"./dv\": 44700,\n\t\"./dv.js\": 44700,\n\t\"./el\": 88752,\n\t\"./el.js\": 88752,\n\t\"./en-SG\": 16706,\n\t\"./en-SG.js\": 16706,\n\t\"./en-au\": 90444,\n\t\"./en-au.js\": 90444,\n\t\"./en-ca\": 65959,\n\t\"./en-ca.js\": 65959,\n\t\"./en-gb\": 62762,\n\t\"./en-gb.js\": 62762,\n\t\"./en-ie\": 40909,\n\t\"./en-ie.js\": 40909,\n\t\"./en-il\": 79909,\n\t\"./en-il.js\": 79909,\n\t\"./en-nz\": 75200,\n\t\"./en-nz.js\": 75200,\n\t\"./eo\": 27447,\n\t\"./eo.js\": 27447,\n\t\"./es\": 86756,\n\t\"./es-do\": 47049,\n\t\"./es-do.js\": 47049,\n\t\"./es-us\": 57133,\n\t\"./es-us.js\": 57133,\n\t\"./es.js\": 86756,\n\t\"./et\": 72182,\n\t\"./et.js\": 72182,\n\t\"./eu\": 14419,\n\t\"./eu.js\": 14419,\n\t\"./fa\": 2916,\n\t\"./fa.js\": 2916,\n\t\"./fi\": 49964,\n\t\"./fi.js\": 49964,\n\t\"./fo\": 26094,\n\t\"./fo.js\": 26094,\n\t\"./fr\": 35833,\n\t\"./fr-ca\": 56994,\n\t\"./fr-ca.js\": 56994,\n\t\"./fr-ch\": 2740,\n\t\"./fr-ch.js\": 2740,\n\t\"./fr.js\": 35833,\n\t\"./fy\": 69542,\n\t\"./fy.js\": 69542,\n\t\"./ga\": 93264,\n\t\"./ga.js\": 93264,\n\t\"./gd\": 77457,\n\t\"./gd.js\": 77457,\n\t\"./gl\": 83043,\n\t\"./gl.js\": 83043,\n\t\"./gom-latn\": 28379,\n\t\"./gom-latn.js\": 28379,\n\t\"./gu\": 406,\n\t\"./gu.js\": 406,\n\t\"./he\": 73219,\n\t\"./he.js\": 73219,\n\t\"./hi\": 99834,\n\t\"./hi.js\": 99834,\n\t\"./hr\": 28754,\n\t\"./hr.js\": 28754,\n\t\"./hu\": 93945,\n\t\"./hu.js\": 93945,\n\t\"./hy-am\": 81319,\n\t\"./hy-am.js\": 81319,\n\t\"./id\": 24875,\n\t\"./id.js\": 24875,\n\t\"./is\": 23724,\n\t\"./is.js\": 23724,\n\t\"./it\": 79906,\n\t\"./it-ch\": 34303,\n\t\"./it-ch.js\": 34303,\n\t\"./it.js\": 79906,\n\t\"./ja\": 77105,\n\t\"./ja.js\": 77105,\n\t\"./jv\": 15026,\n\t\"./jv.js\": 15026,\n\t\"./ka\": 67416,\n\t\"./ka.js\": 67416,\n\t\"./kk\": 79734,\n\t\"./kk.js\": 79734,\n\t\"./km\": 60757,\n\t\"./km.js\": 60757,\n\t\"./kn\": 58369,\n\t\"./kn.js\": 58369,\n\t\"./ko\": 77687,\n\t\"./ko.js\": 77687,\n\t\"./ku\": 95544,\n\t\"./ku.js\": 95544,\n\t\"./ky\": 85431,\n\t\"./ky.js\": 85431,\n\t\"./lb\": 13613,\n\t\"./lb.js\": 13613,\n\t\"./lo\": 34252,\n\t\"./lo.js\": 34252,\n\t\"./lt\": 84619,\n\t\"./lt.js\": 84619,\n\t\"./lv\": 93760,\n\t\"./lv.js\": 93760,\n\t\"./me\": 93393,\n\t\"./me.js\": 93393,\n\t\"./mi\": 12369,\n\t\"./mi.js\": 12369,\n\t\"./mk\": 48664,\n\t\"./mk.js\": 48664,\n\t\"./ml\": 23099,\n\t\"./ml.js\": 23099,\n\t\"./mn\": 98539,\n\t\"./mn.js\": 98539,\n\t\"./mr\": 778,\n\t\"./mr.js\": 778,\n\t\"./ms\": 39970,\n\t\"./ms-my\": 82625,\n\t\"./ms-my.js\": 82625,\n\t\"./ms.js\": 39970,\n\t\"./mt\": 15714,\n\t\"./mt.js\": 15714,\n\t\"./my\": 53055,\n\t\"./my.js\": 53055,\n\t\"./nb\": 73945,\n\t\"./nb.js\": 73945,\n\t\"./ne\": 63645,\n\t\"./ne.js\": 63645,\n\t\"./nl\": 4829,\n\t\"./nl-be\": 12823,\n\t\"./nl-be.js\": 12823,\n\t\"./nl.js\": 4829,\n\t\"./nn\": 23756,\n\t\"./nn.js\": 23756,\n\t\"./pa-in\": 97877,\n\t\"./pa-in.js\": 97877,\n\t\"./pl\": 53066,\n\t\"./pl.js\": 53066,\n\t\"./pt\": 28677,\n\t\"./pt-br\": 81592,\n\t\"./pt-br.js\": 81592,\n\t\"./pt.js\": 28677,\n\t\"./ro\": 32722,\n\t\"./ro.js\": 32722,\n\t\"./ru\": 59138,\n\t\"./ru.js\": 59138,\n\t\"./sd\": 32568,\n\t\"./sd.js\": 32568,\n\t\"./se\": 49753,\n\t\"./se.js\": 49753,\n\t\"./si\": 58024,\n\t\"./si.js\": 58024,\n\t\"./sk\": 31058,\n\t\"./sk.js\": 31058,\n\t\"./sl\": 43452,\n\t\"./sl.js\": 43452,\n\t\"./sq\": 2795,\n\t\"./sq.js\": 2795,\n\t\"./sr\": 26976,\n\t\"./sr-cyrl\": 38819,\n\t\"./sr-cyrl.js\": 38819,\n\t\"./sr.js\": 26976,\n\t\"./ss\": 7467,\n\t\"./ss.js\": 7467,\n\t\"./sv\": 42787,\n\t\"./sv.js\": 42787,\n\t\"./sw\": 80298,\n\t\"./sw.js\": 80298,\n\t\"./ta\": 57532,\n\t\"./ta.js\": 57532,\n\t\"./te\": 76076,\n\t\"./te.js\": 76076,\n\t\"./tet\": 40452,\n\t\"./tet.js\": 40452,\n\t\"./tg\": 64794,\n\t\"./tg.js\": 64794,\n\t\"./th\": 48245,\n\t\"./th.js\": 48245,\n\t\"./tl-ph\": 36056,\n\t\"./tl-ph.js\": 36056,\n\t\"./tlh\": 15249,\n\t\"./tlh.js\": 15249,\n\t\"./tr\": 22053,\n\t\"./tr.js\": 22053,\n\t\"./tzl\": 39871,\n\t\"./tzl.js\": 39871,\n\t\"./tzm\": 39574,\n\t\"./tzm-latn\": 19210,\n\t\"./tzm-latn.js\": 19210,\n\t\"./tzm.js\": 39574,\n\t\"./ug-cn\": 91532,\n\t\"./ug-cn.js\": 91532,\n\t\"./uk\": 11432,\n\t\"./uk.js\": 11432,\n\t\"./ur\": 88523,\n\t\"./ur.js\": 88523,\n\t\"./uz\": 54958,\n\t\"./uz-latn\": 68735,\n\t\"./uz-latn.js\": 68735,\n\t\"./uz.js\": 54958,\n\t\"./vi\": 83398,\n\t\"./vi.js\": 83398,\n\t\"./x-pseudo\": 56665,\n\t\"./x-pseudo.js\": 56665,\n\t\"./yo\": 11642,\n\t\"./yo.js\": 11642,\n\t\"./zh-cn\": 5462,\n\t\"./zh-cn.js\": 5462,\n\t\"./zh-hk\": 92530,\n\t\"./zh-hk.js\": 92530,\n\t\"./zh-tw\": 97333,\n\t\"./zh-tw.js\": 97333\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 93365;","/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n */\n\nconst request = require('webdav/dist/node/request')\n\nconst oldPrepareRequestOptions = request.prepareRequestOptions\n\n// While we wait for official cancellable webdav requests\n// https://github.com/perry-mitchell/webdav-client/issues/179\n// let's properly forward our axios options through webdav to axios\n\nrequest.prepareRequestOptions = function(requestOptions, methodOptions) {\n\t// add our cancelToken support\n\tif (methodOptions.cancelToken && typeof methodOptions.cancelToken === 'object') {\n\t\trequestOptions.cancelToken = methodOptions.cancelToken\n\t}\n\n\t// exploit old method\n\toldPrepareRequestOptions(requestOptions, methodOptions)\n\n\t// allow us to override the request method\n\tif (methodOptions.method && typeof methodOptions.method === 'string') {\n\t\trequestOptions.method = methodOptions.method\n\t}\n}\n\nmodule.exports = request\n","/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n */\n\nimport webdav from 'webdav'\nimport axios from '@nextcloud/axios'\nimport parseUrl from 'url-parse'\nimport { generateRemoteUrl } from '@nextcloud/router'\n\n// force our axios\nconst patcher = webdav.getPatcher()\npatcher.patch('request', axios)\n\n// init webdav client on default dav endpoint\nconst remote = generateRemoteUrl('dav')\nconst client = webdav.createClient(remote)\n\nexport const remotePath = parseUrl(remote).pathname\nexport default client\n","/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n */\nconst props = `\n\t<oc:fileid />\n\t<d:getlastmodified />\n\t<d:getetag />\n\t<d:getcontenttype />\n\t<d:getcontentlength />\n\t<nc:has-preview />\n\t<oc:favorite />\n\t<d:resourcetype />`\n\nexport { props }\nexport default `<?xml version=\"1.0\"?>\n\t\t\t<d:propfind xmlns:d=\"DAV:\"\n\t\t\t\txmlns:oc=\"http://owncloud.org/ns\"\n\t\t\t\txmlns:nc=\"http://nextcloud.org/ns\"\n\t\t\t\txmlns:ocs=\"http://open-collaboration-services.org/ns\">\n\t\t\t\t<d:prop>\n\t\t\t\t\t${props}\n\t\t\t\t</d:prop>\n\t\t\t</d:propfind>`\n","// Imports\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(true);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".loader{display:grid;height:60px}\", \"\",{\"version\":3,\"sources\":[\"webpack://src/components/Loader.vue\"],\"names\":[],\"mappings\":\"AAsCA,QACC,YAAA,CACA,WAAA\",\"sourcesContent\":[\"$sizes: (400: (count: 3, marginTop: 66, marginW: 8), 700: (count: 4, marginTop: 66, marginW: 8), 1024: (count: 5, marginTop: 66, marginW: 44), 1280: (count: 4, marginTop: 66, marginW: 44), 1440: (count: 5, marginTop: 88, marginW: 66), 1600: (count: 6, marginTop: 88, marginW: 66), 2048: (count: 7, marginTop: 88, marginW: 66), 2560: (count: 8, marginTop: 88, marginW: 88), 3440: (count: 9, marginTop: 88, marginW: 88), max: (count: 10, marginTop: 88, marginW: 88));\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.loader {\\n\\tdisplay: grid;\\n\\theight: 60px;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(true);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".grid-title[data-v-a2e7025e]{grid-column:1/8;padding:48px 0 12px 0;margin:0}.grid-title span[data-v-a2e7025e]{font-weight:normal}.grid-title.first-title[data-v-a2e7025e]{padding:0 0 12px 0}\", \"\",{\"version\":3,\"sources\":[\"webpack://src/components/SeparatorVirtualGrid.vue\"],\"names\":[],\"mappings\":\"AA8CA,6BACC,eAAA,CACA,qBAAA,CACA,QAAA,CACA,kCACC,kBAAA,CAED,yCACC,kBAAA\",\"sourcesContent\":[\"$sizes: (400: (count: 3, marginTop: 66, marginW: 8), 700: (count: 4, marginTop: 66, marginW: 8), 1024: (count: 5, marginTop: 66, marginW: 44), 1280: (count: 4, marginTop: 66, marginW: 44), 1440: (count: 5, marginTop: 88, marginW: 66), 1600: (count: 6, marginTop: 88, marginW: 66), 2048: (count: 7, marginTop: 88, marginW: 66), 2560: (count: 8, marginTop: 88, marginW: 88), 3440: (count: 9, marginTop: 88, marginW: 88), max: (count: 10, marginTop: 88, marginW: 88));\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n.grid-title {\\n\\tgrid-column: 1/8;\\n\\tpadding: 48px 0 12px 0;\\n\\tmargin: 0;\\n\\tspan {\\n\\t\\tfont-weight: normal;\\n\\t}\\n\\t&.first-title {\\n\\t\\tpadding: 0 0 12px 0;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(true);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"@media(min-width: 0px)and (max-width: 400px){.grid-container[data-v-01e8a950]{padding:0px 8px 256px 8px}}@media(min-width: 400px)and (max-width: 700px){.grid-container[data-v-01e8a950]{padding:0px 8px 256px 8px}}@media(min-width: 700px)and (max-width: 1024px){.grid-container[data-v-01e8a950]{padding:0px 44px 256px 44px}}@media(min-width: 1024px)and (max-width: 1280px){.grid-container[data-v-01e8a950]{padding:0px 44px 256px 44px}}@media(min-width: 1280px)and (max-width: 1440px){.grid-container[data-v-01e8a950]{padding:0px 66px 256px 66px}}@media(min-width: 1440px)and (max-width: 1600px){.grid-container[data-v-01e8a950]{padding:0px 66px 256px 66px}}@media(min-width: 1600px)and (max-width: 2048px){.grid-container[data-v-01e8a950]{padding:0px 66px 256px 66px}}@media(min-width: 2048px)and (max-width: 2560px){.grid-container[data-v-01e8a950]{padding:0px 88px 256px 88px}}@media(min-width: 2560px)and (max-width: 3440px){.grid-container[data-v-01e8a950]{padding:0px 88px 256px 88px}}@media(min-width: 3440px){.grid-container[data-v-01e8a950]{padding:0px 88px 256px 88px}}\", \"\",{\"version\":3,\"sources\":[\"webpack://src/mixins/GridSizes.scss\",\"webpack://src/views/Timeline.vue\"],\"names\":[],\"mappings\":\"AAoCG,6CCyQH,iCAEE,yBAAA,CAAA,CD3QC,+CCyQH,iCAEE,yBAAA,CAAA,CD3QC,gDCyQH,iCAEE,2BAAA,CAAA,CD3QC,iDCyQH,iCAEE,2BAAA,CAAA,CD3QC,iDCyQH,iCAEE,2BAAA,CAAA,CD3QC,iDCyQH,iCAEE,2BAAA,CAAA,CD3QC,iDCyQH,iCAEE,2BAAA,CAAA,CD3QC,iDCyQH,iCAEE,2BAAA,CAAA,CD3QC,iDCyQH,iCAEE,2BAAA,CAAA,CD/QC,0BC6QH,iCAEE,2BAAA,CAAA\",\"sourcesContent\":[\"/**\\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\\n *\\n * @author John Molakvoæ <skjnldsv@protonmail.com>\\n *\\n * @license AGPL-3.0-or-later\\n *\\n * This program is free software: you can redistribute it and/or modify\\n * it under the terms of the GNU Affero General Public License as\\n * published by the Free Software Foundation, either version 3 of the\\n * License, or (at your option) any later version.\\n *\\n * This program is distributed in the hope that it will be useful,\\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\\n * GNU Affero General Public License for more details.\\n *\\n * You should have received a copy of the GNU Affero General Public License\\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\\n *\\n */\\n@use 'sass:map';\\n\\n@mixin grid-sizes() {\\n\\t$previous: 0;\\n\\n\\t@each $size, $config in $sizes {\\n\\t\\t$count: map-get($config, 'count');\\n\\t\\t$marginTop: map-get($config, 'marginTop');\\n\\t\\t$marginW: map-get($config, 'marginW');\\n\\n\\t\\t@if $size == 'max' {\\n\\t\\t\\t@media (min-width: #{$previous}px) {\\n\\t\\t\\t\\t@content($marginTop, $marginW);\\n\\t\\t\\t}\\n\\t\\t} @else {\\n\\t\\t\\t@media (min-width: #{$previous}px) and (max-width: #{$size}px) {\\n\\t\\t\\t\\t@content($marginTop, $marginW);\\n\\t\\t\\t}\\n\\t\\t}\\n\\t\\t$previous: $size;\\n\\t}\\n}\\n\",\"$sizes: (400: (count: 3, marginTop: 66, marginW: 8), 700: (count: 4, marginTop: 66, marginW: 8), 1024: (count: 5, marginTop: 66, marginW: 44), 1280: (count: 4, marginTop: 66, marginW: 44), 1440: (count: 5, marginTop: 88, marginW: 66), 1600: (count: 6, marginTop: 88, marginW: 66), 2048: (count: 7, marginTop: 88, marginW: 66), 2560: (count: 8, marginTop: 88, marginW: 88), 3440: (count: 9, marginTop: 88, marginW: 88), max: (count: 10, marginTop: 88, marginW: 88));\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n@import '../mixins/GridSizes.scss';\\n\\n.grid-container {\\n\\t@include grid-sizes using ($marginTop, $marginW) {\\n\\t\\tpadding: 0px #{$marginW}px 256px #{$marginW}px;\\n\\t}\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.error === 404)?_c('EmptyContent',{attrs:{\"illustration-name\":\"folder\"}},[_vm._v(\"\\n\\t\"+_vm._s(_vm.t('photos', 'This folder does not exist'))+\"\\n\")]):(_vm.error)?_c('EmptyContent',[_vm._v(\"\\n\\t\"+_vm._s(_vm.t('photos', 'An error occurred'))+\"\\n\")]):(!_vm.loading)?_c('div',[(_vm.isEmpty)?_c('Navigation',{key:\"navigation\",attrs:{\"basename\":_vm.path,\"filename\":'/',\"root-title\":_vm.rootTitle}}):_vm._e(),_vm._v(\" \"),(_vm.isEmpty)?_c('EmptyContent',{attrs:{\"illustration-name\":\"empty\"}},[_vm._v(\"\\n\\t\\t\"+_vm._s(_vm.t('photos', 'No photos in here'))+\"\\n\\t\")]):_vm._e(),_vm._v(\" \"),_c('div',{staticClass:\"grid-container\"},[_c('VirtualGrid',{ref:\"virtualgrid\",attrs:{\"items\":_vm.contentList,\"update-function\":_vm.getContent,\"get-column-count\":function () { return _vm.gridConfig.count; },\"get-grid-gap\":function () { return _vm.gridConfig.gap; },\"update-trigger-margin\":700,\"loader\":_vm.loaderComponent}})],1)],1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license AGPL-3.0-or-later\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n */\n\nimport { genFileInfo } from '../utils/fileUtils'\nimport { getCurrentUser } from '@nextcloud/auth'\nimport { allMimes } from './AllowedMimes'\nimport client from './DavClient'\nimport { props } from './DavRequest'\nimport { sizes } from '../assets/grid-sizes'\n\n/**\n * List files from a folder and filter out unwanted mimes\n *\n * @param {boolean} [onlyFavorites=false] not used\n * @param {object} [options] used for the cancellable requests\n * @param {number} [options.page=0] which page to start (starts at 0)\n * @param {number} [options.perPage] how many to display per page default is 5 times the max number per line from the grid-sizes config file\n * @param {boolean} [options.full=false] get full data of the files\n * @return {Array} the file list\n */\nexport default async function(onlyFavorites = false, options = {}) {\n\n\t// default function options\n\toptions = Object.assign({}, {\n\t\tpage: 0, // start at the first page\n\t\tperPage: sizes.max.count * 10, // ten rows of the max width\n\t\tmimesType: allMimes, // all mimes types\n\t}, options)\n\n\tconst prefixPath = `/files/${getCurrentUser().uid}`\n\n\t// generating the search or condition\n\t// based on the allowed mimetypes\n\tconst orMime = options.mimesType.reduce((str, mime) => `${str}\n\t\t<d:eq>\n\t\t\t<d:prop>\n\t\t\t\t<d:getcontenttype/>\n\t\t\t</d:prop>\n\t\t\t<d:literal>${mime}</d:literal>\n\t\t</d:eq>\n\t`, '')\n\n\tconst eqFavorites = onlyFavorites\n\t\t? `<d:eq>\n\t\t\t\t<d:prop>\n\t\t\t\t\t<oc:favorite/>\n\t\t\t\t</d:prop>\n\t\t\t\t<d:literal>1</d:literal>\n\t\t\t</d:eq>`\n\t\t: ''\n\n\toptions = Object.assign({\n\t\tmethod: 'SEARCH',\n\t\theaders: {\n\t\t\t'content-Type': 'text/xml',\n\t\t},\n\t\tdata: `<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n\t\t\t<d:searchrequest xmlns:d=\"DAV:\"\n\t\t\t\txmlns:oc=\"http://owncloud.org/ns\"\n\t\t\t\txmlns:nc=\"http://nextcloud.org/ns\"\n\t\t\t\txmlns:ns=\"https://github.com/icewind1991/SearchDAV/ns\"\n\t\t\t\txmlns:ocs=\"http://open-collaboration-services.org/ns\">\n\t\t\t\t<d:basicsearch>\n\t\t\t\t\t<d:select>\n\t\t\t\t\t\t<d:prop>\n\t\t\t\t\t\t\t${props}\n\t\t\t\t\t\t</d:prop>\n\t\t\t\t\t</d:select>\n\t\t\t\t\t<d:from>\n\t\t\t\t\t\t<d:scope>\n\t\t\t\t\t\t\t<d:href>${prefixPath}</d:href>\n\t\t\t\t\t\t\t<d:depth>infinity</d:depth>\n\t\t\t\t\t\t</d:scope>\n\t\t\t\t\t</d:from>\n\t\t\t\t\t<d:where>\n\t\t\t\t\t\t<d:and>\n\t\t\t\t\t\t\t<d:or>\n\t\t\t\t\t\t\t\t${orMime}\n\t\t\t\t\t\t\t</d:or>\n\t\t\t\t\t\t\t${eqFavorites}\n\t\t\t\t\t\t</d:and>\n\t\t\t\t\t</d:where>\n\t\t\t\t\t<d:orderby>\n\t\t\t\t\t\t<d:order>\n\t\t\t\t\t\t\t<d:prop><d:getlastmodified/></d:prop>\n\t\t\t\t\t\t\t<d:descending/>\n\t\t\t\t\t\t</d:order>\n\t\t\t\t\t</d:orderby>\n\t\t\t\t\t<d:limit>\n\t\t\t\t\t\t<d:nresults>${options.perPage}</d:nresults>\n\t\t\t\t\t\t<ns:firstresult>${options.page * options.perPage}</ns:firstresult>\n\t\t\t\t\t</d:limit>\n\t\t\t\t</d:basicsearch>\n\t\t\t</d:searchrequest>`,\n\t\tdeep: true,\n\t\tdetails: true,\n\t}, options)\n\n\tconst response = await client.getDirectoryContents('', options)\n\n\treturn response.data\n\t\t.map(data => genFileInfo(data))\n\t\t// remove prefix path from full file path\n\t\t.map(data => Object.assign({}, data, { filename: data.filename.replace(prefixPath, '') }))\n\n}\n","<!--\n - @copyright Copyright (c) 2020 Corentin Mors\n -\n - @license AGPL-3.0-or-later\n -\n - @author Corentin Mors <medias@pixelswap.fr>\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n -\n -->\n\n<template>\n\t<h2 class=\"grid-title\" :style=\"{height: item.height + 'px'}\">\n\t\t{{ item.injected.month }}\n\t\t<span>{{ item.injected.year }}</span>\n\t</h2>\n</template>\n\n<script>\nexport default {\n\tname: 'SeparatorVirtualGrid',\n\n\tinheritAttrs: false,\n\n\tprops: {\n\t\titem: {\n\t\t\ttype: Object,\n\t\t\trequired: true,\n\t\t},\n\t},\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.grid-title {\n\tgrid-column: 1/8;\n\tpadding: 48px 0 12px 0;\n\tmargin: 0;\n\tspan {\n\t\tfont-weight: normal;\n\t}\n\t&.first-title {\n\t\tpadding: 0 0 12px 0;\n\t}\n}\n</style>\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SeparatorVirtualGrid.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SeparatorVirtualGrid.vue?vue&type=script&lang=js&\"","import api from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import content from \"!!../../node_modules/css-loader/dist/cjs.js!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/dist/cjs.js!../../node_modules/sass-loader/dist/cjs.js??clonedRuleSet-2[0].rules[0].use[3]!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SeparatorVirtualGrid.vue?vue&type=style&index=0&id=a2e7025e&lang=scss&scoped=true&\";\n\nvar options = {};\n\noptions.insert = \"head\";\noptions.singleton = false;\n\nvar update = api(content, options);\n\n\n\nexport default content.locals || {};","import { render, staticRenderFns } from \"./SeparatorVirtualGrid.vue?vue&type=template&id=a2e7025e&scoped=true&\"\nimport script from \"./SeparatorVirtualGrid.vue?vue&type=script&lang=js&\"\nexport * from \"./SeparatorVirtualGrid.vue?vue&type=script&lang=js&\"\nimport style0 from \"./SeparatorVirtualGrid.vue?vue&type=style&index=0&id=a2e7025e&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"a2e7025e\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('h2',{staticClass:\"grid-title\",style:({height: _vm.item.height + 'px'})},[_vm._v(\"\\n\\t\"+_vm._s(_vm.item.injected.month)+\"\\n\\t\"),_c('span',[_vm._v(_vm._s(_vm.item.injected.year))])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<!--\n - @copyright Copyright (c) 2020 Corentin Mors\n -\n - @license AGPL-3.0-or-later\n -\n - @author Corentin Mors <medias@pixelswap.fr>\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n -\n -->\n\n<template>\n\t<div class=\"loader\">\n\t\t<slot name=\"icon\">\n\t\t\t<span class=\"icon-loading\" />\n\t\t</slot>\n\t</div>\n</template>\n\n<script>\nexport default {\n\tname: 'Loader',\n}\n</script>\n\n<style lang=\"scss\">\n.loader {\n\tdisplay: grid;\n\theight: 60px;\n}\n</style>\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Loader.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Loader.vue?vue&type=script&lang=js&\"","import api from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import content from \"!!../../node_modules/css-loader/dist/cjs.js!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/dist/cjs.js!../../node_modules/sass-loader/dist/cjs.js??clonedRuleSet-2[0].rules[0].use[3]!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Loader.vue?vue&type=style&index=0&lang=scss&\";\n\nvar options = {};\n\noptions.insert = \"head\";\noptions.singleton = false;\n\nvar update = api(content, options);\n\n\n\nexport default content.locals || {};","import { render, staticRenderFns } from \"./Loader.vue?vue&type=template&id=7bbb2dd6&\"\nimport script from \"./Loader.vue?vue&type=script&lang=js&\"\nexport * from \"./Loader.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Loader.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"loader\"},[_vm._t(\"icon\",function(){return [_c('span',{staticClass:\"icon-loading\"})]})],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<!--\n - @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @author John Molakvoæ <skjnldsv@protonmail.com>\n - @author Corentin Mors <medias@pixelswap.fr>\n -\n - @license AGPL-3.0-or-later\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n -\n -->\n\n<template>\n\t<!-- Errors handlers-->\n\t<EmptyContent v-if=\"error === 404\" illustration-name=\"folder\">\n\t\t{{ t('photos', 'This folder does not exist') }}\n\t</EmptyContent>\n\t<EmptyContent v-else-if=\"error\">\n\t\t{{ t('photos', 'An error occurred') }}\n\t</EmptyContent>\n\n\t<!-- Folder content -->\n\t<div v-else-if=\"!loading\">\n\t\t<Navigation\n\t\t\tv-if=\"isEmpty\"\n\t\t\tkey=\"navigation\"\n\t\t\t:basename=\"path\"\n\t\t\t:filename=\"'/'\"\n\t\t\t:root-title=\"rootTitle\" />\n\n\t\t<EmptyContent v-if=\"isEmpty\" illustration-name=\"empty\">\n\t\t\t{{ t('photos', 'No photos in here') }}\n\t\t</EmptyContent>\n\n\t\t<div class=\"grid-container\">\n\t\t\t<VirtualGrid\n\t\t\t\tref=\"virtualgrid\"\n\t\t\t\t:items=\"contentList\"\n\t\t\t\t:update-function=\"getContent\"\n\t\t\t\t:get-column-count=\"() => gridConfig.count\"\n\t\t\t\t:get-grid-gap=\"() => gridConfig.gap\"\n\t\t\t\t:update-trigger-margin=\"700\"\n\t\t\t\t:loader=\"loaderComponent\" />\n\t\t</div>\n\t</div>\n</template>\n\n<script>\nimport moment from '@nextcloud/moment'\nimport { mapGetters } from 'vuex'\n\nimport getPhotos from '../services/PhotoSearch'\n\nimport EmptyContent from '../components/EmptyContent'\nimport File from '../components/File'\nimport SeparatorVirtualGrid from '../components/SeparatorVirtualGrid'\nimport VirtualGrid from 'vue-virtual-grid'\nimport Navigation from '../components/Navigation'\nimport Loader from '../components/Loader'\n\nimport cancelableRequest from '../utils/CancelableRequest'\nimport GridConfigMixin from '../mixins/GridConfig'\nimport { allMimes } from '../services/AllowedMimes'\n\nexport default {\n\tname: 'Timeline',\n\tcomponents: {\n\t\tEmptyContent,\n\t\tVirtualGrid,\n\t\tNavigation,\n\t},\n\tmixins: [GridConfigMixin],\n\tprops: {\n\t\tloading: {\n\t\t\ttype: Boolean,\n\t\t\trequired: true,\n\t\t},\n\t\tonlyFavorites: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false,\n\t\t},\n\t\tmimesType: {\n\t\t\ttype: Array,\n\t\t\tdefault: () => allMimes,\n\t\t},\n\t\trootTitle: {\n\t\t\ttype: String,\n\t\t\trequired: true,\n\t\t},\n\t\tpath: {\n\t\t\ttype: String,\n\t\t\tdefault: '',\n\t\t},\n\t},\n\n\tdata() {\n\t\treturn {\n\t\t\tcancelRequest: null,\n\t\t\tdone: false,\n\t\t\terror: null,\n\t\t\tpage: 0,\n\t\t\tlastSection: '',\n\t\t\tloaderComponent: Loader,\n\t\t}\n\t},\n\n\tcomputed: {\n\t\t// global lists\n\t\t...mapGetters([\n\t\t\t'files',\n\t\t\t'timeline',\n\t\t]),\n\t\t// list of loaded medias\n\t\tfileList() {\n\t\t\treturn this.timeline.map((fileId) => this.files[fileId])\n\t\t},\n\t\t// list of displayed content in the grid (titles + medias)\n\t\tcontentList() {\n\t\t\t/** The goal of this flat map is to return an array of images separated by titles (months)\n\t\t\t * ie: [{month1}, {image1}, {image2}, {month2}, {image3}, {image4}, {image5}]\n\t\t\t * First we get the current month+year of the image\n\t\t\t * We compare it to the previous image month+year\n\t\t\t * If there is a difference we have to insert a title object before the current image\n\t\t\t * If it's equal we just add the current image to the array\n\t\t\t * Note: the injected param of objects are used to pass custom params to the grid lib\n\t\t\t * In our case injected could be an image/video (aka file) or a title (year/month)\n\t\t\t * Note2: titles are rendered full width and images are rendered on 1 column and 256x256 ratio\n\t\t\t */\n\t\t\treturn this.fileList.flatMap((file, index) => {\n\t\t\t\tconst finalArray = []\n\t\t\t\tconst currentSection = this.getFormatedDate(file.lastmod, 'YYYY MMMM')\n\t\t\t\tif (this.lastSection !== currentSection) {\n\t\t\t\t\tfinalArray.push({\n\t\t\t\t\t\tid: `title-${index}`,\n\t\t\t\t\t\tinjected: {\n\t\t\t\t\t\t\tyear: this.getFormatedDate(file.lastmod, 'YYYY'),\n\t\t\t\t\t\t\tmonth: this.getFormatedDate(file.lastmod, 'MMMM'),\n\t\t\t\t\t\t},\n\t\t\t\t\t\theight: 90,\n\t\t\t\t\t\tcolumnSpan: 0, // means full width\n\t\t\t\t\t\tnewRow: true,\n\t\t\t\t\t\trenderComponent: SeparatorVirtualGrid,\n\t\t\t\t\t})\n\t\t\t\t\tthis.lastSection = currentSection // we keep track of the last section for the next batch\n\t\t\t\t}\n\t\t\t\tfinalArray.push({\n\t\t\t\t\tid: `img-${file.fileid}`,\n\t\t\t\t\tinjected: {\n\t\t\t\t\t\t...file,\n\t\t\t\t\t\tlist: this.fileList,\n\t\t\t\t\t\tloadMore: this.getContent,\n\t\t\t\t\t\tcanLoop: false,\n\t\t\t\t\t},\n\t\t\t\t\twidth: 256,\n\t\t\t\t\theight: 256,\n\t\t\t\t\tcolumnSpan: 1,\n\t\t\t\t\trenderComponent: File,\n\t\t\t\t})\n\t\t\t\treturn finalArray\n\t\t\t})\n\t\t},\n\t\t// is current folder empty?\n\t\tisEmpty() {\n\t\t\treturn this.fileList.length === 0\n\t\t},\n\t},\n\n\twatch: {\n\t\tasync onlyFavorites() {\n\t\t\t// reset component\n\t\t\tthis.resetState()\n\t\t\tthis.getContent()\n\t\t},\n\t\tasync mimesType() {\n\t\t\t// reset component\n\t\t\tthis.resetState()\n\t\t\tthis.getContent()\n\t\t},\n\t},\n\n\tbeforeMount() {\n\t\tthis.getContent()\n\t},\n\n\tbeforeDestroy() {\n\t\t// cancel any pending requests\n\t\tif (this.cancelRequest) {\n\t\t\tthis.cancelRequest('Changed view')\n\t\t}\n\t\tthis.resetState()\n\t},\n\n\tmethods: {\n\t\t/** Return next batch of data depending on global offset\n\t\t *\n\t\t * @param {boolean} doReturn Returns a Promise with the list instead of a boolean\n\t\t * @return {Promise<boolean>} Returns a Promise with a boolean that stops infinite loading\n\t\t */\n\t\tasync getContent(doReturn) {\n\t\t\tif (this.done) {\n\t\t\t\treturn Promise.resolve(true)\n\t\t\t}\n\n\t\t\t// cancel any pending requests\n\t\t\tif (this.cancelRequest) {\n\t\t\t\tthis.cancelRequest('Changed view')\n\t\t\t}\n\n\t\t\t// if we don't already have some cached data let's show a loader\n\t\t\tif (this.timeline.length === 0) {\n\t\t\t\tthis.$emit('update:loading', true)\n\t\t\t}\n\n\t\t\t// done loading even with errors\n\t\t\tconst { request, cancel } = cancelableRequest(getPhotos)\n\t\t\tthis.cancelRequest = cancel\n\n\t\t\tconst numberOfImagesPerBatch = this.gridConfig.count * 5 // loading 5 rows\n\n\t\t\ttry {\n\t\t\t\t// Load next batch of images\n\t\t\t\tconst files = await request(this.onlyFavorites, {\n\t\t\t\t\tpage: this.page,\n\t\t\t\t\tperPage: numberOfImagesPerBatch,\n\t\t\t\t\tmimesType: this.mimesType,\n\t\t\t\t})\n\n\t\t\t\t// If we get less files than requested that means we got to the end\n\t\t\t\tif (files.length !== numberOfImagesPerBatch) {\n\t\t\t\t\tthis.done = true\n\t\t\t\t}\n\n\t\t\t\tthis.$store.dispatch('updateTimeline', files)\n\t\t\t\tthis.$store.dispatch('appendFiles', files)\n\n\t\t\t\tthis.page += 1\n\n\t\t\t\tif (doReturn) {\n\t\t\t\t\treturn Promise.resolve(files)\n\t\t\t\t}\n\n\t\t\t\treturn Promise.resolve(false)\n\t\t\t} catch (error) {\n\t\t\t\tif (error.response && error.response.status) {\n\t\t\t\t\tif (error.response.status === 404) {\n\t\t\t\t\t\tthis.error = 404\n\t\t\t\t\t\tsetTimeout(() => {\n\t\t\t\t\t\t\tthis.$router.push({ name: this.$route.name })\n\t\t\t\t\t\t}, 3000)\n\t\t\t\t\t} else {\n\t\t\t\t\t\tthis.error = error\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t// cancelled request, moving on...\n\t\t\t\tconsole.error('Error fetching timeline', error)\n\t\t\t\treturn Promise.resolve(true)\n\t\t\t} finally {\n\t\t\t\t// done loading even with errors\n\t\t\t\tthis.$emit('update:loading', false)\n\t\t\t\tthis.cancelRequest = null\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Reset this component data to a pristine state\n\t\t */\n\t\tresetState() {\n\t\t\tthis.$store.dispatch('resetTimeline')\n\t\t\tthis.done = false\n\t\t\tthis.error = null\n\t\t\tthis.page = 0\n\t\t\tthis.lastSection = ''\n\t\t\tthis.$emit('update:loading', true)\n\t\t\tthis.$refs.virtualgrid.resetGrid()\n\t\t},\n\n\t\tgetFormatedDate(string, format) {\n\t\t\treturn moment(string).format(format)\n\t\t},\n\n\t},\n\n}\n</script>\n\n<style lang=\"scss\" scoped>\n@import '../mixins/GridSizes.scss';\n\n.grid-container {\n\t@include grid-sizes using ($marginTop, $marginW) {\n\t\tpadding: 0px #{$marginW}px 256px #{$marginW}px;\n\t}\n}\n</style>\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Timeline.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Timeline.vue?vue&type=script&lang=js&\"","import api from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import content from \"!!../../node_modules/css-loader/dist/cjs.js!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/dist/cjs.js!../../node_modules/sass-loader/dist/cjs.js??clonedRuleSet-2[0].rules[0].use[3]!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Timeline.vue?vue&type=style&index=0&id=01e8a950&lang=scss&scoped=true&\";\n\nvar options = {};\n\noptions.insert = \"head\";\noptions.singleton = false;\n\nvar update = api(content, options);\n\n\n\nexport default content.locals || {};","import { render, staticRenderFns } from \"./Timeline.vue?vue&type=template&id=01e8a950&scoped=true&\"\nimport script from \"./Timeline.vue?vue&type=script&lang=js&\"\nexport * from \"./Timeline.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Timeline.vue?vue&type=style&index=0&id=01e8a950&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"01e8a950\",\n null\n \n)\n\nexport default component.exports"],"sourceRoot":""} \ No newline at end of file